fix(recovery): adopt ready-step policy once for saved assessments #374
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/dispatcher-assessment-policy-migration"
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 #373 live activation: an existing deferred read-only step assessment can still carry a pre-policy hour-long reserved backoff, so the new independent later-work selection cannot run promptly. Add trusted optional recovery strategy hook and atomic once-only policy marker. Enroll CURRENT, enabled non-paused/non-stopped/non-expired plans only after ordinary recovery policy permits them AND the sequential strategy proves exact matching settled assessment/intent identity. Preserve attempt/correction budgets and all worker effects. Set only read-only assessment due time; never a productive execution/replay grant. Old held-legacy/approval question/manual pause/opaque intents are excluded. No live ledger edits or competing writers.
6 regression cases: current old one-hour checkpoint runs independent publication without replay, reload/idempotency, manual pause, held-legacy, expiry, opaque intent and disabled session guards. Full suite/typecheck/build pass (2054 passed, 1 existing skip); preserving normal protected merge and exact-head CI before native activation.
LIVE VERIFIED: Both Shikamaru and Akira selected AND running Core
42c14cc577via supported native owner. Authenticated API identity and software provenance checked; installed scheduling code and process paths verified. No config/ledger edits, SIGKILL, cancelled mandates or maintenance-created business writer.Actual existing blocked execution 559dbf4d resumed under #373: persisted order [0,1,3,2], original blocked live-verification report retained, original stable publication intent step:559dbf4d-4a7b-4860-ac94-178c3c97734f:3:medium. Existing original worker ran real tools and published previously stranded test commit 938ae8e9ebdf2b84d645ab1f4a6cba8f3951e643 to the existing PR; remote head independently verified. This is not a claim that the genuine live dependency has been resolved or that the business PR is already merged. A newer parent timing decision woke its old retry while #374 was being prepared; the once-only migration is additionally covered by six old-hour-backoff recovery regressions, not falsely claimed as the cause of that particular wake.
Final #374 full suite 2054 passed / 1 existing skip / zero failures; typecheck/build pass. #373 and #374 exact-head Forgejo full-validation green before normal non-force merge. Real configured validator evaluated actual retained task read-only: independently selects source step 4 while refusing a required-approval bypass control. Evidence ~/.cache/hayate-maintenance/dispatcher-ready-step-scheduling/summary.json and original-writer-progress.json.