# Issue 16455 — final real-app evidence

Before: [e07595714a](https://git.cafe/pingdotgg/t3code/commit/e07595714a467e18c750107137d2c2e50f0c3530). After: [060ffe0849](https://git.cafe/pingdotgg/t3code/commit/060ffe0849efaa64cf523c93f355a20891d4b14f). Both worktree SHAs were read directly after captures. No source switches or implementation edits by capturer. Lead-owned servers: baseline web7716/server15756; head web8017/server16057. Final captures followed the shared dependency install and page reload.

Four paired continuous real-client Checkout → In a separate worktree recordings are complete. All four head cells show the repository mismatch refusal. Baseline 1440 light/dark and390 light added the fork remote/fetched and then failed materialization; baseline390 dark actually succeeded and created the target branch/worktree inside the unrelated project. This is the actual result, not a universal baseline-success claim.

## Controlled conditions

Client Date was actually frozen to **2026-10-22T04:30:00.000Z**, epoch **1792643400000**, before every action in both revisions. RealDate was retained; fixedMs was computed before replacement; the replacement constructor preserves supplied arguments (including numeric constructor arguments), supplies fixedMs only for no-argument construction, and static now() returns fixedMs. No server clock mutation. Timers/performance/video clocks remain real. Full navigations create a fresh JS realm; the freeze was reapplied before each action, including both local/retry actions. The supplemental continuous clip includes those reloads before the next freeze.

Viewports: CSS1440×900 and390×844, each light and dark via native prefers-color-scheme emulation. DPR2; source video frames2880×1800 and780×1688 respectively. visualViewport.scale1; root font16px; body16px/24px system UI stack (-apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif); buttons14px/20px, weight500; fonts loaded; text-size-adjust100%. Browser Chrome154 Linuxx86_64 desktop UA. No device/native font scaling; no browser zoom was deliberately changed, visual scale measured1 (browser chrome zoom setting not independently read).

Matching initial fixture: same stopped app thread and linked PR, empty composer, app+server thread rows only, sidebar256CSSpx, one PR panel tab, same panel width and selected Summary tab. The extra disposable baseline server thread/project was deleted through normal RPC before final recording. All scrollable elements were reset to top-left before each action; window scroll0,0. No masks, hidden elements, injected UI, network mocking, slowed RPCs, server-clock changes or source modifications. Client Date freezing and saved layout normalization were test harness changes only.

## Continuous recordings and milestones

Narrated copies preserve the continuous app recording and add a band below the viewport with revision, real UTC start, running elapsed timestamp and the action sequence. These are **silent text narration**, not voice-over; the sequence caption is constant, not a claim of individually timestamped clicks. Originals remain available and are the frame/diff source. Start/end are tool host timestamps; they include inspection/tool latency and are not RPC latency measurements. Individual native action timestamps exist where returned in the manifest; desktop snapshots sometimes returned an empty actionTimeline, so missing click timestamps are explicitly unverified.

**Elapsed video milestones below are approximate frame observations**, read from decoded source frames. They state that a UI milestone is visible at the sampled elapsed time, not an exact click time, first onset, UTC click timestamp, or service latency. Each clip starts at its own00:00. Checkout menu → preparing/draft implies the recorded separate-worktree choice; continuous footage shows the actual interaction.

**1440x900-light — steps before the pair**

Before: 00:00 initial linked details; ≈00:02.5 Checkout menu visible; ≈00:03.1 preparing visible; ≈00:04.0 unrelated draft visible; ≈00:38.0 materialization failure visible.

After: 00:00 initial linked details; ≈00:02.5 Checkout menu visible; ≈00:03.6 preparing visible; ≈00:04.0 unrelated draft visible; ≈00:04.8 repository mismatch refusal visible.

| CSS viewport/theme | Before: narrated / original | After: narrated / original | Real UTC capture intervals |
|---|---|---|---|
| 1440x900-light | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/574944a26ac3cc66/baseline-1440x900-light-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fe01a2a823382749/baseline-1440x900-light.mp4) | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fa3de32760ac735e/head-1440x900-light-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a36bd75a241dec2e/head-1440x900-light.mp4) | Before 2026-10-22T04:31:48.087Z → 2026-10-22T04:32:27.565Z; after 2026-10-22T04:32:29.051Z → 2026-10-22T04:32:35.127Z |

**1440x900-dark — steps before the pair**

Before: 00:00 initial linked details; ≈00:02.5 Checkout menu visible; ≈00:03.1 preparing visible; ≈00:03.5 unrelated draft visible; ≈00:35.1 materialization failure visible.

After: 00:00 initial linked details; ≈00:02.5 Checkout menu visible; ≈00:03.1 preparing visible; ≈00:03.6 unrelated draft visible; ≈00:20.0 slow-request warning visible; ≈00:30.5 repository mismatch refusal visible (warning briefly remains above it).

| CSS viewport/theme | Before: narrated / original | After: narrated / original | Real UTC capture intervals |
|---|---|---|---|
| 1440x900-dark | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4be1c52de36f8bb5/baseline-1440x900-dark-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/62e048ac8771526c/baseline-1440x900-dark.mp4) | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c48830e386227b75/head-1440x900-dark-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/24dfa9f626cfd1d8/head-1440x900-dark.mp4) | Before 2026-10-22T04:32:41.863Z → 2026-10-22T04:33:18.588Z; after 2026-10-22T04:33:26.015Z → 2026-10-22T04:33:58.129Z |

**390x844-light — steps before the pair**

Before: 00:00 initial linked details; ≈00:01.6 Checkout menu visible; ≈00:02.0 preparing visible; ≈00:02.5 unrelated draft visible; ≈00:33.0 slow-request warning visible; ≈00:34.1 materialization failure visible.

After: 00:00 initial linked details; ≈00:02.0 Checkout menu visible; ≈00:02.5 preparing visible; ≈00:03.0 unrelated draft visible; ≈00:03.5 repository mismatch refusal visible.

| CSS viewport/theme | Before: narrated / original | After: narrated / original | Real UTC capture intervals |
|---|---|---|---|
| 390x844-light | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c190706991b7893c/baseline-390x844-light-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7193ef0950859e4e/baseline-390x844-light.mp4) | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d2e258d0c9b67362/head-390x844-light-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f8e955e7ff4fc0aa/head-390x844-light.mp4) | Before 2026-10-22T04:34:03.707Z → 2026-10-22T04:34:39.627Z; after 2026-10-22T04:34:46.147Z → 2026-10-22T04:34:50.865Z |

**390x844-dark — steps before the pair**

Before: 00:00 initial linked details; ≈00:02.0 Checkout menu visible; ≈00:02.5 unrelated draft/preparing visible; ≈00:43.1 slow-request warning still visible; ≈00:45.6 green Checked out success visible; success remains through ≈00:54.4.

After: 00:00 initial linked details; ≈00:02.0 Checkout menu visible; ≈00:02.5 unrelated draft/preparing visible; ≈00:03.3 repository mismatch refusal visible.

| CSS viewport/theme | Before: narrated / original | After: narrated / original | Real UTC capture intervals |
|---|---|---|---|
| 390x844-dark | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3f799fe34971aef3/baseline-390x844-dark-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/33dd3d5e9fc2518d/baseline-390x844-dark.mp4) | [narrated](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/746f622abed4ef35/head-390x844-dark-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2e914996d89a5223/head-390x844-dark.mp4) | Before 2026-10-22T04:34:55.899Z → 2026-10-22T04:35:50.345Z; after 2026-10-22T04:36:46.662Z → 2026-10-22T04:36:51.489Z |



**C2/C3 final-head local and retry:** [narrated continuous segment](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2cd3cc41a28f91a8/head-1440x900-light-local-retry-narrated.mp4) · [original](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2cea8e517f70dc45/head-1440x900-light-local-retry.mp4). 1440×900 light,060ffe, fixed Date before each action. Sequence: navigate original linked panel; local Checkout; refusal; dismiss; reopen original linked panel; separate-worktree retry; refusal; dismiss. Both menu choices reached the refusal. The final close-control click is visible, but a cleared toast is not captured. No provider turn was sent. Approximate observed elapsed milestones:00:00 prior refusal from preceding capture; ≈00:02.9 reload/splash; ≈00:04.5 original linked panel; ≈00:10.0 local Checkout menu; ≈00:11.1 preparing; ≈00:12.0 local refusal and dismiss target; ≈00:14.1 reload after dismissal; ≈00:16.0 linked panel reopened; ≈00:18.5 worktree retry menu; ≈00:19.0 preparing; ≈00:19.6 unrelated draft; ≈00:20.0 retry refusal, then a close-control click before the clip ends; the toast is still visible in the last frame. These are frame-observed samples, not exact click timestamps.

## Aligned stills and differences

Initial milestone = third decodable source-video frame, before Checkout. Terminal milestone = last decodable source-video frame after the actual settled outcome. Decoding is sequential (VFR seek/frame-count metadata proved unreliable); frame indices/counts/fps are recorded in the manifest. No geometric registration/resizing before comparison. Pair sheets are labelled display composites; their underlying individual source PNGs retain full resolution in the raw bundle.

For each pixel: raw diff = abs(beforeRGB-afterRGB), threshold0 counts any nonzero channel; amplified diff = min(raw×4,255); threshold16 binary white means max-channel difference >16/255. Full-frame, no masks. There is **no zero-diff assertion**. Video compression/raster/cursor variance remains visible in initial comparisons.

| Pair | Initial pair/diffs | Terminal pair/diffs | Initial pixels >0 / >16 | Terminal pixels >0 / >16 |
|---|---|---|---|---|
| 1440x900-light | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7c3d236381c1313c/1440x900-light-initial-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/52a6aa8102b279d9/1440x900-light-initial-diffs.png) | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fa20b6b544fb1987/1440x900-light-terminal-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/822f6654044cb091/1440x900-light-terminal-diffs.png) | 0.020351% / 0.000212% | 11.310127% / 1.718904% |
| 1440x900-dark | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/91a96528c5d32783/1440x900-dark-initial-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4c5f3c9a65f967e2/1440x900-dark-initial-diffs.png) | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5466dde4e4c52298/1440x900-dark-terminal-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e51d6fe5169fa47f/1440x900-dark-terminal-diffs.png) | 0.063850% / 0.001312% | 8.159587% / 0.464236% |
| 390x844-light | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4fd5dea0f0701214/390x844-light-initial-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/de4a55be5b5e6508/390x844-light-initial-diffs.png) | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8ec6abaaa1c26942/390x844-light-terminal-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/efcb7495aafdab55/390x844-light-terminal-diffs.png) | 3.445285% / 0.003038% | 63.618757% / 7.060396% |
| 390x844-dark | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c7861122c7cbe2aa/390x844-dark-initial-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/782c3523545c17d1/390x844-dark-initial-diffs.png) | [pair](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/06397403348d443e/390x844-dark-terminal-pair.png) · [diff0 / ×4 / >16](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/87340f8429f4f2fc/390x844-dark-terminal-diffs.png) | 1.047363% / 0.000608% | 26.603020% / 2.375744% |



Visible differences: initial layout/content/ages/thread rows match; small pixel differences remain around glyph/icon/cursor edges and compressed flat regions (not established as code changes). At terminal, all pairs have different error copy/line wrapping/toast height and associated shadow/copy-control positions. The first three baseline cells show materialization failure; head names the repository mismatch. Dark390 baseline instead has a green Checked out toast, assigned worktree/branch controls, and Astra in its draft model selector while head has Sol and remains on master/current checkout. That model-label difference is recorded, not attributed to this server change. Both sides retain empty drafts. During longer waits, the existing Some requests are slow warning appears in baseline clips and the1440dark head clip; it briefly stacks above the terminal result. Navigation/pending duration, toast timing, pointer location, focus/hover and render settling vary; no timing equivalence claim. Initial source details show21/30 checks,19comments, same title/head metadata; the host PR itself remains live, not a frozen host response.

![Before e075957 and after060ffe: dark390 actual success versus repository refusal](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/06397403348d443e/390x844-dark-terminal-pair.png)

## Runtime proof and reset

[Exact-head runtime transcript](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/80d4fae094b9d76b/issue-16455-runtime-proof-final.json) records successful pullRequests.detail before and after refused worktree and local preparePullRequestThread calls. Read fallback resolves project triage-16455-unrelated at /tmp/issue-16455-fixture/unrelated, canonical pingdotgg/t3code, head fork PixPMusic/t3code, head e46cf218a37f3afc5c795c3259a004cc5b67eb8a. Both mutations return GitManagerError: this project is not a checkout of it.

Snapshot comparisons: runtime-before.json == runtime-after.json, and each frozen-head-{0,1,2,3}-before.json == corresponding after.json (all exact JSON equality). Fields cover local config/remotes, refs, HEAD, worktree list, status and untracked-file listing. This proves no persistent changes in those observations; it is not a full command trace or proof of zero read/network I/O or zero setup invocation. No setup script was configured.

After each baseline failure, only the added PixPMusic remote was removed. Final baseline390 success also created a clean worktree under baseline .t3 and branch t3code/pr-23184/pixpmusic/catalog-daybreak; those exact disposable artifacts were removed. Head390dark was recaptured after this cleanup so its starting repo matched the original single-worktree seed. Final handoff04:37UTC: origin only, master5afa3f44d1115ab61425b2999daafa1b492b898d, one worktree, clean. Lead may now run own integrated check; no further capturer actions mutate the app/filesystem.

## Reproduction and coverage limits

Committed reproduction fixture: [seed files](https://git.cafe/pingdotgg/t3code/tree/060ffe0849efaa64cf523c93f355a20891d4b14f/scripts/fixtures/pr-handoff). Python creates isolated local git repos; authenticated browser JS seeds projects/thread/link without sending a provider turn. Lead validated Python in fresh /tmp/issue-16455-seed-check and JS against existing isolated records/link; fresh-state JS creation was not independently validated. No credentials or pairing URLs are included.

| Affected row/surface | Actual verification |
|---|---|
| Linked PR panel Checkout, separate worktree | Final exact-head/baseline four paired width/theme recordings |
| Linked PR panel local Checkout and dismiss/retry | Final-head1440light frozen continuous recording; runtime refusal in both modes |
| PR-page Checkout | Earlier final-SHA but unfrozen clips exist locally; context only, excluded from final matched set |
| Panel Fix findings / Resolve | Source-traced common checkout service; final real-app actions unverified |
| Thread linked-row Fix / Resolve handoff hook | Source-traced; final real-app actions unverified |
| New-thread PR/prompt-link confirmation | Final real-app checkout unverified; earlier link opened existing thread and bypassed checkout |
| Branch selector PR checkout dialog inline error | Earlier historical head observation only; final revision unverified |
| Electron desktop | Unverified; Linux browser is not Electron-shell evidence |
| Native Android / native iOS | Both unverified;390 responsive web is not native evidence |
| Remote/relay/tunnel and multi-environment mutation | Unverified; captures use local isolated environment endpoints |
| Other hosts, matching-base/head-fork/alias compatibility cases | Not UI-captured here; lead owns focused backend tests |
| Provider turns, MCP/agent/scheduled entry | Not exercised; no provider turn started |

Lead reports109 GitManager tests passed on integrated implementation, with production/test files unchanged by final seed commit. Capturer did not rerun or expand tests. This evidence does not claim every affected caller/platform was verified.

## FRICTION

> Browser host loss, overloaded VM, auth recovery, source merges and dependency reloads consumed earlier capture time. Older defb/3ce/0ad/89ae and unfrozen clips remain historical, never relabelled as final.
> Snapshot PNG export downscaled1440 to1280; final stills instead come from full-resolution video. Sequential decode avoids unreliable VFR seek metadata.
> Native actionTimeline was empty on several desktop/supplemental snapshots: exact per-click UTC timestamps are missing there. Continuous footage, host start/end and elapsed timer remain available; no fabricated action times.
> Narration is text only. Browser chrome zoom is not independently measured. Live host metadata and asynchronous render/hover/compression differences prevent literal pixel identity. Dark390 baseline success also changed the draft model label; it is disclosed above.
> No Electron/iOS/Android/native or remote-mode proof was obtained on this Linux VM.

## Download

[Raw evidence bundle](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c930d7a8197b752a/issue-16455-evidence-raw.zip) contains8 original paired clips + final local/retry clip,16 unannotated source stills, raw diff0/×4/threshold16 PNGs for all8 milestones, labelled sheets, statistics, manifests, runtime/snapshot JSON, text narration and extraction/diff scripts. Narrated clips are linked separately. No private startup logs, pairing tokens, credentials, databases or implementation edits are uploaded.
