# Issue 13138 evidence capture — bounded proof, open gaps

Issue [#13138](https://git.cafe/pingdotgg/t3code/issues/13138). No PR, forge write, push or merge performed by test agent.

**11/11 matrix rows accounted for; 0/11 fully closed against the exact pass-1 contract and final merged source.** Seven rows have supporting evidence (S1, S2, I1, I2, I3, C1, D1), three are unverified (S3, S4, C2), and I4 is explicitly deferred. These counts do not turn partial rows into passes. The observed web signing/render path reproduces base R/R/R versus head R/G/B.

## Revisions and source gap

Baseline [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec). Initial implementation [31d4fce1cf](https://git.cafe/pingdotgg/t3code/commit/31d4fce1cf68a8d9313249fa5619bde418f36c6d). Early web recordings/390 grid use head [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96); workspace and C1 captures use [8496de417a](https://git.cafe/pingdotgg/t3code/commit/8496de417a0301992d06603710aed32edbda6e9f). Fixture cleanup is [2298129ea8](https://git.cafe/pingdotgg/t3code/commit/2298129ea80fec2339e6d33cd232b7d265df7f16). Current branch head is [8c711e7f0f](https://git.cafe/pingdotgg/t3code/commit/8c711e7f0fe29c96187825114e935587771c4190), which merged main during the tail of capture. **This evidence is not a final-head integrated pass.** Nonwatch head server loaded before the merge; Vite served source as checked out. Some final baseline still recaptures overlapped the merge; the head 1440 stills retained from earlier captures predate it. Main changed ChatView/ThreadTimeline even though lead reports cache files unchanged. Auditor must rebuild/replay affected captures at final head. Per-column source below is deliberately conservative, not a claim that all dynamic chunks have an immutable checkout pin.

Cleanup removed unused native fixture/driver/pixels, keeping the deterministic web seed/data and delivered web state fixture. No screenshots, build logs or notes committed. Mobile comment now says itemId separates Read signing cache entries; it does not promise historical snapshots.

## Environment and fixture

Linux x86_64, Chromium 154.0.0.0 desktop UA, UTC. Real Vite web app, direct single-origin proxy, isolated disposable homes under `/tmp/issue-13138-evidence`; backend 15773/web 7733 and baseline 15502/7462. No server used live T3 home. Browser tab owned by test agent. Theme light/dark, zoom default, measured CSS viewport 1440×900 or 390×900, **devicePixelRatio=2**. Recordings are 2880×1800 and 780×1800 respectively. Desktop snapshot API downscales to1280×800; corrected 1440 grid uses unscaled recording-frame extraction at2880×1800. Native dimensions/OS unavailable because no build installed.

Seeded stopped V2 state with fixed thread/environment/Read IDs, time07:00 UTC, 100×100 opaque334-byte PNGs. All three completed Read items are preseeded, expanded only after each real filesystem write. This exercises production work-log extraction, asset query signing, HTTP bytes, browser cache and image rendering; **it does not prove a newly committed provider event.** Client Date frozen08:00 UTC for repeatable UI; server issuance uses real clock to avoid identical tokens. Frame scroll reset to0; interaction clips retain automatic follow-scroll and tool/cursor effects. No sleeps used as load milestones: images decoded, layout sampled after animation frames. No guarantee that old rows retain bytes after refresh, expiry, replacement or remount.

Reproduce: seed an empty disposable home from an already migrated isolated DB using `scripts/seed-read-image-cache.py --template <isolated-db> --home <empty-home> [--resource-path /tmp/issue-13138-fixture/workspace/square.png]`. Stop target before seeding. Write colors using `--color red|green|blue --path <sandbox-path>`; add `--atomic` for replacement. Start paired app, expand successive Read rows after each write. Clear only this test origin's connection-runtime IndexedDB between different seeded databases: fixed IDs otherwise reuse old fixture content. Do not clear warmed image/cache state within a sequence.

## Matrix disposition

|Row|Result and explicit gaps|
|---|---|
|S1|Partial: four viewport/theme pairs with decoded R/R/R→R/G/B.1440 uses workspace path;390 uses outside path. All rows use explicit viewedImagePath and separated lone rows. Grouped Read and detail-only extraction not captured; final source gap above.|
|S2|Partial: four settled latest lightbox pairs, red→blue; underlying later images also differ. Same viewer sizing. Inherits S1 fixture/source gaps.|
|S3|**Unverified iOS inline:** both fresh EAS builds failed GhosttyKit module resolution. No native screenshots or stale-build substitution.|
|S4|**Unverified iOS native viewer:** no installable current-source build. Static fixture had no real viewer and was removed; no viewer claim.|
|I1|Partial paired full recordings: workspace same inode2544599, R1/R2/R3 distinct keys. Base1request/1URL; head3requests/3URLs, no signingKey on wire. Provider event commits unverified because rows preseeded. Head final stage auto-scroll differs, disclosed with keyframe diffs.|
|I2|Partial paired full390light recordings: outside absolute path atomic inode changes, baseR/R/R, headR/G/B. No unsupported-path placeholder. Provider event commits unverified; final source gap.|
|I3|Partial shared web evidence only: collapse/reopen latest row twice, lightbox open/close. Base1→1 and head3→3 signing requests; no extra signing. **Electron unavailable on Linux**; thread leave/revisit and forced signing failure/retry not captured. No retry claim.|
|I4|Deferred per static-only mobile scope; no taps, transitions or native live/cache behavior claimed.|
|C1|Partial web390light preset production ChatMarkdownImage sheet: Loading, missing-file, missing-read-access, known600×100wide and no-dimensions PNG. Native sheet/SVG unverified build error; collapsed/nonresolvable Read states absent. Harness bypasses signing hooks/Read rows/transport; no transition claim.|
|C2|Unverified ordinary markdown/tool-output visual controls: not seeded/captured. Omitted-key atom behavior tested underD1, not a visual substitute.|
|D1|Partial:22 focused tests passed. Real atom runtime/mock transport verifies same key shares, distinct/omitted key separates, remote→local fallback strips key on both RPCs. Distinct-environment/keyed-refresh/bulk unchanged checks not independently exercised by this run; do not infer from resolver tests. Final-head rerun owned by lead.|

## Recordings and narrated timelines

Untrimmed clips, no speed adjustment. They contain tool latency and automatic scrolling; elapsed times are observations, not a performance comparison. Narration below supplies steps/timestamps; videos have no voice-over. Mutation happens immediately before corresponding row expansion; files equal dimensions/encoding and same path. Distinct keys are preseeded Read IDs, not manual query-string edits.

|Flow|Before/base|After/head|Narration|
|---|---|---|---|
|workspace|[workspace-base-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8fdf7d6b09bf7379/workspace-base-1440-dark.mp4)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)|[workspace-head-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/67e11154054404fa/workspace-head-1440-dark.mp4)<br>source [8496de417a](https://git.cafe/pingdotgg/t3code/commit/8496de417a0301992d06603710aed32edbda6e9f)|Base started09:05:18.818 UTC, full7.112s: red visible≈1.7s, green overwrite/R2≈3.9s remainsred, blue overwrite/R3≈6.2s remainsred. Head started08:57:43.726 UTC, full5.474s: red≈2.2s, green≈3.8s, blue≈5.2s. Head final auto-scroll clipsR1; base returns top0. Same inode2544599.|
|atomic|[atomic-base-390-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/60680694d3405382/atomic-base-390-light.mp4)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)|[atomic-head-390-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4d32c91fb604d968/atomic-head-390-light.mp4)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)|Full base4.867s/head4.519s. Both R1red≈0.8s, atomicgreen/R2≈2.4s; R3≈4.0s base remainsred, headblue≈3.8–4.0s. Inodes base2544498→2544519→2544498; head2544519→2544498→2544519 (reuse of retired inode numbers is possible).|
|reuse|[reuse-base-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dc726dd702c2eb6e/reuse-base-1440-dark.mp4)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)|[reuse-head-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/028313cd967785d1/reuse-head-1440-dark.mp4)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)|Full base3.980s/head4.564s. Twice collapse/reopen same R3, then lightbox open/close. Latest red onbase, blue onhead. K1at0.1s both inline; K2base3.3s/head3.7s lightbox. No leave/revisit or failure-retry segment.|

Signing trace: [sanitized-signing-trace.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/93ad16d1fd573882/sanitized-signing-trace.json)

## Static and synchronized-stage pairs

Diff0 = absolute RGB channel difference amplified8× and clipped255, threshold0. DiffT = magenta where max absolute RGB channel difference >16/255, black elsewhere. Counts/percentages use all pixels, no crops/masks, alpha ignored because captures opaque. Recording-derived stills include codec noise; therefore Diff0 is not a lossless-render equivalence metric. Both0 and16 results reported, no hidden antialiasing tolerance. Asset SHA256 is listed in every column.

### C1 390-light.png

Visible differences: No visible differences: same preset labels, placeholders and blue wide images. Zero differing pixels.

780×1800; Diff0 0pixels (0.000000%); DiffT 0pixels (0.000000%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![C1-base-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/356bee245367cbd1/C1-base-390-light.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `c585f8f1a9b2c1e0177886a65323a6ea92dc70c783010a8082ead8734a1736ff`|![C1-head-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1ded895bccc67fa7/C1-head-390-light.png)<br>source [8496de417a](https://git.cafe/pingdotgg/t3code/commit/8496de417a0301992d06603710aed32edbda6e9f)<br>SHA256 `c585f8f1a9b2c1e0177886a65323a6ea92dc70c783010a8082ead8734a1736ff`|![C1-diff0-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8c75bbbaad69dd38/C1-diff0-390-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `ae11a8c85bcdfd91beb6f9ddd212e892f9ebe9fcd83445f68a379f48a622bde9`|![C1-diffT-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c5b62f466b97305/C1-diffT-390-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `ae11a8c85bcdfd91beb6f9ddd212e892f9ebe9fcd83445f68a379f48a622bde9`|

### S1 1440-dark.png

Visible differences: R1 stays red; R2red→green and R3red→blue. Geometry/captions same.390 light includes small breadcrumb chevron hover contrast;1440 includes codec/background noise and base-only Scroll to end affordance.

2880×1800; Diff0 1800043pixels (34.723052%); DiffT 81254pixels (1.567400%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S1-base-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b22bf99e18b26124/S1-base-1440-dark.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `fdbd5c1beb94e48fe75794039b4df71e768d62c7b5772bb9a78c6ed45b083d1b`|![S1-head-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/64bc8234dd3c0021/S1-head-1440-dark.png)<br>source 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `08e1406d9e3582dc03e50e9a6eaa309fb8f15d41ab89d7ce5523e55cceb87065`|![S1-diff0-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3e994802593054d3/S1-diff0-1440-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `f356a0ded52f4d92aa944805a2b5c092554a0d413570d245f78c60ad1d0c39b9`|![S1-diffT-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4ec25fc1b4a07347/S1-diffT-1440-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `3526cc4d76b8b815b4a2bd3e4ee9c87058d639b59f179b2e9d3723ee34988ebd`|

### S1 1440-light.png

Visible differences: R1 stays red; R2red→green and R3red→blue. Geometry/captions same.390 light includes small breadcrumb chevron hover contrast;1440 includes codec/background noise and base-only Scroll to end affordance.

2880×1800; Diff0 504172pixels (9.725540%); DiffT 80507pixels (1.552990%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S1-base-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/12fd354f85ea0996/S1-base-1440-light.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `9b74efa538c774ac5a4d596b8a0c5583a94028c5a5167215276df437cab0949e`|![S1-head-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/76bad855fd5bc8c9/S1-head-1440-light.png)<br>source 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `b157a2123537b0247f118a1e4a18a4d584f68931914f81460135f7588a1d279b`|![S1-diff0-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/97d3f5a1aa1a6677/S1-diff0-1440-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `da1981f30e491a660d774d47be9c97bf7c03e6e3a42346f3cdc3e7e67ed58c28`|![S1-diffT-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4654e0cf4d6a4c08/S1-diffT-1440-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `d0390545f1c8bc26dd95cb25cc14c6cea630f88a3e21fec42b358ca99ce64dc1`|

### S1 390-dark.png

Visible differences: R1 stays red; R2red→green and R3red→blue. Geometry/captions same.390 light includes small breadcrumb chevron hover contrast;1440 includes codec/background noise and base-only Scroll to end affordance.

780×1800; Diff0 76380pixels (5.440171%); DiffT 76360pixels (5.438746%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S1-base-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b4697275647ddd11/S1-base-390-dark.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `9f4e145b8a2845e9e582ef275ad522e85ea651e6a99903e4de9bc9006b8f3cac`|![S1-head-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dbd0ea17d13883ac/S1-head-390-dark.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `6e9949ba15b363c343a9c45671b8716a6357421d425476d95464d489558d67ec`|![S1-diff0-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b12ca6a9313bf2bd/S1-diff0-390-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `ea7b0af5ccec3af747999c61e85794600e35878cf3dd9f57a6029b36964b87de`|![S1-diffT-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/43de30d73c095f95/S1-diffT-390-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `020f2211623383d5efd1805165d01413b7d2f88bcca694697adc8b16fa898f1c`|

### S1 390-light.png

Visible differences: R1 stays red; R2red→green and R3red→blue. Geometry/captions same.390 light includes small breadcrumb chevron hover contrast;1440 includes codec/background noise and base-only Scroll to end affordance.

780×1800; Diff0 76444pixels (5.444729%); DiffT 76416pixels (5.442735%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S1-base-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2436d38c297d7ae5/S1-base-390-light.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `fd7ea1695123652bd6b3cfd9b85048c6fe969b79d8b6ca21585529695e00472b`|![S1-head-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2e90f59ee21ad87b/S1-head-390-light.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `411256fba930452bc6ce92b39858c61f720f667fff2c1e4a4d44d1e90fa2602b`|![S1-diff0-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/64d644e097ad9925/S1-diff0-390-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `5c369414aa7ee3101cbea0dfe7caf6023415aa82c44662162e6f00cb4ff0e3dc`|![S1-diffT-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/99a48b5b1f698533/S1-diffT-390-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `762aabf77c139be27a74fa83c2f97129b056383a86dc9e1215debe62d32018f9`|

### S2 1440-dark.png

Visible differences: Latest viewer red→blue; dimmed R2red→green and R3red→blue behind it. Same viewer/caption. Recording codec/background noise retained.1440 fixtures use workspace path;390 outside path.

2880×1800; Diff0 999401pixels (19.278569%); DiffT 119012pixels (2.295756%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S2-base-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/59370f6d71328267/S2-base-1440-dark.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `f4838e35573947753565cd47c2544dbed31231af2aac70741913dbd56c9b5bf9`|![S2-head-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/06549265ad18e5cd/S2-head-1440-dark.png)<br>source 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `ca8bbb079e7f5adfd73554ab6141d1fb9f03c28664ec8c36b51fe54f1443bc0b`|![S2-diff0-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b677f4d213ed15ca/S2-diff0-1440-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `4c4368b97e71103d359e343532819cec69921e8e538118c5851cd9835311e3f2`|![S2-diffT-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7db748fdae7a0cbf/S2-diffT-1440-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `6452035090a31510fc116754a2d65c7030b8d5a39724dc001e5e317c63d0d1f7`|

### S2 1440-light.png

Visible differences: Latest viewer red→blue; dimmed R2red→green and R3red→blue behind it. Same viewer/caption. Recording codec/background noise retained.1440 fixtures use workspace path;390 outside path.

2880×1800; Diff0 1090245pixels (21.030961%); DiffT 120022pixels (2.315239%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S2-base-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5f93944626950f65/S2-base-1440-light.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `eac9ac22ba13714503058249b6c9db1c10ce9d2a50d4615d5a275847e9d717cf`|![S2-head-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/77ec9a24982bd530/S2-head-1440-light.png)<br>source 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `61d168f0e2a4dd686b5fcc3768d7a97b2bd8cfbd6c4d4ab435389086138d73b9`|![S2-diff0-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1550cefdc65e3df8/S2-diff0-1440-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `c3259f8a61fabe408203d5a1083f671a0f1a49da225fb5d336eecb7e57463245`|![S2-diffT-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8b0296c127a2d7a0/S2-diffT-1440-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f → 2298129ea80fec2339e6d33cd232b7d265df7f16; later base recapture crossed main merge<br>SHA256 `e1e39ae5f5238c60e337d104aee41394ac96874c687f8f4f8ed14a5895a0d21a`|

### S2 390-dark.png

Visible differences: Latest viewer red→blue; dimmed R2red→green and R3red→blue behind it. Same viewer/caption. Recording codec/background noise retained.1440 fixtures use workspace path;390 outside path.

780×1800; Diff0 116098pixels (8.269088%); DiffT 116035pixels (8.264601%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S2-base-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b864f9df66a96085/S2-base-390-dark.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `822d3bd99d7610c45b7533ddbf6cdefe8fb0b21f269203f29bd3f310fafef6cc`|![S2-head-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/adb74797345f3d32/S2-head-390-dark.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `b1869b811a56765712141c52f5102a528a61b55829667dda0d10a6b09baa2a4b`|![S2-diff0-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/200713cd4e114e40/S2-diff0-390-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `230a7f7238dc491bc238a359a3a6ba51dfd44cd93f0c760d5b2a457f2d636d36`|![S2-diffT-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da37253f58877b58/S2-diffT-390-dark.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `7185e9afadf7b7a468fa26225c058a12bd7328ba72ec1def98f54c4d2d4a7f61`|

### S2 390-light.png

Visible differences: Latest viewer red→blue; dimmed R2red→green and R3red→blue behind it. Same viewer/caption. Recording codec/background noise retained.1440 fixtures use workspace path;390 outside path.

780×1800; Diff0 116098pixels (8.269088%); DiffT 116035pixels (8.264601%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![S2-base-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9e7d0c3e458089b1/S2-base-390-light.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `b900f7248b78addf8a8206bc5c0e3038fcbc4da595f6b23df5a77d0907485649`|![S2-head-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/045156158676dd20/S2-head-390-light.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `4a76382aab6dc938911ef088e8e9b65f3464acdcfdcbf7121bab3f9a8b01fa52`|![S2-diff0-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d88b75bcba7cab96/S2-diff0-390-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `1d2cbd508937194a99e84f4ebb67ec75dfb5f8f64b8a89e4a416d087d408bfd9`|![S2-diffT-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/23a6b989bb4f142f/S2-diffT-390-light.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `7185e9afadf7b7a468fa26225c058a12bd7328ba72ec1def98f54c4d2d4a7f61`|

### atomic R1.png

Visible differences: Both first images red; small breadcrumb chevron hover contrast differs.

780×1800; Diff0 64pixels (0.004558%); DiffT 56pixels (0.003989%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![atomic-base-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/832a68b8fa4a2255/atomic-base-R1.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `6a7ab739e3f40b9aed81addbb230423661ede36d6093711b520bbaa6c15fcb21`|![atomic-head-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0403fae35f74cb99/atomic-head-R1.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `57b35f1065c4741a2f9f2fcd365b0649920fa6245cfabc15990de111313fdf82`|![atomic-diff0-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e65977445ea25c02/atomic-diff0-R1.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `36122c42321ad98a0d398ab4a5d86eef75fceae4ce3c6eb4687af61c9c097520`|![atomic-diffT-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fd85d92c3e9afdb6/atomic-diffT-R1.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `04f20a0bd9d5be205c28c02a46f7c795b3d562a3cf29b6e561098d528176ea65`|

### atomic R2.png

Visible differences: R1red both; R2red→green; small breadcrumb chevron hover contrast differs.

780×1800; Diff0 38254pixels (2.724644%); DiffT 38242pixels (2.723789%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![atomic-base-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/68932883dd0d693e/atomic-base-R2.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `70febc78c14cab8f9f3b98d6403885b0804d3b743ce7b36ec5170e5929b4337e`|![atomic-head-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/48d598bbe8555cea/atomic-head-R2.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `0925b8ba2c294f8eaad20e86db7952f0508548863f8b36c8dabf533fdb62c0d0`|![atomic-diff0-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d5c7f075786e7026/atomic-diff0-R2.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `245c21187d2e4414f06c80e2e537a272900dfa8396eb8f1834383dfe7eb549cb`|![atomic-diffT-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/40b2c29ca6d07cce/atomic-diffT-R2.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `4b2232173b1629aa695a57013fecca107c36b2da59f05f999d10c25105f15cdd`|

### atomic R3.png

Visible differences: R1red both; R2red→green,R3red→blue; small breadcrumb chevron hover contrast differs.

780×1800; Diff0 76444pixels (5.444729%); DiffT 76416pixels (5.442735%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![atomic-base-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/71e2f2f656c312b9/atomic-base-R3.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `c0217e17de5ac4e14ceeb412ceba01a965eff4f29957d341fd6e783a04121de2`|![atomic-head-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/84b15b0b1b311ed0/atomic-head-R3.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `00f67d000727eca82fe51217458f970036ef0d994277adac400997bd390fdf06`|![atomic-diff0-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8714ad7f457edca2/atomic-diff0-R3.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `5c369414aa7ee3101cbea0dfe7caf6023415aa82c44662162e6f00cb4ff0e3dc`|![atomic-diffT-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/473ffb268aec984f/atomic-diffT-R3.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `762aabf77c139be27a74fa83c2f97129b056383a86dc9e1215debe62d32018f9`|

### reuse K1.png

Visible differences: K1 inline R2red→green/R3red→blue; K2 viewerred→blue and dimmed later rows differ. Cursor/click feedback and codec noise retained. Geometry otherwise agrees.

2880×1800; Diff0 1799060pixels (34.704090%); DiffT 80174pixels (1.546566%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![reuse-base-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9871aae40f667da7/reuse-base-K1.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `bf903b6b3bb6243091177166854f9071bf641d566462830772eabdf4cce940a2`|![reuse-head-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/27a3e8ee8505e613/reuse-head-K1.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `198b5732d6639c1d39368f7f641064a4cff62804689c5c3f36aa8df0789436ee`|![reuse-diff0-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dc42b3fc74f132fb/reuse-diff0-K1.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `cd7515bd7ee8e6689652bb06ee6c27a58de8dd9ee5864812f7673446a680e641`|![reuse-diffT-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9aa145839d6d7a4d/reuse-diffT-K1.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `62f441f8d61eb418eeee08e8202da98193c03383456b7482f748184d9cb17611`|

### reuse K2.png

Visible differences: K1 inline R2red→green/R3red→blue; K2 viewerred→blue and dimmed later rows differ. Cursor/click feedback and codec noise retained. Geometry otherwise agrees.

2880×1800; Diff0 494228pixels (9.533719%); DiffT 119328pixels (2.301852%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![reuse-base-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b5144fc9700f4286/reuse-base-K2.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `460860ba2a3321852fabc844e281c18374c627bfc515e2dc5d598f618a5aea45`|![reuse-head-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3b4854adef0afa36/reuse-head-K2.png)<br>source [423865defb](https://git.cafe/pingdotgg/t3code/commit/423865defb0022956d0a4894a497c9a5d5e9fc96)<br>SHA256 `5feae6782966eab2af8e55516532417196c04cf7ee01c03ab4293317770a52ae`|![reuse-diff0-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c92aa23c73690ef/reuse-diff0-K2.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `15d965f310b43ab0d589d2ec328d4ea203fe5e01402993148f9a548dfd69f070`|![reuse-diffT-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c2d032a29ea72cbe/reuse-diffT-K2.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 423865defb0022956d0a4894a497c9a5d5e9fc96<br>SHA256 `84fff29cb0cb69b90e13e7a7399e4d41dba26b768806226e53c26498bb6134b9`|

### workspace R1.png

Visible differences: Both R1red; head cursor/click ring and row/time hover text positions differ; collapsed later-row vertical spacing differs slightly. Codec noise retained.

2880×1800; Diff0 123569pixels (2.383661%); DiffT 32000pixels (0.617284%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![workspace-base-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/23afc84845e7bf6f/workspace-base-R1.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `4e61ea119990b19d289616095bf4f1b555640650a7784bccac05ed8a266345b5`|![workspace-head-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b1df31cf666b64b9/workspace-head-R1.png)<br>source [8496de417a](https://git.cafe/pingdotgg/t3code/commit/8496de417a0301992d06603710aed32edbda6e9f)<br>SHA256 `3e08667df67eaac71db5110da5f8a6e8a6b9fe81fbcb73b532bfec4199e0b577`|![workspace-diff0-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ae5877ec3c7fc92c/workspace-diff0-R1.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `97e60587de0458b7600254c794e6b7a7c8283fd9643db0612f32e993824f1dba`|![workspace-diffT-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8f042d50fbbf559f/workspace-diffT-R1.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `9fc0f19b66e17704b35d55551865930b3186cbb7c9cdfcf9769e3c36d229eb8a`|

### workspace R2.png

Visible differences: R2red→green; capture moments have different automatic scroll/cursor/hover state. Not a geometry-regression proof.

2880×1800; Diff0 256168pixels (4.941512%); DiffT 41325pixels (0.797164%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![workspace-base-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/be17ba639f82869a/workspace-base-R2.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `a1ebc5e3af7477695e1bfdb3d290d3d7f64f9f441236008cdb6adc65a575566c`|![workspace-head-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/843926a9da1d7098/workspace-head-R2.png)<br>source [8496de417a](https://git.cafe/pingdotgg/t3code/commit/8496de417a0301992d06603710aed32edbda6e9f)<br>SHA256 `991978025d6bd4a99bc12fb019bd3f5fee70792a0f85eb8341fdf909bee3a61f`|![workspace-diff0-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2497a0a321ea1d00/workspace-diff0-R2.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `70501eff6a4a39c790fa695685fa3d7a85c7238fef86af1d8eb271c8148b101b`|![workspace-diffT-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/66761eb997f60a28/workspace-diffT-R2.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `a031714fcb91b38a1bc5e9e282e69b6584122a71c405d180b5a7dd6a1a0c27ec`|

### workspace R3.png

Visible differences: R3red→blue and R2red→green. Head auto-scroll shows R2/R3 and clipsR1; base top0 shows allthree plus Scroll to end. Timestamp/toolbar positions differ as a consequence. Not accepted as identical-scroll pair.

2880×1800; Diff0 456875pixels (8.813175%); DiffT 213527pixels (4.118962%).

|Before|After|Diff0|DiffT|
|---|---|---|---|
|![workspace-base-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1fff1e6ceb7d2086/workspace-base-R3.png)<br>source [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec)<br>SHA256 `89de6578c1a682d5ec56f9a8c3ae0821745215d1a474206cc1721c670da6a05d`|![workspace-head-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/76170bc20886a0f2/workspace-head-R3.png)<br>source [8496de417a](https://git.cafe/pingdotgg/t3code/commit/8496de417a0301992d06603710aed32edbda6e9f)<br>SHA256 `c4044795ae238aace14e5673481d142329a392e4aca2cec17705e2bc1abab4eb`|![workspace-diff0-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bcbfec362bb07f7e/workspace-diff0-R3.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `12dbe09088288ec487ad8c16cdebe26ef3b52f647a6a687461e4dfdfd2900d8f`|![workspace-diffT-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7bc04163e78628db/workspace-diffT-R3.png)<br>source 3b95e7831b11b17627dff16843bc087bfca397ec vs 8496de417a0301992d06603710aed32edbda6e9f<br>SHA256 `64e2d9656bd98a3b5c12d4445dbecf8ffa7682e8c8d1e179ef1af862cb741136`|

## Native build failure and supporting checks

Both fresh builds used the requested static iOS simulator fixture overlay at enqueue time, with production native work-log/image views and explicit simulated-signing label. No build was installed and no simulator session was started. Head build abd9e234-6cef-4dd2-9b1d-209e32ee6e3f recorded source423865defb plus uncommitted fixture overlay subsequently committed8496de417a; base build0e77a48c-71e7-4170-bc8f-e3f8e88d7efe recorded3b95e7831b plus same overlay. Head native fingerprint1d7adbbd1477291e1db49b969ecfb0b55bd0655e. EAS image macos-tahoe-26.6-xcode-27.1. Both ERRORED/XCODE_BUILD_ERROR: `Unable to resolve module dependency: 'GhosttyKit'` in T3TerminalNative. Archive inspection includes24655744-byte simulator static library, headers, modulemap and plist; archive exclusion is not established. No unrelated production fix attempted. Unused native fixture removed in cleanup commit, provenance remains external.

[ios-build-provenance.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bf1a123d93c08ebb/ios-build-provenance.json)

Focused command: `vp test run packages/client-runtime/src/state/assets.test.ts packages/client-runtime/src/work-log/presentation.test.ts`;22tests/2files passed on8496de417a before main merge. [issue-13138-focused-tests.log](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/81f118a1bef6a35f/issue-13138-focused-tests.log)

[delivered-diff-metrics.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a6ee6ecb1d236999/delivered-diff-metrics.json)

## FRICTION

- tool: desktop snapshot API returns1280×800 despite measured1440×900 CSS/DPR2; full2880×1800 recordings supply frame extraction. Interaction recording cursors/codec noise remain visible in zero-threshold diffs.
- infra: EAS fresh builds fail GhosttyKit despite archive containing framework; no native proof delivered. Electron unavailable on Linux.
- brief: exact pass-1 matrix exceeds delivered fixture coverage (grouped/detail extraction, controls, retry/revisit); all gaps explicitly listed.
- runbook: existing mobile showcase seeds V1 and cannot prove V2 Read rendering unchanged. Deterministic V2 seed used for web.
- model: stale connection-runtime IndexedDB reused fixed fixture IDs after switching isolated homes; reset test-origin cache before sequence, discarded failed workspace recording. One first attempt used watched backend that restarted on cache-file changes; discarded, replaced with nonwatch source backend.
- other: lead main merge changed source during tail of capture; final-head provenance gap retained rather than relabeling prior evidence.
- forge: no forge operations performed. policy: no permission block; browser/EAS already authorized.

## Verbatim ghdrop output

The following is the uploader's emitted Markdown, unchanged. Recording entries remain plain links; image entries remain embedded.

![C1-base-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/356bee245367cbd1/C1-base-390-light.png)
![C1-diff0-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8c75bbbaad69dd38/C1-diff0-390-light.png)
![C1-diffT-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c5b62f466b97305/C1-diffT-390-light.png)
![C1-head-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1ded895bccc67fa7/C1-head-390-light.png)
![S1-base-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b22bf99e18b26124/S1-base-1440-dark.png)
![S1-base-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/12fd354f85ea0996/S1-base-1440-light.png)
![S1-base-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b4697275647ddd11/S1-base-390-dark.png)
![S1-base-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2436d38c297d7ae5/S1-base-390-light.png)
![S1-diff0-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3e994802593054d3/S1-diff0-1440-dark.png)
![S1-diff0-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/97d3f5a1aa1a6677/S1-diff0-1440-light.png)
![S1-diff0-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b12ca6a9313bf2bd/S1-diff0-390-dark.png)
![S1-diff0-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/64d644e097ad9925/S1-diff0-390-light.png)
![S1-diffT-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4ec25fc1b4a07347/S1-diffT-1440-dark.png)
![S1-diffT-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4654e0cf4d6a4c08/S1-diffT-1440-light.png)
![S1-diffT-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/43de30d73c095f95/S1-diffT-390-dark.png)
![S1-diffT-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/99a48b5b1f698533/S1-diffT-390-light.png)
![S1-head-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/64bc8234dd3c0021/S1-head-1440-dark.png)
![S1-head-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/76bad855fd5bc8c9/S1-head-1440-light.png)
![S1-head-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dbd0ea17d13883ac/S1-head-390-dark.png)
![S1-head-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2e90f59ee21ad87b/S1-head-390-light.png)
![S2-base-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/59370f6d71328267/S2-base-1440-dark.png)
![S2-base-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5f93944626950f65/S2-base-1440-light.png)
![S2-base-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b864f9df66a96085/S2-base-390-dark.png)
![S2-base-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9e7d0c3e458089b1/S2-base-390-light.png)
![S2-diff0-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b677f4d213ed15ca/S2-diff0-1440-dark.png)
![S2-diff0-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1550cefdc65e3df8/S2-diff0-1440-light.png)
![S2-diff0-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/200713cd4e114e40/S2-diff0-390-dark.png)
![S2-diff0-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d88b75bcba7cab96/S2-diff0-390-light.png)
![S2-diffT-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7db748fdae7a0cbf/S2-diffT-1440-dark.png)
![S2-diffT-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8b0296c127a2d7a0/S2-diffT-1440-light.png)
![S2-diffT-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da37253f58877b58/S2-diffT-390-dark.png)
![S2-diffT-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/23a6b989bb4f142f/S2-diffT-390-light.png)
![S2-head-1440-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/06549265ad18e5cd/S2-head-1440-dark.png)
![S2-head-1440-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/77ec9a24982bd530/S2-head-1440-light.png)
![S2-head-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/adb74797345f3d32/S2-head-390-dark.png)
![S2-head-390-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/045156158676dd20/S2-head-390-light.png)
[atomic-base-390-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/60680694d3405382/atomic-base-390-light.mp4)
![atomic-base-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/832a68b8fa4a2255/atomic-base-R1.png)
![atomic-base-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/68932883dd0d693e/atomic-base-R2.png)
![atomic-base-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/71e2f2f656c312b9/atomic-base-R3.png)
![atomic-diff0-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e65977445ea25c02/atomic-diff0-R1.png)
![atomic-diff0-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d5c7f075786e7026/atomic-diff0-R2.png)
![atomic-diff0-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8714ad7f457edca2/atomic-diff0-R3.png)
![atomic-diffT-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fd85d92c3e9afdb6/atomic-diffT-R1.png)
![atomic-diffT-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/40b2c29ca6d07cce/atomic-diffT-R2.png)
![atomic-diffT-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/473ffb268aec984f/atomic-diffT-R3.png)
[atomic-head-390-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4d32c91fb604d968/atomic-head-390-light.mp4)
![atomic-head-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0403fae35f74cb99/atomic-head-R1.png)
![atomic-head-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/48d598bbe8555cea/atomic-head-R2.png)
![atomic-head-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/84b15b0b1b311ed0/atomic-head-R3.png)
[delivered-diff-metrics.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a6ee6ecb1d236999/delivered-diff-metrics.json)
[ios-build-provenance.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bf1a123d93c08ebb/ios-build-provenance.json)
[reuse-base-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dc726dd702c2eb6e/reuse-base-1440-dark.mp4)
![reuse-base-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9871aae40f667da7/reuse-base-K1.png)
![reuse-base-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b5144fc9700f4286/reuse-base-K2.png)
![reuse-diff0-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dc42b3fc74f132fb/reuse-diff0-K1.png)
![reuse-diff0-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c92aa23c73690ef/reuse-diff0-K2.png)
![reuse-diffT-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9aa145839d6d7a4d/reuse-diffT-K1.png)
![reuse-diffT-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c2d032a29ea72cbe/reuse-diffT-K2.png)
[reuse-head-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/028313cd967785d1/reuse-head-1440-dark.mp4)
![reuse-head-K1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/27a3e8ee8505e613/reuse-head-K1.png)
![reuse-head-K2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3b4854adef0afa36/reuse-head-K2.png)
[sanitized-signing-trace.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/93ad16d1fd573882/sanitized-signing-trace.json)
[workspace-base-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8fdf7d6b09bf7379/workspace-base-1440-dark.mp4)
![workspace-base-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/23afc84845e7bf6f/workspace-base-R1.png)
![workspace-base-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/be17ba639f82869a/workspace-base-R2.png)
![workspace-base-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1fff1e6ceb7d2086/workspace-base-R3.png)
![workspace-diff0-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ae5877ec3c7fc92c/workspace-diff0-R1.png)
![workspace-diff0-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2497a0a321ea1d00/workspace-diff0-R2.png)
![workspace-diff0-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bcbfec362bb07f7e/workspace-diff0-R3.png)
![workspace-diffT-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8f042d50fbbf559f/workspace-diffT-R1.png)
![workspace-diffT-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/66761eb997f60a28/workspace-diffT-R2.png)
![workspace-diffT-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7bc04163e78628db/workspace-diffT-R3.png)
[workspace-head-1440-dark.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/67e11154054404fa/workspace-head-1440-dark.mp4)
![workspace-head-R1.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b1df31cf666b64b9/workspace-head-R1.png)
![workspace-head-R2.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/843926a9da1d7098/workspace-head-R2.png)
![workspace-head-R3.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/76170bc20886a0f2/workspace-head-R3.png)
[issue-13138-focused-tests.log](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/81f118a1bef6a35f/issue-13138-focused-tests.log)


## Lead correction and independent final-head audit

The reuse clips prove row collapse/reuse and one lightbox open/close. A second lightbox reopen is unproven. The signing trace contains summarized counts, not individual request records; production atom tests establish payload stripping.

An independent replay at final head 8c711e7f0fe29c96187825114e935587771c4190 produced decoded red/green/blue at 390×900 CSS pixels, light, DPR2 after warming R1 then atomically replacing the same outside-workspace path. Rows were preseeded, so provider-event ingestion remains unverified.

![Independent final-head Read images](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/03f6384884427987/final-head-S1-390-light.png)

[Reconstruction Diff0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ea7e2bed4bc66335/final-head-v-delivered-diff0.png) · [Threshold16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/44195ab60983f632/final-head-v-delivered-diffT16.png). Against delivered head: Diff0 186881pixels13.310613%, >16 43211pixels3.077707%. Image rectangles/colors align; composer expansion, scroll affordance, breadcrumb hover and row timestamps differ materially.

All17 delivered diff pairs recompute exactly; all68 SHA labels match. Audit sufficient for opening a disclosed PR; full matrix is incomplete.
