{
"event": "PreToolUse",
"tool_name": "Bash",
"tool_input": {
"command": "DB_PASSWORD=\"v8mFLmkF2fth_r\" python3 << 'EOF'\nimport ollama\nfrom db import db\nfrom json_utils import extract_json\n\ndb.connect()\n\n# Hole Chunk 1916 (Bibliografie)\ncursor = db.execute(\"SELECT content FROM chunks WHERE id = 1916\")\nchunk = cursor.fetchone()\ncursor.close()\n\ncontent = chunk[\"content\"][:2000]\n\nPROMPT = \"\"\"Analysiere den folgenden Text semantisch.\n\nBestimme:\n1. statement_form: Ist es eine Aussage (assertion), Frage (question), Aufforderung (command) oder Bedingung (conditional)?\n2. intent: Was ist die Absicht? explain, argue, define, compare, exemplify, warn, instruct\n3. frame: Welcher Rahmen? theoretical, practical, historical, methodological, critical\n4. is_negated: Wird etwas verneint? true\/false\n5. discourse_role: Welche Rolle im Diskurs? thesis, evidence, example, counter, summary, definition\n\nAntworte NUR mit gültigem JSON:\n{\n \"statement_form\": \"assertion|question|command|conditional\",\n \"intent\": \"explain|argue|define|compare|exemplify|warn|instruct\",\n \"frame\": \"theoretical|practical|historical|methodological|critical\",\n \"is_negated\": false,\n \"discourse_role\": \"thesis|evidence|example|counter|summary|definition\"\n}\n\nText:\n\"\"\" + content\n\nprint(\"=== CHUNK 1916 (Bibliografie) ===\")\nprint(f\"Content-Länge: {len(content)}\")\nprint(f\"Content-Preview: {content[:200]}...\")\nprint()\n\n# Test mit Gemma\nresponse = ollama.generate(\n model=\"gemma3:27b-it-qat\",\n prompt=PROMPT,\n options={\"num_predict\": 300},\n)\n\nraw = response[\"response\"]\nprint(\"=== RAW RESPONSE ===\")\nprint(raw)\nprint()\n\nprint(\"=== EXTRACTED JSON ===\")\ndata = extract_json(raw)\nprint(data)\n\ndb.disconnect()\nEOF\n",
"timeout": 60000,
"description": "Debug edge case chunk 1916"
}
}