{
"event": "PreToolUse",
"tool_name": "Write",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/TaskResultRepositoryInterface.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Repository;\n\n\/\/ @responsibility: Contract für Task-Ergebnisse-Persistenz\n\nuse Domain\\Entity\\TaskResult;\n\ninterface TaskResultRepositoryInterface\n{\n public function find(int $id): ?TaskResult;\n\n \/**\n * @return array<TaskResult>\n *\/\n public function findByTaskId(int $taskId): array;\n\n \/**\n * @return array<TaskResult>\n *\/\n public function findByAssignmentId(int $assignmentId): array;\n\n public function save(TaskResult $result): int;\n\n \/**\n * @return array<string, mixed>\n *\/\n public function getTokenStatistics(?int $taskId = null): array;\n\n \/**\n * @return array<array<string, mixed>>\n *\/\n public function getModelUsage(): array;\n}\n"
}
}
{
"tool_response": {
"type": "create",
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Repository\/TaskResultRepositoryInterface.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Repository;\n\n\/\/ @responsibility: Contract für Task-Ergebnisse-Persistenz\n\nuse Domain\\Entity\\TaskResult;\n\ninterface TaskResultRepositoryInterface\n{\n public function find(int $id): ?TaskResult;\n\n \/**\n * @return array<TaskResult>\n *\/\n public function findByTaskId(int $taskId): array;\n\n \/**\n * @return array<TaskResult>\n *\/\n public function findByAssignmentId(int $assignmentId): array;\n\n public function save(TaskResult $result): int;\n\n \/**\n * @return array<string, mixed>\n *\/\n public function getTokenStatistics(?int $taskId = null): array;\n\n \/**\n * @return array<array<string, mixed>>\n *\/\n public function getModelUsage(): array;\n}\n",
"structuredPatch": [],
"originalFile": null
}
}