Files
legal-ai/docs/spec/04-analysis-writing.md

187 lines
14 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 04 — ניתוח וכתיבה (Analysis & Writing)
קובץ-תחום זה כפוף ל-[חוקת המערכת](00-constitution.md) ומפרט את שלב **הסיוע-בכתיבה**
חילוץ הטענות, ארכיטקטורת 12 הבלוקים, וסגנון דפנה. הוא אוכף את
[INV-G11](00-constitution.md#inv-g11-תוכן-החלטה-מנומקת) (תוכן החלטה מנומקת).
> **⚠ מודל-סמכות שונה מ-0103.** זהו קובץ **תוכן-משפטי**, לא קובץ-הנדסה. לפי החוקה
> (§2 עיקרון 2, §5ב) הסמכות עליו היא **היו"ר (עו"ד דפנה תמיר) + מסמכי-הפרויקט** —
> [block-schema.md](../block-schema.md), [decision-methodology.md](../decision-methodology.md),
> [legal-decision-lessons.md](../legal-decision-lessons.md),
> [corpus-analysis.md](../corpus-analysis.md), [skills/decision/SKILL.md](../../skills/decision/SKILL.md).
> ה-invariants כאן **אינם** כפופים לפרוטוקול ≥3-המקורות החיצוני, ו**אינם** נושאים
> `סטטוס: verified / ⚠ UNVERIFIED`. במקום `מקורות: … | סטטוס` הם נושאים `מקור-סמכות:`.
> מסמכי-הפרויקט הם המקור המוסמך; קובץ זה מצטט אותם בגובה-ספ, לא משכפל את ההגדרות.
---
## 1. חילוץ טענות → טיעונים מאוגדים
לפני הכתיבה, חומרי-המקור הופכים למבנה-נתונים שמזין את הבלוקים. שני שלבים:
### 1.1 חילוץ טענות גולמיות (claims)
`extract_claims(case_number, doc_title="", party_hint="")` קורא לכתבי-הטענות בתיק,
ושומר טענות גולמיות ב-DB. הוא מסנן למסמכים מסוג `appeal` / `response` / `objection`
(אלא אם צוין `doc_title` מפורש), ולכל מסמך קורא ל-`claims_extractor.extract_and_store_claims`
— ראה `mcp-server/src/legal_mcp/tools/documents.py:300-347`.
כל טענה נשמרת עם `party_role` מתוך התפקידים המוכרים: **`appellant` (עוררים)** ·
**`respondent` (משיבים)** · **`committee` (ועדה מקומית)** · **`permit_applicant`
(מבקשי היתר)** · **`appraiser` (שמאי)**. `get_claims(case_number, party_role="")`
שולף ומציג אותן בעברית, עם סינון אופציונלי לפי תפקיד
(`documents.py:350-385`; מיפוי-העברית ב-`:370-376`).
### 1.2 כינוס לטיעונים משפטיים מובחנים (legal arguments)
`aggregate_claims_to_arguments(case_number, force=False)` מכנס את הפרופוזיציות
הגולמיות לטיעונים משפטיים מובחנים (de-duplication) דרך
`argument_aggregator.aggregate_claims_to_arguments`; `force=True` מוחק טיעונים קיימים
ומחשב מחדש — ראה `mcp-server/src/legal_mcp/tools/legal_arguments.py:11-33`.
`get_legal_arguments(case_number, party="")` שולף את הטיעונים המאוגדים, מקובצים לפי
צד (`appellant`/`respondent`/`committee`/`permit_applicant`/`unknown`); אם אין —
הוא מחזיר הנחיה להריץ קודם את הכינוס (`legal_arguments.py:36-83`).
> **מדוע זה חשוב לתוכן:** הטיעונים המאוגדים הם הקלט ל-[INV-WR3](#inv-wr3-מענה-לכל-טענה-של-הצד-המפסיד)
> (מענה לכל טענה עיקרית) ול-[INV-WR4](#inv-wr4-בלוק-ז--טענות-מקוריות-בלבד) (הפרדת טענות
> מקוריות מהשלמות). הסינון לפי `party_role` מאפשר לזהות את הצד המפסיד ולוודא שכל טיעון
> שלו מקבל מענה בבלוק י.
---
## 2. ארכיטקטורת 12 הבלוקים (סיכום)
המבנה הפורמלי המלא — content model, constraints, משקלות, ופרמטרי-עיבוד לכל בלוק —
מוגדר ב-[block-schema.md](../block-schema.md) (המקור המוסמך). כאן רק מפת-גובה:
| בלוק | תפקיד | CREAC | תוכן מהותי? |
|------|--------|-------|-------------|
| א–ד | כותרת מוסדית · הרכב · צדדים · "החלטה" | — | לא (template-fill) |
| ה | פתיחה ("לפנינו…") | C ראשוני | קל |
| **ו** | רקע עובדתי ("פתח דבר") | — | **כן — עובדות בלבד** |
| **ז** | טענות הצדדים | — | **כן — טענות מקוריות בלבד** |
| ח | הליכים בפני הוועדה | — | כן (תיעוד, ללא הערכה) |
| ט | תכניות חלות (אופציונלי) | R | כן (כשיש מורכבות תכנונית) |
| **י** | דיון והכרעה | full-CREAC | **כן — ה-ratio decidendi** |
| יא | סיכום / סוף דבר | C אחרון | קל |
| יב | חתימות | — | לא |
יסודות תיאורטיים (CREAC · FJC Judicial Writing Manual · DITA · Akoma Ntoso),
תלויות-בין-בלוקים, וכללי-ולידציה — ב-[block-schema.md](../block-schema.md) §§1, 5, 6.
מתודולוגיית-המשקלות (Communicative / Reader-attention / Judicial-review / Empirical)
— שם §4. **טיוטת-ביניים** (Pre-Ruling Draft) בוחרת תת-קבוצת בלוקים (ו, ט, ז, ח) —
block-schema.md §7; שלב-החילוץ השמאי שלה (`extract_appraiser_facts`) מזין את בלוק ט.
> **התמקדות לפי feedback היו"ר:** הסיוע מתמקד בבלוקים המהותיים (ו–יב); בלוקים א–ד
> ממולאים מ-template ואינם דורשים ניתוח. ראה `MEMORY.md` → "התעלם מכותרות".
---
## 3. סגנון דפנה (סיכום)
מדריך-הסגנון המלא הוא [skills/decision/SKILL.md](../../skills/decision/SKILL.md);
המתודולוגיה האנליטית ("איך לחשוב לפני איך לכתוב") היא
[decision-methodology.md](../decision-methodology.md). נקודות-מפתח:
- **טון לפי סוג-ערר** — רישוי (1xxx) חם יחסית; היטל-השבחה (8xxx) ופיצויים ס'197 (9xxx)
קרים ויבשים (SKILL.md §1; methodology §א.2).
- **מבנה הדיון (בלוק י)** — נפתח במסקנה (CREAC: C→R→E→A→C), סילוגיזם לכל סוגיה,
steel-manning של הצד המפסיד, ציטוט-פסיקה ב"סנדוויץ'" (methodology §§ד, ו, ז).
- **מסלול-דיון לפי תוצאה** — דחייה (עיגולים קונצנטריים) · קבלה (נימוק-נימוק) · קבלה
חלקית (מיפוי-מתחים) · היטל-השבחה (פתיחה ישירה) — SKILL.md §7.3; block-schema.md בלוק י.
- **3 מקורות-פסיקה נפרדים** — אסור לבלבל ביניהם (SKILL.md §7.5; ראה גם
[03-retrieval.md](03-retrieval.md) לשכבת-האחזור שמזינה אותם).
- **לקחים מצטברים** — [legal-decision-lessons.md](../legal-decision-lessons.md) +
ביטויי-מעבר; מתעדכנים מפידבק-היו"ר ומ-Hermes (ראה forward-ref [07-learning.md](07-learning.md)).
---
## 4. Invariants של התחום — תוכן החלטה מנומקת
חמשת ה-invariants הבאים הם **פאֶטים של [INV-G11](00-constitution.md#inv-g11-תוכן-החלטה-מנומקת)**.
כולם נושאים `מקור-סמכות` (היו"ר + מסמכי-הפרויקט), **ללא** שדה-מקורות-חיצוני ו**ללא**
סטטוס-אימות — כמתחייב מהבחנת שתי-הסמכויות בחוקה (§5).
### INV-WR1: רקע ניטרלי (בלוק ו) — עובדות בלבד
**כלל:** בלוק ו מציג **עובדות בלבד** ואינו טוען. אסורות מילות-ערך/שיפוט ("חריג",
"בעייתי", "למרבה הפליאה") ואסורים ציטוטים ישירים מצדדים (אלה שייכים לבלוק ז). החלטות
קודמות מובאות כעובדה יבשה ("ביום X נדחתה תכנית Y"), ללא נימוקים. ניטרליות אינה הסתרה:
עובדה מהותית התומכת בצד המפסיד **חייבת** להופיע.
**מקור-סמכות:** היו"ר (עו"ד דפנה תמיר) + [block-schema.md](../block-schema.md) (בלוק ו,
§5.2 "רקע ניטרלי") + [decision-methodology.md](../decision-methodology.md) §ח.2.
**אכיפה:** ולידציית-תוכן בבלוק ו (סעיף עם ציטוט-צד או מילת-שיפוט → לא שייך כאן) + שערי
QA; מפורט ב-[05-qa-review.md](05-qa-review.md).
**הפרה ידועה:**
### INV-WR2: ללא כפילות (בלוק י מפנה, לא חוזר)
**כלל:** בלוק י (דיון) **מפנה** לעובדות ולטענות שכבר הוצגו בבלוקים הקודמים ("כאמור
בסעיף X לעיל", "כפי שפורט") — ואינו חוזר עליהן. חריג יחיד: חזרה מכוונת עם שכבת-ניתוח
חדשה ("נשוב על כך כי…"). אין עובדות חדשות בדיון שלא הופיעו ברקע.
**מקור-סמכות:** היו"ר + [block-schema.md](../block-schema.md) (בלוק י, §5.2 "ללא
כפילות") + [skills/decision/SKILL.md](../../skills/decision/SKILL.md) §9.1.
**אכיפה:** ולידציית-מבנה (עובדה בדיון ללא עוגן ברקע = flag) + שערי QA;
מפורט ב-[05-qa-review.md](05-qa-review.md).
**הפרה ידועה:**
### INV-WR3: מענה לכל טענה של הצד המפסיד
**כלל:** כל **טענה עיקרית** שהוצגה בבלוק ז — ובמיוחד של הצד המפסיד — מקבלת **מענה
מנומק** בבלוק י (ישיר, "למעלה מן הצורך", או מקובץ עם דומותיה). מותר לא להכריע בטענה
נחוצה-פחות ("נוכח מסקנתנו לעיל, אין צורך…"), אך אסור להתעלם מטענה מרכזית — הצד המפסיד
חייב לראות שהוועדה שקלה את יסודות עמדתו (steel-manning).
**מקור-סמכות:** היו"ר + [decision-methodology.md](../decision-methodology.md) §§ג.2, ו.2 +
[block-schema.md](../block-schema.md) (בלוק י MUST: "מענה לכל טענה" §5.4) +
[skills/decision/SKILL.md](../../skills/decision/SKILL.md) §6.2.
**אכיפה:** מיפוי טענות-בלוק-ז → מענה-בלוק-י (נשען על §1.2, הטיעונים המאוגדים) + שערי QA;
מפורט ב-[05-qa-review.md](05-qa-review.md).
**הפרה ידועה:**
### INV-WR4: בלוק ז — טענות מקוריות בלבד
**כלל:** בלוק ז מכיל **אך ורק** טענות מכתבי-הטענות המקוריים (כתב-ערר, כתב-תשובה).
תוכן מהשלמות-טיעון, החלטות-ביניים, ותגובות-מאוחרות → **בלוק ח** (הליכים), לא בלוק ז.
הצגת-הטענות היא בנאמנות וללא הערכה ("טענה זו חלשה") — ההערכה שייכת לבלוק י.
**מקור-סמכות:** היו"ר + [block-schema.md](../block-schema.md) (בלוק ז Sources +
§5.2 "טענות מקוריות בלבד") + [skills/decision/SKILL.md](../../skills/decision/SKILL.md) §4.
**אכיפה:** סיווג-מקור של טענה בעת החילוץ (`extract_claims` מסנן `appeal`/`response`/
`objection`; מסמכי פוסט-דיון מתויגים `is_post_hearing` ומופנים לבלוק ח — block-schema.md §7)
+ שערי QA; מפורט ב-[05-qa-review.md](05-qa-review.md).
**הפרה ידועה:**
### INV-WR5: "מבחן-השופט" — החלטה עצמאית וקריאה
**כלל:** ההחלטה חייבת להיות **עצמאית וקריאה לשופט שלא מכיר את התיק** — תשתית עובדתית
מלאה (בלוק ו), תיעוד procedural-fairness (בלוק ח), והנמקה שעומדת בבדיקת סבירות
ומידתיות (בלוק י). הקורא לא נדרש לחומרי-המקור כדי להבין את ההחלטה ואת הצדקתה.
**מקור-סמכות:** היו"ר + [block-schema.md](../block-schema.md) §4.3 ("מבחן השופט" /
Judicial-Review weight) + [decision-methodology.md](../decision-methodology.md) §יב
(רשימת-ביקורת) + [corpus-analysis.md](../corpus-analysis.md).
**אכיפה:** שער QA סופי ("מבחן-השופט") על ההחלטה כיחידה שלמה;
מפורט ב-[05-qa-review.md](05-qa-review.md).
**הפרה ידועה:**
---
## 5. צ'קליסט-תוכן לפי סוג-ערר
בלוק י מקבל **צ'קליסט-תוכן** המוזרק אוטומטית ל-prompt לפי סוג-הערר, מתוך
`CONTENT_CHECKLISTS` ב-`mcp-server/src/legal_mcp/services/lessons.py:355`. הבורר
(`lessons.py:532-555`) ממפה לסוג: `tama38` (תמ"א 38) · `betterment_levy` (היטל-השבחה) ·
`licensing_property` · `licensing_threshold` (שאלת-סף) · `licensing_substantive`
(ברירת-מחדל לרישוי). הצ'קליסט מבטיח שהדיון מכסה את הנושאים התכנוניים/המשפטיים שדפנה
מכסה בפועל בקורפוס — ראה [corpus-analysis.md](../corpus-analysis.md) §§3, 6 לדפוסי-התוכן
ולפער שנסגר (§5.3). זהו מנגנון-תוכן באחריות היו"ר, לא חוק-הנדסה.
---
## 6. הפניות-אחיות
- [00-constitution.md](00-constitution.md#inv-g11-תוכן-החלטה-מנומקת) — INV-G11 + הבחנת
שתי-הסמכויות (תוכן-משפטי מול הנדסה).
- [03-retrieval.md](03-retrieval.md) — שכבת-האחזור (3 קורפוסי-פסיקה) שמזינה ציטוטים לבלוק י.
- [05-qa-review.md](05-qa-review.md) — שערי-QA שאוכפים את INV-WR1WR5 + שערים אנושיים.
- [06-export.md](06-export.md) — ייצוא DOCX לפי תבנית-דפנה (אחרי הכתיבה).
- [07-learning.md](07-learning.md) — לולאת פידבק-היו"ר + Hermes שמעדכנת lessons/SKILL.
- מסמכי-המקור המוסמכים: [block-schema.md](../block-schema.md) ·
[decision-methodology.md](../decision-methodology.md) ·
[legal-decision-lessons.md](../legal-decision-lessons.md) ·
[corpus-analysis.md](../corpus-analysis.md) ·
[skills/decision/SKILL.md](../../skills/decision/SKILL.md).