# Proof audit PASS2

## Findings

No confirmed blocking source defect or invalidating visual regression found for the bounded Linux server-recording throughput claim. This is not proof of 30/60 distinct fps, macOS behavior, improved sharpness, exact cursor-ring timing, final MediaRecorder frame survival, or remote artifact transfer.

L4's final landmark is an unmatched dynamic comparison: barcode/bar position and slight scroll placement differ. Reject it as parity proof; retain it only as labelled context. Its initial encoded seed is a valid matched comparison. L5 screenshot stimuli likewise differ at animation IDs19/18; they are not a matched image pair. The published index explicitly discloses both limitations.

The original matrix's 80% page-paint gate is not a product requirement and was superseded by the user's bounded claim. It is not met: AFTER page paints are26.4%/29.2%/26.4% of unrecorded controls. Do not describe75–86% active-phase encoded retention as75–86% unrecorded page throughput. Equal host load is not established; BEFORE cycle3 overlaps checks/brief decoding and remains in the raw results. Even uncontaminated cycles1/2 show encoded gains35→78 and31→85.

## Scope and provenance

Read-only checkout review: base [5f1f604733](https://git.cafe/pingdotgg/t3code/commit/5f1f604733c65b50ad6d289971103b1330e943bf), head [ab79eb7f54](https://git.cafe/pingdotgg/t3code/commit/ab79eb7f5470048432a6003871b59a2d4da07372). HEAD and clean checkout confirmed before rebuild. Three changed files: ServerBrowser.ts, ServerBrowserPage.ts, ServerBrowser.test.ts. No UI/editor component or theme branch changed. The white reporter has no theme branch; no invented dark/mobile viewport Cartesian matrix is warranted.

Linux Chrome156 DPR2, server plain Node26.12.1:15199, unchanged Vite:7159, unchanged synthetic reporter:8249. Main1600×900CSS→3200×1800 pixels; small800×600→1600×1200; resize1280×800→800×600 keeps2560×1600 encoded canvas. Configured30fps is observed disabled web/Electron-only setting, not independent human confirmation or achieved rate. Fixture SHA256 f9177beeebcd965dc70790696bd1fdf13f4af3d3e7984e604348117c842b96a3; decoder e3c4cfd2d26a05432e4d6fbad8f8eb583367233bcdc8bbae4762eb0e3ff16409 independently checked unchanged.

[Public comparison index](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/02d5485c13886702/index.md) contains public per-row videos, seed/landmark comparisons, Diff0/DiffT, metrics, scripts and action timestamps. [BEFORE report](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9bece420297dd199/report.md) preserves baseline limitations.

## Row audit

|Row|Status for bounded claim|Inspection and limits|
|---|---|---|
|L1|SUFFICIENT|All3 before/after recordings decoded and inspected through temporal sheets, first/middle/last samples, encoded landmarks/text crops, traces and raw run metrics. Correct reset, animation, scroll, settled ending. Encoded35/31/26→78/85/83; page paints77/87/54→95/105/95; unrecorded360/360/357→360/360/360. Active distinct IDs32/28/24→74/81/80. No backward barcode replay. AFTER active transition max135.3/157.3/153.0ms, none>250ms. Both elapsed animation and scroll phases present.|
|L2|UNVERIFIED|Actual60fps UI unavailable on web. No spoofed setting or60fps claim.|
|L3|SUFFICIENT|Both idle videos each side show valid nonblank initial content at1600×1200. Same active startedAt on repeated start; distinct restart session/attachment IDs. Fresh real-app native rebuild independently matches AFTER first seed exactly.|
|L4|PARTIAL; adequate lifecycle/resize control|Both videos show text selection from drag, motion, resize, scroll, settled row44 and cursor overlay. Fixed2560×1600 canvas letterboxes smaller content without observed stretching. Exact400ms click-ring duration/position not established. Reject unmatched final dynamic diff as parity evidence.|
|L5|SUFFICIENT as viewer/snapshot control|Exactly-one-viewer provenance and native snapshot transcript retained. Both recordings continue through motion, scroll and idle after snapshot. No observed scaled-snapshot-size frame leaking into fixed3200×1800 video. Snapshot1280×720. AFTER one280.5ms active transition remains; no universal freeze-free claim.|
|L6|PARTIAL|30fps stop-mid-motion, fresh recording and close/discard transcript succeed. Encoded9→18 and8→15. AFTER last barcode16/13 versus page read17/17; page read is not CDP acceptance. Final MediaRecorder frame survival unproven. New unit test proves queued encoder decode drain only.60fps remains unverified.|
|L7|UNVERIFIED|macOS Electron/CDP reporter surface unavailable on Linux; no desktop-platform claim.|

No blank/spinner/ghost/stale-overlay initial capture found. Black unused temporal-sheet tiles are padding, not video frames. Independent ffprobe verifies strictly increasing source PTS in all18 original MP4s; full ffmpeg decode exits0 for all18. ffmpeg output muxer emits time-base DTS warnings on both sides, preserved in the scratch trace; these are not evidence of backward source PTS.

## Temporal narration

Times below identify observable phases and native action timestamps, not inferred exact cursor timing. All L1 full runs: fixture clock0–2s top/idle,2–5s moving bar/barcode,5–8s scrolling rows,8–10s settled lower rows. AFTER cycle1 run22:24:52.916–22:25:02.920UTC, cycle2 22:25:17.677–22:25:27.686, cycle3 22:25:48.271–22:25:58.284. Temporal sheets sample at2Hz; raw traces provide PTS. Initial/final idle holds must not be counted as animation freezes.

L3 AFTER first22:26:00.976–22:26:01.134UTC and restart22:26:01.479–22:26:01.636: static top rows throughout. L4 AFTER start22:26:09.022: hover/click09.042/09.443, drag10.442, fixture run10.891, resize13.468, second click14.000, scroll14.458/PageDown14.516, HUD click20.980, stop21.971. Video shows selection before resize, narrower reflow and side bars afterward, then final row44. L5 run22:29:01.707–11.752: snapshot04.787 during animation, continued scroll/final idle, stop11.852. L6 AFTER stop-mid-motion starts22:26:37.703 and stop40.923; fresh starts42.048, stop45.237; separate close49.449 discards active recording. Corresponding BEFORE action timestamps and videos are retained in the public index. These recordings plus chronology support behavior; stills alone do not establish it.

## Pixel comparisons and rebuild

Diff0: absolute RGB delta, threshold0. DiffT: pixels with max RGB channel delta>8, amplified8× with saturation255. All9 initial encoded seed pairs have0 changed pixels, max delta0. Matched animation landmark changed/>8 pixels: L1c1 81710/3532; L1c2 60972/1046; L1c3 119215/2564; L5 47482/1546; L6fresh64874/2244; L6stop58947/3181. Their mean absolute channel deltas are0.0149–0.0371, consistent with small compression differences rather than exact equality. L4 unmatched final3205559/405555 is explicitly rejected as parity proof. L3 landmarks0/0. Inspected comparison boards and both diff representations for every row, temporal sheets for all18 originals, native extracts and both L5 snapshots.

Rebuild used the existing isolated app thread through the host Browser panel; the inner agent invoked HEAD native preview tools. No new thread, direct-CDP recording, fixture mutation, or checkout script. At22:36:46UTC it opened reporter, resized800×600CSS DPR2, reset scroll0/HUDidle/barcode0/bar transform empty, started/stopped native recording, claimed MP4 and closed tab. Rebuild seed1600×1200 versus AFTER L3-idle-first-seed.png: changed pixels0/1920000, >8 pixels0, max delta0, mean absolute delta0. This establishes reproducible idle seed/claim behavior only, not identical compression for arbitrary dynamic captures. Driver, safe transcript, MP4 and pixel metrics are scratch artifacts uploaded separately. Own outer tab closed.

## What else changed

Immediate CDP acknowledgements replace decode-delayed acknowledgements. One serial encoder delivery plus one replaceable newest pending frame bounds backlog, deliberately dropping intermediates under load. Stop waits on delivery drain before detach/encoder stop. Native Uint8Array.fromBase64 replaces JS atob/map conversion; supplied16.5→0.7ms microbenchmark was not independently rerun. JPEG quality90, everyNthFrame1, bitrate policy, canvas sizing, MIME choice, fps and cursor implementation are unchanged. Earlier ack can increase CDP/JPEG work; no CPU/memory reduction is established. No separate provider UI, mobile UI, contracts, command palette or keybinding changes. Desktop CDP shares this path and remains affected/unverified. Remote transfer/player UI were not independently tested by this reviewer; lead owns final player check. Supplied30 tests passing and baseline knip issue were not rerun in this read-only audit.

## VERDICT: SUFFICIENT

For the bounded Linux Chromium server-agent recording throughput improvement, with L2/L7 UNVERIFIED and L4/L6 PARTIAL explicitly retained. Insufficient for full matrix completion or any60fps/macOS/sharpness/exact-ring/final-MediaRecorder-frame claim. No merge authorization is implied.

## FRICTION

First rebuild failed with ERR_CONNECTION_REFUSED because the lead-owned fixture process had exited143. Preserved rebuild-failure.json. Lead restored the same unchanged Python fixture server; retry succeeded. Host app required ordinary one-time pairing recovery; no credentials included in this report or uploads. I did not start/stop servers, edit checkout, merge, watch, or write to a forge. The native rebuild necessarily wrote isolated app attachments; all reviewer-created material remains outside the checkout.
