feat(analysis): analyze_protocol — ניתוח פרוטוקול-דיון השוואתי (WS4 #203) #357
Reference in New Issue
Block a user
Delete Branch "worktree-agent-aefd5594d532d9f06"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
מה ולמה
WS4 / TaskMaster
legal-ai#203 (יוזמת עיצוב-מחדש זרימת-העבודה). כלי MCP חדשanalyze_protocolשמנתח פרוטוקול-דיון (doc_type='protocol') מול כתבי-הטענות:אילו טענות ירדו (נזנחו בדיון) / חוזקו / עלו חדשות, ומחדד את השאלות
המשפטיות לקראת פרק הדיון. בנוסף מחלץ את נתוני הכותרת א–ד מהפרוטוקול (הרכב,
תאריך-דיון, צדדים שהופיעו) בפורמט-ההזנה המוכר. התוצאה נכנסת לידע-התיק, זמינה
לסוכני הניתוח והכתיבה.
מה נכלל
services/protocol_analyzer.py(חדש) — ניתוח השוואתי דרךclaude_session(מקומי בלבד), מעוגן
model="claude-opus-4-8"+effort="high"(
reference_claude_generation_path). שער anti-hallucination (_normalize_change):רשומה ללא
evidence_quoteמילולי נדחית במקור. חילוץ א–ד + הזנתhearing_dateחזרה ל-
cases.hearing_date(לא דורס תאריך שהיו"ר מילא).claims_extractor— הורחב לפרוטוקול:claim_type='protocol';extract_claimsקולט גם
doc_type='protocol'.block_writer._build_claims_context— מחריגclaim_type='protocol'מהקשר בלוק זכדי שבלוק ז יישאר טענות-כתב מקוריות בלבד (INV-WR4); טענות-הדיון → בלוק ח + ידע-התיק.
db— טבלתprotocol_analysis(V47, idempotent perdocument_id) +replace_/list_.tools/drafting+server—analyze_protocol+get_protocol_analysis(סימטריית extract/get, INV-TOOL4).
docs/spec/04-analysis-writing.md§1.3 + 15 בדיקות ב-test_protocol_analyzer.py.היכן נשמר ידע-התיק
טבלת
protocol_analysis(case-knowledge נגזר: מקור-האמת הוא הפרוטוקול +legal_arguments; הרשומה היא השוואה מטוריאליזת בת-שחזור, לא טבלת-טענות מקבילה).hearing_dateנכתב לעמודה הקנוניתcases.hearing_date.Invariants — הצהרה (חובה)
hearing_dateמהפרוטוקול נכתב לעמודה הקנוניתcases.hearing_date, לא תיקון-קריאה; לא דורס קלט-יו"ר.protocol_analysisהיא ידע נגזר מ-protocol+legal_arguments, לא מסלול/טבלת-טענות מקבילה; קריאת הטיעונים דרך מסלול-ה-aggregator היחיד.replace_protocol_analysisמחליף perdocument_id(re-run לא מכפיל).analyze_protocol↔get_protocol_analysis.evidence_quoteמילולי; נדחית במקור אחרת.claude_session, מקומי בלבד.mcp-server/srcנקי מ-Paperclip;test_platform_port_leak_guardעובר.צ'קליסט — פרוטוקול כתיבת-קוד
docs/spec/00-constitution.md+04-analysis-writing.md+X9לפני הכתיבהmcp-server/srcנקי (leak-guard עובר)header_failed/warning, לא bare exceptgap-audit.md— אין GAP/FU ממופה לפיצ'ר זה (WS4 הוא יכולת חדשה)py_compile+ import server נקיאימות
py_compileעל כל הקבצים שנגעתי בהם — נקי.PYTHONPATH=src pytest tests/test_protocol_analyzer.py tests/test_platform_port_leak_guard.py tests/test_storage_write_leak_guard.py tests/test_export_qa_gate.py tests/test_chunker_section_patterns.py→ כולן עוברות.import legal_mcp.serverנקי;analyze_protocol+get_protocol_analysisרשומים;ANALYSIS_MODEL=claude-opus-4-8,effort=high.SCHEMA_V47לא הורצה מול Postgres המשותף — תחול אוטומטית ב-deploy (_apply_schema_ddl).analyze_protocol/get_protocol_analysisלסוכני analyst/CEO ב-Paperclip (sync_agents) — שלב-deploy נפרד, מחוץ לתחום ה-PR.🤖 Generated with Claude Code