# Evidence index — issue 25021

Issue: [#25021](https://git.cafe/pingdotgg/t3code/issues/25021). Evidence-only audit on 2026-10-25 UTC; no PR exists yet.

## Environment and revision mapping

- Linux host `fs-38`; checkout `/home/ubuntu/wt/issue-25021`, branch `fix/issue-25021`.
- Parent recorded the integrated pass against a real running T3 dev server with isolated worktree state; transcript identifies browser origin `localhost:6514`. This audit started no server or browser and ran no tests.
- Before: parent's built main [313ca2715f](https://git.cafe/pingdotgg/t3code/commit/313ca2715f); before-runtime.json explicitly records that revision. Build provenance is parent-recorded, not independently rebuilt here.
- Test-only commit: [d26109d76d](https://git.cafe/pingdotgg/t3code/commit/d26109d76d33c9238517dbff8d86ab4cc51803df).
- After: JSON labels the implementation working tree after the test commit. Parent maps that working diff to now-committed [064702b0d6](https://git.cafe/pingdotgg/t3code/commit/064702b0d6bf6834ed37ce4e4621cba2f8edb03f). Audit confirms HEAD is that full SHA and `git status --porcelain=v1` is empty. No independent historical working-tree snapshot hash is available.
- Entire base-to-head diff: only ClaudeAdapterV2.ts and ClaudeAdapterV2.test.ts, 90 insertions and 3 deletions. No render, contract, client, dependency, or scheduling code changed.

## Visual matrix

Rows **0/0**: deliberately empty under the server-only rule (red regression plus runtime transcript). No render changed; no screenshots or recording were made by this audit.

## Logical coverage

| Row | Evidence and conclusion |
| --- | --- |
| Buffered wake, relative gateway cooldown, one-hour queue delay | Committed TestClock regression advances one hour, then asserts failed terminal, usage_limit, and arrival + 2h54m21s. Parent transcript records red before and green after. |
| External CLI boundary → real server → persisted continuation failure | Synthetic stdio fixture supplies wrapped 503/429 results; JSON records real persisted runs and error items. Before emission 22:16:22.529Z → reset 22:17:22.987Z (60 seconds +458 ms); after emission 22:17:39.148Z → reset 22:18:39.148Z (60 seconds). Parsed values independently checked here. |
| Completion time remains replay time | After continuation completedAt is 22:17:39.592Z; reset remains anchored to the earlier frame emission. |
| Native background wake baseline | Parent reports actual Claude Opus 5.5 background Agent, sleep 15, and WAKE OK without cooldown. Parent-recorded only; not independently witnessed in this audit. |
| Buffer identity and active-turn fallback | Final diff retains original frame objects in a session WeakMap, uses stored arrival for buffered results, and falls back to completedAt otherwise. Structured reset precedence remains unchanged. Code inspection only. |

Claude is the only changed provider. Web, desktop, and mobile consume the corrected server data; local, relay, and tunnel use the same adapter. No new UI entry point, permission, reverse operation, or documentation behavior is introduced. Existing adapter tests and final scoped checks remain the parent's responsibility.

## Red regression evidence

Test source inspected from the test-only git commit: `dates a buffered wake gateway limit from its arrival, not the continuation replay`.

The available runtime transcript records this red result (excerpt, not raw runner stdout):

```text
Expected 1970-01-01T02:54:21.000Z; before received 1970-01-01T03:54:21.000Z; after passes.
```

No raw red runner output was present in the supplied evidence directory or git commit metadata. `git test --help` reports that `test` is not a git command on this host; no test was executed. This index does not represent the transcript excerpt as independently captured runner output.

## Existing uploaded artifacts

- [runtime transcript](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4e4611cd747dc0fa/runtime-transcript.md)
- [before data](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a7a72cc9dfec10f8/before-runtime.json)
- [after data](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/32ed09b50dc49a3f/after-runtime.json)
- [fixture driver](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/500c1cec49cac445/claude-fixture.mjs)
- [proof matrix](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cfd338300ba1df32/proof-matrix.md)

## Limits

- Controlled runtime error responses are synthetic at the external CLI boundary. No real gateway pool exhaustion is claimed.
- Fixture timestamp is logged immediately before stdout write; it is not an instrumented adapter receipt timestamp. The after values agree to millisecond precision, while the deterministic test supplies exact anchoring proof.
- Runtime replay delay was subsecond, not one hour. Only the deterministic TestClock regression supplies the hour-delay case.
- Actual cooldown expiry, successful auto-resume ahead of queued continuation, and the full expired-reset recovery sequence were not exercised. Multi-device delivery was not independently exercised.
- The proof matrix was refreshed to implementation head 064702b0d6. Final proof audit returned SUFFICIENT and independently reran the exact regression (1 passed). Both independent reviews returned MERGE.
- Parent reports check:changed encountered a preexisting unused agent-device dependency knip failure. This audit did not rerun or independently validate that check.
- Supplied runtime/fixture artifacts contain synthetic protocol data and opaque fixture identifiers; no credentials are included in this index.

## What this audit changed

Created only `/tmp/issue-25021/evidence-index.md` outside the repository and uploaded it. No source edits, render changes, push, merge, watch, browser/server start, or new test execution.

## FRICTION

- Raw red test stdout requested from “git test” was unavailable: no such git command is installed, no stored test note/ref was found, and the supplied files contain only the parent's summarized red/green transcript. Parent should attach original runner stdout if required; no retest was performed.
- Final check status remains parent-owned; reported preexisting knip failure is not a passing check.
- No blocking upload or evidence parsing friction.

## Final integration verification

Main 725ada6eaa32 was merged as 7efb37a23868e9e7ed37c4226983e7bc9db1acc1. The two reviewed adapter/test files are byte-identical to implementation head064702b0d6 (git diff is empty for those paths). Final vp run check:changed exited zero: format, GraphQL generation, lint, knip1/2, knip2/2, affected-package typecheck and236/236 tests passed. The earlier knip failure no longer reproduces after the main update. Final proof audit returned SUFFICIENT.
