feat(watchdog): auto-escalation של zombie-loops ל-chair — סגירת הלולאה (#218+#222) #408
Reference in New Issue
Block a user
Delete Branch "worktree-zombie-auto-escalate"
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?
מה
ה-follow-up שמרכיב את 4 הפרוסות שמוזגו לclosed-loop אמיתי: לולאת-recovery → מזוהה (#222) → נמסרת-לאדם (#218) → נספרת (#219), במקום לשרוף budget עד שאדם שם לב. זה ה-watchdog של Gastown (Deacon), דרך ה-reaper הקיים — לא tier חדש.
איך
_zombie_escalation_loopב-lifespan (כל 15 דק', לצד ה-reaper של #215):pc_get_agent_health(#222).≥ ZOMBIE_ESCALATE_MIN_RECOVERY=2יקיצות-שחזור) →pc_escalate_issueהloop-safe (#218). הטלמטריהagent.escalated(#219) נדלקת מה-Port.zombie_escalation(item)ב-agent_health(severity: ≥5→high, אחרת→medium; סף מסנן יקיצה-חולפת מלולאה אמיתית).AGENT_ZOMBIE_AUTO_ESCALATE=0להשבתה (בריאות עדיין נצפית, escalate ידני עדיין ב-endpoint). ברירת-מחדל ON — הלולאות שורפות budget והתרופה (reassign-לchair) מוכחת ידנית.Invariants
בדיקות + בטיחות
4 בדיקות policy חדשות (11 סה"כ ב-
test_agent_health.py) ✅. dry-run חי read-only: 6 issues פתוחים → 0 zombies → 0 הסלמות על deploy (blast-radius מינימלי; יפעל רק כשתופיע לולאה אמיתית).⚠️ לתשומת-לבך
זו התנהגות-ריצה חדשה שמשייכת-מחדש issues-zombie אליך אוטומטית. ברירת-המחדל ON כי לולאות-recovery שורפות budget וה-reassign-לchair הוא בדיוק התיקון הידני שאני מבצע שוב-ושוב. אם תעדיף לצפות קודם —
AGENT_ZOMBIE_AUTO_ESCALATE=0ב-Coolify env.🤖 Generated with Claude Code