feat(arguments): הפרדת-משיבים בצבירה לפי כתב-תשובה (#224)
הצבירה קיבצה את כל המשיבים תחת מפלגה אחת "respondent", כך שכתבי-תשובה נפרדים (משיבות 2-3 מול משיבים 4-6) עם עמדות שעלולות להיות מנוגדות נבלעו לרשימה אחת. התגלה בתיק 1043-02-26. השינוי מפצל את הצדדים הרב-משתתפים (respondent/permit_applicant) לפי source_document — כל כתב-תשובה משותף = יחידת-ליטיגציה קוהרנטית נפרדת — ומאחסן את התווית ב-legal_arguments.party_name (מיגרציה V50). עוררים/ועדה נשארים קבוצה יחידה. בונוס: פיצול ה-129 טענות ל-קריאות-Claude קטנות מתקן את הכשל-בשקט המקורי (קריאה של 100+ פרופוזיציות החזירה non-JSON והפילה את כל הצד). - db.py: SCHEMA_V50_SQL — legal_arguments.party_name (ADD COLUMN IF NOT EXISTS, אידמפוטנטי) - argument_aggregator: קיבוץ (party, party_name); _build_prompt מקבל שם-כתב; SELECT מחזיר party_name - UI: PartySection מתת-קבץ לפי כתב-תשובה; טיפוס LegalArgument.party_name טווח v1: הקיבוץ לפי source_document; אכלוס party_name ב-extractor וזיהוי עמדות-מנוגדות בבלוק ז/י — המשך ב-#224. Invariants: G1 (נרמול-במקור — party_name בסכמה, לא תיקון-בקריאה) · G2 (אין מסלול-צבירה מקביל, אותו pipeline) · §6 (אין בליעה שקטה — הכשל-בשקט תוקן). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -32,6 +32,12 @@ export type LegalArgument = {
|
||||
id: string;
|
||||
case_id: string;
|
||||
party: LegalArgumentParty;
|
||||
/**
|
||||
* The specific pleading this argument belongs to, for sides that may comprise
|
||||
* several litigants with opposing positions (respondent / permit_applicant
|
||||
* briefs). Empty for single-voice sides (appellant / committee). (#224)
|
||||
*/
|
||||
party_name?: string;
|
||||
argument_index: number;
|
||||
argument_title: string;
|
||||
argument_body: string;
|
||||
|
||||
Reference in New Issue
Block a user