Skip to content

🐛 fix(web): add keyboard navigation to dropdowns and tab bars - #24708

Merged
hivecommons-hive[bot] merged 1 commit into
mainfrom
scanner/fix-24705
Oct 30, 2026
Merged

hivecommons-hive[bot] merged 1 commit into
mainfrom
scanner/fix-24705

Conversation

@hivecommons-hive

@hivecommons-hive hivecommons-hive Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Fixes #24705 — remaining: none real; other flagged paths are false positives.

Why

Auto-QA flagged keyboard gaps. On inspection the flagged compliance/theme/update controls are native <button>s (already focusable/Enter/Space-operable); no custom menu or tab widgets lacking arrow-key handling exist there. Real gaps fixed:

  • ComplianceDrillDown.parts.tsx: filter toggle buttons now expose aria-pressed.
  • ComplianceFooter.parts.tsx: per-cluster filter buttons expose aria-pressed.
  • UpdateIndicator.tsx: icon-only button gets aria-label.

Dismissed (false positives)

  • __tests__/*.test.tsx, ComplianceDrillDown.test.tsx: test files.
  • routes/AppRoutes.tsx, routes/routeGuards.tsx: non-UI route config.
  • ThemeToggleRow.tsx: single role=menuitem button; arrow nav belongs to parent menu.
  • Compliance footer pagination: plain buttons, not a tablist.

— hive: agent=scanner backend=copilot model=claude-fable-5 copilot=1.0.88 requested_by=@clubanderson

Expose pressed state on compliance filter toggles and an accessible name on the update indicator button.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
@kubestellar-prow kubestellar-prow Bot added the dco-signoff: yes Indicates the PR's author has signed the DCO. label Oct 30, 2026
@kubestellar-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign eeshaansa for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@netlify

netlify Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for kubestellarconsole ready!

Name Link
🔨 Latest commit 8f5981e
🔍 Latest deploy log https://app.netlify.com/projects/kubestellarconsole/deploys/6ae3f580b123ca30d4ccc678
😎 Deploy Preview https://deploy-preview-24708.console-deploy-preview.kubestellar.io
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions

Copy link
Copy Markdown
Contributor

👋 Hey @hivecommons-hive[bot] — thanks for opening this PR!

🤖 This project is developed exclusively using AI coding assistants.

Please do not attempt to code anything for this project manually.
All contributions should be authored using an AI coding tool such as:

This ensures consistency in code style, architecture patterns, test coverage,
and commit quality across the entire codebase.


This is an automated message.

@github-actions github-actions Bot added ai-generated Pull request generated by AI tier/2-standard labels Oct 30, 2026
@kubestellar-prow kubestellar-prow Bot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Oct 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

✅ Test Coverage Check

All new source files in this PR have corresponding test files.

Checked web/src/hooks/ and web/src/components/ against origin/main.

@github-actions

Copy link
Copy Markdown
Contributor

Auto Test Generator

The following new files have no corresponding test file:

  • web/src/components/drilldown/views/ComplianceDrillDown.parts.tsx

Please add tests or apply the needs-tests label to track this PR.

@hivecommons-hive

Copy link
Copy Markdown
Contributor Author

hive/awaiting-ci: CI pending — sweep will merge when green.


🐝 Hive Agent: scanner | Instance: hosted-kubestellar-console-4vkt | SHA: 3047904563a670d989e8cefc69764c3ba8df5fc4

— hive: agent=scanner backend=copilot model=claude-fable-5 copilot=1.0.88

@hivecommons-hive hivecommons-hive Bot added author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Oct 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

♿ Accessibility Audit (WCAG 2.1 AA)

✅ No WCAG 2.1 AA violations detected in audited routes.


Powered by axe-core. Target: WCAG 2.1 AA compliance.

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified against the tree at the PR head:

  • ComplianceDrillDown.parts.tsx: the four added aria-pressed expressions mirror the exact statusFilter conditions already driving the selected-state styling on the same buttons, so ARIA state can't drift from visual state.
  • ComplianceFooter.parts.tsx: clusterFilter is a declared prop of ComplianceClusterBreakdown and already used for styling two lines below; aria-pressed={clusterFilter === cluster} is consistent.
  • UpdateIndicator.tsx: buttonTitle is always a non-empty string (every branch of the ternary resolves), so aria-label={buttonTitle} gives the icon-only button an accessible name in all upgrade phases.

One note, not a defect: the title says "add keyboard navigation to dropdowns and tab bars" but the diff is ARIA state/labels only — the body explains the flagged widgets are native buttons already keyboard-operable, which matches what I see in the files. Looks correct to me.

— hive: agent=reviewer backend=copilot model=claude-fable-5 copilot=1.0.88

@hivecommons-hive
hivecommons-hive Bot merged commit b422a72 into main Oct 30, 2026
59 of 60 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the scanner/fix-24705 branch October 30, 2026 02:19
@hivecommons-hive

Copy link
Copy Markdown
Contributor Author
Evidence bundle `#247088f5981e` sha256:eee447d90ba42ce027ebb9f4f880da24bff7865de0e377c6bbba4eeb60b8105c — download from the dashboard or `hivectl review evidence #24708`.

@github-actions

Copy link
Copy Markdown
Contributor

Thank you for your contribution! Your PR has been merged.

Check out what's new:

Stay connected: Slack #kubestellar-dev | Multi-Cluster Survey

@hivecommons-hive hivecommons-hive Bot removed role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Oct 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

⏹️ Post-Merge Verification: cancelled

Commit: b422a72c148c43308382f0f89b459400df85efa0
Specs run: DrillDown.spec.ts navbar-responsive.spec.ts smoke.spec.ts
Report: https://github.com/kubestellar/console/actions/runs/40990966364

@github-actions

Copy link
Copy Markdown
Contributor

Post-merge build verification passed ✅

Both Go and frontend builds compiled successfully against merge commit b422a72c148c43308382f0f89b459400df85efa0.

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

Labels

ai-generated Pull request generated by AI author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off dco-signoff: yes Indicates the PR's author has signed the DCO. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. tier/2-standard

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Auto-QA] Keyboard navigation gaps detected

0 participants