# Evidence repair: [#24553](https://github.com/pingdotgg/t3code/pull/24553)

Original [#21165](https://github.com/pingdotgg/t3code/pull/21165), [GitCafe #21165](https://git.cafe/pingdotgg/t3code/pulls/21165). HEAD [7dc770f](https://github.com/pingdotgg/t3code/commit/7dc770f59161a62d690fce753d9ddb66fb29d510); baseline [eea9895](https://github.com/pingdotgg/t3code/commit/eea989536849e5b5049987ee24318b5a77326542). The only source toggle during capture was the baseline/HEAD ThreadDetailsPrRow.tsx file. Final HEAD and working tree are restored and clean. No commits, pushes, comments or watches. No live userdata read, copied or written during this repair.

## Exact replacement and reuse

**New:** all 24 whole-app stills (A/B/C × 1440×1000/390×844 × light/dark × before/after), all 24 whole-viewport diff images, four supplemental R4 scrolling recordings, their timestamp/state logs, decoded whole frames, public replay scripts, and one fresh-public-script HEAD rebuild with whole-app diffs. No original still or diff remains the primary static proof in this index. Each still has two pixel-identical frames ≥500ms apart after fonts.ready/networkidle/reduced motion. No masking, cropping, hidden differences, alignment or app DOM painting.

**Reused:** the four original R1–R4 recordings only for already accepted R1–R3 interaction coverage, U1/U2/U3/U4 collapse, I1, checks transitions, dark focus/hover and repeated density-boundary probes. Their R4 attempted-scroll steps remain failed proof and are superseded by the four supplements below. Original matrix source classifications and I2 pending labels source-only remain unchanged. The originals are not claimed replay-identical to this repair: narrow composer is now deliberately compact from a clean reload, VCS upstream/ahead/behind is pinned. The accepted original recordings remain historical proof of their stated interaction endpoints.

A1/A2 main long passing/Merge/watch and linked short failing/Fix/watch; B1/B2 main short Ready/action-only and linked long conflict/Resolve/watch; C1/C2 main long pending count-only and linked short draft eye-only are all recaptured in every static width/theme/revision. U3 post-stop fallback, U1/U2 detail arrival and I1 remain in reused R2/R3/R1. I2 Merging/Marking/Preparing labels and U4 toolbar/hidden/absent/reference/dedup branches remain source-only as permitted by the matrix. Backend watch behavior and actual forge mutations are not tested by synthetic UI data.

## What changed in the repair fixture

The fixture now explicitly pins VCS hasUpstream=false, aheadCount=2, behindCount=0 and aheadOfDefaultCount=2, in addition to its existing ref/working-tree/PR values. capture.py reloads the real app before every preparation, waits for the composer to mount and reapplies fixture.js. Thus the mobile composer starts unfocused and compact instead of inheriting prior focus. No production source changes were made. Whole-app synthetic state still enters the actual mounted application through the app atom registry, including detail/check query state; forge actions are forbidden and watch-stop returns a synthetic local response.

Linux x86_64, headed Chrome156.0.8078.47, Xvfb :211 1600×1200, DPR1, zoom1, frozen clock1792878466365, same fonts and isolated parent home /tmp/ev-21165, parent web8704/backend16744. System sans request resolves to this machine's font fallback, as disclosed in the original environment. Responsive390 is web, not native mobile; Electron shell was not run. Web and desktop share this renderer; no contracts/provider/backend behavior changed. No native preview recorder was used. New videos use ffmpeg X11grab20fps libx264 CRF20/yuv420p; the whole browser viewport is located by pixel matching against X11 and preflight mean error must be <2. Reduced-height video frames retain black unused X11 area below the smaller app viewport. New static captures are browser screenshots of the full viewport; videos exclude browser chrome only.

## Rebuild and remaining audit boundary

Fresh public-script replay changed **43 pixels**, max channel delta **10**, **0 pixels above16**. This downloads the published fixture/capture/wrapper, reloads committed HEAD and captures A at390×844 light in a separate output directory. It is a separate rebuild run by the primary agent, not a new independent model/human audit; the next auditor can repeat exactly. The previous 10,140-pixel >16 whole-app mismatch is no longer present in this run.

![independent/rebuild-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41ecc8b042f99064/rebuild-A-390x844-light.png)

![independent/rebuild-diff-zero-8x.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/51016c315490ba95/rebuild-diff-zero-8x.png)

![independent/rebuild-diff-threshold16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1c5169e030b13d66/rebuild-diff-threshold16.png)

[independent/rebuild-result.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/81ee4d143c35a28d/rebuild-result.json)

Use the already paired task browser/server. Download fixture.js, capture.py, ab, scroll-record.py, diff.py and replay.sh into /tmp/evidence-21165-repair; make ab executable. The wrapper uses the installed agent-browser binary and named evidence21165-video session on DISPLAY=:211; adjust only binary location if installed elsewhere. Run `bash /tmp/evidence-21165-repair/replay.sh` to recapture both revisions and diffs. It checks HEAD, refuses a dirty target file, and restores HEAD through a trap. Python needs Pillow/numpy/OpenCV, plus ffmpeg/Xvfb/agent-browser. Fresh browser instructions are in replay.sh; pair only with the isolated /tmp/ev-21165, never live state. Do not publish tokens. capture.py discovers the first synthetic project/thread in this task home; this is a same-environment replay recipe, not a promise of arbitrary cross-machine pixel identity.

For the public-script rebuild, copy this manifest's artifacts map into uploads.json, then run `python3 independent-rebuild.py`. It fetches the public scripts by URL, verifies SHA256, checks HEAD/source bytes, captures after a reload and asserts max delta≤16 with zero pixels>16. The rebuilt input script URLs/hashes are saved in rebuild-result.json. The replay scripts and raw capture archive are all publicly linked below. Parent server/browser/display remain running for the next audit.

## Whole-app pair differences

Every affected row is60→64px; metadata margin -4→0px. Main title remains fixed; metadata moves4px. Linked title moves4px; linked metadata moves8px. Show less and later card controls flow8px. No unexpected text/geometry difference is accepted. Zero-threshold diffs show abs RGB×8 clipped255; >16 images use magenta for max-channel abs difference>16. These are whole-viewport diffs without masks. Outside-card statistics below are diagnostic only and never alter any image.

- after-A-1440x1000-dark.png: outside-card max 0, pixels>16 0; total pixels>16 5705.
- after-A-1440x1000-light.png: outside-card max 0, pixels>16 0; total pixels>16 5685.
- after-A-390x844-dark.png: outside-card max 0, pixels>16 0; total pixels>16 5694.
- after-A-390x844-light.png: outside-card max 0, pixels>16 0; total pixels>16 5683.
- after-B-1440x1000-dark.png: outside-card max 0, pixels>16 0; total pixels>16 5714.
- after-B-1440x1000-light.png: outside-card max 0, pixels>16 0; total pixels>16 5659.
- after-B-390x844-dark.png: outside-card max 2, pixels>16 0; total pixels>16 5703.
- after-B-390x844-light.png: outside-card max 3, pixels>16 0; total pixels>16 5657.
- after-C-1440x1000-dark.png: outside-card max 0, pixels>16 0; total pixels>16 4728.
- after-C-1440x1000-light.png: outside-card max 0, pixels>16 0; total pixels>16 4688.
- after-C-390x844-dark.png: outside-card max 1, pixels>16 0; total pixels>16 4716.
- after-C-390x844-light.png: outside-card max 3, pixels>16 0; total pixels>16 4686.

## Matched stills and both diffs

### A, 1440×1000, light

Before

![before-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a1c49417ce61df9a/before-A-1440x1000-light.png)

After

![after-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/126390153f189758/after-A-1440x1000-light.png)

Zero threshold ×8

![diff-zero-8x-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f0e3171fc73e138b/diff-zero-8x-A-1440x1000-light.png)

Threshold16

![diff-threshold16-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3abd751fb665abb9/diff-threshold16-A-1440x1000-light.png)

### B, 1440×1000, light

Before

![before-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eef45ca49862f40a/before-B-1440x1000-light.png)

After

![after-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d8dd09495821f82a/after-B-1440x1000-light.png)

Zero threshold ×8

![diff-zero-8x-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8a114e30b1aa4b90/diff-zero-8x-B-1440x1000-light.png)

Threshold16

![diff-threshold16-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2e207952b5c75be6/diff-threshold16-B-1440x1000-light.png)

### C, 1440×1000, light

Before

![before-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/95bff1ce17c2b108/before-C-1440x1000-light.png)

After

![after-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/aed06862794cf976/after-C-1440x1000-light.png)

Zero threshold ×8

![diff-zero-8x-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2160d86793010fde/diff-zero-8x-C-1440x1000-light.png)

Threshold16

![diff-threshold16-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/31fb7926344507ba/diff-threshold16-C-1440x1000-light.png)

### A, 1440×1000, dark

Before

![before-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d1dbbb7d597d2a14/before-A-1440x1000-dark.png)

After

![after-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8ceb2360ca37402a/after-A-1440x1000-dark.png)

Zero threshold ×8

![diff-zero-8x-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9d46d33c4b7fc803/diff-zero-8x-A-1440x1000-dark.png)

Threshold16

![diff-threshold16-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/28f4bed53db046f1/diff-threshold16-A-1440x1000-dark.png)

### B, 1440×1000, dark

Before

![before-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/951920329a9f79b6/before-B-1440x1000-dark.png)

After

![after-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d0aed176bf61ee6c/after-B-1440x1000-dark.png)

Zero threshold ×8

![diff-zero-8x-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a0d585988b3eca11/diff-zero-8x-B-1440x1000-dark.png)

Threshold16

![diff-threshold16-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e61a4f538dab45c3/diff-threshold16-B-1440x1000-dark.png)

### C, 1440×1000, dark

Before

![before-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/792ccc80f75da020/before-C-1440x1000-dark.png)

After

![after-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a91a63a18b5ea834/after-C-1440x1000-dark.png)

Zero threshold ×8

![diff-zero-8x-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5b9c357f6e57e8ee/diff-zero-8x-C-1440x1000-dark.png)

Threshold16

![diff-threshold16-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1d161dfd769b96e3/diff-threshold16-C-1440x1000-dark.png)

### A, 390×844, light

Before

![before-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/46ada140fbeb5fd0/before-A-390x844-light.png)

After

![after-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b66e6d00a84e8e38/after-A-390x844-light.png)

Zero threshold ×8

![diff-zero-8x-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8f74c5afe2b0dcbf/diff-zero-8x-A-390x844-light.png)

Threshold16

![diff-threshold16-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f47b9c9b112a06bd/diff-threshold16-A-390x844-light.png)

### B, 390×844, light

Before

![before-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/25004d8022404fa4/before-B-390x844-light.png)

After

![after-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/24b92098aa137d8d/after-B-390x844-light.png)

Zero threshold ×8

![diff-zero-8x-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/968a549f2996fcd2/diff-zero-8x-B-390x844-light.png)

Threshold16

![diff-threshold16-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8827c69a17f5c070/diff-threshold16-B-390x844-light.png)

### C, 390×844, light

Before

![before-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fc248cbcf1999d47/before-C-390x844-light.png)

After

![after-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/955046ae4673175f/after-C-390x844-light.png)

Zero threshold ×8

![diff-zero-8x-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cca21b538d1f3c7f/diff-zero-8x-C-390x844-light.png)

Threshold16

![diff-threshold16-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/22f8d8cc1530d6de/diff-threshold16-C-390x844-light.png)

### A, 390×844, dark

Before

![before-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e7ba4efe4f798750/before-A-390x844-dark.png)

After

![after-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ef509d5a51e63266/after-A-390x844-dark.png)

Zero threshold ×8

![diff-zero-8x-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/35dbdc1ac41aaa1f/diff-zero-8x-A-390x844-dark.png)

Threshold16

![diff-threshold16-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8fa2e30a68e0d215/diff-threshold16-A-390x844-dark.png)

### B, 390×844, dark

Before

![before-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/920a71907ff02de0/before-B-390x844-dark.png)

After

![after-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/54c2eb16e23e537c/after-B-390x844-dark.png)

Zero threshold ×8

![diff-zero-8x-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da943c3ca1b9a428/diff-zero-8x-B-390x844-dark.png)

Threshold16

![diff-threshold16-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5e1ee54ba9d56f89/diff-threshold16-B-390x844-dark.png)

### C, 390×844, dark

Before

![before-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/63376cd08922eba5/before-C-390x844-dark.png)

After

![after-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da2032f71d8982ba/after-C-390x844-dark.png)

Zero threshold ×8

![diff-zero-8x-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f64900081c26969d/diff-zero-8x-C-390x844-dark.png)

Threshold16

![diff-threshold16-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4897d2c92b5c38d5/diff-threshold16-C-390x844-dark.png)

## New successful R4 recordings

Each starts with12 linked PRs, scrolls the actual card viewport, holds lower rows/Show less, returns to top, probes measured full/compact boundary±2 and essential240px with successful scrolling at each, restores height, visibly holds Show less before clicking it. Both positive scrollTop and actual row movement are asserted. Full source/state/geometry/timestamps are linked.

### before, 1440

[before-1440-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d0856282d95fa928/before-1440-R4-scroll.mp4)

[before-1440-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3f6583bd4e5d34b6/before-1440-R4-scroll.json)

X11 preflight mean RGB error: 0.1569.

| Seconds | Step | Height | Density | ScrollTop | Show less visible |
|---|---|---|---|---|---|
| 0.00 | Twelve linked PRs expanded; actual scroller at top | 1000 | full | 0 | True |
| 1.48 | Scroll card down 9999px using its viewport selector | 1000 | full | 59 | True |
| 2.95 | Hold lower linked rows and Show less visibly reachable | 1000 | full | 59 | True |
| 4.42 | Scroll actual card back to top | 1000 | full | 0 | True |
| 5.98 | Resize to measured boundary probe height 401; boundary 399 | 401 | full | 0 | False |
| 7.34 | Scroll reduced-height card to lower rows and Show less | 401 | full | 658 | True |
| 8.68 | Hold reachable lower controls at reduced height | 401 | full | 658 | True |
| 10.04 | Return actual card scroller to top | 401 | full | 0 | False |
| 11.40 | Resize to measured boundary probe height 397; boundary 399 | 397 | compact | 0 | False |
| 12.77 | Scroll reduced-height card to lower rows and Show less | 397 | compact | 597 | True |
| 14.12 | Hold reachable lower controls at reduced height | 397 | compact | 597 | True |
| 15.46 | Return actual card scroller to top | 397 | compact | 0 | False |
| 16.79 | Resize to measured boundary probe height 240; boundary 399 | 240 | essential | 0 | False |
| 18.20 | Scroll reduced-height card to lower rows and Show less | 240 | essential | 722 | True |
| 19.50 | Hold reachable lower controls at reduced height | 240 | essential | 722 | True |
| 20.81 | Return actual card scroller to top | 240 | essential | 0 | False |
| 22.14 | Restore normal viewport and scroll lower | 1000 | full | 59 | True |
| 23.68 | Show less visible before click; no auto-reveal needed | 1000 | full | 59 | True |
| 25.12 | Click visibly reachable Show less to collapse linked list | 1000 | full | 0 | False |

![before-1440-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e68417e1fcd7ee3a/before-1440-R4-scroll-review-1.jpg)

![before-1440-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7902eea4006f3f1e/before-1440-R4-scroll-review-2.jpg)

![before-1440-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f690d08f15f14eec/before-1440-R4-scroll-review-3.jpg)

![before-1440-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/78f08688794e6a21/before-1440-R4-scroll-review-4.jpg)

### before, 390

[before-390-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/24ff8ed8925fe46c/before-390-R4-scroll.mp4)

[before-390-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0eba052be358036d/before-390-R4-scroll.json)

X11 preflight mean RGB error: 0.1694.

| Seconds | Step | Height | Density | ScrollTop | Show less visible |
|---|---|---|---|---|---|
| 0.00 | Twelve linked PRs expanded; actual scroller at top | 844 | full | 0 | False |
| 1.30 | Scroll card down 9999px using its viewport selector | 844 | full | 243 | True |
| 2.63 | Hold lower linked rows and Show less visibly reachable | 844 | full | 243 | True |
| 3.94 | Scroll actual card back to top | 844 | full | 0 | False |
| 5.25 | Resize to measured boundary probe height 429; boundary 427 | 429 | full | 0 | False |
| 6.56 | Scroll reduced-height card to lower rows and Show less | 429 | full | 658 | True |
| 7.83 | Hold reachable lower controls at reduced height | 429 | full | 658 | True |
| 9.11 | Return actual card scroller to top | 429 | full | 0 | False |
| 10.39 | Resize to measured boundary probe height 425; boundary 427 | 425 | compact | 0 | False |
| 11.67 | Scroll reduced-height card to lower rows and Show less | 425 | compact | 597 | True |
| 12.95 | Hold reachable lower controls at reduced height | 425 | compact | 597 | True |
| 14.24 | Return actual card scroller to top | 425 | compact | 0 | False |
| 15.52 | Resize to measured boundary probe height 240; boundary 427 | 240 | essential | 0 | False |
| 16.79 | Scroll reduced-height card to lower rows and Show less | 240 | essential | 750 | True |
| 18.05 | Hold reachable lower controls at reduced height | 240 | essential | 750 | True |
| 19.39 | Return actual card scroller to top | 240 | essential | 0 | False |
| 20.64 | Restore normal viewport and scroll lower | 844 | full | 243 | True |
| 21.97 | Show less visible before click; no auto-reveal needed | 844 | full | 243 | True |
| 23.28 | Click visibly reachable Show less to collapse linked list | 844 | full | 0 | False |

![before-390-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/687243e9bdcb873b/before-390-R4-scroll-review-1.jpg)

![before-390-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/720d1aad61741e18/before-390-R4-scroll-review-2.jpg)

![before-390-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/aa19399185b1bf21/before-390-R4-scroll-review-3.jpg)

![before-390-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/02cc36eb37994ce2/before-390-R4-scroll-review-4.jpg)

### after, 1440

[after-1440-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9401f441725ef177/after-1440-R4-scroll.mp4)

[after-1440-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9dd5f93cd024dae0/after-1440-R4-scroll.json)

X11 preflight mean RGB error: 0.1569.

| Seconds | Step | Height | Density | ScrollTop | Show less visible |
|---|---|---|---|---|---|
| 0.00 | Twelve linked PRs expanded; actual scroller at top | 1000 | full | 0 | False |
| 1.48 | Scroll card down 9999px using its viewport selector | 1000 | full | 107 | True |
| 2.95 | Hold lower linked rows and Show less visibly reachable | 1000 | full | 107 | True |
| 4.41 | Scroll actual card back to top | 1000 | full | 0 | False |
| 5.88 | Resize to measured boundary probe height 405; boundary 403 | 405 | full | 0 | False |
| 7.26 | Scroll reduced-height card to lower rows and Show less | 405 | full | 702 | True |
| 8.58 | Hold reachable lower controls at reduced height | 405 | full | 702 | True |
| 9.95 | Return actual card scroller to top | 405 | full | 0 | False |
| 11.28 | Resize to measured boundary probe height 401; boundary 403 | 401 | compact | 0 | False |
| 12.68 | Scroll reduced-height card to lower rows and Show less | 401 | compact | 641 | True |
| 14.02 | Hold reachable lower controls at reduced height | 401 | compact | 641 | True |
| 15.36 | Return actual card scroller to top | 401 | compact | 0 | False |
| 16.71 | Resize to measured boundary probe height 240; boundary 403 | 240 | essential | 0 | False |
| 18.12 | Scroll reduced-height card to lower rows and Show less | 240 | essential | 770 | True |
| 19.43 | Hold reachable lower controls at reduced height | 240 | essential | 770 | True |
| 20.72 | Return actual card scroller to top | 240 | essential | 0 | False |
| 22.02 | Restore normal viewport and scroll lower | 1000 | full | 107 | True |
| 23.62 | Show less visible before click; no auto-reveal needed | 1000 | full | 107 | True |
| 25.10 | Click visibly reachable Show less to collapse linked list | 1000 | full | 0 | False |

![after-1440-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fd435467fafd8a6f/after-1440-R4-scroll-review-1.jpg)

![after-1440-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c4e5b1cb203b7b15/after-1440-R4-scroll-review-2.jpg)

![after-1440-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ff05d8c93fc97816/after-1440-R4-scroll-review-3.jpg)

![after-1440-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9994169537142436/after-1440-R4-scroll-review-4.jpg)

### after, 390

[after-390-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/30f2890effedbcd2/after-390-R4-scroll.mp4)

[after-390-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eaac52ae7b085113/after-390-R4-scroll.json)

X11 preflight mean RGB error: 0.1694.

| Seconds | Step | Height | Density | ScrollTop | Show less visible |
|---|---|---|---|---|---|
| 0.00 | Twelve linked PRs expanded; actual scroller at top | 844 | full | 0 | False |
| 1.32 | Scroll card down 9999px using its viewport selector | 844 | full | 291 | True |
| 2.65 | Hold lower linked rows and Show less visibly reachable | 844 | full | 291 | True |
| 3.96 | Scroll actual card back to top | 844 | full | 0 | False |
| 5.28 | Resize to measured boundary probe height 433; boundary 431 | 433 | full | 0 | False |
| 6.65 | Scroll reduced-height card to lower rows and Show less | 433 | full | 702 | True |
| 7.94 | Hold reachable lower controls at reduced height | 433 | full | 702 | True |
| 9.21 | Return actual card scroller to top | 433 | full | 0 | False |
| 10.50 | Resize to measured boundary probe height 429; boundary 431 | 429 | compact | 0 | False |
| 11.78 | Scroll reduced-height card to lower rows and Show less | 429 | compact | 641 | True |
| 13.06 | Hold reachable lower controls at reduced height | 429 | compact | 641 | True |
| 14.34 | Return actual card scroller to top | 429 | compact | 0 | False |
| 15.63 | Resize to measured boundary probe height 240; boundary 431 | 240 | essential | 0 | False |
| 16.91 | Scroll reduced-height card to lower rows and Show less | 240 | essential | 798 | True |
| 18.17 | Hold reachable lower controls at reduced height | 240 | essential | 798 | True |
| 19.42 | Return actual card scroller to top | 240 | essential | 0 | False |
| 20.69 | Restore normal viewport and scroll lower | 844 | full | 291 | True |
| 22.17 | Show less visible before click; no auto-reveal needed | 844 | full | 291 | True |
| 23.47 | Click visibly reachable Show less to collapse linked list | 844 | full | 0 | False |

![after-390-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/30be6ab93b78f12f/after-390-R4-scroll-review-1.jpg)

![after-390-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1170509c2f4cd4ea/after-390-R4-scroll-review-2.jpg)

![after-390-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1ef688973166be3e/after-390-R4-scroll-review-3.jpg)

![after-390-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e3bd6cde68da6a46/after-390-R4-scroll-review-4.jpg)

## Reused accepted interaction recordings

Use R1–R3 portions only, plus existing repeated boundary oscillation probes; superseded scroll attempts are explicitly excluded. Original index contains step timestamps.

[Original corrected index](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/602347ff67c6ea9e/index-final.md)

[before-1440-R1-R4.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e8b72a8ddef93bb6/before-1440-R1-R4.mp4)

[before-390-R1-R4.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/12997e84a51b3a84/before-390-R1-R4.mp4)

[after-1440-R1-R4.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41d1db657a8cc483/after-1440-R1-R4.mp4)

[after-390-R1-R4.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4cf7d337a686b339/after-390-R1-R4.mp4)

## FRICTION category | what | prevention

- process lifetime | Retained Xvfb :211 had exited; first browser reconnection failed with Missing X server or $DISPLAY | Restart only the owned display and verify headed X11/browser pixel agreement; keep parent server untouched.
- fixture completeness | Original replay inherited VCS divergence and mobile composer focus | Pin upstream/ahead/behind and reload/reset composer before every capture; rebuild from publicly downloaded scripts.
- input targeting | Original scroll command targeted the page and left card scrollTop0 | Target [data-thread-details-card] [data-slot=scroll-area-viewport], assert scrollTop>0, row movement and visible Show less before click.
- measurement | Draft expanded-list boundary measurement used an already capped card | Measure two-row baseline before expanding12 links; final videos probe measured full±2, compact and essential.
- assertion scope | Draft baseline expected >100px movement, but normal baseline only overflows59px | Assert actual positive movement (>10px), nonzero scrollTop and visible lower controls; rejected draft replaced.
- process lifetime | Baseline capture subprocess received SIGTERM; restoration trap returned HEAD clean | Resume only missing completed stills and run remaining capture in tracked detached process with restoration trap.
- public replay transport | urllib received HTTP403 and curl hit one transient DNS failure | Fetch anonymous public artifacts with curl retries and verify SHA256 before execution.
- upload transport | ghdrop intermittently rejects POST transport and empty recorder logs | Retry bounded uploads, verify hashes; zero-byte logs are documented locally and included in raw archive. Primary artifacts have final immutable URLs.

## Files

Raw duplicates, preflights, endpoint screenshots and every decoded whole video frame are included in raw-captures.zip with raw-inventory.json hashes. Primary stills/diffs/videos/scripts also have individual URLs. Draft scratch is not production source. Logs retain rejected attempts transparently; final videos/stills are identified above and in the manifest. Every primary still/diff and all final recording endpoint sheets were opened for visual inspection; duplicate settle frames are pixel-identical, and raw endpoints match the corresponding logged recording state.

[ab](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/26d9a0ced61e4d72/ab)

[after-1440-R4-scroll-ffmpeg.log](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2ad3a619fed5cc6f/after-1440-R4-scroll-ffmpeg.log)

[after-1440-R4-scroll-frame-times.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f7d3c6ac7e8ef857/after-1440-R4-scroll-frame-times.json)

[after-1440-R4-scroll-frames/00.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/22648ea7b2f46096/00.jpg)

[after-1440-R4-scroll-frames/01.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fecd816a31ab5fd2/01.jpg)

[after-1440-R4-scroll-frames/02.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/677d3f50c0ba44cd/02.jpg)

[after-1440-R4-scroll-frames/03.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/194c0808ef4baaad/03.jpg)

[after-1440-R4-scroll-frames/04.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4472f3bf658bea3f/04.jpg)

[after-1440-R4-scroll-frames/05.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cb58c64b41b6c7b3/05.jpg)

[after-1440-R4-scroll-frames/06.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/73bfcbc9a4971301/06.jpg)

[after-1440-R4-scroll-frames/07.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/02f8f4d1daa032d3/07.jpg)

[after-1440-R4-scroll-frames/08.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dcdd52a3030d4773/08.jpg)

[after-1440-R4-scroll-frames/09.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9f44e3009d66b0a7/09.jpg)

[after-1440-R4-scroll-frames/10.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/065e2f9de6a62ced/10.jpg)

[after-1440-R4-scroll-frames/11.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/addb86a114b2cc2a/11.jpg)

[after-1440-R4-scroll-frames/12.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5fb894b70e4a98ee/12.jpg)

[after-1440-R4-scroll-frames/13.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/358f7fc579e91ebb/13.jpg)

[after-1440-R4-scroll-frames/14.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/25746357ac23887d/14.jpg)

[after-1440-R4-scroll-frames/15.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7ad6d8baac3d3904/15.jpg)

[after-1440-R4-scroll-frames/16.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6bb2ddf8c04ddb1e/16.jpg)

[after-1440-R4-scroll-frames/17.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c788e5be2ad65b1b/17.jpg)

[after-1440-R4-scroll-frames/18.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/53a014d3370ab985/18.jpg)

[after-1440-R4-scroll-preflight-browser.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/91ea33dc7294961f/after-1440-R4-scroll-preflight-browser.png)

[after-1440-R4-scroll-preflight-x11.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0a6d93a054e6692b/after-1440-R4-scroll-preflight-x11.png)

[after-1440-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fd435467fafd8a6f/after-1440-R4-scroll-review-1.jpg)

[after-1440-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c4e5b1cb203b7b15/after-1440-R4-scroll-review-2.jpg)

[after-1440-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ff05d8c93fc97816/after-1440-R4-scroll-review-3.jpg)

[after-1440-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9994169537142436/after-1440-R4-scroll-review-4.jpg)

[after-1440-R4-scroll-step01.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d4e803e98a9d5b9c/after-1440-R4-scroll-step01.png)

[after-1440-R4-scroll-step02.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3068ffa67b77eafe/after-1440-R4-scroll-step02.png)

[after-1440-R4-scroll-step03.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6d9034648226e097/after-1440-R4-scroll-step03.png)

[after-1440-R4-scroll-step04.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/307aacdc87ad7fa4/after-1440-R4-scroll-step04.png)

[after-1440-R4-scroll-step05.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2cd06ae4b193777c/after-1440-R4-scroll-step05.png)

[after-1440-R4-scroll-step06.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/354254c7aa57db94/after-1440-R4-scroll-step06.png)

[after-1440-R4-scroll-step07.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c59e617b2e0b39e1/after-1440-R4-scroll-step07.png)

[after-1440-R4-scroll-step08.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/35c6981455dcebd9/after-1440-R4-scroll-step08.png)

[after-1440-R4-scroll-step09.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c7deab7ea70d4c36/after-1440-R4-scroll-step09.png)

[after-1440-R4-scroll-step10.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c3db10b7386b6c79/after-1440-R4-scroll-step10.png)

[after-1440-R4-scroll-step11.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2a4b99a26299f1d2/after-1440-R4-scroll-step11.png)

[after-1440-R4-scroll-step12.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f379d2f1980b985c/after-1440-R4-scroll-step12.png)

[after-1440-R4-scroll-step13.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c6c2d7ca4e172751/after-1440-R4-scroll-step13.png)

[after-1440-R4-scroll-step14.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/45be78f843824a06/after-1440-R4-scroll-step14.png)

[after-1440-R4-scroll-step15.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0a91080c661e01db/after-1440-R4-scroll-step15.png)

[after-1440-R4-scroll-step16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c13d2cb811f8abe0/after-1440-R4-scroll-step16.png)

[after-1440-R4-scroll-step17.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f8119ae7858a5135/after-1440-R4-scroll-step17.png)

[after-1440-R4-scroll-step18.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5f775af2390e60bf/after-1440-R4-scroll-step18.png)

[after-1440-R4-scroll-step19.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6c2df431b3408f3c/after-1440-R4-scroll-step19.png)

[after-1440-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9dd5f93cd024dae0/after-1440-R4-scroll.json)

[after-1440-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9401f441725ef177/after-1440-R4-scroll.mp4)

[after-390-R4-scroll-frame-times.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9a5c640f1d04dfdc/after-390-R4-scroll-frame-times.json)

[after-390-R4-scroll-frames/00.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/206dbeed99039ad9/00.jpg)

[after-390-R4-scroll-frames/01.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/379efd74b1919206/01.jpg)

[after-390-R4-scroll-frames/02.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/be889aa335e09fb8/02.jpg)

[after-390-R4-scroll-frames/03.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/df795891d4be920a/03.jpg)

[after-390-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/30be6ab93b78f12f/after-390-R4-scroll-review-1.jpg)

[after-390-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1170509c2f4cd4ea/after-390-R4-scroll-review-2.jpg)

[after-390-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1ef688973166be3e/after-390-R4-scroll-review-3.jpg)

[after-390-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e3bd6cde68da6a46/after-390-R4-scroll-review-4.jpg)

[after-390-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eaac52ae7b085113/after-390-R4-scroll.json)

[after-390-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/30f2890effedbcd2/after-390-R4-scroll.mp4)

[after-A-1440x1000-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/595f7cfff33e9d8f/after-A-1440x1000-dark.json)

[after-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8ceb2360ca37402a/after-A-1440x1000-dark.png)

[after-A-1440x1000-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/31f0d93490592147/after-A-1440x1000-light.json)

[after-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/126390153f189758/after-A-1440x1000-light.png)

[after-A-390x844-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0f1b9efb6c0946ae/after-A-390x844-dark.json)

[after-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ef509d5a51e63266/after-A-390x844-dark.png)

[after-A-390x844-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/69ac827ca6fcc1a6/after-A-390x844-light.json)

[after-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b66e6d00a84e8e38/after-A-390x844-light.png)

[after-B-1440x1000-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0968faa309768cba/after-B-1440x1000-dark.json)

[after-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d0aed176bf61ee6c/after-B-1440x1000-dark.png)

[after-B-1440x1000-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e86af116f2e9295f/after-B-1440x1000-light.json)

[after-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d8dd09495821f82a/after-B-1440x1000-light.png)

[after-B-390x844-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6f87c38bad24b65b/after-B-390x844-dark.json)

[after-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/54c2eb16e23e537c/after-B-390x844-dark.png)

[after-B-390x844-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8ae094421d57bac4/after-B-390x844-light.json)

[after-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/24b92098aa137d8d/after-B-390x844-light.png)

[after-C-1440x1000-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0a0cd7a847086fa0/after-C-1440x1000-dark.json)

[after-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a91a63a18b5ea834/after-C-1440x1000-dark.png)

[after-C-1440x1000-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/59c6b762e5146f3f/after-C-1440x1000-light.json)

[after-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/aed06862794cf976/after-C-1440x1000-light.png)

[after-C-390x844-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ab1cb3e4ead29912/after-C-390x844-dark.json)

[after-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da2032f71d8982ba/after-C-390x844-dark.png)

[after-C-390x844-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/39d02ecd98dcc7d4/after-C-390x844-light.json)

[after-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/955046ae4673175f/after-C-390x844-light.png)

[after-manifest.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ae5bfbc8140ab02d/after-manifest.json)

[archive-raw.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/63bc74ba894b44e2/archive-raw.py)

[baseline-run.log](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da0710a5ee6b708c/baseline-run.log)

[before-1440-R4-scroll-ffmpeg.log](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d7c6dc02af4dd6fb/before-1440-R4-scroll-ffmpeg.log)

[before-1440-R4-scroll-frame-times.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/40af3d56f80a616a/before-1440-R4-scroll-frame-times.json)

[before-1440-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e68417e1fcd7ee3a/before-1440-R4-scroll-review-1.jpg)

[before-1440-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7902eea4006f3f1e/before-1440-R4-scroll-review-2.jpg)

[before-1440-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f690d08f15f14eec/before-1440-R4-scroll-review-3.jpg)

[before-1440-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/78f08688794e6a21/before-1440-R4-scroll-review-4.jpg)

[before-1440-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3f6583bd4e5d34b6/before-1440-R4-scroll.json)

[before-1440-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d0856282d95fa928/before-1440-R4-scroll.mp4)

[before-390-R4-scroll-frame-times.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c99838d16c5ed455/before-390-R4-scroll-frame-times.json)

[before-390-R4-scroll-review-1.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/687243e9bdcb873b/before-390-R4-scroll-review-1.jpg)

[before-390-R4-scroll-review-2.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/720d1aad61741e18/before-390-R4-scroll-review-2.jpg)

[before-390-R4-scroll-review-3.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/aa19399185b1bf21/before-390-R4-scroll-review-3.jpg)

[before-390-R4-scroll-review-4.jpg](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/02cc36eb37994ce2/before-390-R4-scroll-review-4.jpg)

[before-390-R4-scroll.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0eba052be358036d/before-390-R4-scroll.json)

[before-390-R4-scroll.mp4](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/24ff8ed8925fe46c/before-390-R4-scroll.mp4)

[before-A-1440x1000-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0d93072532a3de56/before-A-1440x1000-dark.json)

[before-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d1dbbb7d597d2a14/before-A-1440x1000-dark.png)

[before-A-1440x1000-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/19db68bc9f8c1a05/before-A-1440x1000-light.json)

[before-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a1c49417ce61df9a/before-A-1440x1000-light.png)

[before-A-390x844-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4ebe6f0cd57b5522/before-A-390x844-dark.json)

[before-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e7ba4efe4f798750/before-A-390x844-dark.png)

[before-A-390x844-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/76b021237e699405/before-A-390x844-light.json)

[before-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/46ada140fbeb5fd0/before-A-390x844-light.png)

[before-B-1440x1000-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cea8fa6def3c78ad/before-B-1440x1000-dark.json)

[before-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/951920329a9f79b6/before-B-1440x1000-dark.png)

[before-B-1440x1000-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1785334800e7ebb8/before-B-1440x1000-light.json)

[before-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eef45ca49862f40a/before-B-1440x1000-light.png)

[before-B-390x844-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f40ca674d80b9f00/before-B-390x844-dark.json)

[before-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/920a71907ff02de0/before-B-390x844-dark.png)

[before-B-390x844-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/52d64aa1083b7545/before-B-390x844-light.json)

[before-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/25004d8022404fa4/before-B-390x844-light.png)

[before-C-1440x1000-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d528db479147e938/before-C-1440x1000-dark.json)

[before-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/792ccc80f75da020/before-C-1440x1000-dark.png)

[before-C-1440x1000-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/17e12d6d6d1c04a8/before-C-1440x1000-light.json)

[before-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/95bff1ce17c2b108/before-C-1440x1000-light.png)

[before-C-390x844-dark.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f19540a3ad624589/before-C-390x844-dark.json)

[before-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/63376cd08922eba5/before-C-390x844-dark.png)

[before-C-390x844-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8f828cfdcc7b0d5c/before-C-390x844-light.json)

[before-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fc248cbcf1999d47/before-C-390x844-light.png)

[capture.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c4b21e08adc8ba58/capture.py)

[decode-review.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6a0f02ca4875ae68/decode-review.py)

[diff-manifest.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/05523792d824249a/diff-manifest.json)

[diff-threshold16-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/28f4bed53db046f1/diff-threshold16-A-1440x1000-dark.png)

[diff-threshold16-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3abd751fb665abb9/diff-threshold16-A-1440x1000-light.png)

[diff-threshold16-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8fa2e30a68e0d215/diff-threshold16-A-390x844-dark.png)

[diff-threshold16-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f47b9c9b112a06bd/diff-threshold16-A-390x844-light.png)

[diff-threshold16-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e61a4f538dab45c3/diff-threshold16-B-1440x1000-dark.png)

[diff-threshold16-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2e207952b5c75be6/diff-threshold16-B-1440x1000-light.png)

[diff-threshold16-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5e1ee54ba9d56f89/diff-threshold16-B-390x844-dark.png)

[diff-threshold16-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8827c69a17f5c070/diff-threshold16-B-390x844-light.png)

[diff-threshold16-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1d161dfd769b96e3/diff-threshold16-C-1440x1000-dark.png)

[diff-threshold16-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/31fb7926344507ba/diff-threshold16-C-1440x1000-light.png)

[diff-threshold16-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4897d2c92b5c38d5/diff-threshold16-C-390x844-dark.png)

[diff-threshold16-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/22f8d8cc1530d6de/diff-threshold16-C-390x844-light.png)

[diff-zero-8x-A-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/9d46d33c4b7fc803/diff-zero-8x-A-1440x1000-dark.png)

[diff-zero-8x-A-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f0e3171fc73e138b/diff-zero-8x-A-1440x1000-light.png)

[diff-zero-8x-A-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/35dbdc1ac41aaa1f/diff-zero-8x-A-390x844-dark.png)

[diff-zero-8x-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8f74c5afe2b0dcbf/diff-zero-8x-A-390x844-light.png)

[diff-zero-8x-B-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a0d585988b3eca11/diff-zero-8x-B-1440x1000-dark.png)

[diff-zero-8x-B-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8a114e30b1aa4b90/diff-zero-8x-B-1440x1000-light.png)

[diff-zero-8x-B-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/da943c3ca1b9a428/diff-zero-8x-B-390x844-dark.png)

[diff-zero-8x-B-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/968a549f2996fcd2/diff-zero-8x-B-390x844-light.png)

[diff-zero-8x-C-1440x1000-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5b9c357f6e57e8ee/diff-zero-8x-C-1440x1000-dark.png)

[diff-zero-8x-C-1440x1000-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/2160d86793010fde/diff-zero-8x-C-1440x1000-light.png)

[diff-zero-8x-C-390x844-dark.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f64900081c26969d/diff-zero-8x-C-390x844-dark.png)

[diff-zero-8x-C-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cca21b538d1f3c7f/diff-zero-8x-C-390x844-light.png)

[diff.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/8305a1e6ec7330e0/diff.py)

[environment.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d97e363170c3580f/environment.json)

[fixture.js](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/d316431c844b21b4/fixture.js)

[independent-rebuild.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1185c8713b873d1c/independent-rebuild.py)

[independent/capture.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/98b8751c3a981f3b/capture.py)

[independent/fixture.js](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b25a47594bf4a795/fixture.js)

[independent/rebuild-A-390x844-light.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/652016a7e719ddd5/rebuild-A-390x844-light.json)

[independent/rebuild-A-390x844-light.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41ecc8b042f99064/rebuild-A-390x844-light.png)

[independent/rebuild-diff-threshold16.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1c5169e030b13d66/rebuild-diff-threshold16.png)

[independent/rebuild-diff-zero-8x.png](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/51016c315490ba95/rebuild-diff-zero-8x.png)

[independent/rebuild-result.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/81ee4d143c35a28d/rebuild-result.json)

[inspection.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e981e60d1a02681c/inspection.json)

[package.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1f69dfdef733abef/package.py)

[publish.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/88091bfe41da24f9/publish.py)

[published.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0bfd8733710a917a/published.json)

[raw-captures.zip](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/c64ba96b1959c318/raw-captures.zip)

[raw-inventory.json](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/41b1b8f4bb913ed9/raw-inventory.json)

[replay.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/26da9a0dd868bdf2/replay.sh)

[run-before.sh](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ed7543f4dc576500/run-before.sh)

[scroll-record.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/bd66eb525ce81ea1/scroll-record.py)

[upload.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6ec2c53d9976c5e7/upload.py)

[verify-public.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/6053486b35502e30/verify-public.py)

[verify.py](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/eb640197f4f1533a/verify.py)

