mirror of
https://github.com/openclaw/openclaw.git
synced 2026-10-29 10:19:36 +08:00
* fix(update): failed updates that never activated keep their capture forever A failed update that stopped before repair or activation left its original-state capture protected as unresolved-failed-update, although the installation and state never changed. isNeverActivatedFailedUpdate proves this from required ledger phase receipts. Cleanup classifies such captures as never-activated-update-capture candidates, the failed run's terminal runs the existing automatic recovery cleanup (releasing only its own capture guard), and update status reports leftover sets as stale. * test(update): stub never-activated check in the restart outcome harness The terminal now asks whether a failed run never activated before running its own recovery cleanup. Every case in this harness fails after the swap.