# Evidence

**Incomplete evidence. Review attention for Julius:** the W after-send recording/still includes a small “=” glyph at the far left. This is outside the predicate change and is not attributed to this PR. The N raw before clip begins with a host-overload toast and contains long tool stalls; this is infrastructure evidence, not product timing. Settled comparison stills exclude that toast. No “nothing else changed” claim is made.

PR [#24641](https://git.cafe/pingdotgg/t3code/pull/24641), base [3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7), head [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09). Evidence only; PR body unchanged.

[F01-W-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4b6ee93ba330f07b/F01-W-sheet.md)
[F01-N-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0000eb3c1bd696da/F01-N-sheet.md)
[F02-W-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bce31a97faa05d95/F02-W-sheet.md)
[coverage-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c73a23910fce10fe/coverage-sheet.md)
[build-evidence-index.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9517e6793ea4a5a6/build-evidence-index.py)

## Coverage and unverified rows

**15 matrix row IDs total. 2/15 have captured media: F01 partial (W/N only), F02 head control. 1/15 is fully captured under this round’s scoped requirements.** Of the 8 capture-requested row IDs in the lead’s narrowed scope, F02 is complete, F01 is partial, and F03/F04/F05/F06/V01/M01 are unverified. Four rows were explicitly excluded and three are source-mapped.

### F01

Partial: W/N paired media above. A Pixel 9 dark and I iPhone 17 Pro light UNVERIFIED. Android native preparation remained compiling within budget; iOS EAS build failed missing GhosttyKit. No lease/device substitution/static native fixture was used.

### F02

Captured: short W head eligibility control above.

### F03

UNVERIFIED: W bound-session capability-true guard recording missing. Attempted RPC/stream client-policy proxy did not establish a usable client connection; no negotiation/pass claimed.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F03 | Missing | Missing | — | — |

### F04

UNVERIFIED: W capability-false picker/search/Favorites guard recording missing; same harness connection failure and time budget.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F04 | Missing | Missing | — | — |

### F05

UNVERIFIED: W active-no-session block/release recording missing; no deterministic event-backed held milestone captured. No startup-recovery bypass.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F05 | Missing | Missing | — | — |

### F06

UNVERIFIED: W missing-source association guard recording missing; attempted projection proxy was not usable.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F06 | Missing | Missing | — | — |

### F07

MAPPED — empty/imported/new-draft exceptions unchanged. No extra visual pass claimed.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F07 | Not requested | Not requested | — | — |

### F08

Not affected by this diff: picker layout unchanged. Excluded by lead for this round.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F08 | Not requested | Not requested | — | — |

### F09

MAPPED — equivalent terminal/queued eligibility; no failed/interrupted-history backend claim.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F09 | Not requested | Not requested | — | — |

### V01

UNVERIFIED: optional W Favorites/search recording not completed within budget. F01 search reaches target, but Favorites was not captured.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| V01 | Missing | Missing | — | — |

### V02

Not affected by this diff: picker layout unchanged. Excluded by lead for this round.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| V02 | Not requested | Not requested | — | — |

### V03

Not affected by this diff: picker layout unchanged. Excluded by lead for this round.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| V03 | Not requested | Not requested | — | — |

### V04

MAPPED — independent target readiness/setup/error gates unchanged; no extra pass claimed.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| V04 | Not requested | Not requested | — | — |

### K01

Not affected by this diff: picker layout unchanged. Excluded by lead for this round; no keyboard pass claimed.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| K01 | Not requested | Not requested | — | — |

### M01

UNVERIFIED on Android and iOS: native sheet → pending target → Save → composer → send was not reached. Same native installation blockers as F01 A/I.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| M01 | Missing | Missing | — | — |

Native iOS error: [ios-build-error.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/228fac8888f261d3/ios-build-error.json). EAS build: [development simulator build](https://expo.dev/accounts/pingdotgg/projects/t3-code/builds/f1e77a31-3c86-49e3-bde6-309e785e50ce). The old revisions lack `mobile:install`; the current installer was copied to scratch with explicit checkout root. An iOS simulator-only EAS profile was added solely in the disposable base checkout. After checkout tracked files stayed clean. Android build was stopped by captured owned PIDs. No device lease was taken.

## F01 — W, 1440×1000, light

**Incomplete evidence. Review attention for Julius:** the W after-send recording/still includes a small “=” glyph at the far left. This is outside the predicate change and is not attributed to this PR. The N raw before clip begins with a host-overload toast and contains long tool stalls; this is infrastructure evidence, not product timing. Settled comparison stills exclude that toast. No “nothing else changed” claim is made.

T3 preview browser, Chromium 156 on Linux; desktop user agent, **no device emulation**, DPR 2, font scaling 100% (root 16 CSS px). W: CSS viewport 1440×1000 light, whole surface; tool scales saved PNGs to 1280×889, recordings are 2880×2000. N: CSS viewport 390×844 dark, whole surface, PNG/video 780×1688. Scroll 0; sidebar/details/terminal closed. Browser Date frozen after mount at 2026-10-27T16:00:00Z. Source events differ by seconds but visible timestamps agree. No reduced-motion tool is available; document.fonts.ready and settled network state precede captures. Every accepted still is one of two pixel-identical frames ≥500 ms apart (ImageMagick AE=0).

**Seeded real-app null-ref fixture; mock source and target transports.** Each checkout ran its own real app/server with T3CODE_DEV_SEED=0 and fresh isolated state. Actual RPC source message completed with `T3_24641_HISTORY`; actual provider-session.detach removed its session. With the owned server stopped, only provider_threads.payload_json.nativeThreadRef was nulled, then restart recovery was allowed. Matching source association, one completed run, zero sessions and null native ref were retained. Source is mock Grok; target is mock Codex (`gpt-5.6-sol`). No production provider negotiation is claimed. Main videos use thread 004 (W) / 005 (N). W composer still retake uses identical synthetic source history in thread 004 before and 006 after; internal IDs differ, visible state matches.

Scripted interaction: open source model picker → attempt target → search `gpt-5.6-sol` → choose target if allowed → close to composer. Baseline stays on source; head chooses target and sends. Approximate clip landmarks in seconds: **before** 0–1.9 source composer, 1.9–3.4 picker opens, 3.4–10.8 disabled target/search attempts, 11.2–12.7 source composer; **after** 1.8–2.3 picker opens, 3.3 target navigation/search, 4.1–4.7 target selection, 4.8–16.8 target composer/pending handoff and input, 16.8 send, ~18–20 target completes. Pauses reflect capture/tool scheduling.

| Recording | Before | After |
|---|---|---|
| F01 W | [F01-W-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e06d4d66b8fb7e60/F01-W-before.mp4)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) | [F01-W-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6036d4dccca31669/F01-W-after.mp4)<br>[271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) |

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F01 W open picker, light | ![F01-W-before-picker-v2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8398468fa9d27d86/F01-W-before-picker-v2.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) | ![F01-W-after-picker-v2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7a7bfdfb00fa0d81/F01-W-after-picker-v2.png)<br>[271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-W-picker-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/398e7beab2881084/F01-W-picker-Diff0.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-W-picker-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3991f5e3d8cbf6d5/F01-W-picker-Diff16.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) |
| F01 W resulting composer, light | ![F01-W-before-composer-v3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/77fe9781a25e1b26/F01-W-before-composer-v3.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) | ![F01-W-after-composer-v3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2c11d0837a52ce1a/F01-W-after-composer-v3.png)<br>[271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-W-composer-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0473d0e9269afd54/F01-W-composer-Diff0.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-W-composer-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/524dc5133a454672/F01-W-composer-Diff16.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) |

UI send uses the actual app control. The mock target receives prior history in `thread/inject_items`, including `T3_24641_HISTORY`; its new run completes and the final reply reads “Mock target completed. Prior history received.” [F01-W-target-transport.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b56592a65b93cf07/F01-W-target-transport.json); persisted completed projection is inside [synthetic-fixtures.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4c0df43385a43e08/synthetic-fixtures.tar.gz). Supplemental after-send still (includes the unrelated left-edge glyph): ![F01-W-after-completed.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d9870676db1624d0/F01-W-after-completed.png)

## F01 — N, 390×844, dark

**Incomplete evidence. Review attention for Julius:** the W after-send recording/still includes a small “=” glyph at the far left. This is outside the predicate change and is not attributed to this PR. The N raw before clip begins with a host-overload toast and contains long tool stalls; this is infrastructure evidence, not product timing. Settled comparison stills exclude that toast. No “nothing else changed” claim is made.

T3 preview browser, Chromium 156 on Linux; desktop user agent, **no device emulation**, DPR 2, font scaling 100% (root 16 CSS px). W: CSS viewport 1440×1000 light, whole surface; tool scales saved PNGs to 1280×889, recordings are 2880×2000. N: CSS viewport 390×844 dark, whole surface, PNG/video 780×1688. Scroll 0; sidebar/details/terminal closed. Browser Date frozen after mount at 2026-10-27T16:00:00Z. Source events differ by seconds but visible timestamps agree. No reduced-motion tool is available; document.fonts.ready and settled network state precede captures. Every accepted still is one of two pixel-identical frames ≥500 ms apart (ImageMagick AE=0).

**Seeded real-app null-ref fixture; mock source and target transports.** Each checkout ran its own real app/server with T3CODE_DEV_SEED=0 and fresh isolated state. Actual RPC source message completed with `T3_24641_HISTORY`; actual provider-session.detach removed its session. With the owned server stopped, only provider_threads.payload_json.nativeThreadRef was nulled, then restart recovery was allowed. Matching source association, one completed run, zero sessions and null native ref were retained. Source is mock Grok; target is mock Codex (`gpt-5.6-sol`). No production provider negotiation is claimed. Main videos use thread 004 (W) / 005 (N). W composer still retake uses identical synthetic source history in thread 004 before and 006 after; internal IDs differ, visible state matches.

Scripted interaction: open picker → attempt target → search `gpt-5.6-sol` → choose target if allowed → close to compact composer; head expands composer by typing and sends. **Before:** ~0–1.1 opens picker (host-overload toast clears), 1.1–68 picker/disabled target during tool stall, 68.1 search shows “No models found”, 69.1 reset/disabled-target tooltip, 70.3–112 source composer. **After:** 0.4–1.1 opens picker, 3.2–3.8 search finds target, ~3.9 target applies, 4–6.3 compact target composer/pending handoff, ~6.4 expanded input, ~18.4 send, ~19.5 completed target reply.

| Recording | Before | After |
|---|---|---|
| F01 N | [F01-N-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d0ddca00e2409864/F01-N-before.mp4)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) | [F01-N-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/347f63332d3dfa20/F01-N-after.mp4)<br>[271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) |

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F01 N open picker, dark | ![F01-N-before-picker.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d4cf9899f542fc25/F01-N-before-picker.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) | ![F01-N-after-picker.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/29f2198a960abfa4/F01-N-after-picker.png)<br>[271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-N-picker-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/05319e9cc0745a83/F01-N-picker-Diff0.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-N-picker-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1fd1b6e518d31f41/F01-N-picker-Diff16.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) |
| F01 N resulting compact composer, dark | ![F01-N-before-composer.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d42b1d6bf0134b1a/F01-N-before-composer.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) | ![F01-N-after-composer.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/130b32bd91e83783/F01-N-after-composer.png)<br>[271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-N-composer-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/19bcbb473e3121e5/F01-N-composer-Diff0.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | ![F01-N-composer-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f2a81f0d479f6060/F01-N-composer-Diff16.png)<br>[3eb8366](https://git.cafe/pingdotgg/t3code/commit/3eb836664eb1a5d0102055fe1e4a7fc5c1d8a9c7) → [271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) |

The final reply appears at the end of the recording; completed projection is in [synthetic-fixtures.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4c0df43385a43e08/synthetic-fixtures.tar.gz). This is narrow web, **not native mobile**.

## F02 — W head control, 1440×1000 light

T3 preview browser, Chromium 156 on Linux; desktop user agent, **no device emulation**, DPR 2, font scaling 100% (root 16 CSS px). W: CSS viewport 1440×1000 light, whole surface; tool scales saved PNGs to 1280×889, recordings are 2880×2000. N: CSS viewport 390×844 dark, whole surface, PNG/video 780×1688. Scroll 0; sidebar/details/terminal closed. Browser Date frozen after mount at 2026-10-27T16:00:00Z. Source events differ by seconds but visible timestamps agree. No reduced-motion tool is available; document.fonts.ready and settled network state precede captures. Every accepted still is one of two pixel-identical frames ≥500 ms apart (ImageMagick AE=0).

Event-backed source completion and actual detach, with nativeThreadRef still present before stopped-server nulling. Approximate steps: 0–3 source composer; 3–11 open picker; 12–19 target tab exposes `gpt-5.6-sol`. This short control proves picker eligibility; no target send is claimed for F02. The early mock advertised version 1.0.0, causing fixture-only Grok incompatibility and Codex update notices. Those mock version strings were corrected before F01.

| State / viewport / theme | Before | After | Diff0 | DiffT (16/255) |
|---|---|---|---|---|
| F02 W head picker control | Not required | [F02-W-head.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ecc08269f294bfb7/F02-W-head.mp4)<br>[271e7b6](https://git.cafe/pingdotgg/t3code/commit/271e7b6f110b5817e70bba16c46a91b2475ccf09) | Not required | Not required |

## What else changed visually

- Open picker: target Codex and ambient Claude icons become enabled and move ahead of the currently selected Grok icon; Grok remains selected until target choice. Labels, current model row and menu dimensions remain the same. These are existing picker consequences of unlocked eligibility.
- Resulting composer: source icon/model text becomes target Codex/gpt-5.6-sol. At W the shorter model label moves the runtime control left; at N the compact icon changes.
- The existing “Context handoff pending” line appears after selection: one line at W, two centered lines at N. Diff0 includes its faint horizontal rules; Diff16 intentionally excludes low-contrast pixels.
- Search result changes from no target result to a selectable target; after-send adds the new user message and completed mock target reply.
- W after-send has the unrelated left-edge “=” glyph. F02 has early mock-version warning banners. N raw-before has an initial host-overload toast, longer stalls and different cursor/hover state during attempts. These are disclosed; no timing regression is inferred.
- Accepted paired stills show the same history, title, viewport, theme and scroll position; earlier focus-mismatched W composer stills were rejected and replaced with v3.

Diff0 marks every changed RGB pixel with saturated magenta (even a one-level change). DiffT uses max absolute RGB channel difference >16/255. Black means unchanged. Changed pixel counts at zero threshold: W picker 880/1,137,920; W composer 4,001/1,137,920; N picker 3,541/1,316,640; N composer 5,477/1,316,640. The threshold comparison is not evidence that zero-threshold pixels are identical.

## Reproduction and raw material

[reproduce.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c7d49972497d28a7/reproduce.md)

[reproduction-scripts-v2.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e6e73065a7c2f45c/reproduction-scripts-v2.tar.gz) contains every seed/transport/browser/diff/mobile preparation script, including the unsuccessful policy proxy. Individual primary scripts:

[seed.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fa7f27f5a8b4d149/seed.mjs)
[client.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d56498f3bd08a2c8/client.mjs)
[null-ref-all.sql](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f3ffac221333a752/null-ref-all.sql)
[browser-capture-driver.js](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/db269d5d305063ca/browser-capture-driver.js)
[settled-still.js](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/99bfa28449c0c0c8/settled-still.js)
[diffs.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7664ffc5c8abc609/diffs.py)

[synthetic-fixtures.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4c0df43385a43e08/synthetic-fixtures.tar.gz) — exact synthetic commands/events, before-detach and detached projections, settings and completed target projections. [manifest.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7e38e83ee5686bf9/manifest.json) — rendering environment and SHA-256 hashes. [sanitized-logs.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/068137d49122d295/sanitized-logs.tar.gz) — owned-process/runtime/build logs with pairing credentials removed. [raw-captures-including-rejected.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7f65b03fc4965a21/raw-captures-including-rejected.tar.gz) — raw attempts, unstable frames and rejected focus mismatch; **do not use rejected artifacts as final comparisons**. [recording-inspection.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/511ad079bca7e373/recording-inspection.tar.gz) — reviewed timestamped storyboards/keyframes and ffmpeg scene landmarks.

## Exact ghdrop output

![F01-W-before-picker-v2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8398468fa9d27d86/F01-W-before-picker-v2.png)
![F01-W-after-picker-v2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7a7bfdfb00fa0d81/F01-W-after-picker-v2.png)
![F01-W-before-composer-v3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/77fe9781a25e1b26/F01-W-before-composer-v3.png)
![F01-W-after-composer-v3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2c11d0837a52ce1a/F01-W-after-composer-v3.png)
![F01-N-before-picker.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d4cf9899f542fc25/F01-N-before-picker.png)
![F01-N-after-picker.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/29f2198a960abfa4/F01-N-after-picker.png)
![F01-N-before-composer.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d42b1d6bf0134b1a/F01-N-before-composer.png)
![F01-N-after-composer.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/130b32bd91e83783/F01-N-after-composer.png)
![F01-W-after-completed.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d9870676db1624d0/F01-W-after-completed.png)
[F01-W-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e06d4d66b8fb7e60/F01-W-before.mp4)
[F01-W-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6036d4dccca31669/F01-W-after.mp4)
[F01-N-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d0ddca00e2409864/F01-N-before.mp4)
[F01-N-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/347f63332d3dfa20/F01-N-after.mp4)
[F02-W-head.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ecc08269f294bfb7/F02-W-head.mp4)
![F01-W-picker-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/398e7beab2881084/F01-W-picker-Diff0.png)
![F01-W-picker-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3991f5e3d8cbf6d5/F01-W-picker-Diff16.png)
![F01-W-composer-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0473d0e9269afd54/F01-W-composer-Diff0.png)
![F01-W-composer-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/524dc5133a454672/F01-W-composer-Diff16.png)
![F01-N-picker-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/05319e9cc0745a83/F01-N-picker-Diff0.png)
![F01-N-picker-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1fd1b6e518d31f41/F01-N-picker-Diff16.png)
![F01-N-composer-Diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/19bcbb473e3121e5/F01-N-composer-Diff0.png)
![F01-N-composer-Diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f2a81f0d479f6060/F01-N-composer-Diff16.png)
[reproduction-scripts.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5b0ce53bffaa8956/reproduction-scripts.tar.gz)
[synthetic-fixtures.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4c0df43385a43e08/synthetic-fixtures.tar.gz)
[raw-captures-including-rejected.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7f65b03fc4965a21/raw-captures-including-rejected.tar.gz)
[sanitized-logs.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/068137d49122d295/sanitized-logs.tar.gz)
[manifest.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7e38e83ee5686bf9/manifest.json)
[ios-build-error.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/228fac8888f261d3/ios-build-error.json)
[F01-W-target-transport.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b56592a65b93cf07/F01-W-target-transport.json)
[reproduce.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/304a430fce107210/reproduce.md)
[browser-capture-driver.js](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/db269d5d305063ca/browser-capture-driver.js)
[settled-still.js](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/99bfa28449c0c0c8/settled-still.js)
[seed.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fa7f27f5a8b4d149/seed.mjs)
[client.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d56498f3bd08a2c8/client.mjs)
[null-ref-all.sql](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f3ffac221333a752/null-ref-all.sql)
[diffs.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7664ffc5c8abc609/diffs.py)
[reproduce.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c7d49972497d28a7/reproduce.md)
[reproduction-scripts-v2.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e6e73065a7c2f45c/reproduction-scripts-v2.tar.gz)
[recording-inspection.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/511ad079bca7e373/recording-inspection.tar.gz)

[F01-W-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4b6ee93ba330f07b/F01-W-sheet.md)
[F01-N-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0000eb3c1bd696da/F01-N-sheet.md)
[F02-W-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bce31a97faa05d95/F02-W-sheet.md)
[coverage-sheet.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c73a23910fce10fe/coverage-sheet.md)
[build-evidence-index.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9517e6793ea4a5a6/build-evidence-index.py)

F02 preserved event-backed projection before nulling:

[F02-preserved-fixture.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b245329603804a26/F02-preserved-fixture.tar.gz)

