dorfteich/apps/web
Claude Opus 5 b65339ae13 #301: the overflow was an escaping visually-hidden heading
Found by standing up the local stack instead of guessing through CI.
The DOM tree under `.app-body` shows it in one line:

  span.visually-hidden rect=[342,343] pos=absolute

Its right edge is 343, and `.app-body` reports scrollWidth 343 against a
320 client. The table's actions column carries a `.visually-hidden`
heading, which is `position: absolute`. `.table-scroll` was `position:
static`, so it was NOT that span's containing block — the span escaped
the scroller's clipping, kept its static position out at the table's
right edge, and pushed the page.

`position: relative` on the wrapper makes it the containing block, and
the span is clipped like the rest of the table.

This is one cause behind both numbers: 23px locally, matching the
original report, and 417px in CI, where different font metrics make the
table wider and carry the span further out. Chasing them as separate
problems is what cost three CI rounds.

Verified locally against a real stack: the reflow guard passes and the
whole a11y pack is green, 11 tests in both colour schemes.
2026-08-01 12:31:30 +02:00
..
e2e #301: dump raw box metrics from the reflow guard 2026-08-01 12:31:30 +02:00
public #180: dark mode — Light/Dark/System setting with token-based dark palette 2026-07-28 20:40:47 +02:00
src #301: the overflow was an escaping visually-hidden heading 2026-08-01 12:31:30 +02:00
Dockerfile #236: pin the Node version 2026-07-31 04:14:55 +02:00
index.html #180: dark mode — Light/Dark/System setting with token-based dark palette 2026-07-28 20:40:47 +02:00
nginx.conf CSP: data:-Fonts erlauben (eingebettete Fonts in Excalidraw-SVGs) 2026-07-19 22:27:17 +02:00
package.json #171: A11y-Tooling — axe-Smoke-Pack in CI 2026-07-21 15:24:56 +02:00
playwright.config.ts Add CD workflow: build-push, deploy Test, smoke suite, promote Int 2026-07-04 19:57:16 +02:00
tsconfig.json Add React SPA shell with routing, layout, and API status 2026-07-04 19:19:12 +02:00
vite.config.ts Add offline editing: local persistence, PWA shell, offline resolution (#38) 2026-07-08 22:08:55 +02:00
vitest.config.ts Keep Playwright specs out of Vitest collection 2026-07-05 00:28:28 +02:00