# Connected evidence capture — S1–S5 captured

Evidence-only for PR [#24440](https://github.com/pingdotgg/t3code/pull/24440), issue [#7212](https://git.cafe/pingdotgg/t3code/issues/7212), head [69c6d53c30](https://github.com/pingdotgg/t3code/commit/69c6d53c30d974da83f21ed5d9142dc7afd5f224). 2026-10-25 UTC. Worktree `/home/ubuntu/wt/issue-7212`, branch `fix/issue-7212`. Completed within original 30-minute budget; runtime capture06:28–06:36 UTC. No implementation edits, commit, push, public forge writes, draft/label change, merge, watch, or reporter infra request. Public evidence uploads and required app-local PR registration only.

## Required minimal matrix

| Row | Captured proof |
|---|---|
| S1 | Wide/light real agent-created tab `tab_2_6a5e2fe3-8e52-42f1-89a3-2baacbcfce47`, connected Agent has control / Take control, refused URL/reason, Close and takeover hint, Retry absent. First frame of primary wide recording establishes endpoint. |
| S2 | Take control → viewer Retry with listener59999 still stopped → old alert removed06:33:29.105Z → new refusal06:33:29.181Z. Listener started06:33:31.635Z only afterward. Same-URL Retry removes failure, actual streamed Count1 and typed S2 proof. Release returns Agent has control. |
| S3 | After recovery/release, takeover and real Fail target link while listener stopped; Close removes float, composer accepts selected/replaced text “S3 retained-tab chat proof.” Same tab remains in Browser panel, recovered through Refresh and Float, connected agent endpoint reappears. Exact source remains tab2 before/after; panel initially selects oldtab1 and tab2 is explicitly selected. |
| S4 | Primary wide clip ends with real failed shell grip drag offset1,1: before06:34:20.141Z x1108/y568/w320/h320; after06:34:22.257Z x956/y348/w320/h320. Delta−152/−220, same size. Close/Retry and viewer bar remain readable. Uncovered composer accepts appended text. Initial independent7.667s drag clip gives same geometry change. |
| S5 | 390×844 CSS, DPR1, dark before flow; healthy59998 → Float → real long Fail target59999 link. Before06:35:03.891Z x58/y404/w320/h320; real grip offset1,1 drag gives06:35:09.772Z x12/y204/w320/h320 (delta−46/−200). Real NW resize gives06:35:33.011Z x92/y284/w240/h240. Full long URL/reason wraps; Close/Retry reachable. Release gives agent hint+Close+Take control; real Take control and Retry work at minimum. |

**No S1–S5 missing capture gate remains in this pass.** This is capture-agent evidence, subject to the proof auditor's independent acceptance. No full ownership×gesture product, baseline recording, whole-scene pixel identity or native reconstruction is claimed.

## Primary recordings

[Wide/light S1–S4,54.966667s,1440×900](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/adc0c8c6c0252766/wide-S1-S4.mp4) and [narrow/dark S5,30.233333s,390×844](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eed969d60deffdeb/narrow-S5.mp4). Both are whole-app after-only recordings at30fps. They include a synthetic provider-start failure in surrounding chat from setup; that is disclosed below and is unrelated to the browser refusal. Pointer is the agent-browser inert recording cursor. All4 created videos decode end-to-end with ffmpeg exit0; contact sheets and first/final frames inspected. Exact byte/hash manifest and probe data accompany bundle.

![Wide/light S1–S4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/adc0c8c6c0252766/wide-S1-S4.mp4)

![Narrow/dark S5](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eed969d60deffdeb/narrow-S5.mp4)

Before positional movement (same implementation):

![Before wide drag](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f171175588737d38/S4-wide-before.png)

After positional movement:

![After wide drag](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8b25320eb8148dfb/S4-wide-after.png)

Minimum narrow viewer and agent endpoints:

![Narrow minimum viewer controls](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c9d94de49bee8d67/S5-narrow-min-viewer.png)

![Narrow minimum agent controls](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4f4978634d2099e5/S5-narrow-min-agent.png)

## Exact runtime attempts

1. Read repository AGENTS and test-t3-app, cafe-cli/cafe-pr, ghdrop, agent-browser core; read supplied prior connected report, linked bootstrap/drivers, PR description/matrix via cafe and new minimal auditor S1–S5 report. Origin is git.cafe. First cafe pr view24440 returned retryable ConnectionRefused; one retry succeeded. No gh reads.
2. HEAD correct; tracked clean; no healthy owned fixture listeners existed. `vp install` passed20.2s. Restored supplied synthetic SQLite/environment-id/client-settings into stopped worktree `.t3/userdata`; `T3CODE_DEV_SEED=0 vp run dev` once, server15684/web7644. No live-state database use or copied credentials.
3. Built-in preview_status returned availablefalse; preview_open successfully created own blank tab. Its drag schema/source still has only locator source/target with no offsets. User explicitly authorized agent-browser/native alternative for this task, overriding test-t3-app's default no-switch wording. Used `npx --yes agent-browser skills get core --full`, then isolated named session `proof-7212-round`, agent-browser0.39.2 with installed Chrome148.0.7778.96. Real inner server browser is Chrome154.0.8037.92. No Electron/native app build was attempted.
4. Paired actual app once (private token omitted). Initial Browser startup downloaded inner Chrome and temporarily disabled URL control. Initial fill/Enter erroneously reached composer, submitting synthetic URL; provider failed before startup because archived scratch directory was absent. After actual connected viewer ownership and enabled URL input, navigated healthy59998, floated and clicked real Fail target59999. First real offset drag succeeded and uncovered composer accepted text.
5. Created only the missing exact synthetic scratch directory. Sent one evidence-only provider prompt forbidding edits/shell tools and requesting real preview_open(newtab), healthy59998, navigate59999, reveal URLomitted. Codex/GPT-6-Astra completed29s with actual preview tool calls and returned tab2 ID. Initial longer wide recording includes setup mis-targets and is supplementary, not the primary proof.
6. Recorded clean combined wide54.967s flow using actual app UI; listener59999 started/stopped repeatedly only through retained sessions (PIDs1209898,1209993,1210212,1210295). Healthy59998 initialPID1205328. Measured pointer offsets and before/after geometry, not tool-success alone.
7. Stopped healthy59998, started modified synthetic fixture with a long real Fail target link (PID1210379). Set viewport390×844 and product-persisted dark theme before reload; re-established retained tab healthy→Float→failure. Recorded actual positional drag and NW resize to240 square, both ownership layouts and actual Take/Retry.
8. Validation only: ffprobe plus full ffmpeg decode for all4 recordings, whole-app contact/first/final frames and endpoint stills. No source tests or repo-wide checks; no implementation was changed.

[Sanitized driver/setup summary](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e110170e1416d1b8/driver.json); [exact subsequent UI command log with timestamps and raw outputs](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9fe7272e8d392eed/actions.jsonl). Initial setup and first drag precede automatic command logging and are documented in driver.json. Pairing token, cookies, MCP auth, database and browser profile are excluded.

Real input used mouse move/down/up via agent-browser/CDP. Wide grip1409,577→1009,357; narrow359,413→313,213; NW resize12,204→132,324; each move24steps/900ms. Bounds constrain wide horizontal travel. Instrumentation only reads geometry/text and observes alert presence into a window array. No DOM/CSS layout mutation, component setter, mocked failure, or synthetic DOM pointer events. Theme was restored through the existing persisted product theme key before reload, not CSS injection.

## Native lineage and remaining limits

Retained newer native/stream report was inside the supplied bootstrap. Its exact report is republished unchanged for lineage: [retained completion report](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/862520fa8ae26cc6/REPORT.md). Its existing [native390dark clip](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c63286ecbda1aa08/native-390-dark.mp4) reports distinct downRetry→same-URL healthy→Count1/input→minimum resize. This supplies N2 lineage; this agent did not re-run or independently decode that retained clip. N3's explicit native-chat hit-testing is not newly proved by this pass; carry the task's retained native proof, and do not confuse new connected chat proof with native proof. Prior native fresh-bootstrap failure remains disclosed in that report. No native media was rebuilt.

Full-Q repetition, other OS/provider/transport cases, native mobile, second-viewer/read-only, optional download/PDF/PiP, A7 native contents absence and whole-scene baseline equivalence were not run and are not inferred passes. The minimal auditor matrix does not require these for S1–S5.

## FRICTION

FRICTION: cafe pr view24440 initially returned SERVER_ERROR, “an unexpected client error occurred (ConnectionRefused)”, retryabletrue; next call succeeded.

FRICTION: initial skill read used an incorrect system-relative path and returned No such file; loaded repository .agents/skills/test-t3-app/SKILL.md successfully.

FRICTION: agent-browser not initially on PATH (“command not found”); npx resolved0.39.2 and used existing installed Chrome, no infra help requested.

FRICTION: Browser first startup downloaded Chrome, leaving URL disabled and Connecting. agent-browser fill returned success while focus stayed in composer; Enter submitted synthetic URL. Missing archived scratch caused ProviderWorkspaceMissingError before provider turn. No implementation or live data changed. Subsequent fills verify enabled URL and activeElement.

FRICTION: contenteditable fill appended rather than clearing existing text; explicit click/Control+a/keyboard type used for later chat proof.

FRICTION: provider reveal reopened right panel, hiding float; early mini-player geometry and MutationObserver calls returned null TypeError, Retry locator absent, one wait timed out25000ms. Closed right panel to expose existing float; connected Agent endpoint then verified. These setup failures remain in supplementary140.733s clip/log.

FRICTION: second top-level eval reused lexical panel and returned SyntaxError Identifier panel already declared. Wrapped observer installation in IIFE; fresh refusal sequence recorded successfully.

FRICTION: recovery/re-float remount temporarily says Connecting and can restore Agent ownership, so reacquired Take control when needed. A later wait for Agent endpoint timed out5000ms because viewer remained controller; that takeover lookup was absent, but viewer interaction worked and Count1/input were captured. No stable ownership bug inferred.

FRICTION: reopening Browser initially selected old tab1; explicitly selected retained tab2 before takeover/Refresh/Float. Source tab2 identity is retained in read-only records before/after.

FRICTION: original center drag tool's offsets limitation was bypassed with real exposed offset1,1 input; both primary geometry deltas are nonzero. No new implementation defect asserted.

## Cleanup

Captured27 owned browser/backend/provider descendants before teardown. Closed agent-browser named session and own blank collaborative tab; stopped all retained dev/fixture sessions. All27 captured processes exited; no additional signals needed. Listener ports7644,15684,59998,59999 empty. Main T3 server3773 untouched. Exact created archived synthetic scratch directory removed; own evidence scratch removed after uploads. Worktree retained for lead cleanup, including ignored setup/node_modules/.t3 state. HEAD pinned and tracked status clean. PR remains draft; app-local registration lists watchingfalse. No merge/watch/forge mutation.
