# A2 — Web 1440×1000, dark

Real app, real git, actual merged GitHub PR. Chromium 148 headless via agent-browser on Linux, no device emulation, DPR 1, font scaling 100%, system Inter, reduced motion enabled; same scroll position and JS wall clock frozen at 2026-11-03 03:00 UTC. Stills waited for network idle and fonts and passed byte-identical PNG checks 500ms apart. Full viewport, no crop. Stopped synthetic history was seeded via deferred message + stop RPC (no provider executed).

Steps and timestamps (above recording pair):

- before 0.000s: Start: settled primary; enabled baseline actions are not invoked.
- before 2.267s: Open options; normal app performs remote refresh.
- before 8.092s: Options settled; still captured.
- before 9.379s: Hover Push hint.
- before 10.444s: Attempt disabled Push; inspect recording for no mutation dialog.
- before 11.673s: Hover Create PR hint.
- before 11.838s: Close options.
- before 14.020s: Stop.
- after 0.000s: Start: settled primary; enabled baseline actions are not invoked.
- after 2.292s: Open options; normal app performs remote refresh.
- after 8.038s: Options settled; still captured.
- after 9.288s: Hover Push hint.
- after 10.297s: Attempt disabled Push; inspect recording for no mutation dialog.
- after 11.632s: Hover Create PR hint.
- after 12.721s: Attempt disabled Create PR; inspect recording for no mutation dialog.
- after 12.832s: Close options.
- after 15.136s: Attempt disabled primary; hint is allowed, mutation dialog is not.
- after 16.429s: Stop.

| Before recording | After recording |
|---|---|
| [before-labelled.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d6c4ddaae7ffaaea/before-labelled.mp4)<br>[71646e0](https://github.com/pingdotgg/t3code/commit/71646e031a6dc9db1309b3b9dff597f872cf2fd3) | [after-labelled.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f6b5ff6cad4d591e/after-labelled.mp4)<br>[0d27d85](https://github.com/pingdotgg/t3code/commit/0d27d85707dcdc7de5d0fcd05f5649b030203899) |

| State | Before | After | Diff0 (per-channel ×255) | DiffT (channel delta >16/255) |
|---|---|---|---|---|
| primary | ![before-primary.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/110a27d3a7b862bb/before-primary.png)<br>[71646e0](https://github.com/pingdotgg/t3code/commit/71646e031a6dc9db1309b3b9dff597f872cf2fd3) | ![after-primary.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b2b78795ac5119c1/after-primary.png)<br>[0d27d85](https://github.com/pingdotgg/t3code/commit/0d27d85707dcdc7de5d0fcd05f5649b030203899) | ![primary-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e80c6983d04582f1/primary-diff0.png)<br>[71646e0](https://github.com/pingdotgg/t3code/commit/71646e031a6dc9db1309b3b9dff597f872cf2fd3) → [0d27d85](https://github.com/pingdotgg/t3code/commit/0d27d85707dcdc7de5d0fcd05f5649b030203899) | ![primary-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/67b6a1b200448f61/primary-diff16.png)<br>[71646e0](https://github.com/pingdotgg/t3code/commit/71646e031a6dc9db1309b3b9dff597f872cf2fd3) → [0d27d85](https://github.com/pingdotgg/t3code/commit/0d27d85707dcdc7de5d0fcd05f5649b030203899) |
| options | ![before-options.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0607c6ec80481774/before-options.png)<br>[71646e0](https://github.com/pingdotgg/t3code/commit/71646e031a6dc9db1309b3b9dff597f872cf2fd3) | ![after-options.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/765c07bf80843908/after-options.png)<br>[0d27d85](https://github.com/pingdotgg/t3code/commit/0d27d85707dcdc7de5d0fcd05f5649b030203899) | ![options-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c331ee69a120c2d/options-diff0.png)<br>[71646e0](https://github.com/pingdotgg/t3code/commit/71646e031a6dc9db1309b3b9dff597f872cf2fd3) → [0d27d85](https://github.com/pingdotgg/t3code/commit/0d27d85707dcdc7de5d0fcd05f5649b030203899) | ![options-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3d302045f379cb98/options-diff16.png)<br>[71646e0](https://github.com/pingdotgg/t3code/commit/71646e031a6dc9db1309b3b9dff597f872cf2fd3) → [0d27d85](https://github.com/pingdotgg/t3code/commit/0d27d85707dcdc7de5d0fcd05f5649b030203899) |

Actual RPC status and scripts:

[before-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/af9c11959810ee9b/before-status.json)
[after-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/29c002ef07fe12c1/after-status.json)
[before-refreshed-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fd44a99b1936540b/before-refreshed-status.json)
[after-refreshed-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d536da024a949e73/after-refreshed-status.json)
[timeline.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2875c5573c444d6f/timeline.json)
[seed-fixtures.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/65654835215e88d9/seed-fixtures.py)
[browser-driver.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ecae02674ec15418/browser-driver.py)
[capture-row.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/138bec3bed4486a4/capture-row.py)
[establish-history.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/db1ac1e30bdfad5e/establish-history.py)
[records.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0556e84a4e881074/records.json)

Verbatim ghdrop output:

![before-primary.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/110a27d3a7b862bb/before-primary.png)
![after-primary.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b2b78795ac5119c1/after-primary.png)
![primary-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e80c6983d04582f1/primary-diff0.png)
![primary-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/67b6a1b200448f61/primary-diff16.png)
![before-options.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0607c6ec80481774/before-options.png)
![after-options.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/765c07bf80843908/after-options.png)
![options-diff0.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c331ee69a120c2d/options-diff0.png)
![options-diff16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3d302045f379cb98/options-diff16.png)
[before.webm](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/970f90bca59a8b93/before.webm)
[after.webm](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4dc607ac378381e6/after.webm)
[before-labelled.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d6c4ddaae7ffaaea/before-labelled.mp4)
[after-labelled.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f6b5ff6cad4d591e/after-labelled.mp4)
![before-filmstrip.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c095022ef0cab707/before-filmstrip.png)
![after-filmstrip.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3d8e635dc89ec057/after-filmstrip.png)
[before-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/af9c11959810ee9b/before-status.json)
[after-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/29c002ef07fe12c1/after-status.json)
[before-refreshed-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fd44a99b1936540b/before-refreshed-status.json)
[after-refreshed-status.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d536da024a949e73/after-refreshed-status.json)
[timeline.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2875c5573c444d6f/timeline.json)
[before-final-tree.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/baf8b165bb406bb7/before-final-tree.txt)
[after-final-tree.txt](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cb427d433c3e3dbb/after-final-tree.txt)
[seed-fixtures.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/65654835215e88d9/seed-fixtures.py)
[browser-driver.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ecae02674ec15418/browser-driver.py)
[capture-row.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/138bec3bed4486a4/capture-row.py)
[establish-history.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/db1ac1e30bdfad5e/establish-history.py)
[records.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0556e84a4e881074/records.json)
