feat(pipeline): עמידות ל-final_learning דרך ה-runtime המשותף (P1, X16, #115) #179

Merged
chaim merged 1 commits from worktree-durable-final-learning into main 2026-06-10 09:57:24 +00:00
Owner

מה ולמה

P1 (X16). מחיל את scripts/_pipeline_runtime.py (מ-P0) על final_learning_pipelineאותו runtime עמידות לשני הפייפליינים (G2, לא מימוש מקביל).

3 הצעדים ([1] ingest_final_version/דיסטילציית-Opus · [2] enroll style_corpus · [3] style-panel) רצים דרך ה-runtime. קריסה/OOM בפאנל [3] ממשיכה מ-[3] במקום לשלם שוב על דיסטילציית-ה-Opus היקרה [1]. CLI זהה + --fresh. שגיאת-ingest קריטית → halt + יציאה-נקייה non-zero (resume מנסה שוב). degradation חיננית כמו ב-P0.

Invariants — הצהרה (חובה)

  • נוגע / מקיים: INV-DUR1 · G2 (runtime יחיד) · G3 (idempotency).

צ'קליסט — פרוטוקול כתיבת-קוד

  • קראתי X16 + final_learning + _pipeline_runtime (P0)
  • לא יוצר מסלול מקביל (G2) — חוזר על ה-runtime, לא משכפל
  • אין בליעה שקטה — ingest fatal→raise; שאר הצעדים מתעדים
  • בדקתי מול X16 — זהו P1
  • בדיקות עוברות

אימות

py_compile final_learning_pipeline → OK
מיובא נקי ב-venv המשותף (langgraph נעדר, lazy import) → OK
מנגנון ה-runtime → מכוסה ב-test_pipeline_runtime.py (P0; אותו runtime)

⚠️ עמידות בייצור פעילה לאחר pip install -e ".[durable]" בעץ הראשי (כמו P0).

🤖 Generated with Claude Code

## מה ולמה P1 (X16). מחיל את `scripts/_pipeline_runtime.py` (מ-P0) על `final_learning_pipeline` — **אותו runtime עמידות לשני הפייפליינים** (G2, לא מימוש מקביל). 3 הצעדים ([1] `ingest_final_version`/דיסטילציית-Opus · [2] enroll style_corpus · [3] style-panel) רצים דרך ה-runtime. קריסה/OOM בפאנל [3] **ממשיכה מ-[3]** במקום לשלם שוב על דיסטילציית-ה-Opus היקרה [1]. CLI זהה + `--fresh`. שגיאת-ingest קריטית → halt + יציאה-נקייה non-zero (resume מנסה שוב). degradation חיננית כמו ב-P0. ## Invariants — הצהרה (חובה) - **נוגע / מקיים:** **INV-DUR1** · **G2** (runtime יחיד) · **G3** (idempotency). ## צ'קליסט — פרוטוקול כתיבת-קוד - [x] קראתי X16 + final_learning + _pipeline_runtime (P0) - [x] לא יוצר מסלול מקביל (G2) — חוזר על ה-runtime, לא משכפל - [x] אין בליעה שקטה — ingest fatal→raise; שאר הצעדים מתעדים - [x] בדקתי מול X16 — זהו P1 - [x] בדיקות עוברות ## אימות ``` py_compile final_learning_pipeline → OK מיובא נקי ב-venv המשותף (langgraph נעדר, lazy import) → OK מנגנון ה-runtime → מכוסה ב-test_pipeline_runtime.py (P0; אותו runtime) ``` ⚠️ עמידות בייצור פעילה לאחר `pip install -e ".[durable]"` בעץ הראשי (כמו P0). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
chaim added 1 commit 2026-06-10 09:57:18 +00:00
feat(pipeline): durable execution for final_learning via shared runtime (P1, X16/INV-DUR1, #115)
All checks were successful
G12 Leak-Guard / leak-guard (pull_request) Successful in 6s
b2912e1b83
מחיל את scripts/_pipeline_runtime.py (מ-P0) על final_learning_pipeline: 3 הצעדים
([1]ingest/Opus-distillation [2]enroll-style-corpus [3]style-panel) רצים דרך אותו
runtime עמידות — מימוש אחד לשני הפייפליינים (G2), לא מימוש מקביל.

קריסה/OOM בפאנל-הסגנון [3] ממשיכה מ-[3] במקום לשלם שוב על דיסטילציית-ה-Opus [1]
(היקרה). thread יציב לכל תיק (learning:{case}); dry-run = preview נפרד. CLI זהה +
--fresh. שגיאת ingest קריטית → raise → halt + clean non-zero exit (resume מנסה שוב).
degradation חיננית כמו ב-P0 (ללא langgraph → ליניארי).

אימות: py_compile OK; מיובא נקי ב-venv המשותף (langgraph נעדר, lazy import). מנגנון
ה-runtime עצמו מכוסה ב-test_pipeline_runtime.py (P0) — אותו runtime.

Invariants: INV-DUR1 (עמידות), G2 (runtime יחיד), G3 (idempotency).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
chaim merged commit dd67318394 into main 2026-06-10 09:57:24 +00:00
chaim deleted branch worktree-durable-final-learning 2026-06-10 09:57:24 +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#179