Fence automatic retry of historical paused dispatcher workers on upgrade #338
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/stale-worker-reactivation"
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 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.
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.