ChunkExplorerRepositoryInterface.php
- Pfad:
src/Domain/Repository/ChunkExplorerRepositoryInterface.php - Namespace: Domain\Repository
- Zeilen: 115 | Größe: 2,893 Bytes
- Geändert: 2025-12-28 01:03:38 | Gescannt: 2025-12-31 10:22:15
Code Hygiene Score: 92
- Dependencies: 100 (25%)
- LOC: 100 (20%)
- Methods: 60 (20%)
- Secrets: 100 (15%)
- Classes: 100 (10%)
- Magic Numbers: 100 (10%)
Keine Issues gefunden.
Dependencies 1
- use Domain\Constants
Klassen 1
-
ChunkExplorerRepositoryInterfaceinterface Zeile 11
Funktionen 14
-
getChunkStats()public Zeile 18 -
countChunksFiltered()public Zeile 23 -
getChunksFilteredPaginated()public Zeile 30 -
getRecentChunks()public Zeile 43 -
getChunk()public Zeile 50 -
getChunksForDokument()public Zeile 57 -
getChunksDetailedForDokument()public Zeile 64 -
getChunkByDokumentAndIndex()public Zeile 71 -
getDistinctCategories()public Zeile 78 -
getTopTaxonomyCategories()public Zeile 85 -
getCategoriesWithStats()public Zeile 92 -
getTopKeywords()public Zeile 99 -
getTopEntitiesRaw()public Zeile 106 -
getEntitiesGrouped()public Zeile 113
Verwendet von 11
- AssignChunkTaxonomyUseCase.php use
- AssignChunkTaxonomyUseCase.php constructor
- ChatController.php use
- ChatController.php constructor
- ChunkExplorerRepository.php implements
- ChunkExplorerRepository.php use
- ExplorerController.php constructor
- ExplorerController.php use
- InfrastructureServiceProvider.php use
- SystemExplorerController.php constructor
- SystemExplorerController.php use
Versionen 2
-
v2
2025-12-28 01:03 | claude-code-hook | modified
Claude Code Pre-Hook Backup vor Edit-Operation -
v1
2025-12-28 01:02 | claude-code-hook | modified
Claude Code Pre-Hook Backup vor Edit-Operation
Code
<?php
declare(strict_types=1);
namespace Domain\Repository;
// @responsibility: Interface für Chunk-Explorer-Operationen (Chunks mit Taxonomie/Entities)
use Domain\Constants;
interface ChunkExplorerRepositoryInterface
{
/**
* Get chunk statistics.
*
* @return array{total: int, tokens: int, analyzed: int, synced: int}
*/
public function getChunkStats(): array;
/**
* Count chunks with filters.
*/
public function countChunksFiltered(string $category = '', string $status = '', string $search = ''): int;
/**
* Get chunks with filters and pagination.
*
* @return array<array<string, mixed>>
*/
public function getChunksFilteredPaginated(
string $category = '',
string $status = '',
string $search = '',
int $limit = 50,
int $offset = 0
): array;
/**
* Get recent chunks.
*
* @return array<array<string, mixed>>
*/
public function getRecentChunks(int $limit = 5): array;
/**
* Get chunk by ID with decoded JSON fields.
*
* @return array<string, mixed>|null
*/
public function getChunk(int $id): ?array;
/**
* Get chunks for a document (simple).
*
* @return array<array<string, mixed>>
*/
public function getChunksForDokument(int $dokumentId): array;
/**
* Get detailed chunks for a document (all fields).
*
* @return array<array<string, mixed>>
*/
public function getChunksDetailedForDokument(int $dokumentId): array;
/**
* Get chunk by document ID and index.
*
* @return array<string, mixed>|null
*/
public function getChunkByDokumentAndIndex(int $dokumentId, int $index): ?array;
/**
* Get distinct taxonomy categories.
*
* @return array<string>
*/
public function getDistinctCategories(): array;
/**
* Get top taxonomy categories with counts.
*
* @return array<array{taxonomy_category: string, count: int}>
*/
public function getTopTaxonomyCategories(int $limit = 10): array;
/**
* Get categories with chunk and token counts.
*
* @return array<array{taxonomy_category: string, chunk_count: int, token_count: int}>
*/
public function getCategoriesWithStats(): array;
/**
* Get top keywords aggregated from chunks.
*
* @return array<string, int>
*/
public function getTopKeywords(int $limit = 30): array;
/**
* Get top entities as raw key=>count format.
*
* @return array<string, int>
*/
public function getTopEntitiesRaw(int $limit = 30): array;
/**
* Get entities grouped by type.
*
* @return array{entities: array, by_type: array<string, array>, total: int}
*/
public function getEntitiesGrouped(int $limit = Constants::DEFAULT_LIMIT): array;
}