# PR #21460 evidence summary (fs-33, recorded fixtures + synthetic tests; no running server, no live OpenCode)

BEFORE 8d3b061121fe65669d5d43d011b48cd3027a4108 | AFTER 4cc74410d2b2433b50a1e02c1b725c901941557c | driver commit 9b97de29a6 (ev/21460-after, not pushed)

## Driver (transcript-before.txt / transcript-after.txt)
| row | fixture (recorded) | BEFORE | AFTER |
|---|---|---|---|
| R1 | opencode2_nested_background | FAIL: no pendingBackgroundWork snapshot published on any native thread | PASS: root+middle publish true while grandchild/report pending, all three end false after middle turn:2 completes |
| R1-compat | opencode2_background | FAIL (flag absent) | PASS |
| R2c-compat | opencode2_resume_after_restart | PASS | PASS |
| R2c-compat | opencode2_interrupt | PASS | PASS |
| R3 | opencode2_simple | PASS | PASS |
| R3 | opencode2_tool_call | PASS | PASS |

Observable at a running server at AFTER alone (domain provider-thread.updated rows, R1): the middle session's pendingBackgroundTasks
now lists the grandchild call (intermediate-ancestor refresh); BEFORE only the root's roster carried it. Extra rows only, run outcome unchanged.

## Named synthetic tests (OpenCode2AdapterV2.test.ts, -t filter, 3 tests)
| test | BEFORE (AFTER test file transplanted) | AFTER | AFTER minus the two 4cc74410d2 lines |
|---|---|---|---|
| R1 "keeps ... pending until its native continuation ends" | FAIL (:912 expected undefined to equal true) | PASS | PASS |
| R2b "clears a nested report cancelled during a held wake" | FAIL (:1339 expected undefined to equal false) | PASS | PASS |
| R2 "clears the caller's pending work when a called session's held wake runs" | FAIL (timeout 120 s, waits for a true snapshot that never comes) | PASS | FAIL (:1421 caller SESSION snapshot stays true) |
Red diff: red-minus-two-lines.diff (scratch edit, reverted; worktree clean afterwards).

## Scoped suites at AFTER
`cd apps/server && vp test run src/orchestration-v2/Adapters/OpenCode2AdapterV2.test.ts src/orchestration-v2/testkit/OpenCodeReplayFixtures.integration.test.ts` -> 2 files, 102/102 passed (scoped-tests-after.log)

## Not verified
- Live OpenCode >= 2.0 run (machine has 1.18.18, no credentials).
- Real `bin.ts` server run: no HTTP/SSE OpenCode 2 fake exists; replay fake is an in-process HttpClient.
- takeRunningWake site (adapter.ts:3287) individually: the red run removed both lines together; only the runWake path has a test.
- R2c reconcile/discardWakes emission: compatibility replays only, no assertion of the specific emission.
