Chaim
161e370a4c
G12 Leak-Guard / leak-guard (pull_request) Successful in 4s
Lint — undefined names / undefined-names (pull_request) Successful in 11s
feat(precedents): איחוד cited_only↔missing_precedents — גזירת פסיקה-חסרה (#143, G2)
שתי מערכות מקבילות לאותו מושג ("פסיקה מצוטטת שטקסטה לא נקלט"): טבלת
missing_precedents (תור-רכישה ידני של היו"ר) מול case_law source_kind='cited_only'
(stubs מגרף-הציטוטים/X11). חפיפה≈0 → 31 ה-stubs לא הופיעו ב-/missing-precedents.
הכרעה (G2): missing_precedents = SoT-לתור-יחיד; cited_only = מקור-גילוי נגזר (כמו
יומונים מזינים radar). גוזרים רשומת missing_precedents 'open' לכל stub.
תיקון:
- court_citation.citation_dedup_key — מפתח-dedup **designator-aware**
(`{designator}|{docket}`). **מתקן פגם בתוכנית-הניתוח:** dedup על מספר-בלבד היה
ממזג בטעות אותו docket בערכאות שונות (בג"ץ 389/87 ≠ ע"א 389/87; 18 כאלה בקיים).
- סכמה V40: missing_precedents מקבל citation_norm (מפתח-dedup) + discovery_source
(manual|cited_only|digest|writer) + index. **בלי UNIQUE** — הקורפוס מחזיק
לגיטימית אותו docket בערכאות שונות; ייחודיות נאכפת designator-aware בנתיב-היצירה.
- create_missing_precedent: מחשב citation_norm בכתיבה (G1), מקבל discovery_source
+ linked_case_law_id. find_missing_precedent_by_citation: dedup דרך citation_norm
(fallback ל-citation גולמי כשאין מספר).
- scripts/derive_missing_from_cited_only.py: backfill citation_norm ל-291 +
גזירת 31 (dry-run: 31 ייווצרו, 0 deduped). linked_case_law_id=stub, status=open
→ promote-in-place בהעלאת-טקסט דרך ON CONFLICT הקיים. אידמפוטנטי.
תלוי-הקשר: #140 (הגדרת cited_only). מתואם עם #136 (digest→MP — אותו citation_norm
+ create path). תיקון-נתון יורץ אחרי הפריסה.
בדיקות: test_dedup_key_is_designator_aware (בג"ץ≠ע"א, ערר≠בל"מ, גרסאות-format
מתמזגות). כל 356 עוברות. guards נקיים.
Invariants: G2 (SoT-לתור יחיד, cited_only נגזר), G1 (citation_norm מנורמל בכתיבה),
G3 (idempotent upsert), G10 (שער-העלאה ידני נשמר), G12.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 08:56:34 +00:00
..
2026-04-16 18:49:30 +00:00
2026-05-30 21:27:54 +00:00
2026-06-15 03:21:10 +00:00
2026-06-12 04:37:15 +00:00
2026-06-15 04:21:15 +00:00
2026-06-06 19:29:36 +00:00
2026-06-06 17:41:39 +00:00
2026-06-01 04:34:23 +00:00
2026-06-15 08:56:34 +00:00
2026-04-28 17:37:52 +00:00
2026-04-26 06:57:41 +00:00
2026-04-16 18:49:30 +00:00
2026-06-06 17:51:56 +00:00
2026-06-15 04:09:54 +00:00
2026-06-15 04:03:21 +00:00
2026-05-31 08:57:42 +00:00
2026-06-11 16:29:24 +00:00
2026-06-11 16:13:24 +00:00
2026-06-07 18:18:41 +00:00
2026-06-11 16:34:47 +00:00
2026-06-15 02:54:35 +00:00
2026-06-12 06:47:58 +00:00
2026-06-07 18:18:41 +00:00
2026-06-10 09:08:16 +00:00
2026-06-11 15:52:13 +00:00
2026-05-30 22:07:18 +00:00
2026-06-15 03:34:43 +00:00
2026-06-11 16:42:22 +00:00
2026-06-11 16:50:50 +00:00
2026-06-06 19:45:43 +00:00
2026-06-12 07:19:48 +00:00
2026-05-31 11:35:07 +00:00
2026-06-10 09:52:35 +00:00
2026-06-10 09:40:42 +00:00
2026-05-30 17:46:59 +00:00
2026-05-30 22:13:18 +00:00
2026-06-12 06:59:34 +00:00
2026-06-06 16:32:07 +00:00
2026-06-11 19:57:12 +00:00
2026-06-12 11:30:25 +00:00
2026-06-11 19:57:12 +00:00
2026-06-08 07:47:49 +00:00
2026-05-31 11:14:44 +00:00
2026-04-16 18:49:30 +00:00
2026-06-12 07:32:04 +00:00