{
"event": "PreToolUse",
"tool_name": "Write",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/UseCases\/Chat\/UpdateChatSessionUseCaseInterface.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace UseCases\\Chat;\n\n\/\/ @responsibility: Interface for updating chat session data\n\nuse Domain\\Entity\\ChatSession;\n\ninterface UpdateChatSessionUseCaseInterface\n{\n \/**\n * Update session title.\n *\/\n public function updateTitle(int $sessionId, string $title): string;\n\n \/**\n * Update session settings.\n *\n * @param array<string> $collections\n *\/\n public function updateSettings(\n int $sessionId,\n string $model,\n array $collections,\n int $contextLimit,\n int $authorProfileId,\n float $temperature,\n int $maxTokens\n ): void;\n\n \/**\n * Update system prompt.\n *\/\n public function updateSystemPrompt(int $sessionId, string $systemPrompt): ChatSessionResult;\n\n \/**\n * Check if settings have changed.\n *\n * @param array<string> $collections\n *\/\n public function settingsHaveChanged(\n ChatSession $session,\n string $model,\n array $collections,\n int $contextLimit,\n int $authorProfileId,\n float $temperature,\n int $maxTokens\n ): bool;\n\n \/**\n * Validate collection compatibility.\n *\n * @param array<string> $collectionIds\n * @return array{valid: bool, error: string|null}\n *\/\n public function validateCollectionCompatibility(array $collectionIds): array;\n}\n"
}
}
{
"tool_response": {
"type": "create",
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/UseCases\/Chat\/UpdateChatSessionUseCaseInterface.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace UseCases\\Chat;\n\n\/\/ @responsibility: Interface for updating chat session data\n\nuse Domain\\Entity\\ChatSession;\n\ninterface UpdateChatSessionUseCaseInterface\n{\n \/**\n * Update session title.\n *\/\n public function updateTitle(int $sessionId, string $title): string;\n\n \/**\n * Update session settings.\n *\n * @param array<string> $collections\n *\/\n public function updateSettings(\n int $sessionId,\n string $model,\n array $collections,\n int $contextLimit,\n int $authorProfileId,\n float $temperature,\n int $maxTokens\n ): void;\n\n \/**\n * Update system prompt.\n *\/\n public function updateSystemPrompt(int $sessionId, string $systemPrompt): ChatSessionResult;\n\n \/**\n * Check if settings have changed.\n *\n * @param array<string> $collections\n *\/\n public function settingsHaveChanged(\n ChatSession $session,\n string $model,\n array $collections,\n int $contextLimit,\n int $authorProfileId,\n float $temperature,\n int $maxTokens\n ): bool;\n\n \/**\n * Validate collection compatibility.\n *\n * @param array<string> $collectionIds\n * @return array{valid: bool, error: string|null}\n *\/\n public function validateCollectionCompatibility(array $collectionIds): array;\n}\n",
"structuredPatch": [],
"originalFile": null
}
}