Fence automatic retry of historical paused dispatcher workers on upgrade #338

Merged
karsten merged 1 commit from fix/stale-worker-reactivation into main 2026-11-11 08:30:58 +00:00
Owner

Follow-up to #337, integrating parallel #335 technical pause recovery. Prevent the dispatcher from resurrecting old paused/blocked internal failures just because a new runtime has automatic retry support.

Host-owned enrollment is saved before dispatcher startup. Real running work and accepted non-retry ready workers remain current; historical paused/blocked/retry entries are retained and fenced. New submissions are current. Explicit normal resume/resolve reenrolls one worker under existing intent/deadline checks. Parent ongoing-work recognition excludes held children. No worker cancellation, deletion or replay.

Full exact candidate suite: 1865 passed / one optional skip / zero failures. Native typecheck/build/diff-check passed. Dedicated regression retains running/ready jobs, fences old runtime failure at dispatcher scheduling, and checks explicit resume. Operator requested complete stale-task repair and fleet rollout.

Follow-up to #337, integrating parallel #335 technical pause recovery. Prevent the dispatcher from resurrecting old paused/blocked internal failures just because a new runtime has automatic retry support. Host-owned enrollment is saved before dispatcher startup. Real running work and accepted non-retry ready workers remain current; historical paused/blocked/retry entries are retained and fenced. New submissions are current. Explicit normal resume/resolve reenrolls one worker under existing intent/deadline checks. Parent ongoing-work recognition excludes held children. No worker cancellation, deletion or replay. Full exact candidate suite: 1865 passed / one optional skip / zero failures. Native typecheck/build/diff-check passed. Dedicated regression retains running/ready jobs, fences old runtime failure at dispatcher scheduling, and checks explicit resume. Operator requested complete stale-task repair and fleet rollout.
fix: extend recovery enrollment boundary to historical dispatcher failures
All checks were successful
decision-interface-ci / full-validation (pull_request) Successful in 2m22s
52ec984330
Author
Owner

DELIVERED: 0.1.234 / 52ac9d4 / immutable sha256:b32a4948c9915c4aa930229d610c5eca05ac76c8cb6a7d824dc9827fc5761781 live and independently verified on all TEN observed active installations: Che, Randy, Minato, Kakashi, SaaStaq Moist, SaaStaq Odo, Shikamaru, live Peter native Linux .103, Akira and separate native macOS Karsten. Native process/pointer/API identities checked; all six K8s workloads Ready on exact digest. Installed compiled-code historical permit/queue smoke passed on all ten. Live stored-state invariants passed: no held task active, no held worker running, no held generated input in executable pending. Snapshot examples: Peter 215 held nonterminal tasks / 17 held workers; Akira 194 / 62. History/checkpoints retained, true ongoing exact-owner work preserved. Full integrated suite 1865 passed / one optional skip. Owner activation used supported checkpoint restart where idle unavailable, explicitly NOT represented as an idle lease; no SIGKILL/global cancellation/data cleanup. Detailed receipt ~/.cache/hayate-maintenance/stale-task-delivery/verified-fleet.json and project notes/stale-task-recovery-delivery-2026-11-11.md. Kubernetes Karsten intentionally remains replicas 0; absent legacy installations not recreated. Core #338 complements #337 with direct historical-worker automatic retry fence.

DELIVERED: 0.1.234 / 52ac9d4 / immutable sha256:b32a4948c9915c4aa930229d610c5eca05ac76c8cb6a7d824dc9827fc5761781 live and independently verified on all TEN observed active installations: Che, Randy, Minato, Kakashi, SaaStaq Moist, SaaStaq Odo, Shikamaru, live Peter native Linux .103, Akira and separate native macOS Karsten. Native process/pointer/API identities checked; all six K8s workloads Ready on exact digest. Installed compiled-code historical permit/queue smoke passed on all ten. Live stored-state invariants passed: no held task active, no held worker running, no held generated input in executable pending. Snapshot examples: Peter 215 held nonterminal tasks / 17 held workers; Akira 194 / 62. History/checkpoints retained, true ongoing exact-owner work preserved. Full integrated suite 1865 passed / one optional skip. Owner activation used supported checkpoint restart where idle unavailable, explicitly NOT represented as an idle lease; no SIGKILL/global cancellation/data cleanup. Detailed receipt ~/.cache/hayate-maintenance/stale-task-delivery/verified-fleet.json and project notes/stale-task-recovery-delivery-2026-11-11.md. Kubernetes Karsten intentionally remains replicas 0; absent legacy installations not recreated. Core #338 complements #337 with direct historical-worker automatic retry fence.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
harness/core!338
No description provided.