🐛 Fix DOM nesting and accessibility violations (Auto-QA)#3908
🐛 Fix DOM nesting and accessibility violations (Auto-QA)#3908clubanderson merged 2 commits intomainfrom
Conversation
✅ Deploy Preview for kubestellarconsole ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
👋 Hey @Copilot — thanks for opening this PR!
This is an automated message. |
❌ PR Title Verification FailedYour PR title does not follow the required format. Current title: Required FormatPR titles must start with one of these emoji prefixes:
How to FixEdit your PR title to start with the appropriate emoji. For example:
You can edit the title by clicking the Edit button next to your PR title. This comment was automatically posted by the PR Title Verifier workflow. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
ba2b833 to
0b257d8
Compare
0b257d8 to
5dc5da0
Compare
- Replace block elements (<p>, <div>) inside <button> with <span> elements
in AlertRuleEditor.tsx and Deploy.tsx to satisfy HTML phrasing-content model
- Remove redundant onClick={e => e.stopPropagation()} from ClusterGrid.tsx
wrapper div (child buttons already handle stopPropagation)
- Keep role="presentation" on non-interactive wrapper divs
- Keep role="dialog", aria-modal, and aria-labelledby on modal dialogs
Signed-off-by: Andrew Anderson <andy@clubanderson.com>
…yloadCard Complete the accessibility fixes described in the PR: add aria-hidden="true" to click-outside backdrop overlays in ClusterAssignmentPanel.tsx and PayloadCard.tsx to prevent screen readers from announcing non-interactive overlay elements. Signed-off-by: Andrew Anderson <andy@clubanderson.com>
9c0dddb to
74b14a2
Compare
|
Thank you for your contribution! Your PR has been merged. Check out what's new:
Stay connected: Slack #kubestellar-dev | Multi-Cluster Survey |
Auto-QA detected several HTML content-model violations and missing accessibility attributes across the UI. These cause React DOM nesting warnings and screen-reader/keyboard-navigation issues.
📝 Summary of Changes
Fixes block elements inside
<button>phrasing-content model, removes unannotated clickable<div>s, and marks backdrop overlays asaria-hidden.Changes Made
AlertRuleEditor.tsx— Replace<p>and<div>block elements inside<button>(condition-type selectors and AI-diagnosis toggle) with<span className="block …">to satisfy the HTML phrasing-content modelDeploy.tsx— Same<div>→<span className="block">fix inside group-picker buttons; addaria-hidden="true"to modal backdrop; addrole="presentation"to stop-propagation modal containerClusterGrid.tsx— RemoveonClick={e => e.stopPropagation()}from non-interactive wrapper<div>(child buttons already calle.stopPropagation()inhandleAction); addrole="presentation"ClusterAssignmentPanel.tsx— Addaria-hidden="true"to click-outside backdrop overlayPayloadCard.tsx— Addaria-hidden="true"to click-outside backdrop overlayPattern fixed in
AlertRuleEditorandDeploy:Checklist
git commit -s)Screenshots or Logs (if applicable)
N/A — structural/accessibility fixes with no visual change.
👀 Reviewer Notes
The false-positive violations (Tour, Onboarding, CardHistory, PageErrorBoundary, BlueprintDefs, FlightPlanBlueprint, etc.) were confirmed to have correct DOM structure; only the five files listed above contained genuine violations.
📱 Kick off Copilot coding agent tasks wherever you are with GitHub Mobile, available on iOS and Android.