chore(site): enable oxlint role-supports-aria-props rule - #29192
Merged
jeremyruppel merged 2 commits intoSep 10, 2026
Merged
Conversation
…tton reset classes
jeremyruppel
marked this pull request as ready for review
September 10, 2026 20:03
jeremyruppel
added this pull request to stack #29193
September 10, 2026 20:07
aqandrew
approved these changes
Sep 10, 2026
aqandrew
left a comment
Contributor
There was a problem hiding this comment.
Nice! I fully support turning AgentLatency's popover trigger into a focusable button 🙌🏽
jeremyruppel
deleted the
jeremyruppel/enable-role-supports-aria-props
branch
September 10, 2026 21:30
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Enables the
role-supports-aria-propsoxlint rule (jsx-a11y), moving it out of the migration backlog and setting it toerror.Stacked on top of #29191. Review that PR first; the base of this PR is its branch.
Fixes for the two violations the rule surfaced
Autocomplete.tsx(select-only trigger button): removedaria-invalidfrom the<button>.aria-invalidis not exposed by the implicitbuttonrole, so it had no effect for assistive tech. The error message linkage viaaria-describedby(a global attribute) is kept. The only consumer that sets an invalid state (ModelIdentifierField) uses theinlineSearchvariant, which renders an<input role="combobox">that still keepsaria-invalid(valid there).AgentLatency.tsx(latency popover trigger): the trigger was a<span role="presentation" aria-label="latency">;presentationdoes not supportaria-label, and a presentational role on an interactive trigger is wrong. Converted it to a real<button>with reset styling so it stays visually identical (inline colored text, no button chrome) while being a focusable, correctly-labeled control.Verification
oxlint --deny-warnings: 0 warnings, 0 errors.biome lint --error-on-warningson the changed files: clean.tsc -p .: clean.components/AgentRow --example: latency renders as inline colored text (no boxed button) and clicking it still opens the "Latency" popover.This PR was generated by Coder Agents on behalf of @jeremyruppel.