{
"event": "PreToolUse",
"tool_name": "Bash",
"tool_input": {
"command": "cd \/var\/www\/dev.campus.systemische-tools.de && php -r '\nrequire_once \"src\/Infrastructure\/AI\/ScoringService.php\";\n\nuse Infrastructure\\AI\\ScoringService;\n\n$scoring = new ScoringService();\n\n\/\/ Test 1: Neues Dokument (heute)\n$today = new DateTime();\n$score1 = $scoring->calculateScore(0.85, $today, 0.8);\n\n\/\/ Test 2: Altes Dokument (180 Tage)\n$oldDate = new DateTime(\"-180 days\");\n$score2 = $scoring->calculateScore(0.85, $oldDate, 0.8);\n\n\/\/ Test 3: Sehr altes Dokument (365 Tage) \n$veryOld = new DateTime(\"-365 days\");\n$score3 = $scoring->calculateScore(0.85, $veryOld, 0.8);\n\n\/\/ Test 4: Niedrige Authority\n$score4 = $scoring->calculateScore(0.85, $today, 0.2);\n\necho \"=== ScoringService Test ===\\n\";\necho \"Weights: \" . json_encode($scoring->getWeights()) . \"\\n\\n\";\necho \"Formel: 0.7×similarity + 0.1×recency + 0.2×authority\\n\\n\";\necho \"Test 1 (neu, high auth 0.8): \" . round($score1, 4) . \"\\n\";\necho \"Test 2 (180d alt, high auth 0.8): \" . round($score2, 4) . \"\\n\";\necho \"Test 3 (365d alt, high auth 0.8): \" . round($score3, 4) . \"\\n\";\necho \"Test 4 (neu, low auth 0.2): \" . round($score4, 4) . \"\\n\\n\";\n\necho \"Erwartetes Ranking: Test1 > Test4 > Test2 > Test3\\n\";\n$ranking = [\n [\"Test1\", $score1],\n [\"Test4\", $score4],\n [\"Test2\", $score2],\n [\"Test3\", $score3],\n];\nusort($ranking, fn($a, $b) => $b[1] <=> $a[1]);\necho \"Tatsächlich: \" . implode(\" > \", array_column($ranking, 0)) . \"\\n\";\necho ($ranking[0][0] === \"Test1\" && $ranking[3][0] === \"Test3\" ? \"✓ KORREKT\" : \"✗ PRÜFEN\") . \"\\n\";\n'",
"description": "Test ScoringService with direct require"
}
}
{
"tool_response": {
"stdout": "=== ScoringService Test ===\nWeights: {\"similarity\":0.7,\"recency\":0.1,\"authority\":0.2}\n\nFormel: 0.7×similarity + 0.1×recency + 0.2×authority\n\nTest 1 (neu, high auth 0.8): 0.855\nTest 2 (180d alt, high auth 0.8): 0.8057\nTest 3 (365d alt, high auth 0.8): 0.755\nTest 4 (neu, low auth 0.2): 0.735\n\nErwartetes Ranking: Test1 > Test4 > Test2 > Test3\nTatsächlich: Test1 > Test2 > Test3 > Test4\n✗ PRÜFEN",
"stderr": "",
"interrupted": false,
"isImage": false
}
}