feat(halacha): סינון לפי תפקיד רטורי — fallback מחריג facts/טענות (#81.6) #187

Merged
chaim merged 1 commits from worktree-halacha-rhetorical-prefilter into main 2026-06-11 15:52:53 +00:00
Owner

מה

חילוץ-הלכות מוגבל למקטעי הנמקה/הכרעה בלבד. סוגר את הפער במסלול ה-fallback: כשה-chunker לא תייג שום מקטע כ-extractable (כותרות לא-תקניות → הכול other), הקוד נפל קודם לכל ה-chunks — והחזיר בדיוק את המקטעים שהמסנן הראשי מחריג (רקע עובדתי + טענות הצדדים). בלבול Facts↔Reasoning הוא מחלקת-השגיאה הדומיננטית (LegalSeg), כך שהזנת עובדות לחילוץ פוגעת ישירות ב-precision.

איך

  • NON_REASONING_SECTIONS = (facts, appellant_claims, respondent_claims, intro) — מקטעים שסווגו בוודאות כלא-הנמקה.
  • _select_extractable_chunks() — מרכז את מדיניות-הבחירה (primary + fallback) בפונקציה אחת, המשמשת גם את הבחירה הראשית וגם את ה-re-read לקביעת-סטטוס. ה-fallback מחריג את NON_REASONING_SECTIONS ועדיין מגיע להנמקה שנחתה תחת other. מסמך שכולו עובדות/טענות → אפס מועמדים (חילוץ לא רץ על הרקע העובדתי).

Invariants

  • G1 — נרמול-במקור: סינון בנקודת-בחירת-המועמדים, לא תיקון-בקריאה במורד-הזרם.
  • G2 — אין מסלול מקביל: helper יחיד משותף לבחירה הראשית ול-re-read (קודם הייתה לוגיקת-fallback כפולה inline).
  • INV-LRN2 — quality-at-source (האחריות לאיכות קרוב לנקודת-היצירה).

בדיקות

  • 4 חדשות: tests/test_halacha_rhetorical_prefilter.py (primary-only / fallback-excludes-args / all-nonreasoning-extracts-nothing / disjoint-sets).
  • רגרסיה: 61 בדיקות-הלכה קיימות (coerce/quality/reextract) עוברות; מודול נטען נקי.

🤖 Generated with Claude Code

## מה חילוץ-הלכות מוגבל למקטעי **הנמקה/הכרעה** בלבד. סוגר את הפער במסלול ה-fallback: כשה-chunker לא תייג שום מקטע כ-extractable (כותרות לא-תקניות → הכול `other`), הקוד נפל קודם ל**כל** ה-chunks — והחזיר בדיוק את המקטעים שהמסנן הראשי מחריג (רקע עובדתי + טענות הצדדים). בלבול Facts↔Reasoning הוא מחלקת-השגיאה הדומיננטית (LegalSeg), כך שהזנת עובדות לחילוץ פוגעת ישירות ב-precision. ## איך - `NON_REASONING_SECTIONS = (facts, appellant_claims, respondent_claims, intro)` — מקטעים שסווגו בוודאות כלא-הנמקה. - `_select_extractable_chunks()` — מרכז את מדיניות-הבחירה (primary + fallback) בפונקציה אחת, המשמשת **גם** את הבחירה הראשית **וגם** את ה-re-read לקביעת-סטטוס. ה-fallback מחריג את `NON_REASONING_SECTIONS` ועדיין מגיע להנמקה שנחתה תחת `other`. מסמך שכולו עובדות/טענות → אפס מועמדים (חילוץ לא רץ על הרקע העובדתי). ## Invariants - **G1** — נרמול-במקור: סינון בנקודת-בחירת-המועמדים, לא תיקון-בקריאה במורד-הזרם. - **G2** — אין מסלול מקביל: helper יחיד משותף לבחירה הראשית ול-re-read (קודם הייתה לוגיקת-fallback כפולה inline). - **INV-LRN2** — quality-at-source (האחריות לאיכות קרוב לנקודת-היצירה). ## בדיקות - 4 חדשות: `tests/test_halacha_rhetorical_prefilter.py` (primary-only / fallback-excludes-args / all-nonreasoning-extracts-nothing / disjoint-sets). - רגרסיה: 61 בדיקות-הלכה קיימות (coerce/quality/reextract) עוברות; מודול נטען נקי. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
chaim added 1 commit 2026-06-11 15:52:41 +00:00
feat(halacha): rhetorical-role pre-filter — fallback excludes facts/arguments (#81.6)
All checks were successful
G12 Leak-Guard / leak-guard (pull_request) Successful in 5s
3c169a76f2
חילוץ-הלכות מוגבל למקטעי הנמקה/הכרעה בלבד (INV-LRN2 quality-at-source). הפער שנסגר:
מסלול ה-fallback (כשה-chunker לא תייג שום מקטע כ-extractable, כותרות לא-תקניות →
הכול 'other') נפל קודם ל**כל** ה-chunks — והחזיר בדיוק את המקטעים שהמסנן הראשי מחריג
(רקע עובדתי + טענות הצדדים). בלבול Facts↔Reasoning הוא מחלקת-השגיאה הדומיננטית
(LegalSeg), כך שהזנת עובדות לחילוץ פוגעת ישירות ב-precision.

- NON_REASONING_SECTIONS = (facts, appellant_claims, respondent_claims, intro)
- _select_extractable_chunks(): מרכז את מדיניות-הבחירה (primary + fallback) בפונקציה
  אחת המשמשת גם את הבחירה הראשית וגם את ה-re-read לקביעת-סטטוס (G2 — מקור-אמת יחיד,
  אין מסלול מקביל). ה-fallback מחריג את NON_REASONING_SECTIONS ועדיין מגיע להנמקה
  שנחתה תחת 'other'.

invariants: G1 (נרמול-במקור, לא תיקון-בקריאה) · G2 (אין מסלול מקביל) · INV-LRN2 (quality-at-source).
tests: 4 חדשות (primary/fallback-excludes-args/all-nonreasoning/disjoint-sets) + 61 בדיקות-הלכה קיימות עוברות.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
chaim merged commit d837101edd into main 2026-06-11 15:52:53 +00:00
chaim deleted branch worktree-halacha-rhetorical-prefilter 2026-06-11 15:52:53 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ezer-mishpati/legal-ai#187