mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-11-09 07:10:34 +01:00
A local per-turn turn can have its result accepted while runner.suspend does not finish under load. The Runner's own receipt then stays unsuspended, and the next run failed with prior_owner_terminal_state_indeterminate; retirement_refused=target_not_sandbox_runner and quarantined the root. Retirement now also applies to a local Runner when the prior run's recorded Runner process (and any recorded provider process) is proven stopped by exact PID and start time, the same checks restart recovery uses. Only the Runner's own lifecycle commands may be unfinished; every other proof is unchanged. A live or unverifiable process keeps the named rejection. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>