# Evidence-only proof audit, pass 1

PR [#23469](https://git.cafe/pingdotgg/t3code/pulls/23469), GitHub mirror [#23469](https://github.com/pingdotgg/t3code/pull/23469).
Reviewed head [68e33d0f7c](https://git.cafe/pingdotgg/t3code/commit/68e33d0f7ca19b17bc1ba0ec3a9a1dfd21e0b9fd), branch `fix/issue-17674`.

Verdict: retained evidence is useful and sufficient for several historical behavior rows. Final-head runtime proof is missing. Do not redo the existing before captures or theme/viewport grid. Add a small final-head integration sequence and explicit caller/transition metadata; this is an evidence gap, not a finding that the implementation fails.

## Basis and limits

Read-only source review in `/home/ubuntu/wt/pr-23469`; all scratch in `/tmp/pr-23469-auditor`. Read supplied original body JSON and final evidence index before inspecting source and downloaded recordings. Inspected representative decoded frames from every published After supplemental recording and core Before/After recordings; this is frame sampling, not an assertion that every video frame or claimed action was independently checked. No browser, app server, code edits, tests, PR comments, pushes, watches, or status polling. No EVIDENCE runbook found among tracked workspace paths or supplied evidence files. Existing videos are accepted within their disclosed historical provenance.

Complete PR diff: merge-base with `origin/main` is [3b95e7831b](https://git.cafe/pingdotgg/t3code/commit/3b95e7831b11b17627dff16843bc087bfca397ec). Local `main` is stale and produces an unrelated 3,298-file diff; do not use it. Actual diff has six files: two production files (`DiffPanel.tsx`, `diffRendering.ts`), identity tests, two fixture generators and seed JSON. Independently verified both production file blobs equal retained After [82f820bb7e](https://git.cafe/pingdotgg/t3code/commit/82f820bb7e). Verified retained Before affected-file diff against current merge-base is empty. Blob equivalence supports reuse; it does not attest the served application revision.

## Minimal fixture matrix

“Missing final-head” below means missing an attributable capture of this head, not that historical captures are invalid. One desktop-light integration recording can satisfy several rows. Historical dark/responsive endpoints stay adequate for presentation scope; do not multiply functional rows by themes/viewports.

| Row | Fixture and path | Observable acceptance | Existing adequate evidence | Minimal remaining proof |
| --- | --- | --- | --- | --- |
| M1 | `amplified`, Uncommitted / working-tree lazy path; modified, added, deleted, pure rename, changed rename with long path | Hold real per-file responses, Collapse all while placeholders exist, release; file identities remain folded; then individual expand/collapse and Expand all work | C1 Before/After demonstrates original race and retained fixed behavior, individual file types and global inverse; C1 theme/responsive endpoints establish retained presentation | Final-head After only with revision/startup provenance and release log; ensure changed-rename endpoint is visible or logged. Do not redo Before/grid |
| M2 | Same repository and review section: `119999` / `120000` / `120001` bytes | Full → lazy placeholders → loaded → full on refresh preserves a mixed subset of folds; changed contents actually update | C3 After is retained supplemental threshold/full-lazy control; source tests explicitly exercise both directions | Final-head sequence with actual preview `truncated`, byte count/hash, same scope, held response release, and visible mixed folds in both directions. Video alone cannot prove exact byte boundary |
| M3 | `duplicate`: regular-file → symlink, same previous/current path repeated twice plus unique neighbor; full parsing | Collapse deletion only, then addition only; neighbor unaffected; global fold/unfold works | C4 After visibly shows independent repeated-path folds and unaffected neighbor; no need for another Before | Can retain historical C4 as behavior proof. Include a short final-head smoke if claiming all changed behavior was integrated at final head; no need for a matched pair |
| M4 | Same branch-range caller (“Changes”), same mixed fixture, size >120,000; deliberate base ref | Same pending-collapse invariant and content refresh, no scope confusion | No explicitly identified branch-range runtime capture in supplied index/body; C1 is described as Uncommitted | One final-head branch-range pending-release segment and response metadata. Reuse M1 fixture; commit fixture changes in a disposable generated repo and select its `fixture-base` as base |
| M5 | Turn/checkpoint diff caller; small full fixture including repeated path if practical | Full parsed files still render; collapse/unfold and file-specific reveal preserve other folds | Source tests cover identity/full metadata; supplied captures are labelled Uncommitted, not checkpoint | One final-head checkpoint segment with selected turn, visible changed content, individual/global toggles and turn/file reveal. No lazy checkpoint matrix: source enables lazy mode only for non-turn sources |
| M6 | File-tree reveal, Find unfold, defaults, refresh/version update | Requested file unfolds without folding others; repeated unfold is idempotent; refreshed patch content updates without losing fold identity | C25 After visibly includes tree/Find activity and long changed rename; C6 After shows incremental headers followed by expanded content; C7 After shows full modified content then collapse | Retain historical controls. Fold tree/Find and one unmistakable content sentinel update into M1/M2 final-head sequence; defaults need only a fresh scope if explicitly claimed |
| M7 | Empty/single, truncated per-file patch, failure/retry | Only if making these additional claims: empty stays empty, one-file changes refresh, truncated/error rows keep controls usable | Generators support zero/single/truncated, but supplied published index does not attest all these rows | Not required for minimal identity fix audit: these unchanged error/empty paths are not an excuse to demand exhaustive new captures |
| M8 | Web / desktop / mobile / remote | Correct scope statement | Changed web component is shared by desktop; retained web captures are real app. No CSS/server/contracts/provider/mobile changes | Native Electron remains explicitly unverified; do not call Chromium proof native-shell proof. No mandatory native mobile, provider, or tunnel matrix for this local identity change |

## Existing captures to keep

- [C1-before-captioned.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2909a124cea0d9bd/C1-before-captioned.mp4) and [C1-after-captioned.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/02e4db138d13012e/C1-after-captioned.mp4): adequate historical behavioral comparison of pending load, collapse and later arrival. Before frames show an added patch reopened; After frames show folded headers and later individual expansion. Caption timings are approximate, not performance measurements.
- [C4-after-1440-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/16c54c4896f35461/C4-after-1440-light.mp4): adequate historical repeated-path independence control. Both same-path blocks appear, with deletion collapsed while addition remains open, then both collapsed; unique neighbor stays separate.
- [C3-after-1440-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/24e0b7624c647371/C3-after-1440-light.mp4): keep as supplemental After-only threshold/full-lazy control. Frames show content and fold activity; without accompanying response metadata I do not independently certify exact bytes, both directions, or final served SHA. Do not resurrect excluded C3 matched Before/After claims.
- [C6-after-1440-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/22f13663c19d7060/C6-after-1440-light.mp4), [C7-after-1440-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e4a6bf35a70ebe9b/C7-after-1440-light.mp4), [C25-after-1440-light.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4683fb5651c82e0b/C25-after-1440-light.mp4): adequate historical controls within disclosed mixed provenance; sampled C6 shows later headers then body, C7 modified-file collapse, C25 tree/Find and long-path content. Their numeric labels alone are not a complete fixture protocol.
- [C1-before-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0651076bd530569d/C1-before-390-dark.png), [C1-after-390-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/43bf0b98639f687c/C1-after-390-dark.png) and the existing four-cell C1 grid: retain for historical layout/theme coverage. No new CSS necessitates regenerating the grid.
- [control-before-after.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2ba725ce97e86421/control-before-after.png) and [pixel-diff-report.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1ee5b6b073beee11/pixel-diff-report.json): keep the narrowly scoped unchanged-header control and raw comparisons. The index limits the zero claim to the 684×384 crop (262,656 pixels). No whole-app zero-difference or regression-rate claim follows.

## Precise minimal capture request

1. Record final-head identity, clean working tree, dev server launch/build source and actual app endpoint in sidecar metadata, keeping credentials and pairing tokens out. A git SHA printed beside an unrelated already-running app is insufficient. Tie the browser endpoint to the process started from this checkout. Preserve response patch hashes and fixture generator JSON. Use existing isolated state; never start against live userdata.
2. Capture final-head M1 and M2 in one desktop-light recording if convenient: hold real per-file requests; collapse pending added/deleted/pure-renamed placeholders; release; show all stay folded; unfold a file independently; refresh through both full/lazy directions with mixed folds; show a new sentinel inside an unfolded changed file. Record byte count and `truncated` from actual responses. Keep old Before recording.
3. Add a short final-head branch-range segment (M4) and checkpoint segment (M5). They can be chapters of that same recording. Add the short same-path independent-fold smoke only if asserting integrated final-head coverage for that behavior; retained C4 already proves it historically. Capture tree/Find along the way rather than generating separate videos.

## Reproduction guidance

Use committed scripts from the reviewed checkout but write generated repositories and logs to disposable locations, not the reviewed worktree:

```sh
python3 /home/ubuntu/wt/pr-23469/scripts/fixtures/diff-identity.py /tmp/diff-proof-fixture amplified
python3 /home/ubuntu/wt/pr-23469/scripts/fixtures/diff-identity.py /tmp/diff-proof-fixture 119999
python3 /home/ubuntu/wt/pr-23469/scripts/fixtures/diff-identity.py /tmp/diff-proof-fixture 120000
python3 /home/ubuntu/wt/pr-23469/scripts/fixtures/diff-identity.py /tmp/diff-proof-fixture 120001
python3 /home/ubuntu/wt/pr-23469/scripts/fixtures/diff-identity.py /tmp/diff-proof-duplicate duplicate
```

Each script prints patch bytes/hash and deterministic seed/baseline metadata. Connect the disposable repository through a sandbox project/thread. Keep the same thread and selected review section through threshold refreshes; switching scope would bypass the preservation assertion. Exact 120,000-byte full versus lazy behavior must be read from the actual response; do not infer it from a numeric fixture name. The server review preview budget is 120,000 bytes; per-file budget is 1 MiB.

The hook initially requests four sorted files. Hold actual delivery, then release batches and scroll/load further until added/deleted/renamed paths have really settled. A folded placeholder before delivery is not proof of fold persistence. The lazy hook selects the first parsed block per path; it does not expose both same-path replacement blocks. Test duplicate-block independence in full mode, and do not demand a second block in lazy mode. Occurrence identity is based on stable block ordering, not persistent object identity.

For content-version proof, keep path pairs stable and change a visible content sentinel, refresh and unfold; otherwise screenshots of folded headers cannot establish that updated content was rendered. For branch range, commit fixture changes only in the disposable fixture repository and compare to `fixture-base`. For checkpoint, use an isolated stopped thread/checkpoint fixture with a valid selected turn; no provider-per-provider run is needed.

## FRICTION

- Local `main` is stale relative to this prepared PR checkout; using it inflates the diff to unrelated history. Used merge-base with already-present `origin/main`, without fetching or modifying refs.
- Initial Python urllib downloads returned HTTP 403. Downloading the same published files with curl and a standard Mozilla user agent succeeded. No unavailable-evidence conclusion is warranted.
- No EVIDENCE runbook was found in allowed inputs. No original source timing logs or response traces were supplied beyond index/body descriptions; mixed supplement provenance cannot be upgraded to final-head provenance by inference.
- Existing endpoint raster sizes do not match nominal CSS desktop metadata; retain disclosed dimensions. Whole-surface diffs include incidental drift. This limits pixel claims, not behavioral usefulness.
- No final-head runtime captures were produced in this audit by design. Lead's known checks: 35 success, 0 pending; supplied status, not independently refreshed. No known pending checks reported.

Model/harness: GPT-6.1-Sol through Codex. Evidence audit only; no further delegation.
