Skip to content

Commit d2e7dfc

Browse files
committed
Accessibility 100 across both themes and both viewports
Two contrast failures, both from measuring a colour against the page ground rather than the surface it actually sits on. The dark --accent-ink (#cc99ff) cleared 4.5:1 on #333333 but only reached 3.94:1 on the accent wash that a pressed or hovered control sits on — which is where the theme toggle lives. Lifted to #d9b3ff within the same hue: 7.1:1 on the page, 4.9:1 on the wash. Adds tests/keyboard.e2e.mjs: a scripted keyboard-only walkthrough that passes 10 checks with no pointer. Skip link to main; theme toggle as a real button flipping aria-pressed; Ctrl+K opening search with focus moving in and returning to the opener on Escape; search navigating to a provision; the mobile contents sheet opening, trapping focus through a full 25-tab lap and returning it on Escape; copy-link naming and its polite live region; one main and one h1 per page type; a cold load of #art-11-s-2 landing clear of the sticky header; a legacy #article5 link rewriting itself to #art-5; and zero console errors across six page types. puppeteer-core is pinned to 25.7.0 — 23.x pulls a vulnerable extract-zip through @puppeteer/browsers (3 high advisories) for a browser downloader this never uses. 25.7.0 reports 0 vulnerabilities and, despite declaring Node >=22.12, imports and drives Chrome correctly on Node 18, verified rather than assumed. e2e is a separate script, not part of npm test, and skips cleanly where no Chrome exists. Lighthouse accessibility is now 100 in all four combinations of desktop/mobile and light/dark.
1 parent cae3709 commit d2e7dfc

4 files changed

Lines changed: 564 additions & 6 deletions

File tree

package-lock.json

Lines changed: 318 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)