Statecheck
OpenCode · fe120a1a52 · recorded observations

Workflow case 579

status
mismatch
lane
sample
compared steps
7
Finding
PR: stale notification promise
Property
subagent.period-delivery
Diverged at
step 07 · follow:bg:off
First difference
/promises/2
Minimized
spawn:bg:on@launch → crash → restart → follow:bg:keep → answer:text → follow:fg:on → follow:bg:off (minimal)
Fig. 1

Execution trace

Observed counts after each compared action · each row scales to its own peak.

Compared 7 of 14 requested actions.

Inspect a stepLive sessions2222222Job rows1111001Requests0011233Inline replies0000000Outbox items0000000Reports0000111Errors0000000promises111222≠4
Bar · value against its row’s peakBold · changed since the previous step≠ · expected differs from observed

01 / 7spawn:bg:on@launch

FieldExpected · modelObserved · service
claimed[][]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[][]
markersCleantruetrue
notifytruetrue
outbox[][]
pending[][]
promises[true][true]
reports[][]
requests00
rows["C:running"]["C:running"]

02 / 7crash

FieldExpected · modelObserved · service
claimed[][]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[][]
markersCleantruetrue
notifytruetrue
outbox[][]
pending[][]
promises[true][true]
reports[][]
requests00
rows["C:running"]["C:running"]

03 / 7restart

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

04 / 7follow:bg:keep

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

05 / 7answer:text

FieldExpected · modelObserved · service
claimed[][]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[][]
markersCleantruetrue
notifytruetrue
outbox[][]
pending[][]
promises[true,true][true,true]
reports[{"from":"C","to":"P","status":"completed","body":"answer-1","work":""}][{"from":"C","to":"P","status":"completed","body":"answer-1","work":""}]
requests22
rows[][]

06 / 7follow:fg:on

FieldExpected · modelObserved · service
claimed["C"]["C"]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[][]
markersCleantruetrue
notifytruetrue
outbox[][]
pending[][]
promises[true,true][true,true]
reports[{"from":"C","to":"P","status":"completed","body":"answer-1","work":""}][{"from":"C","to":"P","status":"completed","body":"answer-1","work":""}]
requests33
rows[][]

07 / 7follow:bg:off

First difference: /promises/2

FieldExpected · modelObserved · service
≠ promises[true,true,false,false][true,true,true,false]
claimed["C"]["C"]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[][]
markersCleantruetrue
notifyfalsefalse
outbox[][]
pending[][]
reports[{"from":"C","to":"P","status":"completed","body":"answer-1","work":""}][{"from":"C","to":"P","status":"completed","body":"answer-1","work":""}]
requests33
rows["C:running"]["C:running"]