Skip to content

a11y(batch): CertSwitcher aria-hidden + design-token contrast verification - #228

Open
nastaso wants to merge 1 commit into
mainfrom
fix/a11y-batch
Open

a11y(batch): CertSwitcher aria-hidden + design-token contrast verification#228
nastaso wants to merge 1 commit into
mainfrom
fix/a11y-batch

Conversation

@nastaso

@nastaso nastaso commented Aug 5, 2026

Copy link
Copy Markdown
Owner

What does this PR do?

Closes #95, closes #23.

#95 - src/components/CertSwitcher.tsx:209: adds aria-hidden="true" to the active-item <Check> icon. The active state is already conveyed by aria-current="true" on the parent button, so the icon carried no independent information for screen readers. One line, matches the issue exactly, no visual change.

#23 - verification only, per the issue's own scope ("do not change token values in this issue"). Independently measured every WCAG contrast claim in src/index.css's light and dark token blocks using the standard WCAG relative-luminance formula (implemented directly, no dependency - validated against the black/white=21:1 and #767676-on-white=4.54:1 reference points before trusting it on the real tokens). Full table, codex-cross-checked (independent from-scratch reimplementation, not given my code): .kiro/cloudcertprep/A11Y-BATCH-2026-08-05.md.

Result: every documented claim holds, no token fails AA (4.5:1) in its documented usage. No token value changed - this PR is code (#95) + a verification doc (#23), nothing else.

Testing

  • npm run check: 0 errors, 0 warnings, 300/300 tests pass.
  • No visual change (#95 is aria-hidden only, #23 changed no CSS).

Checklist

  • npm run lint and npm run test pass (via npm run check)
  • No visual/behavioral change
  • No token values changed (#23 is verification-only per its own scope)
  • No new dependencies

The active state is already conveyed by aria-current="true" on the parent
button, so the check mark carries no independent information for
screen-reader users.

Closes #95.
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying cloudcertprep with  Cloudflare Pages  Cloudflare Pages

Latest commit: 79ae332
Status: ✅  Deploy successful!
Preview URL: https://e74d7348.cloudcertprep.pages.dev
Branch Preview URL: https://fix-a11y-batch.cloudcertprep.pages.dev

View logs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

1 participant