Files
orca/skill-guides
Jinwoo Hong 3047353017 fix(orchestration): worker-abandon settles a stuck worker and records who did it (#23983)
* fix(orchestration): worker-abandon settles a stuck worker and records who abandoned it

worker-abandon refused or no-oped in the states it exists to escape: a stop
stranded by a dead runtime, an active attempt that was no longer the Task's
latest, and settled workers whose terminal release was stuck at requested or
unknown. It now settles every non-terminal worker except this runtime's own
in-flight stop, records who abandoned it, and retains (never closes) an owned
terminal whose release is not already in flight.

Part of STA-8833.

* refactor(orchestration): abandon retains through worker-retain's rule; record cancellations

- One retain helper serves worker-retain and worker-abandon. A committed release (releasing, unknown) keeps its state and archive, since the tab may already be closed; a retained terminal drops its stale archive.
- worker-abandon keeps the published stale field (this attempt was not the Task's current one) on the worker path.
- task-list shows a failed Task's reason, whitespace-collapsed; task-update help and the recovery guide document cancel = failed + --result cancelled.

* test(orchestration): drop duplicate abandon asserts; leave task-list output unchanged

Cancellation stays documented in task-update help and the recovery guide.

* fix(orchestration): abandoning an already-settled worker changes nothing

Only the settling path retains an owned terminal.

* fix(orchestration): attribute abandon only to a verified caller and keep the prior diagnostic

* fix(orchestration): report an already-settled abandon as stale, as main did
2026-09-30 13:41:34 -04:00
..