--- docs/plans/chat-01/check.mjs 2026-10-10 02:12:15.889001792 -0500 +++ model/second/check.mjs 2026-10-10 03:08:54.562481270 -0500 @@ -335,7 +335,7 @@ // ends output, so an engine exit never supersedes a force stop, finished // or not, nor a second engine exit. const current = w.stops.find(s => s.id === w.binding.stop); - if (ending(current?.mode)) return bad('stop-owned'); + if (current?.mode === 'force-stop') return bad('stop-owned'); const outcome = startStop(w, { id: null, connection: null, target: targetOf(w) }, 'engine-exit'); // Dispatched input has no engine left to report it: unknown, not failed. // Working input was delivered; it keeps its state and no outcome is inferred.