Statecheck
OpenCode · fe120a1a52 · recorded observations

Workflow case 611

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

Execution trace

Observed counts after each compared action · each row scales to its own peak.
Inspect a stepLive sessions22222222222222Job rows00001000001001Requests11112223345566Inline replies00000000011111Outbox items00000000000000Reports00000000000000Errors00000000000000promises0000111111222≠4
Bar · value against its row’s peakBold · changed since the previous step≠ · expected differs from observed

01 / 14spawn:fg:on

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

02 / 14follow:fg:off

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

03 / 14crash

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

04 / 14restart

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

05 / 14follow:bg:off

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

06 / 14answer:empty

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

07 / 14wake:empty

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

08 / 14prompt

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

09 / 14follow:fg:keep

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

10 / 14answer:text

FieldExpected · modelObserved · service
claimed[][]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[{"status":"completed","body":"answer-4","work":""}][{"status":"completed","body":"answer-4","work":""}]
markersCleantruetrue
notifyfalsefalse
outbox[][]
pending[][]
promises[false][false]
reports[][]
requests44
rows[][]

11 / 14follow:bg:off

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

12 / 14answer:text

FieldExpected · modelObserved · service
claimed[][]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[{"status":"completed","body":"answer-4","work":""}][{"status":"completed","body":"answer-4","work":""}]
markersCleantruetrue
notifyfalsefalse
outbox[][]
pending[][]
promises[false,false][false,false]
reports[][]
requests55
rows[][]

13 / 14follow:fg:keep

FieldExpected · modelObserved · service
claimed["C"]["C"]
errors[][]
exists["C","P"]["C","P"]
identitiestruetrue
inline[{"status":"completed","body":"answer-4","work":""}][{"status":"completed","body":"answer-4","work":""}]
markersCleantruetrue
notifyfalsefalse
outbox[][]
pending[][]
promises[false,false][false,false]
reports[][]
requests66
rows[][]

14 / 14follow:bg:on

First difference: /promises/2

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