fix(a11y): restore the main landmark (A5) - #40
Conversation
baseline.test.mjs uses node:test in its own package; vitest was picking it up from the repo root and failing the app suite. Co-authored-by: Cursor <cursoragent@cursor.com>
role=\"log\" on <main> overrode the landmark and triggered axe aria-allowed-role and landmark-one-main. Live-region semantics move to a dedicated child in the A1 foundation PR. Co-authored-by: Cursor <cursoragent@cursor.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughThe chat history Possibly related PRs
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@vitest.config.js`:
- Around line 1-6: Update the Vitest configuration’s test.exclude entry in
defineConfig to preserve the framework defaults by spreading
configDefaults.exclude before adding the a11y-audits exclusion, ensuring the
default .git and node_modules patterns remain active.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: f2852deb-e14b-4caf-b15b-097a2b4d4ab2
📒 Files selected for processing (3)
a11y-audits/tools/baseline.jsonpublic/index.htmlvitest.config.js
💤 Files with no reviewable changes (1)
- a11y-audits/tools/baseline.json
Spread configDefaults.exclude so .git and node_modules patterns stay active. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed review: |
Closes #39.
Finding
A5 —
role="log"on<main>removes the main landmark (serious; WCAG 1.3.1, 2.4.1).Change
Strip
role="log"andaria-live="polite"from#chatHistoryso<main>is a landmark again. The A1+A2+A11 foundation PR will add a dedicated status live region; this PR does not introduce a temporaryrole="log"wrapper.Also excludes
a11y-audits/**from vitest discovery —#38landed anode:testfile that the root suite was picking up.Baseline
Shrink-only axe baseline drops
aria-allowed-roleandlandmark-one-mainin both themes. Remainingregionis the sidebar resizer (out of scope here).Verification
npm test— 173 passed | 2 expected failA11Y_CI=1axe gate — passed against updated baseline (light + dark)aria-allowed-role/landmark-one-mainon empty and settings statesReference
a11y-audits/8-5-26/audit.md→ A5a11y-audits/8-5-26/resolution-plan.md→ Wave 1Made with Cursor