fix(operations): disabling the halacha drain stops a running process immediately #241
Reference in New Issue
Block a user
Delete Branch "worktree-drain-disable-stop"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
הבעיה
הטוגל
disabledב-/operationsכתב רק אתdrain_controls.disabled— דגל שהדריינר בודק רק בעלייה. דריינר שכבר באמצע ריצה המשיך עד שהתור התרוקן או עד שחלון-הלילה נסגר. כיבוי לא עצר דריינר רץ.התיקון — 3 שכבות (מיידי + גיבויים)
web/app.py(operations_drain_toggle): בעת כיבוי, עוצר גם את התהליך הרץ מיד דרך ה-pm2 bridge של ה-host (_ops_pm2_control). best-effort — כשל-bridge לא מפיל את הטוגל.halacha_drain_supervisor.py: כל טיק קורא את דגל-הכיבוי (נוסף ל-db_snapshot); כשכבוי → עוצר את הדריינר ולא מצית, ללא תלות ב-burst/חלון. גיבוי אם מסלול ה-UI נכשל (≤ טיק אחד).drain_halacha_queue.py: בדיקתis_drain_disabledבתחילת כל סבב → דריינר שכובה באמצע נעצר בגבול-הסבב הבא. per-chunk checkpoints = התיק שבעיבוד לא מאבד כלום.SCRIPTS.mdעודכן לדריינר ולסופרוייזר.אימות
/pm2/controlקיים+עובד.ast.parse.Invariants
drain_controls, בלי מסלול-בקרה מקביל.🤖 Generated with Claude Code