Skip to content

[Fix] Automation edit actions are indistinguishable in assistive navigation - #3652

Open
roomote-roomote[bot] wants to merge 1 commit into
developfrom
fix/settings-edit-action-names-0skzokh2jrws0
Open

roomote-roomote[bot] wants to merge 1 commit into
developfrom
fix/settings-edit-action-names-0skzokh2jrws0

Conversation

@roomote-roomote

@roomote-roomote roomote-roomote Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

​Opened on behalf of @daniel-lxs. Follow up by mentioning @roomote-roomote, in the web UI, or in Telegram.

Related issue

Internal accessibility work; no separate issue.

Why this PR exists

  • A maintainer explicitly invited this PR in the linked issue or discussion
  • I am a maintainer / this is internal Roomote work

What changed

The custom automation dialog exposed five indistinguishable “Edit” buttons to assistive navigation. Name each target: Edit Schedule, Edit Priority, Edit Environment, Edit Model and Edit Destination. Default shared setting-summary actions derive the name from their existing row label, so built-in schedule/webhook and scheduling-timezone actions gain the same context. Explicit action labels and custom action slots retain their current contract.

Two accessible-name attributes and existing consumer-test selector updates. Visible Edit copy stays compact; no new UI, state, dependency or persistence behavior. This lets users select the intended setting by its accessible name.

How it was tested

  • Current develop fb5e231d: actual mobile New custom automation accessibility snapshot and DOM show five bare Edit actions. On the shipped tree each has its setting name; native desktop1440×1000 Enter on Edit Priority opens Priority, mobile390×844 Enter on Edit Model opens Models, and Escape restores focus to Edit Model with unsaved Name/Prompt retained.
  • Actual mobile built-in Code Quality Auditor: Enter on Edit Schedule opens its correct selector, still Off. No automation was created, run or saved; no external message was sent.
  • 157 existing settings/automation consumer tests pass; web fast types and whitespace checks pass. Actual commit/pre-push oxlint, residual ESLint, package fast types and Knip pass. Full local test suite not run.
  • Three final screenshots opened and visually inspected, then independently checked; compact hierarchy, field/footer containment and ordinary copy accepted. Complete committed patch at 7b2f63bc5872bd6decb1baff153fbd9599a48fc6 is byte-identical to the proof snapshot. Screenshots prove layout only; native accessibility snapshots and interactions establish names/activation. No real screen-reader/device or live automation-execution claim.
  • Exact-head hosted CI passes/expected skip and automated review is clean with zero findings/threads. Open, non-draft and mergeable; normal human review remains required.

Screenshots

Genuine authenticated local app and unsaved synthetic draft; no response/DOM mocks or temporary source changes. These frames do not show accessible names or certify persistence.

Desktop custom automation retains compact Edit controls

Mobile custom automation with all summary rows and footer contained

Built-in schedule selector after actual keyboard activation

Related PRs

  • #3651: independent pending skill-save draft protection from this task.
  • #3655: independent on-demand custom MCP connection tests from this task.

Checklist

  • The PR title follows the repo convention: [Fix], [Feat], [Improve], [Refactor], [Docs], or [Chore] followed by a user-facing description
  • This PR is small and scoped to one change
  • pnpm lint and pnpm check-types pass locally — normal broad fast equivalents and actual hooks passed
  • I added tests or included a clear manual validation note above
  • I removed secrets, tokens, private keys, and customer data from code, logs, and screenshots
  • If this change should appear in the changelog, I ran pnpm changeset — accessible-name consistency; no changeset

@roomote-community

roomote-community Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

No code issues found. See session

Reviewed all five changed files, shared summary-row consumers, and desktop/mobile model-trigger composition. The contextual names preserve visible button text, explicit action labels, and custom action slots. CI lint and type checks passed; tests, Docker build, and JavaScript/TypeScript CodeQL were still running when checked. No local validation suites were run.

Reviewed 7b2f63b

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant