Backup #1980

ID1980
Dateipfad/var/www/dev.campus.systemische-tools.de/src/Domain/Repository/ChunkRepositoryInterface.php
Version2
Typ modified
Größe2.4 KB
Hashed1166a09d50969a4322744872318a833a73df0b71473b45a96674b057e5b6b3
Datum2025-12-28 02:53:20
Geändert vonclaude-code-hook
GrundClaude Code Pre-Hook Backup vor Edit-Operation
Datei existiert Ja

Dateiinhalt

<?php

declare(strict_types=1);

namespace Domain\Repository;

// @responsibility: Interface für Chunk-Persistenz (Text-Chunks aus Dokumenten)

interface ChunkRepositoryInterface
{
    /**
     * Holt Chunk-Statistiken.
     *
     * @return array{total: int, tokens: int, embedded: int}
     */
    public function getStats(): array;

    /**
     * Holt die neuesten Chunks.
     *
     * @return array<int, array{id: int, content: string, token_count: int, created_at: string, qdrant_id: ?string, filename: string}>
     */
    public function findRecent(int $limit = 5): array;

    /**
     * Holt alle Chunks für ein Dokument.
     *
     * @return array<int, array{id: int, chunk_index: int, content: string, token_count: int, heading_path: ?string, metadata: ?string, qdrant_id: ?string, created_at: string}>
     */
    public function findByDocument(int $documentId): array;

    /**
     * Holt gefilterte Chunks mit Pagination.
     *
     * @return array<int, array>
     */
    public function findFiltered(string $search = '', string $embedded = '', int $limit = 50, int $offset = 0): array;

    /**
     * Zählt Chunks nach Filter-Kriterien.
     */
    public function count(string $search = '', string $embedded = ''): int;

    /**
     * Findet einen Chunk nach ID mit Document-Info.
     *
     * @return array|null
     */
    public function find(int $id): ?array;

    /**
     * Findet einen Chunk nach Document-ID und Index.
     *
     * @return array{id: int, chunk_index: int}|null
     */
    public function findByDocumentAndIndex(int $documentId, int $chunkIndex): ?array;

    /**
     * Holt Entitäten für einen Chunk (Graceful Degradation: leeres Array wenn keine).
     *
     * @return array<int, array{id: int, name: string, type: string, relevance_score: float}>
     */
    public function getChunkEntities(int $chunkId): array;

    /**
     * Holt Taxonomie-Mappings für einen Chunk (Graceful Degradation: leeres Array wenn keine).
     *
     * @return array<int, array{term_id: int, term_name: string, term_path: string, confidence: float}>
     */
    public function getChunkTaxonomy(int $chunkId): array;

    /**
     * Findet Chunks die eine bestimmte Entität enthalten.
     *
     * @return array<int, array{chunk_id: int, content: string, relevance_score: float}>
     */
    public function findChunksByEntity(int $entityId, int $limit = 10): array;
}

Vollständig herunterladen

Aktionen

Herunterladen

Andere Versionen dieser Datei

ID Version Typ Größe Datum
1980 2 modified 2.4 KB 2025-12-28 02:53
1586 1 modified 1.6 KB 2025-12-27 00:12

← Zurück zur Übersicht