| Finding / row | Status | Evidence |
| --- | --- | --- |
| Blocking findings | NONE | All requested acceptance rows supported; independent A-after rebuild agrees. |
| A — live child, every pending request | SUFFICIENT | IDs 3 and 4 received before stdout closes. Before both remain pending for 1001.738 ms while alive. After both fail clearly at 259.087 / 259.953 ms while alive, before exit release. Independent rebuild: 257.251 / 257.874 ms, same semantic events. |
| B — delayed exit, stable EOF | SUFFICIENT | Combined with A. After exit emitted 265.908 ms after closure, after both failures; code 23 reaped. Both original EOF settlements unchanged; callback count stays one. Before exit emitted at 1002.935 ms and resolves both with process-exit code 23/exact PID. |
| C — real exit inside grace | SUFFICIENT | Exit emitted at 100.878 ms before / 100.805 ms after; both pending failures preserve code 37 and exact session PID. After parent observes failures around 112 ms, comfortably inside 250 ms. |
| D — healthy scope cleanup | SUFFICIENT | Initialize and x/healthy succeed in both revisions; ordinary owning-scope close reaps children in 13.211 / 14.330 ms with zero termination callbacks and no escaped EOF error. |

Proof audit pass 2 for [#12777](https://git.cafe/pingdotgg/t3code/pulls/12777) ([#12777](https://github.com/pingdotgg/t3code/pull/12777)). Read-only shared checkout `/home/ubuntu/wt/pr-12777`, branch `takeover/pr-12777`.

Reviewed before [3cc31ed](https://github.com/pingdotgg/t3code/commit/3cc31ed27c8956b36cee35a50509fb7c6869592b) (`3cc31ed27c8956b36cee35a50509fb7c6869592b`) and after [23cee43](https://github.com/pingdotgg/t3code/commit/23cee434441629deae178c9ac9f8ec43c268547f) (`23cee434441629deae178c9ac9f8ec43c268547f`). Contributor original [6797dee](https://github.com/pingdotgg/t3code/commit/6797dee168e511d9d308cfee0e138f42dab76714) is context, not the tested revision. Local head matches the requested after. The pinned before is the merge base of the reviewed head. At final verification, origin/main points to [7fd2e09](https://github.com/pingdotgg/t3code/commit/7fd2e09e381a61f427da09dd7a8f2c9c1558fe59), beyond the supplied base; all comparisons use the explicitly requested pinned before SHA, not that moving ref. No checkout changes, edits, commits, pushes, forge comments, or watching.

Read the entire [matrix](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c2bc46f2cdeffa10/matrix.md), [capture index](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e9aa3d150e46f13f/index.md), every final A/C/D transcript before and after, both superseded local B transcripts, driver, executable stub, refresh/run/verify scripts, index generator, ledger, summary, initial failed test results, and superseding passing results. Downloaded every indexed evidence artifact: all 17 match the local files byte for byte. Verified all 36 manifest source files against git show at their full revision and verified every archived source member against that manifest. No reliance on SHA labels alone.

Final six sessions run on 2026-10-24 UTC: A-before 23:31:38.646–39.748, A-after 23:31:40.205–40.563, C-before 23:31:41.017–41.199, C-after 23:31:41.683–41.868, D-before 23:31:42.294–42.367, D-after 23:31:42.799–42.879. Their elapsed and UTC timestamps are ordered. Pending receipt barriers precede closure. A-after failure observations precede SIGUSR1 release; child stderr emission precedes exit/reaping. All six driver ledger exits are zero; all final driver/child PIDs are absent. The old local B recordings predate the refresh, and B-after has an obsolete revision. They are not accepted as current-head evidence; matrix B is established by final A, matrix D by final D, as the index states.

Independent reproduction lives entirely in `/tmp/ev-12777-pass2`. Re-extracted after source and tests directly from Git, downloaded the published driver and stub, and changed only the driver's absolute scratch directory from capture to pass2. Used production protocol, ChildProcessSpawner, makeChildStdio and makeTerminationError, with the published substitute Codex process. Ran `node /tmp/ev-12777-pass2/driver.ts after A`; driver PID 1700414 returned zero, child PID 1700431 reaped and absent. Recording 23:34:08.908–23:34:09.261 UTC. Two EOF settlements at 257.250539 / 257.874059 ms match names/status/tag/message/liveness and ordering from the published run. Tolerance is the matrix's 1-second observation bound around the 250-ms grace, not PID or timestamp byte identity. Later exit emits at 263.027 ms; EOF results remain stable, callback count one, outgoing wire count stays 6, and scope closes in 1.685 ms. The child is alive at both failures and when exit is explicitly released. No process remains from this run.

Rebuilt snapshot tests: `vp test run --config /home/ubuntu/wt/pr-12777/vite.config.ts --dir /tmp/ev-12777-pass2/after/src` — 5 files, 28 tests pass at 23:34:16 UTC, 2.38 seconds. The original published initial run's 26 pass / 2 fail is correctly disclosed as an omitted mock fixture, superseded by 28 passing tests; the independent reconstruction includes that pinned fixture and also passes.

Source inspection: full diff is two files, 61 insertions / 5 deletions. EOF classification bounds the process-status wait at 250 ms; absent termination effect remains immediate. Existing failAllPending fails every deferred; failure is stored before outgoing closure and handler cleanup. A blocked handler finalizer cannot delay failures. First-termination guard prevents late-exit reclassification. Scope cancellation remains unchanged. Existing TestClock regressions establish pending at 249 ms, failed at 250 ms, and exact exit-error identity when supplied at 100 ms. Runtime A covers multiple pending requests and C supplies real exit mapping beyond those deterministic tests. No confirmed blocker in the requested scope.

This is server-only timestamped recording evidence. Browser, images, UI surfaces, other providers, and connection-mode screenshots do not apply. It does not prove actual Codex binary internals, signal-based crashes, or other operating systems; none is a required row. The matrix intentionally accepts EOF for exits after the grace. No new fixture expansion or committed scratch is needed.

[Independent reproduction archive](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1c96b41075bc5158/reproduction.tar.gz) includes raw rerun, source snapshots, driver/stub, checks, download provenance, test results and rebuild/check scripts. Dependencies are existing checkout package dependencies; archive excludes node_modules. Shared checkout is clean at the full after SHA. T3 PR registration performed; watching false.

FRICTION

| Category | Happened | Prevention |
| --- | --- | --- |
| Download transport | Python urllib received HTTP 403; curl downloaded the same public artifacts successfully | Use curl for this evidence host; preserve downloaded hashes. |
| Stale evidence | Old local B files use the former fixture naming and obsolete after SHA | Treat index's explicit final A/C/D set as authoritative; verify all source bytes against Git. |
| Test setup | Published initial run omitted a mock fixture and failed two client tests | Rebuild all pinned src and test files; independent 28-test run passes. |
| Moving ref | Final check found origin/main had advanced beyond the supplied base | Compare explicit full SHAs; the pinned before remains the reviewed head's merge base. |
| Scope and cleanup | No checkout mutations or leftover reproduction processes | Keep all scratch external, track spawned PIDs, reap owned children, verify clean head. |

VERDICT: SUFFICIENT
