{
"event": "PreToolUse",
"tool_name": "Edit",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/EntityRepositoryInterface.php",
"old_string": " \/**\n * Holt alle Entitäten (minimale Daten für Select).\n *\n * @return array<int, array{id: int, name: string, type: string}>\n *\/\n public function findAllSimple(): array;\n}",
"new_string": " \/**\n * Holt alle Entitäten (minimale Daten für Select).\n *\n * @return array<int, array{id: int, name: string, type: string}>\n *\/\n public function findAllSimple(): array;\n\n \/**\n * Holt Knowledge-Semantik für eine Entity.\n *\n * @return array{semantic_role: ?string, functional_category: ?string, context_meaning: ?string, properties: ?string, model_used: ?string}|null\n *\/\n public function getKnowledgeSemantics(int $entityId): ?array;\n}"
}
}
{
"tool_response": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/EntityRepositoryInterface.php",
"oldString": " \/**\n * Holt alle Entitäten (minimale Daten für Select).\n *\n * @return array<int, array{id: int, name: string, type: string}>\n *\/\n public function findAllSimple(): array;\n}",
"newString": " \/**\n * Holt alle Entitäten (minimale Daten für Select).\n *\n * @return array<int, array{id: int, name: string, type: string}>\n *\/\n public function findAllSimple(): array;\n\n \/**\n * Holt Knowledge-Semantik für eine Entity.\n *\n * @return array{semantic_role: ?string, functional_category: ?string, context_meaning: ?string, properties: ?string, model_used: ?string}|null\n *\/\n public function getKnowledgeSemantics(int $entityId): ?array;\n}",
"originalFile": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Repository;\n\n\/\/ @responsibility: Interface für Entity-Persistenz (Entitäten + Beziehungen zu Chunks\/Ontologie)\n\nuse Domain\\Constants;\n\ninterface EntityRepositoryInterface\n{\n \/**\n * Holt gefilterte Entitäten mit Statistiken.\n *\n * @return array<int, array{id: int, name: string, type: string, description: ?string, chunk_count: int, relation_count: int}>\n *\/\n public function findFiltered(string $type = '', string $search = '', int $limit = Constants::DEFAULT_LIMIT): array;\n\n \/**\n * Holt Entity-Statistiken nach Typ.\n *\n * @return array<int, array{type: string, count: int}>\n *\/\n public function getStats(): array;\n\n \/**\n * Findet eine Entity nach ID.\n *\n * @return array|null\n *\/\n public function find(int $id): ?array;\n\n \/**\n * Holt Synonyme einer Entity.\n *\n * @return array<int, array>\n *\/\n public function findSynonyms(int $entityId): array;\n\n \/**\n * Holt ausgehende Relationen einer Entity.\n *\n * @return array<int, array>\n *\/\n public function getOutgoingRelations(int $entityId): array;\n\n \/**\n * Holt eingehende Relationen einer Entity.\n *\n * @return array<int, array>\n *\/\n public function getIncomingRelations(int $entityId): array;\n\n \/**\n * Holt Chunks, die eine Entity referenzieren.\n *\n * @return array<int, array{id: int, content: string, token_count: int, filename: string, relevance_score: float}>\n *\/\n public function findChunks(int $entityId, int $limit = 20): array;\n\n \/**\n * Holt Ontologie-Klassifikationen einer Entity.\n *\n * @return array<int, array>\n *\/\n public function findClassifications(int $entityId): array;\n\n \/**\n * Erstellt eine neue Entity.\n *\n * @return int ID der neuen Entity\n *\/\n public function create(string $name, string $type, ?string $description = null): int;\n\n \/**\n * Aktualisiert eine Entity.\n *\/\n public function update(int $id, string $name, string $type, ?string $description = null): bool;\n\n \/**\n * Löscht eine Entity (nur wenn keine Relationen vorhanden).\n *\n * @return bool False wenn Relationen vorhanden, True bei Erfolg\n *\/\n public function delete(int $id): bool;\n\n \/**\n * Holt vordefinierte Entity-Typen.\n *\n * @return array<string>\n *\/\n public function getTypes(): array;\n\n \/**\n * Holt alle Entitäten (minimale Daten für Select).\n *\n * @return array<int, array{id: int, name: string, type: string}>\n *\/\n public function findAllSimple(): array;\n}\n",
"structuredPatch": [
{
"oldStart": 98,
"oldLines": 4,
"newStart": 98,
"newLines": 11,
"lines": [
" * @return array<int, array{id: int, name: string, type: string}>",
" *\/",
" public function findAllSimple(): array;",
"+",
"+ \/**",
"+ * Holt Knowledge-Semantik für eine Entity.",
"+ *",
"+ * @return array{semantic_role: ?string, functional_category: ?string, context_meaning: ?string, properties: ?string, model_used: ?string}|null",
"+ *\/",
"+ public function getKnowledgeSemantics(int $entityId): ?array;",
" }"
]
}
],
"userModified": false,
"replaceAll": false
}
}