{
"event": "PreToolUse",
"tool_name": "Edit",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/ChunkTaxonomyRepositoryInterface.php",
"old_string": "namespace Domain\\Repository;\n\n\/\/ @responsibility: Interface für Chunk-Taxonomie-Mapping Persistenz\n\nuse Domain\\Entity\\ChunkTaxonomyMapping;",
"new_string": "namespace Domain\\Repository;\n\n\/\/ @responsibility: Interface für Chunk-Taxonomie-Mapping Persistenz\n\nuse Domain\\Constants;\nuse Domain\\Entity\\ChunkTaxonomyMapping;"
}
}
{
"tool_response": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/ChunkTaxonomyRepositoryInterface.php",
"oldString": "namespace Domain\\Repository;\n\n\/\/ @responsibility: Interface für Chunk-Taxonomie-Mapping Persistenz\n\nuse Domain\\Entity\\ChunkTaxonomyMapping;",
"newString": "namespace Domain\\Repository;\n\n\/\/ @responsibility: Interface für Chunk-Taxonomie-Mapping Persistenz\n\nuse Domain\\Constants;\nuse Domain\\Entity\\ChunkTaxonomyMapping;",
"originalFile": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Repository;\n\n\/\/ @responsibility: Interface für Chunk-Taxonomie-Mapping Persistenz\n\nuse Domain\\Entity\\ChunkTaxonomyMapping;\n\ninterface ChunkTaxonomyRepositoryInterface\n{\n \/**\n * Findet alle Taxonomie-Mappings für einen Chunk.\n *\n * @return array<ChunkTaxonomyMapping>\n *\/\n public function findByChunkId(int $chunkId): array;\n\n \/**\n * Findet alle Chunks, die einem Taxonomie-Begriff zugeordnet sind.\n *\n * @return array<array{chunk_id: int, confidence: float, source: string}>\n *\/\n public function findByTaxonomyTermId(int $termId): array;\n\n \/**\n * Speichert ein Chunk-Taxonomie-Mapping.\n *\/\n public function save(ChunkTaxonomyMapping $mapping): int;\n\n \/**\n * Löscht ein Mapping nach ID.\n *\/\n public function delete(int $id): bool;\n\n \/**\n * Löscht alle Mappings für einen Chunk.\n *\/\n public function deleteByChunkId(int $chunkId): int;\n\n \/**\n * Findet Chunks ohne Taxonomie-Mapping.\n *\n * @return array<array{id: int, document_id: int, content: string}>\n *\/\n public function getUnmappedChunks(int $limit = 100): array;\n\n \/**\n * Prüft ob ein Mapping existiert.\n *\/\n public function exists(int $chunkId, int $taxonomyTermId): bool;\n\n \/**\n * Zählt Mappings pro Taxonomie-Begriff.\n *\n * @return array<int, int> [term_id => count]\n *\/\n public function countByTaxonomyTerm(): array;\n}\n",
"structuredPatch": [
{
"oldStart": 6,
"oldLines": 6,
"newStart": 6,
"newLines": 7,
"lines": [
" ",
" \/\/ @responsibility: Interface für Chunk-Taxonomie-Mapping Persistenz",
" ",
"+use Domain\\Constants;",
" use Domain\\Entity\\ChunkTaxonomyMapping;",
" ",
" interface ChunkTaxonomyRepositoryInterface"
]
}
],
"userModified": false,
"replaceAll": false
}
}