{
"event": "PostToolUse",
"raw_data": {
"session_id": "ff098a73-f251-4037-92a8-8d3fbd176fd4",
"transcript_path": "\/root\/.claude\/projects\/-var-www\/ff098a73-f251-4037-92a8-8d3fbd176fd4.jsonl",
"cwd": "\/var\/www\/prod.campus.systemische-tools.de",
"permission_mode": "acceptEdits",
"hook_event_name": "PostToolUse",
"tool_name": "Read",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/TaxonomyRepositoryInterface.php"
},
"tool_response": {
"type": "text",
"file": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/TaxonomyRepositoryInterface.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Repository;\n\n\/\/ @responsibility: Interface für Taxonomy-Persistenz (CRUD + Hierarchie)\n\ninterface TaxonomyRepositoryInterface\n{\n \/**\n * Holt alle Taxonomie-Begriffe mit Statistiken.\n *\n * @return array<int, array{id: int, name: string, parent_id: ?int, depth: int, path: string, chunk_count: int, children_count: int}>\n *\/\n public function findAll(): array;\n\n \/**\n * Holt Taxonomie-Statistiken.\n *\n * @return array{total_terms: int, root_terms: int, max_depth: int, tagged_chunks: int}\n *\/\n public function getStats(): array;\n\n \/**\n * Findet einen Begriff nach ID.\n *\n * @return array{id: int, name: string, parent_id: ?int, depth: int, path: string}|null\n *\/\n public function find(int $id): ?array;\n\n \/**\n * Erstellt einen neuen Taxonomie-Begriff.\n *\n * @return int ID des neuen Begriffs\n *\/\n public function create(string $name, ?int $parentId = null): int;\n\n \/**\n * Aktualisiert einen Taxonomie-Begriff.\n *\/\n public function update(int $id, string $name, ?int $parentId = null): bool;\n\n \/**\n * Löscht einen Taxonomie-Begriff (nur wenn keine Kinder vorhanden).\n *\n * @return bool False wenn Kinder vorhanden, True bei Erfolg\n *\/\n public function delete(int $id): bool;\n\n \/**\n * Holt Begriffe für Select-Dropdown (minimale Daten).\n *\n * @return array<int, array{id: int, name: string, depth: int, path: string}>\n *\/\n public function findForSelect(): array;\n}\n",
"numLines": 58,
"startLine": 1,
"totalLines": 58
}
},
"tool_use_id": "toolu_01HrcXB5cwFQsRry2ugRA4zL"
}
}