## Evidence

**Out-of-scope visible differences:** native status/battery pixels, pending-question pulse brightness, keyboard antialiasing/gesture-pill pixels, and live elapsed-time labels in intermediate recordings. These are listed explicitly below; the capture conditions do not support a blanket “nothing else changed” claim.

Evidence-only round for [#29420](https://git.cafe/pingdotgg/t3code/pull/29420), issue [#29349](https://git.cafe/pingdotgg/t3code/issues/29349). Before [ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a); after [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e). Each ran its own real server and Metro from its pinned checkout, with fresh synthetic RPC-seeded state. Scripted evalbot/Pi providers feed the real adapters and native app; no component harness or injected input text. Head source was not edited.

Coverage: eight paired behavior rows (A1–A6, I1–I2); eight matrix rows are represented. A1 cadence and several strict capture gates remain unverified. This is not a complete evidence-gate pass.

Environment: agent-device 0.21.32 through Simlock. Android primary Pixel 9 pool emulator, Android 16/API 36, full portrait 1080×2424 recording and PNG, logical 411.4286×923.4286, DPR 2.625, font scale 1, light, real English (US) Gboard with suggestions/autocorrection enabled. Exact Gboard build was not obtained. iOS secondary iPhone 17 Pro simulator, iOS 27.2, logical 402×874, DPR 3, font scale 1, light, Apple English keyboard; native recordings 1206×2622, normalized PNGs 402×874. No browser/device emulation: these are native clients. Android fingerprint `971743703b097b8870b39ff842d130f50b115eeb`; iOS `887f84d7e8ee2e1063658bf884c9d17f60d6cbb3`, shared by both JS-only revisions.

Server data clock: 2026-11-02T20:00:00Z. OS/client clock was live; native status normalization uses 9:41 for stills. Intermediate Working elapsed labels therefore vary. Reduced motion was not forced on the native OS. Doubled screenshots 500 ms apart were attempted and retained in the supplementary archive. A5/A6 final surfaces settle identically; pending-card pulse, caret and iOS battery pixels prevent a full pixel-identical settlement claim for other rows. Videos have complete surfaces; no crops replace them.

Diff method: RGB absolute difference amplified 255× at threshold zero; DiffT highlights luminance difference >16/255 in magenta over the blended frames. Comparisons use the final settled checkpoint where available; A1 additionally shows question trial 3 before the final composer control. A4 final frames use the recovered baseline retake and the original completed head flow.

### A1 — Android 1080×2424 / logical 411.43×923.43, light

Three fresh question trials, then the same native taps in the main composer. Phrase: `teh cat sat on teh mat and wnet hoem`.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 13.82s 1-taps; dispatch 13.54s; 51.93s 2-taps; dispatch 8.90s; 83.06s 3-taps; dispatch 9.17s; 109.66s control-taps; dispatch 8.59s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 14.10s 1-taps; dispatch 9.87s; 56.68s 2-taps; dispatch 9.35s; 99.15s 3-taps; dispatch 9.06s; 134.49s control-taps; dispatch 7.31s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-A1-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/02b62a4ed6436cd1/before-A1-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-A1-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9ca68be653785d73/after-A1-v2-fixed.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A1-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2b1594932b7c0e43/A1-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A1-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/608f2e778048533f/A1-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Baseline loses/reorders letters in 3/3 question trials; head 3/3 equals its composer control: `Teh cat sat on the mat and went hoem`. Both composer controls equal that string. Baseline question outcomes: `Teh c sat teh mat and went hoem`; `Teh c sat on the mat. Went hmand`; `Teh cst on the tanwnet em`. Native key means baseline 272.6/215.8/214.4 ms, head 244.0/237.6/208.9 ms. About 130 ms/key remains unverified.

![A1-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/26f53809cd4d84ba/A1-sheet.png)

Final composer control pair:
![A1-control-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6dcf165225bee112/A1-control-sheet.png)
![A1-control-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ed4dc639b21cd955/A1-control-diff0.png)
![A1-control-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9691e4714cc4a133/A1-control-diff16.png)

### A2 — Android 1080×2424 / logical 411.43×923.43, light

Set Hello world, insert xyz at index 1; reset, accept prediction inside Hello, type xyz, accept final prediction and immediately Submit.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 37.18s middle-xyz-taps; dispatch 1.36s; 103.69s after-accept-taps; dispatch 1.35s; 110.21s immediate-submit; dispatch 0.74s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 59.55s middle-xyz-taps; dispatch 1.65s; 141.40s after-accept-taps; dispatch 1.40s; 147.88s immediate-submit; dispatch 1.12s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-A2-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41698dc926701d0f/before-A2-v2-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-A2-v2-verified.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bb7729a229a56972/after-A2-v2-verified.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A2-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/72b5972f21a9087a/A2-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A2-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/68c9ca1cd8c20b36/A2-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Both slower native setups establish Hello world exactly before each middle edit. Baseline produces Hyzxello world; head Hxyzello world. After prediction acceptance both continue typing xyz; final correction + Submit are adjacent native taps. Exact receipts and resolved summaries are baseline Jell-O cuz world and head Jell-O cuz I world. Available Gboard predictions differ. The head clip is trimmed at 158 seconds, after resolution and before the host switches Metro; the original untrimmed chunks remain supplementary. Head final still is the clean pre-switch frame; its subsequent doubled screenshot was interrupted by the switch, so strict settlement is unverified.

![A2-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/39baca13668e76b2/A2-sheet.png)

Middle insertion checkpoint:
![A2-middle-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cc76ea71c1e1d692/A2-middle-sheet.png)
![A2-middle-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1affb99ce0855df3/A2-middle-diff0.png)
![A2-middle-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e641a149e4136fa9/A2-middle-diff16.png)

### A3 — Android 1080×2424 / logical 411.43×923.43, light

Type helo; select First to clear; type cat to deselect; select Second to clear; retype helo, accept Hello and continue cat.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 11.10s custom-taps; dispatch 5.60s; 28.80s again-taps; dispatch 1.65s; 39.10s retype-taps; dispatch 2.63s; 45.11s after-suggestion-taps; dispatch 1.87s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 8.73s custom-taps; dispatch 2.65s; 21.24s again-taps; dispatch 1.22s; 32.43s retype-taps; dispatch 2.04s; 38.89s after-suggestion-taps; dispatch 2.75s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-A3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/375ace4ef29acc29/before-A3-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-A3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d58368510f6253c9/after-A3-fixed.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A3-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/633dd449b48425b6/A3-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A3-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c256ed33d622b09d/A3-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Both external clears and reverse deselection work. Baseline continuation is `Hello ct`; head is `Hello cat`.

![A3-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7b116a26166d3c92/A3-sheet.png)

### A4 — Android 1080×2424 / logical 411.43×923.43, light

Type draft; normal Choose Files picker adds synthetic PNG; remove; collapse/expand focused input; prediction + cat; another thread and back; Submit; RPC asks a new question. Video chapters (approximate): Before first chunk 0:00–0:12 draft, 0:14–1:24 menu/picker and attachment, 1:24–1:38 remove, 1:38–1:52 collapse/expand, 1:52–2:06 suggestion/continue, 2:06–2:34 thread navigation/restore/Submit; second chunk 0:00–0:16 fresh empty request. After first chunk 0:00–0:28 draft/menu, 0:28–1:39 picker/add, 1:39–2:21 remove/collapse/expand, 2:21–end continuation; second chunk 0:00–0:20 continuation/navigation, 0:20–0:39 restore/Submit, 0:39–end new empty request.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 6.06s draft-taps; dispatch 3.37s; 121.96s after-expand-taps; dispatch 4.89s; 132.93s continue-taps; dispatch 3.68s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 11.54s draft-taps; dispatch 10.21s; 166.06s after-expand-taps; dispatch 6.21s; 181.33s continue-taps; dispatch 2.59s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-A4-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/232cd524331089c7/before-A4-v2-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-A4-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f06a48dfab150f7b/after-A4-fixed.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A4-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/af4bdcb8f82cf012/A4-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A4-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/af0843b43050969d/A4-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Recovered baseline retake completes the normal PNG add/remove path. Both sides preserve Draft helo through attachment changes, retain Draft helo Helo cat after collapse/expand and thread navigation, receive that exact submitted answer, and show a new empty request with a different request ID. Native picker/menu readiness retries remain visible in the recordings; they are tooling recovery, not attributed to the PR.

Recording chunks (same continuous attempt, Android 180 s split):
[before-A4-v2-fixed.part-002.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/30514333c262ed99/before-A4-v2-fixed.part-002.mp4)
[after-A4-fixed.part-002.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/131e8c523cf2745f/after-A4-fixed.part-002.mp4)

![A4-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/57af591535b01f5e/A4-sheet.png)

### A5 — Android 1080×2424 / logical 411.43×923.43, light

Pi editor prefill `"  Proposed commit\n\nDetail  "`; tap within first word; type helo, accept prediction, continue cat + newline; collapse/expand; continue end on first line; Submit.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 14.76s mid-taps; dispatch 2.61s; 21.93s newline-taps; dispatch 1.50s; 33.93s continue-taps; dispatch 1.58s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 16.97s mid-taps; dispatch 2.95s; 23.94s newline-taps; dispatch 1.94s; 39.01s continue-taps; dispatch 1.81s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-A5-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e8b6e23c518a5eba/before-A5-v3-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-A5-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/abeadb58f397d50e/after-A5-v3-fixed.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A5-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a0b9ad8a329c58ae/A5-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A5-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e03b8bc70111b7f7/A5-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Head receipt `"  Propo Helo catend\nsed commit\n\nDetail  "` preserves leading/trailing spaces and original blank line. Baseline `"  Propo helosedcatend\n  commit\n\nDetail  "` shows insertion/caret displacement. Final resolved surfaces are identical at zero threshold.

![A5-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/28e902adb943bdf0/A5-sheet.png)

Pre-submit edited checkpoint:
![A5-edited-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/31b10e3052abab27/A5-edited-sheet.png)
![A5-edited-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e1864c12c7ae67cf/A5-edited-diff0.png)
![A5-edited-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bfb51b41cbd95a6d/A5-edited-diff16.png)

### A6 — Android 1080×2424 / logical 411.43×923.43, light

Pi editor initialAnswer empty; native helo, prediction, newline + cat; native Select all/Delete; collapse/expand; Submit empty.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 10.73s typed-taps; dispatch 4.37s; 20.80s newline-taps; dispatch 5.33s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 8.15s typed-taps; dispatch 1.88s; 13.75s newline-taps; dispatch 1.67s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-A6-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/72d82289e0c4e9ab/before-A6-v2-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-A6-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d003382118926375/after-A6-v2-fixed.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A6-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b34046a623ce00ad/A6-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![A6-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/840723fd7812d017/A6-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Both provider receipts are `{"type":"extension_ui_response","id":"editor-1","value":""}`. Empty remains empty and is not cancellation. Final resolved surfaces are identical at zero threshold.

![A6-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b7029fe3ba6f5ad0/A6-sheet.png)

### I1 — iOS native 1206×2622 / logical 402×874, light

Apple keyboard teh helo; accept help, continue cat; First clears; retype helo, accept help; collapse/expand retained card; continue cat and immediate Submit.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 5.27s first; dispatch 5.09s; 13.41s continue; dispatch 2.09s; 21.78s retype; dispatch 2.63s; 37.80s immediate-submit; dispatch 2.58s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 6.67s first; dispatch 5.38s; 15.32s continue; dispatch 2.22s; 23.76s retype; dispatch 2.68s; 43.69s immediate-submit; dispatch 3.00s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-I1-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a99dd39598607ee1/before-I1-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-I1-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ac3ad26a28bc658a/after-I1-fixed.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![I1-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/88b05a9d754d7397/I1-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![I1-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c2f4d82425548f56/I1-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Both receive `Help cat`, exactly matching final visible text after single-line trim. Clearing and retained-card continuation remain usable.

![I1-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4d23cb581e5b96db/I1-sheet.png)

### I2 — iOS native 1206×2622 / logical 402×874, light

Pi multiline prefill; mid-text helo, Apple prediction, cat + newline + line; collapse/expand; continue end and Submit. Request editor-2 with empty prefill; native prediction + newline + cat; delete all using native Backspace taps; collapse/expand; Submit empty.

Before timestamps (seconds from record-command start, approximate ±2 s recording startup): 9.67s mid; dispatch 3.52s; 17.55s newline; dispatch 5.41s; 37.29s continue; dispatch 2.56s; 68.70s empty-type; dispatch 3.02s; 76.15s empty-newline; dispatch 3.06s; 83.21s delete-native; dispatch 7.42s.
After timestamps (seconds from record-command start, approximate ±2 s recording startup): 9.75s mid; dispatch 3.27s; 16.37s newline; dispatch 5.02s; 32.30s continue; dispatch 2.51s; 60.36s empty-type; dispatch 2.80s; 66.76s empty-newline; dispatch 3.21s; 74.06s delete-native; dispatch 6.60s.

| Before | After | Diff0 | DiffT (>16) |
|---|---|---|---|
| [before-I2-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1781856e5c57525e/before-I2-v3-fixed.mp4)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) | [after-I2-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/723f408caee9dc32/after-I2-v3-fixed.mp4)<br>[f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![I2-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41813c322eb2811d/I2-diff0.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) | ![I2-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c7044802b97663c/I2-diff16.png)<br>[ac8dce0cc3](https://git.cafe/pingdotgg/t3code/commit/ac8dce0cc3abd8a337f2d806b5082a6834b9b81a) → [f16d8770bd](https://git.cafe/pingdotgg/t3code/commit/f16d8770bda7acff940ed18a3557c050aea6651e) |

Both nonempty receipts are `"  Proposed help cat\nLinecommit\nEnd\nDetail  "`; the continuation intentionally occupies the original blank line. Both subsequent unique editor-2 responses are `value:""`.

![I2-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/edddbde1877c1c66/I2-sheet.png)

### What else changed

- A1/A3: answer text/caret/spell underlines and Gboard prediction candidates differ with the reproduced corruption; pending-question summary brightness differs during its existing pulse. Subthreshold keyboard/gesture antialiasing pixels also differ. A1 composer controls have the same app content; only three gesture-pill antialiasing pixels differ at zero threshold.
- A5 edited checkpoint: input text/caret positions and predictions differ; minor keyboard antialiasing differs. Final resolved A5 and A6 have no changed pixels at zero threshold.
- I1: native battery pixels and one-level composer shadow pixels differ at zero threshold; none exceed threshold 16. I2: native battery pixels differ at zero threshold; none exceed threshold 16.
- A2: final answer summaries differ because available final Gboard predictions differ (baseline Jell-O cuz world; head Jell-O cuz I world). The summary width shifts adjacent prompt/time elements; middle checkpoint includes a native prediction-strip versus toolbar difference, pending-summary pulse brightness and keyboard antialiasing. A4 recovered final pair differs only in the pulsing pending-question label brightness and tiny gesture-pill pixels; answer/new-request content is the same.
- Intermediate videos include live OS time/battery, Working elapsed labels, native picker delays, and the same scripted Pi unsupported-version warning on both sides. None is attributed to this PR.

### Receipts and reproducibility

Exact provider JSONL receipts include synthetic setup attempts as well as accepted rows; authoritative projections map the accepted thread/request IDs and resolved status. I2 editor-1/editor-2 IDs are unique within each provider session, with full request identity in the projections.
[before-authoritative-receipts.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/abd2d95e8a5ca9d4/before-authoritative-receipts.json)
[after-authoritative-receipts.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5266d6808c35289d/after-authoritative-receipts.json)
[before-pi-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da5e88d07749b548/before-pi-provider-receipts.jsonl)
[after-pi-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ae0746d466872406/after-pi-provider-receipts.jsonl)
[before-fx-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c08b47130009c816/before-fx-provider-receipts.jsonl)
[after-fx-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4a0f9c3e0a8353e7/after-fx-provider-receipts.jsonl)
[timeline.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1da214a83808c3c6/timeline.json)
[cadence.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c3a04de70706daa0/cadence.json)
[reproduce.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/19cca8ed39a9d7aa/reproduce.md)

### Unverified / limits

- A2 full native retake replaces the invalid fast setup attempt. Strict head doubled-frame settlement is unverified because the Metro switch interrupted the second screenshot; the clean pre-switch final frame and trimmed recording are supplied.
- No matrix row lacks a before/after recording. A4 recovered after picker/menu readiness retries; strict pending-card pixel settlement remains unverified.
- A1 exact ~130 ms cadence: pool-native dispatch was slower (measured per-key means above); baseline failure/head success was established at measured cadence only.
- Whole OS/client frozen clock, reduced motion, exact Gboard build, and strict doubled-frame settlement for every row were not established. iOS lease expired before optional still retake; exported behavior recordings and receipts survive.
- Physical reporter device/keyboard build, concurrent streaming, other keyboard languages remain outside this matrix.

### Upload inventory (ghdrop output verbatim)

All links below are verbatim `ghdrop upload -m` output. Supplementary raw archives retain failed/setup attempts, snapshots, native batch scripts, and settlement retries; they are excluded from the accepted pair selection above. Pairing credentials and databases are not included.

[before-I1-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a99dd39598607ee1/before-I1-fixed.mp4)
[after-I1-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ac3ad26a28bc658a/after-I1-fixed.mp4)
[before-I2-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1781856e5c57525e/before-I2-v3-fixed.mp4)
[after-I2-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/723f408caee9dc32/after-I2-v3-fixed.mp4)
![before-I1-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7b9312a5dfb2108e/before-I1-fixed-final.png)
![after-I1-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/de2a5f0e9ebf6e97/after-I1-fixed-final.png)
![I1-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4d23cb581e5b96db/I1-sheet.png)
![I1-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/88b05a9d754d7397/I1-diff0.png)
![I1-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c2f4d82425548f56/I1-diff16.png)
![before-I2-v3-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/24384e4011b2a0b6/before-I2-v3-fixed-final.png)
![after-I2-v3-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3a00205f67939dba/after-I2-v3-fixed-final.png)
![I2-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/edddbde1877c1c66/I2-sheet.png)
![I2-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41813c322eb2811d/I2-diff0.png)
![I2-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c7044802b97663c/I2-diff16.png)


[before-A1-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/02b62a4ed6436cd1/before-A1-fixed.mp4)
[after-A1-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9ca68be653785d73/after-A1-v2-fixed.mp4)
![before-A1-fixed-3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/af815c0045e2c66a/before-A1-fixed-3.png)
![after-A1-v2-fixed-3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a3b5350067e58142/after-A1-v2-fixed-3.png)
![A1-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/26f53809cd4d84ba/A1-sheet.png)
![A1-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2b1594932b7c0e43/A1-diff0.png)
![A1-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/608f2e778048533f/A1-diff16.png)
![before-A1-fixed-control.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/993cacd4fdfcd566/before-A1-fixed-control.png)
![after-A1-v2-fixed-control.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b0c2dcfee735f6f1/after-A1-v2-fixed-control.png)
![A1-control-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6dcf165225bee112/A1-control-sheet.png)
![A1-control-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ed4dc639b21cd955/A1-control-diff0.png)
![A1-control-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9691e4714cc4a133/A1-control-diff16.png)


[before-A3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/375ace4ef29acc29/before-A3-fixed.mp4)
[after-A3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d58368510f6253c9/after-A3-fixed.mp4)
![before-A3-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fa6c002b464d12c1/before-A3-fixed-final.png)
![after-A3-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/181da5ca72473d69/after-A3-fixed-final.png)
![A3-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7b116a26166d3c92/A3-sheet.png)
![A3-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/633dd449b48425b6/A3-diff0.png)
![A3-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c256ed33d622b09d/A3-diff16.png)
[before-A5-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e8b6e23c518a5eba/before-A5-v3-fixed.mp4)
[after-A5-v3-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/abeadb58f397d50e/after-A5-v3-fixed.mp4)
![before-A5-v3-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3ce06719a92ddae3/before-A5-v3-fixed-final.png)
![after-A5-v3-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41b69da384a3fe50/after-A5-v3-fixed-final.png)
![A5-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/28e902adb943bdf0/A5-sheet.png)
![A5-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a0b9ad8a329c58ae/A5-diff0.png)
![A5-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e03b8bc70111b7f7/A5-diff16.png)
![before-A5-v3-fixed-visible-submit.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0fae591b36fe147a/before-A5-v3-fixed-visible-submit.png)
![after-A5-v3-fixed-visible-submit.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eb6886f8064f3ef0/after-A5-v3-fixed-visible-submit.png)
![A5-edited-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/31b10e3052abab27/A5-edited-sheet.png)
![A5-edited-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e1864c12c7ae67cf/A5-edited-diff0.png)
![A5-edited-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bfb51b41cbd95a6d/A5-edited-diff16.png)
[before-A6-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/72d82289e0c4e9ab/before-A6-v2-fixed.mp4)
[after-A6-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d003382118926375/after-A6-v2-fixed.mp4)
![before-A6-v2-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/798766c3fa6f6959/before-A6-v2-fixed-final.png)
![after-A6-v2-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3ee394b4b551d88e/after-A6-v2-fixed-final.png)
![A6-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b7029fe3ba6f5ad0/A6-sheet.png)
![A6-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b34046a623ce00ad/A6-diff0.png)
![A6-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/840723fd7812d017/A6-diff16.png)


[after-A4-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f06a48dfab150f7b/after-A4-fixed.mp4)
[after-A4-fixed.part-002.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/131e8c523cf2745f/after-A4-fixed.part-002.mp4)
[before-A4-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f8c8579e8efbf67a/before-A4-fixed.mp4)
[before-A4-fixed.part-002.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9ce40ee917bbc79a/before-A4-fixed.part-002.mp4)
[before-A4-fixed.part-003.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cd6b39381cb4d6a4/before-A4-fixed.part-003.mp4)


[a2-retakes.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eda506f701dcc53e/a2-retakes.sh)
[a4-complete.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5e50b8d076243f9e/a4-complete.py)
[a4-finish.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d148baae47765955/a4-finish.py)
[a4-start.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/aa772013e33b4a80/a4-start.py)
[android-environment.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/40faa69c7bae45be/android-environment.json)
[android-rows.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0a80a7567561b869/android-rows.py)
[before-android.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2646138f2b2d4bde/before-android.sh)
[cadence.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c3a04de70706daa0/cadence.json)
[compare.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0e3e089fec34a054/compare.py)
[control.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6ca5f5d0937bfbe0/control.py)
[driver.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ebb1491bc812faea/driver.py)
[environment.ts](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f8080aa36872c199/environment.ts)
[fake-fx.ts](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6a543a852b15aa2f/fake-fx.ts)
[fake-pi.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dac1053860fbc733/fake-pi.mjs)
[finish-I1.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0100b6d61f8e6b54/finish-I1.py)
[finish-a6.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/765116a90e5615a5/finish-a6.py)
[fixture-matrix.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7ce6a8f4eedfe66f/fixture-matrix.md)
[fixture-server.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e9f6b1685943145c/fixture-server.py)
[frame-sheet.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/59deb9caa5c7b810/frame-sheet.py)
[freeze-clock.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da53e0292800bb42/freeze-clock.mjs)
[head-retakes.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bd381e514ac797f8/head-retakes.sh)
[i1-complete.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/89196a031e35cb97/i1-complete.py)
[i2-complete.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9ac5a9d2c6c637f2/i2-complete.py)
[i2-empty-resume.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8ee09ca2a1bcff68/i2-empty-resume.py)
[inspector.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5aae71389429d174/inspector.mjs)
[ios-driver.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/64e1963ddb037f50/ios-driver.py)
[ios-environment.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bdd9222495e374f6/ios-environment.json)
[navigate.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/78cfe119621d9abd/navigate.mjs)
[pair.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c5a056420b10a2ee/pair.mjs)
[pi-fixture](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c1048e937c612cf8/pi-fixture)
[ready.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4474a89fbe77f78c/ready.mjs)
[reproduce.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/19cca8ed39a9d7aa/reproduce.md)
[review-row.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1fe16c5427d10396/review-row.py)
[seed.ts](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b40994d91cba22f5/seed.ts)
[send.ts](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6edc2c9c0fa113c7/send.ts)
[settled-ios.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8df0bf2dc83d729d/settled-ios.py)
![synthetic-attachment.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0f0ef1a13d85073b/synthetic-attachment.png)
[video-sheet.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1ff4df3a0c571cd1/video-sheet.py)


[supplementary-raw-1.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7e77ccf6f5bb0d79/supplementary-raw-1.tar.gz)
[supplementary-raw-2.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/029b8f99307e7f94/supplementary-raw-2.tar.gz)
[supplementary-raw-3.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0c3f93bf9c4c4162/supplementary-raw-3.tar.gz)
[supplementary-raw-4.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f9c72b416c101b1e/supplementary-raw-4.tar.gz)
[supplementary-raw-5.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9bee2a2888285f31/supplementary-raw-5.tar.gz)
[supplementary-raw-6.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bb92a9d960c70d00/supplementary-raw-6.tar.gz)


[before-authoritative-receipts.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7618d8ad9c0f6830/before-authoritative-receipts.json)
[after-authoritative-receipts.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f1bf00f4857c206e/after-authoritative-receipts.json)
[before-pi-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/68b71cc3ca439ae9/before-pi-provider-receipts.jsonl)
[after-pi-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/71e7f2f9d1cdaf2f/after-pi-provider-receipts.jsonl)
[before-fx-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d758bbc2c323b06f/before-fx-provider-receipts.jsonl)
[after-fx-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/10ab3282584de1f1/after-fx-provider-receipts.jsonl)
[timeline.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a8e66fd83f1b9dfd/timeline.json)
[build-index.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b9886ac15f533ffc/build-index.py)
[driver.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/90bf7af728b0b946/driver.py)


[sanitized-logs.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d9f60820c06cb882/sanitized-logs.tar.gz)


![A4-head-only-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/44fd69b4012d543b/A4-head-only-sheet.png)


[before-A2-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41698dc926701d0f/before-A2-v2-fixed.mp4)
[after-A2-v2-verified.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bb7729a229a56972/after-A2-v2-verified.mp4)
![before-A2-v2-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d0d467cf37842b47/before-A2-v2-fixed-final.png)
![after-A2-v2-final-accepted.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a73b6ab6ae5988e9/after-A2-v2-final-accepted.png)
![A2-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/39baca13668e76b2/A2-sheet.png)
![A2-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/72b5972f21a9087a/A2-diff0.png)
![A2-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/68c9ca1cd8c20b36/A2-diff16.png)
![before-A2-v2-fixed-middle-result.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7e407715028f5a13/before-A2-v2-fixed-middle-result.png)
![after-A2-v2-fixed-middle-result.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c7f72cf7fd96c787/after-A2-v2-fixed-middle-result.png)
![A2-middle-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cc76ea71c1e1d692/A2-middle-sheet.png)
![A2-middle-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1affb99ce0855df3/A2-middle-diff0.png)
![A2-middle-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e641a149e4136fa9/A2-middle-diff16.png)


[driver.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2942cef03e31cb0e/driver.py)
[a4-complete.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/919df810a3ea8d34/a4-complete.py)
[a4-finish.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5a05e161f03a6933/a4-finish.py)
[build-index.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/35d79ab86378d32b/build-index.py)
[timeline.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/471901b7102b9806/timeline.json)
[before-authoritative-receipts.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/34d5f1258312179c/before-authoritative-receipts.json)
[after-authoritative-receipts.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5266d6808c35289d/after-authoritative-receipts.json)
[before-pi-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da5e88d07749b548/before-pi-provider-receipts.jsonl)
[after-pi-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ae0746d466872406/after-pi-provider-receipts.jsonl)
[before-fx-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d745a99fd7d23d1a/before-fx-provider-receipts.jsonl)
[after-fx-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4a0f9c3e0a8353e7/after-fx-provider-receipts.jsonl)


[before-A4-v2-fixed.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/232cd524331089c7/before-A4-v2-fixed.mp4)
[before-A4-v2-fixed.part-002.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/30514333c262ed99/before-A4-v2-fixed.part-002.mp4)
![before-A4-v2-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d575d6d48df8fc9e/before-A4-v2-fixed-final.png)
![after-A4-fixed-final.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d24020d1517254f0/after-A4-fixed-final.png)
![A4-sheet.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/57af591535b01f5e/A4-sheet.png)
![A4-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/af4bdcb8f82cf012/A4-diff0.png)
![A4-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/af0843b43050969d/A4-diff16.png)


[supplementary-final.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c4790a69b75380a0/supplementary-final.tar.gz)
[before-fx-provider-receipts.jsonl](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c08b47130009c816/before-fx-provider-receipts.jsonl)
[before-authoritative-receipts.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/abd2d95e8a5ca9d4/before-authoritative-receipts.json)
[timeline.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1da214a83808c3c6/timeline.json)
[build-index.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fc3939f5b84b23d9/build-index.py)


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


FRICTION:

- tool | Native picker/menu accessibility and pool foreground readiness caused failed A4 attempts; recovery required keyboard dismissal and observed native coordinates. | Stable picker accessibility and documented foreground recovery would avoid retries.
- tool | Pool native taps ran slower than the requested 130 ms, and iOS lease expired before optional settlement retake. | A native cadence driver and explicit lease renewal would improve proof.
- model | Only server data time was frozen; full native reduced-motion/clock/settlement and Gboard build were not established. | Reserve an environment-validation phase before captures.

Cleanup: own servers stopped, active Android lease closed; iOS lease had already ended (close rejected, no active iOS session). Baseline worktree removed. Head source and PR untouched. Model/harness: gpt-6.1-sol through Codex.
