## Evidence

**6/12 matrix rows have complete controlled interaction recordings; F4 attempts and qualified F6 make 8/12 with paired media. These counts describe capture coverage, not passing acceptance.** Live F1 is an additional variant.

**Outside the title / limits:** the unfolded composer is hidden behind the keyboard on both sides. F4 cannot reach the covered field; live after still clips the heading, leaves ~156 pt below the field, and overlaps Working/scroll-to-end with Thinking; minimum shift is unproved. Native clocks/island circles, caret, predictions and live timer pixels vary.

Environment for every capture: real app, iOS Simulator 27.2, SDK 27.1 native clients, light, default Large text, English QWERTY, 3× native / full-device 1× exports. DF 466×678 pt; DU 951×669 pt; P 402×874 pt. Fresh isolated synthetic DBs, same driver; no real data.

500 ms screenshot brackets and all frames/diffs were inspected. Live timers prevent literal bracket equality; the full sheet discloses this and native noise, extraction times, seed and pass-1 transport limits. Diff0 amplifies exact differences to red; DiffT uses fuzz 5%.

**F1-DF — DF 466×678, iOS 27.2, light** Retained pass 1: mild synthetic difference only, field about 19 pt lower after; this fixture does not reproduce the reported heading occlusion. Steps (seconds after record-start returned), before: 13.0s press role=securetextfield; 15.6s type abc; 24.5s press "Dismiss keyboard"; 33.6s press role=securetextfield; 42.6s press "Dismiss keyboard"; after: 8.6s press role=securetextfield; 11.8s type abc; 22.0s press "Dismiss keyboard"; 31.5s press role=securetextfield; 43.4s press "Dismiss keyboard". [F1-DF-before-final.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e702b99b1f5830c4/F1-DF-before-final.mp4) | [F1-DF-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d352cb1a58b96509/F1-DF-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F1-DF-before-final-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b94a028e83c26c9c/F1-DF-before-final-keyboard-up.png) | ![F1-DF-after-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3ca1ad8c92aed232/F1-DF-after-keyboard-up.png) | ![F1-DF-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/23ba1ede764c0c2c/F1-DF-keyboard-up-diff0.png) | ![F1-DF-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9ee5ff2b3092e47a/F1-DF-keyboard-up-diffT.png) |

**F1-P — P 402×874, iOS 27.2, light** Retained pass 1: field, header and composer align; after has a disclosed transport gap during the second focus cycle. Steps (seconds after record-start returned), before: 13.5s press role=securetextfield; 16.2s type abc; 31.3s fill role=securetextfield ; 36.0s keyboard dismiss; 48.8s press role=securetextfield; 51.3s type abc; 61.1s fill role=securetextfield ; 65.7s keyboard dismiss; after: 13.9s press role=securetextfield; 17.0s type abc; 27.2s fill role=securetextfield ; 32.6s keyboard dismiss; 41.4s press role=securetextfield; 43.8s type abc; 173.2s fill role=securetextfield ; 177.2s keyboard dismiss. [F1-P-before-final.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2ff9b5e8b8088067/F1-P-before-final.mp4) | [F1-P-after-final.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/34e752b678b19d6d/F1-P-after-final.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F1-P-before-final-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a49e6d48d33343c1/F1-P-before-final-keyboard-up.png) | ![F1-P-after-final-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/79957f680c8b57e4/F1-P-after-final-keyboard-up.png) | ![F1-P-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d5fb809dbb6e8982/F1-P-keyboard-up-diff0.png) | ![F1-P-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e1b4cbf4b3287810/F1-P-keyboard-up-diffT.png) |

**F2-DF — DF 466×678, iOS 27.2, light** Composer geometry unchanged; draft retained and rest restored. Steps (seconds after record-start returned), before: 8.6s press role=text-view; 13.1s type Draft deployment note; 23.2s press "Dismiss keyboard"; after: 7.9s press role=text-view; 11.9s type Draft deployment note; 20.1s press "Dismiss keyboard". [F2-DF-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/717b301c196f3932/F2-DF-before.mp4) | [F2-DF-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4a8c3a6fff64358b/F2-DF-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F2-DF-before-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/90f020911e290327/F2-DF-before-keyboard-up.png) | ![F2-DF-after-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6ffe4a8e297eda72/F2-DF-after-keyboard-up.png) | ![F2-DF-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e30c1173ea2060c7/F2-DF-keyboard-up-diff0.png) | ![F2-DF-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a7b11c6fc7648ce7/F2-DF-keyboard-up-diffT.png) |

**F3plus-DF — DF 466×678, iOS 27.2, light** Feed field about 19 pt lower after; composer geometry matches; final rest restored. Steps (seconds after record-start returned), before: 19.0s press role=securetextfield; 29.5s press role=text-view; 40.1s press role=securetextfield; 43.3s press role=text-view; 46.2s press "Dismiss keyboard"; after: 7.8s press role=securetextfield; 16.8s press role=text-view; 25.2s press role=securetextfield; 27.7s press role=text-view; 30.0s press "Dismiss keyboard". [F3plus-DF-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8e8ae298b3ac75fb/F3plus-DF-before.mp4) | [F3plus-DF-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c87657ae054a2756/F3plus-DF-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F3plus-DF-before-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f9cc1f16211ebc63/F3plus-DF-before-keyboard-up.png) | ![F3plus-DF-after-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9c6760ce37e38006/F3plus-DF-after-keyboard-up.png) | ![F3plus-DF-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6b0b86080b497147/F3plus-DF-keyboard-up-diff0.png) | ![F3plus-DF-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2b4d362dd99e9419/F3plus-DF-keyboard-up-diffT.png) |

**F1-DU — DU 951×669, maximized content, iOS 27.2, light** Same fresh Reading→Staging mount then maximize content. Composer remains hidden behind keyboard on both sides during feed focus; both focus cycles and return complete. Steps (seconds after record-start returned), before: 14.2s press role=securetextfield; 17.3s type abc; 28.4s press "Dismiss keyboard"; 39.3s press role=securetextfield; 50.2s press "Dismiss keyboard"; after: 8.6s press role=securetextfield; 11.8s type abc; 22.5s press "Dismiss keyboard"; 33.0s press role=securetextfield; 49.4s press "Dismiss keyboard". [F1-DU-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/71836c8cdfb069e3/F1-DU-before.mp4) | [F1-DU-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6cc87a21b2cb948c/F1-DU-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F1-DU-before-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/46cafac29a352dfa/F1-DU-before-keyboard-up.png) | ![F1-DU-after-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/880985f0700303f6/F1-DU-after-keyboard-up.png) | ![F1-DU-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d745a5c471691ee4/F1-DU-keyboard-up-diff0.png) | ![F1-DU-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cf469f150abd71be/F1-DU-keyboard-up-diffT.png) |

**F4-DF — DF 466×678, iOS 27.2, light — incomplete attempt** From input top y439, composer focus covers the field and the driver refuses the next tap on both sides. Dismissal restores this attempted reading position; the full round trip remains unverified. Pass 1 lost position on its smaller-content fixture. Steps (seconds after record-start returned), before: 9.1s press role=text-view; 25.4s press role=securetextfield; 25.4s tap refused: field behind keyboard; dismiss; 27.3s press "Dismiss keyboard"; after: 9.4s press role=text-view; 25.5s press role=securetextfield; 25.5s tap refused: field behind keyboard; dismiss; 27.4s press "Dismiss keyboard". [F4-DF-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9103fef65db91fa6/F4-DF-before.mp4) | [F4-DF-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d9dafd11f8a6ef41/F4-DF-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| composer | ![F4-DF-before-composer.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cf0454da623b35ac/F4-DF-before-composer.png) | ![F4-DF-after-composer.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8287add120d3046b/F4-DF-after-composer.png) | ![F4-DF-composer-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ca3d48b2c83998b8/F4-DF-composer-diff0.png) | ![F4-DF-composer-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a4c416ba554f9fa2/F4-DF-composer-diffT.png) |

**F5-DF — DF 466×678, iOS 27.2, light** Already visible field stays at about y200 on focus; dismissal restores the reading position. Steps (seconds after record-start returned), before: 9.0s press role=securetextfield; 25.6s press "Dismiss keyboard"; after: 8.6s press role=securetextfield; 25.0s press "Dismiss keyboard". [F5-DF-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/449fd3e35d84bf65/F5-DF-before.mp4) | [F5-DF-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4361e27c201d40de/F5-DF-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F5-DF-before-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8b4c856ae961e56c/F5-DF-before-keyboard-up.png) | ![F5-DF-after-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ca6b34eeba727c7f/F5-DF-after-keyboard-up.png) | ![F5-DF-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/968f7cd6d773c337/F5-DF-keyboard-up-diff0.png) | ![F5-DF-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/54ecda2f08f031a3/F5-DF-keyboard-up-diffT.png) |

**F6-DF — DF 466×678, iOS 27.2, light — incomplete attempt** QUALIFIED: same expanded 30+30 content, header visible; input y73.33 before vs y73.67 after. Focus leaves overlap before and clears it after; dismissal reverses correction. One native pixel offset lights text throughout tolerant rest/final diffs, so these are not a strict pixel-comparable pair. Steps (seconds after record-start returned), before: 9.0s press role=securetextfield; 19.8s press "Dismiss keyboard"; after: 10.8s press role=securetextfield; 22.0s press "Dismiss keyboard". [F6-DF-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cf80a00aa94510ad/F6-DF-before.mp4) | [F6-DF-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/125ab2df8395554e/F6-DF-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F6-DF-before-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/aa642b056cb919c9/F6-DF-before-keyboard-up.png) | ![F6-DF-after-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/684cc4887e3938b7/F6-DF-after-keyboard-up.png) | ![F6-DF-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a5bd7a7efe4b2fb2/F6-DF-keyboard-up-diff0.png) | ![F6-DF-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/84370d9666f6c769/F6-DF-keyboard-up-diffT.png) |

**F1-live-DF — DF 466×678, iOS 27.2, light** Live Working + pending card reproduces overlap: before input top is under y82 header; after field y117–164 clears it. Heading remains partly clipped and about 156 pt remains above composer y320: minimum shift is not established. After Working/scroll-to-end controls overlap Thinking. Live timer brackets are qualified, not literally settled. Steps (seconds after record-start returned), before: 9.6s press role=securetextfield; 12.9s type abc; 23.3s press "Dismiss keyboard"; 35.4s press role=securetextfield; 47.0s press "Dismiss keyboard"; after: 9.2s press role=securetextfield; 12.3s type abc; 23.9s press "Dismiss keyboard"; 36.3s press role=securetextfield; 46.9s press "Dismiss keyboard". [F1-live-DF-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9985b1d92e3f71be/F1-live-DF-before.mp4) | [F1-live-DF-after.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/70cc99be3ac042a1/F1-live-DF-after.mp4)

| State | Before<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) | After<br>[703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | Diff0<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) | DiffT 5%<br>[80e62619f5](https://github.com/pingdotgg/t3code/commit/80e62619f5c01d84579bcf70ea6d566712007412) → [703f28f7a3](https://github.com/pingdotgg/t3code/commit/703f28f7a31eacc55d8e5b0b9ed2eb7c5ce2c890) |
|---|---|---|---|---|
| keyboard-up | ![F1-live-DF-before-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4cb99851af9c0301/F1-live-DF-before-keyboard-up.png) | ![F1-live-DF-after-keyboard-up.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c6cd3d8e85ba0aa8/F1-live-DF-after-keyboard-up.png) | ![F1-live-DF-keyboard-up-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2862049e4dbe8496/F1-live-DF-keyboard-up-diff0.png) | ![F1-live-DF-keyboard-up-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/573de9dcc556c2bd/F1-live-DF-keyboard-up-diffT.png) |

Unverified: strict F6 pixel comparison (one-native-pixel offset); F3−, full F4, F7, F9 (budget); F8 unit-test-only as instructed; iOS <26 unavailable from the warm pool/catalog.

Scripts: [capture-scripts-r2.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/feb8459dd1eb39d0/capture-scripts-r2.tar.gz) · [seed.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ac8ad634691093a4/seed.py) · [capture.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/576bfc1bc6a85eea/capture.py) · [position-right.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dc6027059a71a178/position-right.py) · [live.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/863f6623bf41dbb3/live.py). Original recordings/brackets and all other scripts are linked in the full sheet. Cleanup verified: lease closed, owned dev/Metro ports stopped, before helper restored and worktree removed, after checkout clean. No edits, commits or PR comments. AI-assisted; verified with the tests and tools listed above.
 Full per-row sheet (rest, keyboard-up, final-rest and additional focus states): [evidence-full.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9737ad6cdae8d636/evidence-full.md).