{
"event": "PreToolUse",
"tool_name": "Bash",
"tool_input": {
"command": "\/var\/www\/scripts\/php-check.sh 2>&1 | head -100",
"timeout": 120000,
"description": "Run PHP quality check"
}
}
{
"tool_response": {
"stdout": "=== PHP Quality & Security Check: Sat Dec 27 12:15:19 AM CET 2025 ===\nProject: \/var\/www\/dev.campus.systemische-tools.de\n\n\u001b[1;33m[1\/6] PHPStan - Static Analysis + Strict Rules\u001b[0m\n ------ ---------------------------------------------------------------------- \n Line src\/Infrastructure\/AI\/SemanticEnrichmentService.php \n ------ ---------------------------------------------------------------------- \n 100 Parameter #1 $array (list<array{id: int, name: mixed, type: mixed, \n count: int<1, max>}>) of array_values is already a list, call has no \n effect. \n πͺͺ arrayValues.list \n 136 Parameter #1 $array (list<array{term_id: int, term_name: mixed, \n term_path: mixed, count: int<1, max>}>) of array_values is already a \n list, call has no effect. \n πͺͺ arrayValues.list \n ------ ---------------------------------------------------------------------- \n\n ------ ----------------------------------------------------------------------- \n Line src\/Infrastructure\/Persistence\/StopwordRepository.php \n ------ ----------------------------------------------------------------------- \n 213 Method Infrastructure\\Persistence\\StopwordRepository::getStats() \n should return array<string, int> but returns array<string, array<arra \n y<string, int>>|int>. \n πͺͺ return.type \n ------ ----------------------------------------------------------------------- \n\n [ERROR] Found 3 errors \n\n\u001b[0;31mβ PHPStan: Errors found\u001b[0m\n\n\u001b[1;33m[2\/6] PHP-CS-Fixer - Code Style (PSR-12)\u001b[0m\nPHP CS Fixer 3.92.3 Exceptional Exception by Fabien Potencier, Dariusz Ruminski and contributors.\nPHP runtime: 8.4.16\nLoaded config default from \"\/opt\/php-tools\/.php-cs-fixer.php\".\nRunning analysis on 1 core sequentially.\nYou can enable parallel runner and speed up the analysis! Please see https:\/\/cs.symfony.com\/doc\/usage.html for more information.\nUsing cache file \"\/tmp\/.php-cs-fixer.cache\".\n 0\/340 [ββββββββββββββββββββββββββββ] 0%\n 34\/340 [ββββββββββββββββββββββββββββ] 10%\n 136\/340 [ββββββββββββββββββββββββββββ] 40%\n 306\/340 [ββββββββββββββββββββββββββββ] 90%\n 340\/340 [ββββββββββββββββββββββββββββ] 100%\n\n 1) src\/ServiceProvider\/ChatServiceProvider.php\n ---------- begin diff ----------\n--- \/var\/www\/dev.campus.systemische-tools.de\/src\/ServiceProvider\/ChatServiceProvider.php\n+++ \/var\/www\/dev.campus.systemische-tools.de\/src\/ServiceProvider\/ChatServiceProvider.php\n@@ -8,11 +8,11 @@\n \n use Domain\\Repository\\ChatMessageRepositoryInterface;\n use Domain\\Repository\\ChatSessionRepositoryInterface;\n+use Domain\\Repository\\ChunkRepositoryInterface;\n use Domain\\Repository\\ContentConfigRepositoryInterface;\n use Domain\\Repository\\PromptsRepositoryInterface;\n use Domain\\Service\\ModelRegistryInterface;\n use Framework\\Container;\n-use Domain\\Repository\\ChunkRepositoryInterface;\n use Infrastructure\\AI\\AIConfig;\n use Infrastructure\\AI\\ChatService;\n use Infrastructure\\AI\\ClaudeService;\n@@ -24,10 +24,10 @@\n use Infrastructure\\AI\\ScoringService;\n use Infrastructure\\AI\\SemanticEnrichmentService;\n use Infrastructure\\AI\\VectorSearchService;\n-use Infrastructure\\Persistence\\ChunkRepository;\n use Infrastructure\\Formatting\\ChatMessageFormatter;\n use Infrastructure\\Persistence\\ChatMessageRepository;\n use Infrastructure\\Persistence\\ChatSessionRepository;\n+use Infrastructure\\Persistence\\ChunkRepository;\n use Infrastructure\\Persistence\\ContentConfigRepository;\n use Infrastructure\\Persistence\\CriticsRepository;\n use Infrastructure\\Persistence\\PromptsRepository;\n\n ----------- end diff -----------\n\n\nFound 1 of 340 files that can be fixed in 0.179 seconds, 20.00 MB memory used\n\u001b[0;31mβ PHP-CS-Fixer: Style issues found (run with --fix)\u001b[0m\n\n\u001b[1;33m[3\/6] Composer Audit - Dependency Vulnerabilities\u001b[0m\n\u001b[0;32mβ Composer Audit: No vulnerabilities\u001b[0m\n\n\u001b[1;33m[4\/6] Semgrep - OWASP Security Scan\u001b[0m\n\u001b[0;32mβ Semgrep: No vulnerabilities\u001b[0m\n\n\u001b[1;33m[5\/6] DI Check - UseCase Dependencies\u001b[0m\n\n\u001b[0;32mβ All UseCase dependencies are resolvable\u001b[0m\n\nRegistered services: 0\nUseCases checked: 52\n\u001b[0;32mβ DI Check: All dependencies resolvable\u001b[0m\n\n\u001b[1;33m[6\/6] Interface Check - DI Container Bindings\u001b[0m\n[Interface Check] Validating DI container bindings...\nChecked 43 interface bindings\n\u001b[0;32mβ All interface bindings are valid\u001b[0m\n\u001b[0;32mβ Interface Check: All bindings valid\u001b[0m\n\n=== Summary ===",
"stderr": "",
"interrupted": false,
"isImage": false
}
}