Statecheck
OpenCode · fe120a1a52 · recorded observations

Workflow case 231

status
mismatch
lane
paths
compared steps
3
Finding
dev and PR: shell cancellation wakes deleted session
Property
subagent.period-delivery
Diverged at
step 03 · delete:C
First difference
/errors/0
Minimized
spawn:fg:off → start:shell → delete:C (minimal)
Fig. 1

Execution trace

Observed counts after each compared action · each row scales to its own peak.
Inspect a stepLive sessions221Job rows010Requests122Inline replies001Outbox items000Reports000Errors00≠1
Bar · value against its row’s peakBold · changed since the previous step≠ · expected differs from observed

01 / 3spawn:fg:off

FieldExpected · modelObserved · service
claimed["C"]["C"]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[][]
markersCleantruetrue
notifyfalsefalse
outbox[][]
pending[][]
promises[][]
reports[][]
requests11
rows[][]

02 / 3start:shell

FieldExpected · modelObserved · service
claimed["C"]["C"]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[][]
markersCleantruetrue
notifyfalsefalse
outbox[][]
pending[][]
promises[][]
reports[][]
requests22
rows["shell:running"]["shell:running"]

03 / 3delete:C

First difference: /errors/0

FieldExpected · modelObserved · service
≠ errors[]["Failed to publish Session execution lifecycle"]
claimed[][]
exists["P"]["P"]
identitiestruetrue
inline[{"status":"cancelled","body":"Subagent cancelled","work":"shell"}][{"body":"Subagent cancelled","work":"shell","status":"cancelled"}]
markersCleantruetrue
notifynullnull
outbox[][]
pending[][]
promises[][]
reports[][]
requests22
rows[][]