## Evidence

Unexpected: Android model-sheet dismissal briefly collapses the card on [9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d): **17.66–18.38 s compact, card back about 18.46 s**. Full-screen settings occlude the composer while open; no claim about that hidden interval.<br>
Target [#23986](https://git.cafe/pingdotgg/t3code/pull/23986); before [96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294), all after captures [9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d). The supplied matrix names historical commits; this run uses the lead’s pins. **12/35 rows represented, nine partial, 23 uncaptured; not a full acceptance pass.** F01–F03 contain the core interactions, subject to global metadata/clock limits below. No tests substitute for missing captures.<br>
Environment: real Expo native dev clients, agent-device 0.21.31, host fs-06. iPhone 17 Pro: iOS 27.2 pool-reported (runtime unverified), portrait 402×874 pt / 1206×2622 video px, DPR 3 inferred from ratio, OS text size large, app text 16 pt; Dark unless F11 Light. Pixel 9: Android 16/API 36, Light, portrait 1080×2424 px, font_scale 1.0, DPR/logical viewport unverified. Pixel Tablet: Android 16/API 36, Light, landscape 2560×1600 px, font_scale 1.0, DPR/logical viewport unverified. All Android uses Gboard; actual compact-row R was not instrumented. Device/theme labels below inherit these settings.<br>
Data: fresh separate worktree databases with T3CODE_DEV_SEED=0, supported typed RPC project/thread creation, synthetic E0 only, no provider turns or real userdata. M+ is Codex GPT-6.1-Sol / Extra High / Standard, no instance badge, mic unavailable. Label-change fixture uses Claude Opus 5.5 / Medium → GPT-6-Luna / Low / Standard. F11 uses Luna Medium/Fast; F10 Luna Low/Standard. No component harnesses or static fixtures. iOS client fingerprint f532a0c5902b69c7f69cc5fe9c807053700a07eb; Android x86_64 ed36a9cc9856c84a322bb71e6d67744f0a00877d.<br>
Limits: native recording clocks were **not frozen**; pause lengths and native VFR differ, and iOS sometimes truncates final commands. Times below are approximate movie times, not exact driver wall time; exact command journals are in [steps-and-seeds.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3fdc78e5df04cd60/steps-and-seeds.tar.gz). Full-screen recordings were opened/inspected. Only F04 is a standalone settled still pair; recording contact sheets are supplemental and are not asserted to be settled stills. N/A diffs mean recording, not missing still diffs.<br>
Navigation: [sheets.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1b32ae2e94b8752e/sheets.md) contains all 23 current sheets, with each sheet URL embedded; [ghdrop-output.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9a81078b89309c2c/ghdrop-output.md) preserves every ghdrop asset link verbatim, including superseded takes.

F01 · iPhone Dark + Pixel 9 Light — Rest empty → short unfocused icon-only control frames appear in F02/F03 below; both remain compact at rest. Same M+.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F01-F02-ios-before-final.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0cb8589ef6442524/F01-F02-ios-before-final.mp4)<br>[F03-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ff30be66b3466404/F03-before.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F01-F02-ios-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6b88142724b892dd/F01-F02-ios-after-9bb5ad2613.mp4)<br>[F03-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/06bf04fcf4c03812/F03-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F02 · iPhone 17 Pro Dark — Before ≈0 rest / 3 focus / 7 Hi / 10 feed tap / 11–14 keyboard-down row; after ≈0 rest / 3 card / 5 Hi / 8 row. Persisted empty thread; inspect “No conversation yet” during the height change. The before retake replaces the earlier truncated take.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F01-F02-ios-before-final.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0cb8589ef6442524/F01-F02-ios-before-final.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F01-F02-ios-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6b88142724b892dd/F01-F02-ios-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F03 · Pixel 9 Light — Before ≈3 focus / 6.5 Hi / 8.9 Back / 12 refocus / 15 edge swipe / 18 wrapped / 21 Back / 24 refocus / 28.5 Hi / 31 Back. After same ordered actions over ≈37 s: focused card closes on Back with editor focus retained, re-tap restores it. Edge gesture is attempted; focus retention is inferred from native behavior/next tap, not instrumented.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F03-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ff30be66b3466404/F03-before.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F03-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/06bf04fcf4c03812/F03-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F04 · Pixel Tablet Light (partial matrix) — Rest → focus/Hi ≈0–7 s in wide clips: after full label stays in row; before icon only. Static rest: both screenshots repeated 500 ms apart with AE=0, fonts/network settled, status clock 9:41. Diff0 abs RGB difference×255: AE 3169; ImageMagick fuzz 2%: AE 3100. All changed pixels inside x1447–1783,y1460–1491. iPad Dark and New Task segment missing.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| ![F04-before.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3e4dc90355940b48/F04-before.png)<br>[wide-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d03191f3e9274e33/wide-before.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | ![F04-after-9bb5ad2613.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1ae7c5dfd83fcdc8/F04-after-9bb5ad2613.png)<br>[wide-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a655a0efac47bd64/wide-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | ![F04-tablet-rest-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/396e3b3d1e592a8a/F04-tablet-rest-diff0.png)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) → [9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | ![F04-tablet-rest-diffT.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/08c59f3908023b34/F04-tablet-rest-diffT.png)<br>2% fuzz; [96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) → [9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) |

F05 · Pixel Tablet Light (partial matrix) — Type prefix “A wide draft uses more of this row”, then character-by-character “ before the model label reaches the text.” After opens ≈18 s; before later ≈42 s as text wraps. Replace with Hi ≈38 s after / 48 s before to collapse. No label shrinking observed. Exact one-character clearance/R not measured; replacement is not a character-by-character delete test. iPad missing.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [wide-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d03191f3e9274e33/wide-before.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [wide-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a655a0efac47bd64/wide-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F06 · Pixel Tablet Light (partial) — Before ≈54 s one\ntwo / 58 Back / 67 five lines; after ≈44 wrap / 47 Back / 54 five lines / 59 clear / 63 Back. Separate after tail adds newline-only, five-line scrolling, Hi and Back. Wrapped text stays card with keyboard down. Before newline-only/scroll reverse and iPad cells missing.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [wide-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d03191f3e9274e33/wide-before.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [wide-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a655a0efac47bd64/wide-after-9bb5ad2613.mp4)<br>[F06-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/35df1f5a2f0e4d2f/F06-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F07 · Pixel 9 Light (partial) — In F03 clips: wrapped one\ntwo → Back keeps overflowing card, then Hi → Back returns row (before ≈18–31 s, after corresponding latter half). Long overflowing single-line narrow variant missing.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F03-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ff30be66b3466404/F03-before.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F03-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/06bf04fcf4c03812/F03-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F08 · Pixel 9 Light + iPhone Dark (partial) — Android before: sheet ≈4 s / Luna ≈52 / Save ≈85 / row ≈88; after focus ≈1 / sheet ≈8 / Luna ≈12 / Save ≈16 / card→row→card ≈17.5–18.5. [android-sheet-dismissal-4x.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/edceed846a0e17bb/android-sheet-dismissal-4x.mp4) and ![F08-android-dismissal-frames.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/023ac3ff7e7b944f/F08-android-dismissal-frames.png) show flash (tile times +16.3 s). iPhone idle Hi/icon → settings ≈3 before/2 after → Luna ≈7; before returns row ≈10, after movie ends before dismissal. Card visible during iOS sheet handoff; complete iOS reverse, D0 route and navigate-away control unverified.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F08-android-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/907dd9010f22d2e0/F08-android-before.mp4)<br>[F08-ios-before-final.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/949781a120e52102/F08-ios-before-final.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F08-android-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/37bcd1d18612d49c/F08-android-after-9bb5ad2613.mp4)<br>[F08-ios-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ce533d44a2332fed/F08-ios-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F09 + reviewer wide checks · Pixel Tablet Light (partial matrix) — 47-char draft “A single line drafting for review today moreWWW”: after starts card, ≈1.7 append “ ultrathink” (summary grows), ≈6 remove keyword, ≈11 settings, ≈16 Luna Low/Standard, ≈19 Save, ≈21 returns row with same draft. Before same action order over ≈29 s; shorter label/draft fits row. No observed card oscillation on growth; ![wide-ultrathink-every-frame.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bde31bbfe754a81a/wide-ultrathink-every-frame.png) includes all 15 decoded frames at 1–4 s ([ultrathink-frame-window.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/15ad7c36d7df080a/ultrathink-frame-window.json)); variable-rate movie cannot exclude an unrecorded frame. Full-screen sheet hides composer. iPad missing.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [wide-label-before.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b5018e264342aa81/wide-label-before.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [wide-label-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41da092305164096/wide-label-after-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F10 · Pixel Tablet Light (partial) — Synthetic image + short draft: before 0–15 s shows rest/focus/preview only; matching return/blur/removal omitted because reconnection overlay spoils later frames. After 0–33 s shows rest thumbnail+icon, focus ≈4 moves strip above row and shows full label, preview ≈10, return ≈16, blur ≈20, refocus/remove ≈26–28. Tail after 33 s rejected after failed fill/navigation; iPad and complete matched reverse missing.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F10-before-partial.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da17333e0c73f75c/F10-before-partial.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F10-after-partial-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/52c5c145b33c35d0/F10-after-partial-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F11 · iPhone 17 Pro Light (unverified pair) — Observation only: before starts image-only compact row, focus ≈8, remove ≈23, Hi ≈30; final blur not retained. After starts already-focused Hi+image card, remove ≈14, Hi ≈18, blur ≈21 returns row. **Initial states differ; not accepted before/after proof of attachment-removal fix.** Pixel 9 Back-vs-blur sequence missing. Retakes rejected for Metro reload, wrong starting focus or truncated ending.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F11-ios-before-partial.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7ba0af0f89528789/F11-ios-before-partial.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F11-ios-after-partial-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41043888829a4658/F11-ios-after-partial-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

F20 · iPhone 17 Pro Dark fallback (partial) — RPC-settled E0 with visible Settled control; both start Hi → focus ≈2–3 → HiHi ≈5. Placeholder/control visible while after card opens. Before feed AX tap hit composer, after final dismissal missing; no complete close/unsettle reverse. Required Pixel 9 Light cell missing; this is additional iOS observation, not full F20 acceptance.

| Before | After | Diff0 | DiffT |
|---|---|---|---|
| [F20-ios-before-partial.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7373ec1a8a93d618/F20-ios-before-partial.mp4)<br>[96fc7b9551](https://git.cafe/pingdotgg/t3code/commit/96fc7b955196637605cbf3b415152ce4dd0e2294) | [F20-ios-after-partial-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1c98810fa3a58c6b/F20-ios-after-partial-9bb5ad2613.mp4)<br>[9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d) | N/A — recording | N/A — recording |

Supplemental terminal · Pixel Tablet Light · [9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d): [terminal-after-9bb5ad2613.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/449bd04c082e9b52/terminal-after-9bb5ad2613.mp4). Keyboard/accessory up → Back ≈2 s → focus ≈6 → Dismiss ≈9 → refocus ≈13 → Back ≈17. Accessory hides during the keyboard hiding transition in recorded frames; exact start-frame alignment unverified. After-only by priority allowance; before identity not visually proved.

Additional dictation row · iPhone Dark / Pixel Light · [9bb5ad2613](https://git.cafe/pingdotgg/t3code/commit/9bb5ad261362d7464674d8c47b7c576e70c0b45d): **unverified, no capture**. App mic was unavailable; Android permission grant reported RECORD_AUDIO was not requested, and Microphone settings did not enable it. OS keyboard dictation is not a substitute for app dictation. No old-head “empty band” capture.

Uncaptured matrix rows (all 23 explicitly accounted for; partial-cell gaps are also stated above):

| Row | Unverified reason |
|---|---|
| F12 MIN | Four-media/video fixture not seeded before budget; no accepted Fold media capture. |
| F13 MIN | Fold attempts rejected: fixed recording canvas clips after fold/unfold, sidebar changes R, and lease failures; no comparable full-surface pair. |
| F14 MIN | Same Fold recording/lease failures; overflow/multiline resize pair unverified. |
| F15 MIN | No iPad split-window lease/session completed within budget. |
| F16 MIN | Exact native R=499/500 unavailable; labelled width harness not built. |
| F17 MIN | 11/22 pt appearance fixtures and iPad cell not run. |
| F18 | No no-reasoning M0 model fixture or labelled harness captured. |
| F19 | Second-instance badge fixture not configured/captured. |
| F21 | Retained-shell deleted-detail native harness not built; outer unavailable route was not substituted. |
| F22 | Deterministic failed-detail/wrapped-error harness not built. |
| F23 | Shell-only offline cache/queue harness not built. |
| F24 | Controlled loading→ready→queue detail harness not built. |
| F25 | Held-queue attachment editing fixture not seeded. |
| F26 | Non-media document chip/preview fixture not seeded. |
| F27 | App voice unavailable; preparing/recording/transcribing harness not built. |
| F28 | Slash/PR overlay loading/error/selection variants not driven. |
| F29 | Unavailable-model/config fallback harness not built. |
| F30 | Unsupported-provider advisory harness not built. |
| F31 | Broken-provider wrapped-advisory harness not built. |
| F32 | Isolated read-only permission fixture not seeded. |
| F33 MIN | Hardware-keyboard/soft-IME suppression setting not changed or captured on either platform. |
| F34 | iOS Duo native-metrics harness not built; Android Fold is not a substitute. |
| F35 | Direct feed optional-inset/safe-area fallback harness not built. |

What else changed: F04 model label/reasoning appear, provider icon and chevron move; zero-threshold pixels outside its stated model-control box are identical. Videos also differ in status-clock time, keyboard prediction text, animation/pause timing, focus/card/text geometry and intentional model/effort selections. F11 starting focus/draft differ (rejected pair); F10 truncated intervals differ (partial). Wide empty placeholder can clip behind composer with keyboard up on both base and after, a baseline issue. Android settings flash is the unexpected after behavior highlighted at top. No general “nothing else changed” claim for recordings.

Seeding/rebuild: [reproduce.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e187b634f7fbe6ea/reproduce.sh); [seed-auth.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/03aaaaa47c8eb3ad/seed-auth.mjs); [seed.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8d07a2701b062dd8/seed.mjs); [command.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4dbf86dba190030d/command.mjs); [image-fixture.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/958883152dd63a1b/image-fixture.sh); [steps-and-seeds.tar.gz](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3fdc78e5df04cd60/steps-and-seeds.tar.gz). Public steps omit tool stdout/stderr and preserve commands/times; synthetic seed manifests included. Auth/pairing files and server logs remain private.<br>
Drivers/artifact tools: [capture-driver.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ce4c77c399263c3e/capture-driver.py); [scenarios.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6d3bc31f0880aa02/scenarios.py); [label-scenario.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f09d026f0ecea586/label-scenario.py); [fold-scenario.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bb2a09976b95de83/fold-scenario.py); [manual-steps.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a9553c62736bec31/manual-steps.sh); [settled-still.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e0497578233c92e5/settled-still.py); [make-sheet.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ea399ee0267d846d/make-sheet.py); [make-diffs.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/91c17270227234ee/make-diffs.py); [runtime-probe.mjs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8d0878e2f5687ac8/runtime-probe.mjs) (metadata attempt failed/reloaded one rejected take). Environment checks: [ios-font.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b86e7127c811e2dc/ios-font.json), [tablet-font.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8714307e588a3b95/tablet-font.json); diff counts: [F04-tablet-rest-diff-metrics.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e80715b2d1853276/F04-tablet-rest-diff-metrics.json); fixture: ![synthetic-image.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f83fbca5a3c44265/synthetic-image.png); source matrix: [fixture-matrix.md](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f016e5cdc8ab8142/fixture-matrix.md).<br>
Cleanup: all started server/Metro processes stopped by tracked sessions, leases closed (expired Android lease already absent), both test worktrees removed; lead worktree untouched. Scratch and raw logs retained. Budget clock 08:13:39–10:13:39 UTC; capture stopped early enough for upload/report.

FRICTION: tool | pool outages/expired lease, fixed Fold movie canvas, iOS VFR truncation and unavailable app microphone | stable leases, dynamic canvas and reliable movie stop/permission setup. model | runtime-metadata CDP attach reloaded a rejected F11 take | collect metadata before recording. brief | 120 minutes did not cover all required devices/fixtures | reserve follow-up capture time.
