feat(X13): טריגר אוטומטי מיומונים → אחזור פסיקה + כלי drain #117

Merged
chaim merged 1 commits from worktree-court-fetch-trigger into main 2026-06-07 20:04:46 +00:00
Owner

למה

סוגר את הלולאה של הפיצ'ר המקורי: יומון שמצביע על פס"ד בית-משפט שאינו בקורפוס → אחזור אוטומטי + קליטה + קישור-חזרה ליומון. מתקן את הפער שב-X12 (try_autolink שנכשל בלע את הפער בשקט — INV-DIG3/INV-CF2).

מה השתנה

  • digest_library.try_autolink — בכשל-קישור: אם הציטוט מסווג כפס"ד-בימ"ש (supreme/admin) → _enqueue_court_fetch יוצר court_fetch_jobs(status=pending) מקושר ליומון. ועדת-ערר (skip) לא מוזנק (נדרש נבו). never-raises — לא שובר קליטת-יומון.
  • orchestrator.drain_pending(limit) — מנקז pending/failed סדרתי עם cooldown (INV-CF4); fetch+ingest לכל job; בהצלחה מקשר את היומון ל-case_law שנקלט (סוגר INV-DIG3). כשל → נרשם ומתוזמן-מחדש עד הסלמה ל-manual (INV-CF3).
  • כלי-MCP court_fetch_drain + רישום ב-server.py.
  • X13 spec — הפער ב-INV-CF2 סומן כמתוקן.

הזרימה המלאה (עכשיו אוטומטית מקצה-לקצה)

יומון נקלט → underlying_citation → try_autolink
  ├─ נמצא בקורפוס → קישור
  └─ לא נמצא:
       ├─ פס"ד בימ"ש → court_fetch_jobs(pending)  ──┐
       └─ ועדת ערר   → (לא מוזנק; נבו ידני)          │
                                                      ▼
              court_fetch_drain → [Tier-0/Tier-1 fetch] → ingest_precedent
                                → קישור היומון ל-case_law (INV-DIG3 ✓)

אימות (מול ה-DB החי)

  • עת"מ 46111-12-22 → job: tier=admin, status=pending, digest מקושר.
  • ערר 1110/20לא מוזנק (skip).
  • compile + import של כל השרשרת; שורת-הבדיקה נוקתה.

הקשר deploy (כבר חי בשרת)

שירות-האחזור legal-court-fetch-service + legal-court-fetch-xvfb רצים ב-pm2; אומת end-to-end — POST חי הוריד את 46111-12-22 (34 עמ', 5.95MB). הסוד COURT_FETCH_SHARED_SECRET הוקצה (env מקומי). ה-drain הוא כלי מקומי (ingest = claude CLI), מופעל ע"י CEO/ידנית כמו precedent_process_pending.

🤖 Generated with Claude Code

## למה סוגר את הלולאה של הפיצ'ר המקורי: **יומון שמצביע על פס"ד בית-משפט שאינו בקורפוס → אחזור אוטומטי + קליטה + קישור-חזרה ליומון**. מתקן את הפער שב-X12 (`try_autolink` שנכשל בלע את הפער בשקט — INV-DIG3/INV-CF2). ## מה השתנה - **`digest_library.try_autolink`** — בכשל-קישור: אם הציטוט מסווג כפס"ד-בימ"ש (`supreme`/`admin`) → `_enqueue_court_fetch` יוצר `court_fetch_jobs(status=pending)` מקושר ליומון. **ועדת-ערר (`skip`) לא מוזנק** (נדרש נבו). never-raises — לא שובר קליטת-יומון. - **`orchestrator.drain_pending(limit)`** — מנקז `pending`/`failed` **סדרתי** עם cooldown (INV-CF4); fetch+ingest לכל job; בהצלחה **מקשר את היומון** ל-`case_law` שנקלט (סוגר INV-DIG3). כשל → נרשם ומתוזמן-מחדש עד הסלמה ל-`manual` (INV-CF3). - **כלי-MCP `court_fetch_drain`** + רישום ב-server.py. - **X13 spec** — הפער ב-INV-CF2 סומן כמתוקן. ## הזרימה המלאה (עכשיו אוטומטית מקצה-לקצה) ``` יומון נקלט → underlying_citation → try_autolink ├─ נמצא בקורפוס → קישור └─ לא נמצא: ├─ פס"ד בימ"ש → court_fetch_jobs(pending) ──┐ └─ ועדת ערר → (לא מוזנק; נבו ידני) │ ▼ court_fetch_drain → [Tier-0/Tier-1 fetch] → ingest_precedent → קישור היומון ל-case_law (INV-DIG3 ✓) ``` ## אימות (מול ה-DB החי) - ✅ `עת"מ 46111-12-22` → job: `tier=admin, status=pending`, digest מקושר. - ✅ `ערר 1110/20` → **לא** מוזנק (skip). - ✅ compile + import של כל השרשרת; שורת-הבדיקה נוקתה. ## הקשר deploy (כבר חי בשרת) שירות-האחזור `legal-court-fetch-service` + `legal-court-fetch-xvfb` רצים ב-pm2; אומת end-to-end — POST חי הוריד את 46111-12-22 (34 עמ', 5.95MB). הסוד `COURT_FETCH_SHARED_SECRET` הוקצה (env מקומי). ה-drain הוא כלי מקומי (ingest = claude CLI), מופעל ע"י CEO/ידנית כמו `precedent_process_pending`. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
chaim added 1 commit 2026-06-07 20:04:40 +00:00
סוגר את הלולאה — יומון שמצביע על פס"ד בית-משפט שלא בקורפוס מזניק אחזור
אוטומטי, וקושר את היומון חזרה אחרי הקליטה (INV-DIG3 + INV-CF2).

- digest_library.try_autolink: בכשל-קישור, אם הציטוט מסווג כפס"ד-בימ"ש
  (supreme/admin) → _enqueue_court_fetch יוצר court_fetch_jobs(pending);
  ועדת-ערר (skip) לא מוזנק. never-raises (לא שובר קליטת-יומון).
- orchestrator.drain_pending(limit): מנקז pending/failed סדרתי (cooldown,
  INV-CF4), fetch+ingest לכל אחד; בהצלחה מקשר את היומון ל-case_law שנקלט.
- כלי-MCP court_fetch_drain + רישום ב-server.py.
- X13 spec: עודכן (הפער ב-INV-CF2 סומן כמתוקן).

נבדק מול ה-DB: עת"מ 46111-12-22 → job tier=admin pending digest-linked;
ערר 1110/20 → לא מוזנק. כלי מקומי בלבד (ingest = claude CLI).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
chaim merged commit b9fa38f3db into main 2026-06-07 20:04:46 +00:00
chaim deleted branch worktree-court-fetch-trigger 2026-06-07 20:04:46 +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#117