# Evidence-only proof audit pass 1 — replacement PR

Read-only source/evidence audit for [#24603](https://git.cafe/pingdotgg/t3code/pulls/24603), 2026-10-25. Source inspected in `/home/ubuntu/wt/pr-24603` at [a429aa3](https://git.cafe/pingdotgg/t3code/commit/a429aa3561ed9a0d7afc588285b5aa747299f645); user-supplied merge-base [76da264](https://git.cafe/pingdotgg/t3code/commit/76da264a0ccaeff5fa88bcb5cfada1be6ae320c4). Worktree status read as clean. No edits there, tests, servers, browsers, worktrees, provider turns, live userdata reads, forge comments or PR content mutations. Only /tmp report files and requested public upload; T3 PR association registered. Existing evidence statements below are attributed evidence, not independently rerun behavior.

Sources read: [original matrix](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f4acea5463cdce4e/pr11558-proof-audit-pass1.md), [normalized captures index](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eadf711206a24c91/index.md), [pass-4 audit](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/edf9954156f3a33d/pr11558-proof-audit-pass4.md), and current cafe PR description. This pass read the documents, not the video payloads or reproduction bundles. The existing pass-4 SUFFICIENT verdict is explicitly scoped; it does not close the original matrix's entire acceptance set.

## Exact classification

**Harness-only runtime evidence:** F2, C1, E1, P1; G1's callback-enabled footer subcase only. **No direct runtime proof / source equivalence:** C2, F4, G2, G3, A1, Z1. **Real-app evidence but incomplete original acceptance:** G1, N2, H1, L1; also F3's full focus cross-product and N1 actual destination navigation. F1 and M1 retain their scoped real-app evidence; no new gap established for their final scoped acceptance. Static parity controls are never proof of selection, entry retention, copying, menu cancellation, or navigation.

## Updated matrix: real routes, seed and exact constraints

T means real `/<environmentId>/<threadId>` using fixture IDs. P means `/pull-requests`, select an actual fixture PR in the list. Its validated search supports `number`, `selectedProjectId`, `selectedHost`, `selectedEnvironmentId` (and repository/environment scope fields); obtain the selection through UI rather than invent IDs. S means Settings routes below. All seeds must be synthetic in isolated state. A production component mounted alone or query-hook stub remains a harness. Synthetic responses delivered through the real environment RPC/service boundary with normal route/query/render integration should be labeled as such, never called live forge integration.

| Row | Existing evidence boundary | Real UI path and minimum synthetic seed | Missing acceptance / precise constraint |
|---|---|---|---|
| **G1 critical** | Real sidebar hover and sibling transfer; selection unverified. Callback footer harness only. | T → expand sidebar → hover stopped thread row. At 390 open actual sidebar drawer. Seed nonempty title, branch, provider instance/model; second sibling thread. Search sidebar for seeded title to reach search-result row too. Optional thread pullRequests plus environment supports-multiple-PR capability exposes footer. | Native drag-select title/model/branch in actual glass popup, copy and paste exact selected text, leave both; four modes if fulfilling original matrix. Do not infer selection from pointer-events. Sidebar row has select-none but popup is portaled; no source-level impossibility established. Actual footer cannot activate a PR: SidebarThreadRow passes no onOpenPullRequest; mini-list renders div instead of anchor. Callback-enabled footer activation is impossible on this actual caller without code change; mark N/A, not missing test. |
| **F2** | Actual production fallback component harness, no route integration. | P → select fixture PR → Summary/body Markdown. Standalone PullRequestDetailPanel defaults threadRef=null; context passes that to PullRequestMarkdown. Description contains existing relative `[src/short.ts](src/short.ts)` plus outside-workspace absolute file link. Resolve shell actions false: synthetic read-only connection lacking orchestration-operate grant OR real remote web connection (non-loopback origin, no desktop-local target; remote-links/remote-unavailable). Keep actual query/render path. | With no threadRef, panel/media/browser flags false; shell false makes button `File options for …`. Relative fixture path gives full+relative menu; outside path gives full only. Native path selection/copy/paste; trigger click/context-menu cancel desktop+narrow. Read-only chat alone insufficient: threadRef+panelPath still supplies primary anchor. Loopback full-grant standalone PR still offers editor anchor. This is a source-backed reachable recipe, not a runtime pass. |
| **C1** | Long wrapping copy control harness only. | P → fixture PR expanded detail header. Seed long headBranch and normal complete detail; header has Copy branch top tooltip, checkout command bottom tooltip if checkoutCommand exists. Ensure header not condensed/inert. | Copy exact branch/checkout command through real control; observe Copied label; enter/leave, wrapping and collision at desktop+narrow. Base branch is PullRequestBaseBranch, not this copy control: original matrix's copyable base-ref wording too broad. Close delay 150ms is provider behavior, not measured in existing captures. |
| **C2** | Source equivalence only; C1 harness does not prove these routes. | S `/settings/diagnostics`: synthetic diagnostics process record with long command, or synthetic trace record; hover process-name/command span or trace ID. Also T → Git actions → Files list, hover long path. Seed synthetic git repo with tracked file modified under long nested path, and grant/workingTreeRoot for enabled Open path in editor button. | Diagnostics span code popup and StartTruncatedPath nested inside real changed-file button need direct selection/wrapping/entry and action-preservation proof. Clean repo/empty diagnostics has no target. Snapshot/query data must feed actual diagnostics service route; a fabricated tooltip mount is still harness-only. No provider run needed. |
| **P1** | Query-stub component harness only; accepted unchanged error-entry closure, not retention PASS. | T → stopped assistant message with recognized forge PR URL. Hover causes real detail query. Seed synthetic environment source-control detail success, then controlled typed failure with no fallback; separately caller with fallback if available. Target must parse as PR reference, not ordinary URL. | Success/fallback render PreviewCard, separate primitive. Error+no fallback renders controlled URL Tooltip. Controlled state derives from PreviewCard open and query error; documented close-on-entry both pins is expected unchanged exception. Real route can verify it, cannot honestly report error-entry retention pass. Chat URL caller's fallback is not a user setting: arbitrary error+fallback combination may need another actual caller. |
| **E1** | Disabled-wrapper/nested-menu component harness only. | S `/settings/connections` → Network access: browser (no desktopBridge), auth policy loopback-browser or remote-reachable. Real span wraps disabled Switch with explanatory tooltip. For nested menu P → project filter → unavailable project option; seed project list and unavailable map/capability error so option.unavailable is present. Compact menu puts TooltipTrigger around disabled MenuRadioItem. | Disabled Add in original matrix is not the verified source path; actual wrapper is Network access. Assert disabled switch remains disabled, popup entry, menu remains open where applicable, no action dispatch, cancel/reopen. Model-picker unavailable row is optional, not needed to fabricate. |
| F4 | Source unchanged dispatch, F2 harness menu representative only. | T with synthetic text, HTML, image, directory files, metadata; relevant host/preview grants and capabilities; trigger actual file/editor/panel/browser/media destination. | Individual destination smoke paths not run in supplied evidence. No need provider Cartesian product. Do not promote unchanged source to observed clicks. |
| G2 | Existing explicit pointer-events-auto badge source control only. | T sidebar thread PR badge, seed one linked PR then multiple visible links and supports-multiple capability. Hover badge (distinct from row hover card); actual mini-list callback path supports anchors. | Direct one/multi list click and vertical-scroll runtime proof missing; G1 informational footer is not substitute. |
| G3 | Dynamic default/glass source equivalence only. | T Details PR row with absent then resolved PR summary. Sidebar update control needs isolated update state (idle detail/simple label/release notes). | Other dynamic labels/overlays are representatives, not actual PR-detail/updater transitions. Don't install a real update. Update fixture unavailable if running surface cannot supply updater bridge/state without source replacement. |
| N2 | Real attachment action/label/sibling/Escape; native paste contained fixture content, exact equality unverified. Original code-block/theme-helper surfaces not separately run. | T composer attach known UTF-8 text fixture via file input → attachment preview → Copy. Seed deterministic text including newline/Unicode; paste into neutral scratch input. | Compare complete pasted plain text to fixture bytes decoded as expected text, including trailing newline. Contains/prefix check insufficient. Existing evidence is attachment representative, not real code-block or appearance helper coverage. |
| H1 | Real drag/snooze desktop+narrow; other hidden/stale roots source-equivalent. | T sidebar drag stopped fixture thread; snooze menu; collapsed/expanded/drawer. P → Timeline with stale review outcome and current review data. | Stale-v-current review root and every hidden helper not directly proven; preserve explicit scope instead of blanket PASS. |
| L1 | Narrow wrapping representative; code unchanged; native titlebar not tested. | T open preview/device/right-panel controls and close; narrow drawer. Electron native titlebar requires actual desktop host. | Existing long popup width480 exceeds viewport390 on both pins. Original no-clipping acceptance cannot be marked PASS: known pre-existing failure. Linux browser cannot prove Electron/native-titlebar geometry. |
| A1 | Source equivalence only. | T composer context chip → sent-message context chip; file panel tree/breadcrumb and changed-files tree with synthetic paths. | Not MarkdownFileLink scroller. Selection/action preservation at those callers unrun; representative equivalence only. |
| Z1 | Source equivalence family, intentionally no caller cross-product. | `/usage`, `/settings/keybindings`, `/settings/providers`, `/settings/appearance`, `/settings/scheduled-tasks`, `/welcome` only if needed representative absent elsewhere; synthetic registry/usage/task state. | No independent runtime PASS for all these pages. Welcome code path could substitute one C2 shape but does not certify diagnostics. |
| F3 | Real timeline desktop+narrow; final-head repeat attributed to pass4. | T long nested file path in real MessagesTimeline; unfocused hover popup wheel separately from timeline scroll; keyboard tab focus separately. | Mixed hover/focus universal guarantee unverified. Existing no-clipping failure belongs L1. No new F3 route gap for scoped entry/scroll claim. |
| N1 | Real ordinary URL four modes hover/focus/Escape/leave. | T seeded non-file non-PR external link. | Actual destination navigation not claimed. Scope label should say hover/focus control, not all click destinations tested. |
| F1 | Retained real file native selection/copy/paste four modes per supplied audit. | T stopped synthetic assistant file links. | No newly established scoped gap. This audit did not rerun media. |
| M1 | Retained real MediaActions paired right-click/Shift+F10 suppression, outside-click cancellation and reopening. | T real synthetic image attachment → dialog/image context menu. | Escape cancellation explicitly not certified. Original Escape-based cancellation wording was superseded by valid outside-click acceptance, not new missing pass. |

## Source anchors for capture work

- [Glass sidebar body and informational footer](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/sidebar/SidebarThreadRow.tsx#L264)
- [Footer anchor only when callback exists](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/ThreadStatusIndicators.tsx#L400)
- [Portaled shared popup](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/ui/tooltip.tsx#L139)
- [Fallback and primary capability conditions](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/chat/MarkdownFileLink.tsx#L308)
- [Actual fallback button](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/chat/MarkdownFileLink.tsx#L358)
- [Chat shell grant and remote-mode gating](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/ChatMarkdown.tsx#L507)
- [Chat panel/media/browser gating](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/ChatMarkdown.tsx#L824)
- [Remote mode resolution](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/remoteOpen.ts#L51)
- [Standalone PR default threadRef](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/pullRequest/PullRequestDetailPanel.tsx#L262)
- [PR description renderer](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/pullRequest/PullRequestMarkdown.tsx#L88)
- [PR header real copy callers](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/pullRequest/PullRequestDetailPanel.tsx#L1517)
- [PR copy component](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/pullRequest/PullRequestCopyableCode.tsx#L61)
- [PR route/search schema](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/routes/_chat.pull-requests.tsx#L30)
- [Controlled PR error tooltip](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/pullRequest/PullRequestLinkPreview.tsx#L90)
- [Diagnostics process command](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/settings/DiagnosticsSettings.tsx#L291)
- [Telemetry process command](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/settings/ResourceTelemetryDiagnostics.tsx#L492)
- [Changed files nested path](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/GitActionsControl.tsx#L1944)
- [Changed file tooltip](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/StartTruncatedPath.tsx#L27)
- [Real disabled network switch](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/settings/ConnectionsSettings.tsx#L995)
- [Nested unavailable menu tooltip](https://git.cafe/pingdotgg/t3code/blob/a429aa3561ed9a0d7afc588285b5aa747299f645/apps/web/src/components/pullRequest/PullRequestCompactFilterMenu.tsx#L70)

## Handoff and friction

Two running-task steers sent directly to the user-named capture agent with these concrete paths; no new delegation. G1 selection is the highest-priority unresolved original acceptance. F2/C1/C2/P1 real-route integration follows; E1 has the readily reachable Network access replacement above. Native mobile does not import this web tooltip; narrow web does not prove coarse input or Electron titlebar behavior.

Initial Python urllib download received HTTP403; curl successfully fetched all three requested public Markdown documents. No credentials/config changed. Cafe default output was JSON despite skill expectations; read returned resource directly. No tests, visual checks, videos or screenshots generated by this pass. No merge recommendation beyond the explicit evidence classification.

Model/harness: GPT-6.1-Sol, Codex through T3 Code.
