# Issue 17270 follow-up evidence

Completed within the original20-minute budget on2026-10-24. No source edits, tests, server lifecycle actions, public forge actions or deletions by the evidence agent. Existing four-configuration point-in-time captures remain unchanged. All earlier interrupted attempts remain locally under /tmp/issue17270-followup and are excluded from accepted behavior claims.

## Result

**49/49 retention/reconciliation assertions and5/5 focused fixed-fallback assertions pass.** This closes the fixture global-ID retention defect for one representative1440×900 light web configuration, paragraph and turn modes, through the real SDK/adapter/filter/persistence/app path. It does not close every pass2 audit matrix gap.

[Authoritative manifest](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e503afa4ee52ae49/manifest-authoritative.json) · [49-assertion transcript](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/26b63dbf027848b3/projection-assertions.json) · [drivers, projections, sanitized logs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e32bce12e49bd29e/drivers-projections-logs-final.tar.gz) · [fixed-fallback5 assertions](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d4d502da2f03ed5e/empty-fallback-fixed-assertions.json) · [fallback driver/projections](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2da45d927f6585b7/fallback-drivers-projections-logs.tar.gz).

## Fixture isolation and exact retained data

Required fixtureKey namespaces native message IDs, tool IDs, explicit snapshot UUIDs, frame UUIDs and deterministic session IDs. Matched baseline/head use the same key. The accepted scenario keys are followup-stable-1792841329009-accepted-paragraph, -accepted-turn, and -accepted-other; their session UUIDs are distinct. Each matched pair's emitted payloads, including all native IDs and UUIDs, are identical except the system init cwd, which necessarily names its side's sanitized seed directory. No existing captured thread used these keys. Native-id-manifest.json, matched-frame-assertions.json and accepted-frames.ndjson are in the bundle.

Both sides' full selected projections compare exactly after reload and after the subsequent different snapshot-only fixture thread: thread ownership, message IDs, createdAt, text, streaming flags, item IDs, ordinal, type/status and run status. Head has five assistant messages in each mode: authoritative correction, code block, new message index0, snapshot-only remainder, and buffered empty-snapshot text. Every item is completed and strictly ordered, with reasoning/tool/checkpoint entries retained. Correction preserves the streamed message ID/createdAt and item ID/ordinal in paragraph mode; repeat is emitted once. Turn boundary has no assistant content before the snapshot.

The empty-snapshot fixture starts a separate native message with nonempty buffered text, then sends an empty text snapshot. It retains the full buffered text exactly once. A diagnostic empty-snapshot-then-correction of the same already-completed block is excluded; the empty snapshot finalizes that block, so later correction can create another artifact. Mixed two-text-block snapshots remain a compatibility fixture; their grouping is not generalized to ordinary SDK output.

## Recordings and screenshots

[Baseline114s recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d03ab25ba754f9db/base-accepted.mp4) · [Head114s recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/77b2cb9d8e8dcc53/head-accepted.mp4). Sequential deterministic fixture recordings, **not pixel-matched videos**. Real app navigation/reload loading intervals and sidebar restoration remain untrimmed. Both videos fully decoded; six20-second-spaced samples per video inspected, not every frame.

34 original screenshots inspected;8 automatic reload captures caught the loading splash and are explicitly marked unaccepted as UI proof in the manifest. Four readiness-checked expanded reload replacements show retained content in the real app, and their projections exactly equal the settled data. Original files are retained.

![Baseline left, head right; paragraph above, turn below; after a different fixture thread and ready reload](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2108af6ce1d57858/ready-reload-comparison.png)

## Exact source states

The uninterrupted original matrix ran from11:28:49 to11:31:01 UTC. Adapter SHA256 was2c99d08c18ada6214f0632241cbab655cc6319b69e227f327f53753702650072 before/after; dev restart count remained13. Started at [19ed4c9cff](https://git.cafe/pingdotgg/t3code/commit/19ed4c9cffbc7cafa6a91dbb3b0a0c846f3b5171); test-only commit [6f7296eefc](https://git.cafe/pingdotgg/t3code/commit/6f7296eefc67eab957c2b2f8c422eb5416004a42) landed at11:30:44 without changing adapter bytes or restarting this accepted run. Baseline remains [27e0c684c5](https://git.cafe/pingdotgg/t3code/commit/27e0c684c5).

The later four readiness-checked reload comparisons used fixed [46255debff](https://git.cafe/pingdotgg/t3code/commit/46255debff441f80bf169625a2076299bd1ccd45), adapter SHA256518aef2a42c9bc3f5e7f9eedf7a76ec8f8ed0f9754f54e67c025964425b385d2. They establish retention across that source update too, not a new uninterrupted full matrix on the final fix.

## Fixed empty fallback supplement

Fresh head-only paragraph thread followup-stable-1792841329009-empty-fallback-final on [46255debff](https://git.cafe/pingdotgg/t3code/commit/46255debff441f80bf169625a2076299bd1ccd45). Input: empty content-block start, empty text snapshot, nonempty result. Output: exactly one assistant with `Nonempty result fallback survives an empty block and snapshot.`, no empty assistant, completed run, exact projection after reload. Five checks pass. Source hash remained518aef…385d2 and restart count18 before/after. [Recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/95372f411fd9c4b0/head-empty-fallback-fixed.mp4) · [screenshot](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c056ad34e951215a/empty-fallback-fixed.png). Video decodes exit0; null-output verification reports nonmonotonic DTS warnings (raw VFR capture retained), [log](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1fd5b4bb9a8b3ae3/fallback-video-decode.log). Screenshot inspected; no frame-by-frame fallback video claim. First fallback attempt was restarted/cancelled and is rejected, not a code failure claim.

## Live-provider qualitative evidence supplied by lead

[Baseline live-provider recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7e8bb559cb67dc95/mcp-launch-client-3a325e80fb-9483-4e3f-90ea-1a0d6c56054d-fwd-3a61aa2f8ace735e1b6-84853e73-c57d-4fc5-bdf5-19fe8cae6a83-mp4.mp4) · [After live-provider recording](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c0e7b46bb51af262/mcp-launch-client-3a325e80fb-9483-4e3f-90ea-1a0d6c56054d-fwd-3a61aa2f8ace735e1b6-066301d8-ef96-4b0a-a497-2e256c7220c0-mp4.mp4). **Qualitative only; explicitly not pixel matched.** Supplied URLs are forwarded to the auditor, not independently watched or used as deterministic fixture proof in this follow-up.

## Exact limitations and FRICTION

- One desktop-width light responsive-web configuration only. No native mobile, desktop IPC, relay/tunnel or other provider pass. Prior four-config captures remain valid point-in-time evidence, not retroactive cross-thread retention proof.
- No error/exit-without-snapshot, true pre-coalescer cancel, child streams, unknown-index or entirely-empty-response proof added here. Fixed fallback supplement is head paragraph only, not turn or matched baseline. Protocol-agent tests are separate evidence; this agent ran no tests.
- FRICTION — concurrent adapter mutation and test writes repeatedly restarted the dev runner. All interrupted attempts were retained and rejected. The accepted matrix is bounded by equal source hashes/restart counts; the supplemental fallback has its own bounds.
- FRICTION — early reload screenshots captured splash screens. Marked unaccepted; replaced only the relevant ready reload screens, no all-config recapture.
- FRICTION — navigation/loading and dynamic clocks prevent treating the new clips as pixel matched. Fallback VFR null decode gives DTS warnings; raw recording and log retained.
- FRICTION — the first fixture extension put correction after an empty snapshot had completed the same block. Retained diagnostic, then separated the buffered-empty case into a distinct native message.

Handback: lead-owned servers remain running; own preview tabs retained; no artifacts deleted. Worktree clean at final source check. The evidence agent changed only /tmp fixture/evidence files; final code files were not changed by this agent.
