# Evidence capture report — classic-scrollbar prerequisite blocked

Target: [#22385 GitCafe](https://git.cafe/pingdotgg/t3code/pulls/22385), [#22385 GitHub](https://github.com/pingdotgg/t3code/pull/22385).
Branch: FllipEis:philipp/fix-lineage-scrollbar-shift. Original remote head: 1ff2c383984bf2e4a1e40a0fb556c042acf82469.
AFTER: c652da37518db84baa6025b3347cd2158ef5e916.
BEFORE: 67c0fc0cdaf963b103518862dd7b68a9c758ecf2 (git merge-base origin/main HEAD).
Worktree: /home/ubuntu/wt/pr-22385. Machine: freestyle. Surface: web only.

## Verdict

Implementation: no defect found in full origin/main...HEAD inspection; original 13.5rem cap and workflow min(28rem,55dvh) cap retained. This is not visual approval. Earlier test results were supplied by the lead and were not independently rerun.
Evidence: MISSING / pending gate. Captured 0/20 required before-after pairs. No fixture seed or flow captures delivered. No evidence sheets or pixel diffs exist. Do not merge on this report.

## Hard prerequisite diagnostic

T3 Browser panel opened successfully. Real app dev server ran at local web port 5931, backend 13971 using isolated worktree .t3. A temporary, removed UL diagnostic on the real app document measured native scrollbar layout consumption. This was only a configuration probe, not a lineage fixture or component evidence.

| Probe state | offsetWidth | clientWidth | consumed gutter | scrollHeight / clientHeight |
|---|---:|---:|---:|---:|
| Short, product scrollbar CSS | 200 | 200 | 0px | 100 / 100 |
| Overflow, product scrollbar CSS | 200 | 200 | 0px | 600 / 100 |
| Overflow, explicit ::-webkit-scrollbar width:6px | 200 | 200 | 0px | 600 / 100 |
| Overflow, diagnostic scrollbar-gutter:stable | 200 | 194 | 6px | 600 / 100 |

Computed product pseudo-scrollbar width was 6px throughout. Auto gutter remained zero when overflow began, including the explicitly permitted rendering-only stylesheet. Thus the current Browser panel cannot establish the required classic baseline narrowing. The stable-gutter diagnostic changes its own geometry and must not be presented as successful reproduction. No width/padding simulation was attempted. Per the capture brief, verification stopped at this prerequisite rather than substituting overlay-only captures.

Environment: T3 collaborative Browser panel; Linux x86_64 Chromium UA Chrome/154.0.0.0; desktop UA, no device emulation; measured DPR 2; diagnostic viewport 1280×800 CSS px; root font 16px; CSS zoom 1. Browser font-scale settings were not independently inspected. Required 1440×900 and 390×844 light/dark captures were not taken.

## Unverified matrix

Each row below is missing all four combinations (1440×900 light/dark, 390×844 light/dark), for the same hard prerequisite above.

| Fixture | Pairs delivered / required | Status |
|---|---:|---|
| F1 short mixed lineage | 0 / 4 | unverified |
| F2a six of twenty | 0 / 4 | unverified |
| F2b overflowing pagination | 0 / 4 | unverified |
| F3a workflow collapsed | 0 / 4 | unverified |
| F3b workflow expanded | 0 / 4 | unverified |

What else changed: no before/after captures exist, so visible differences cannot be enumerated. Code predicts a reserved lane on short lists; that tradeoff remains visually unverified. No claim that nothing else changed is made.

## Reproducible configuration probe

Run through preview_evaluate on the real app document:

```js
(() => {
  const ul = document.createElement('ul');
  ul.style.cssText = 'width:200px;height:100px;overflow-y:auto;border:0;padding:0;position:fixed;left:0;top:0';
  document.body.append(ul);
  const measure = () => ({offsetWidth:ul.offsetWidth, clientWidth:ul.clientWidth, gutter:ul.offsetWidth-ul.clientWidth, scrollHeight:ul.scrollHeight, clientHeight:ul.clientHeight, scrollbarGutter:getComputedStyle(ul).scrollbarGutter, scrollbarWidth:getComputedStyle(ul,'::-webkit-scrollbar').width});
  ul.innerHTML = '<li style="height:32px">short</li>';
  const short = measure();
  ul.innerHTML = '<li style="height:600px">overflow</li>';
  const overflow = measure();
  const style = document.createElement('style');
  style.textContent = 'ul::-webkit-scrollbar{width:6px;height:6px}';
  document.head.append(style);
  const explicit = measure();
  ul.style.scrollbarGutter = 'stable';
  const stable = measure();
  ul.remove(); style.remove();
  return {short, overflow, explicit, stable};
})()
```

No source edits, checkout/reset/fetch, ops edits, ledger edits, pushes, comments, PR body updates or merges performed. Git worktree remains clean at AFTER SHA. Dev server stopped using retained session 10113 with Ctrl-C; both owned listening ports were confirmed closed. Ignored isolated .t3 remains available for continuation. Browser tab tab_1_de504ecd-cf66-4b37-8497-859ecf4162b4 remains available; it contains no seeded fixture. PR registered with the current T3 thread.

Next prerequisite: configure the required Browser panel runtime so auto overflow demonstrably consumes nonzero classic scrollbar width, then seed and capture the entire original matrix. No alternate browser was used.
