veza/.github/workflows
senke 68f8e9b501 feat(a11y): WCAG 2.1 AA axe-core scan in CI (v1.0.10 ops item 12)
Adds tests/e2e/24-axe-wcag.spec.ts — a Playwright spec running
@axe-core/playwright (already in deps) against home, login, register,
dashboard, discover, and search. The test fails on any "serious" or
"critical" axe violation at WCAG 2.1 AA conformance level ; "moderate"
and "minor" violations are logged for backlog visibility but don't
gate the build.

What this catches that 11-accessibility-ethics.spec.ts (heuristic
checks) misses :
- Color-contrast violations across the entire DOM
- ARIA role / state mismatches
- Form fields without programmatic labels
- Focus-trap errors in modals
- Heading-order regressions

Wiring :
- New @a11y test tag + npm script "e2e:a11y"
- .github/workflows/e2e.yml runs e2e:a11y after e2e:critical on
  every PR + push (~30s overhead).
- Toast portals excluded ([data-sonner-toaster], .toast-container)
  to avoid false positives on transient color-contrast.
- Failure prints rule ids + impact + node count so the cause is
  visible in the CI log without artifact retrieval.

Lighthouse/LHCI was previously removed (security audit A06) —
axe-core is the modern recommended replacement and is what the
WCAG 2.1 AA conformance ask actually needs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 23:57:29 +02:00
..
ci.yml refactor(web): zero out react-hooks/exhaustive-deps (49 → 0) 2026-05-01 04:00:46 +02:00
cleanup-failed.yml feat(ci): migrate workflows to .github/workflows for better compatibility 2026-05-01 00:15:59 +02:00
deploy.yml feat(ci): migrate workflows to .github/workflows for better compatibility 2026-05-01 00:15:59 +02:00
e2e.yml feat(a11y): WCAG 2.1 AA axe-core scan in CI (v1.0.10 ops item 12) 2026-05-04 23:57:29 +02:00
go-fuzz.yml fix(ci): migrate .github/workflows to self-hosted runner + gate heavy workflows 2026-05-01 00:08:38 +02:00
loadtest.yml fix(ci): migrate .github/workflows to self-hosted runner + gate heavy workflows 2026-05-01 00:08:38 +02:00
rollback.yml feat(ci): migrate workflows to .github/workflows for better compatibility 2026-05-01 00:15:59 +02:00
security-scan.yml fix(ci): migrate .github/workflows to self-hosted runner + gate heavy workflows 2026-05-01 00:08:38 +02:00
trivy-fs.yml fix(ci): migrate .github/workflows to self-hosted runner + gate heavy workflows 2026-05-01 00:08:38 +02:00