Skip to content

Fix @elastic/eui/icon-accessibility-rules lint violations across @elastic/ml-ui files#267698

Merged
alexwizp merged 9 commits into
mainfrom
copilot/fix-eslint-issues-accessibility-rules
May 6, 2026
Merged

Fix @elastic/eui/icon-accessibility-rules lint violations across @elastic/ml-ui files#267698
alexwizp merged 9 commits into
mainfrom
copilot/fix-eslint-issues-accessibility-rules

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 5, 2026

Resolves 74 ESLint @elastic/eui/icon-accessibility-rules violations across 47 files owned by @elastic/ml-ui.

Changes

  • Added aria-hidden={true} to decorative EuiIcon components (icons adjacent to text labels)
  • Added aria-label where icons convey meaning independently (e.g., status indicators)

Affected packages/plugins: @kbn/aiops-components, @kbn/file-upload, data_visualizer, aiops, ml

Example:

// Before
<EuiIcon type="checkCircleFill" color={euiTheme.colors.success} />

// After
<EuiIcon aria-hidden={true} type="checkCircleFill" color={euiTheme.colors.success} />

Checklist

  • Added label a11y:agent-pr
  • Fixed all 47 files listed in the issue

Copilot AI and others added 3 commits May 5, 2026 11:00
Add aria-hidden={true} to decorative EuiIcon components that appear next
to text labels or inside cards with titles, making them purely decorative
for screen readers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Add aria-hidden={true} to decorative EuiIcon components that appear
next to text or serve as visual markers. Add aria-label to the
standalone EuiIcon in job_message_icon.tsx that conveys status meaning
without accompanying text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
…gin (batch 3)

Add aria-hidden={true} to decorative EuiIcon components that appear
next to text in the ML plugin files.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix eslint violations for @elastic_eui_icon-accessibility-rules Fix @elastic/eui/icon-accessibility-rules lint violations across @elastic/ml-ui files May 5, 2026
Copilot AI requested a review from alexwizp May 5, 2026 11:16
@alexwizp alexwizp marked this pull request as ready for review May 5, 2026 11:17
@alexwizp alexwizp requested a review from a team as a code owner May 5, 2026 11:17
@alexwizp
Copy link
Copy Markdown
Contributor

alexwizp commented May 5, 2026

/ci

@infra-vault-gh-plugin-prod
Copy link
Copy Markdown

Pinging @elastic/kibana-accessibility (Project:Accessibility)

@alexwizp alexwizp added a11y:agent-pr PR has been created by the agent release_note:skip Skip the PR/issue when compiling release notes backport:version Backport to applied version labels labels May 5, 2026
Copy link
Copy Markdown
Contributor

@peteharverson peteharverson left a comment

Choose a reason for hiding this comment

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

LGTM (code review only).

@alexwizp
Copy link
Copy Markdown
Contributor

alexwizp commented May 5, 2026

@copilot resolve the merge conflicts in this pull request

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
@alexwizp
Copy link
Copy Markdown
Contributor

alexwizp commented May 5, 2026

@copilot resolve the merge conflicts in this pull request

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
auto-merge was automatically disabled May 5, 2026 18:06

Head branch was pushed to by a user without write access

Copy link
Copy Markdown
Contributor Author

Copilot AI commented May 5, 2026

@copilot resolve the merge conflicts in this pull request

Resolved in 4405423. The file x-pack/platform/plugins/shared/ml/public/application/components/multi_select_picker/multi_select_picker.tsx was deleted upstream in main, so I accepted the deletion.

Note: The CI failures in the previous build were all in unrelated platform/dashboard Scout tests ("Dashboard panel listing - renders panel groups and panel count"), not caused by our changes.

Copilot AI requested a review from alexwizp May 5, 2026 18:06
@alexwizp
Copy link
Copy Markdown
Contributor

alexwizp commented May 5, 2026

/ci

@alexwizp
Copy link
Copy Markdown
Contributor

alexwizp commented May 5, 2026

@elasticmachine run docs-build

@alexwizp
Copy link
Copy Markdown
Contributor

alexwizp commented May 6, 2026

/ci

@kibanamachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] FTR Configs #35 / Endpoint plugin @ess @serverless @skipInServerlessMKI Endpoint Scripts Library RBAC Delete API "before each" hook for "should error when user has no privileges"
  • [job] [logs] FTR Configs #62 / Serverless Common UI - Home Page Sample data in serverless "after all" hook for "Sample data loads"

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
aiops 526.0KB 526.1KB +85.0B
dataVisualizer 619.2KB 619.5KB +306.0B
esql 896.1KB 896.2KB +51.0B
ml 5.6MB 5.6MB +1.0KB
total +1.5KB

History

cc @alexwizp @Copilot

@alexwizp alexwizp merged commit f31bd6d into main May 6, 2026
30 checks passed
@alexwizp alexwizp deleted the copilot/fix-eslint-issues-accessibility-rules branch May 6, 2026 09:47
@kibanamachine
Copy link
Copy Markdown
Contributor

Starting backport for target branches: 9.3, 9.4

https://github.com/elastic/kibana/actions/runs/25428106677

@kibanamachine
Copy link
Copy Markdown
Contributor

💔 All backports failed

Status Branch Result
9.3 Backport failed because of merge conflicts
9.4 Backport failed because of merge conflicts

Manual backport

To create the backport manually run:

node scripts/backport --pr 267698

Questions ?

Please refer to the Backport tool documentation

@kibanamachine
Copy link
Copy Markdown
Contributor

Friendly reminder: Looks like this PR hasn’t been backported yet.
To create automatically backports add a backport:* label or prevent reminders by adding the backport:skip label.
You can also create backports manually by running node scripts/backport --pr 267698 locally
cc: @alexwizp

@alexwizp
Copy link
Copy Markdown
Contributor

alexwizp commented May 8, 2026

💚 All backports created successfully

Status Branch Result
9.4
9.3

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

alexwizp added a commit that referenced this pull request May 8, 2026
…oss `@elastic/ml-ui` files (#267698) (#268430)

# Backport

This will backport the following commits from `main` to `9.3`:
- [Fix `@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files
(#267698)](#267698)

<!--- Backport version: 11.0.2 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT
[{"author":{"name":"Copilot","email":"198982749+Copilot@users.noreply.github.com"},"sourceCommit":{"committedDate":"2026-05-06T09:47:06Z","message":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files (#267698)\n\nResolves 74 ESLint
`@elastic/eui/icon-accessibility-rules` violations\nacross 47 files
owned by `@elastic/ml-ui`.\n\n## Changes\n\n- Added `aria-hidden={true}`
to decorative `EuiIcon` components (icons\nadjacent to text labels)\n-
Added `aria-label` where icons convey meaning independently
(e.g.,\nstatus indicators)\n\nAffected packages/plugins:
`@kbn/aiops-components`, `@kbn/file-upload`,\n`data_visualizer`,
`aiops`, `ml`\n\n**Example:**\n```tsx\n// Before\n<EuiIcon
type=\"checkCircleFill\" color={euiTheme.colors.success} />\n\n//
After\n<EuiIcon aria-hidden={true} type=\"checkCircleFill\"
color={euiTheme.colors.success} />\n```\n\n## Checklist\n- [x] Added
label `a11y:agent-pr`\n- [x] Fixed all 47 files listed in the
issue\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov <alexwizp@gmail.com>\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f31bd6dd505e404abfbafbf64a79eac18f8c7896","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Project:Accessibility","release_note:skip","backport
missing","💝community","backport:version","v9.4.0","a11y:agent-pr","v9.5.0","v9.3.5"],"title":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui`
files","number":267698,"url":"https://github.com/elastic/kibana/pull/267698","mergeCommit":{"message":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files (#267698)\n\nResolves 74 ESLint
`@elastic/eui/icon-accessibility-rules` violations\nacross 47 files
owned by `@elastic/ml-ui`.\n\n## Changes\n\n- Added `aria-hidden={true}`
to decorative `EuiIcon` components (icons\nadjacent to text labels)\n-
Added `aria-label` where icons convey meaning independently
(e.g.,\nstatus indicators)\n\nAffected packages/plugins:
`@kbn/aiops-components`, `@kbn/file-upload`,\n`data_visualizer`,
`aiops`, `ml`\n\n**Example:**\n```tsx\n// Before\n<EuiIcon
type=\"checkCircleFill\" color={euiTheme.colors.success} />\n\n//
After\n<EuiIcon aria-hidden={true} type=\"checkCircleFill\"
color={euiTheme.colors.success} />\n```\n\n## Checklist\n- [x] Added
label `a11y:agent-pr`\n- [x] Fixed all 47 files listed in the
issue\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov <alexwizp@gmail.com>\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f31bd6dd505e404abfbafbf64a79eac18f8c7896"}},"sourceBranch":"main","suggestedTargetBranches":["9.4","9.3"],"targetPullRequestStates":[{"branch":"9.4","label":"v9.4.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/267698","number":267698,"mergeCommit":{"message":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files (#267698)\n\nResolves 74 ESLint
`@elastic/eui/icon-accessibility-rules` violations\nacross 47 files
owned by `@elastic/ml-ui`.\n\n## Changes\n\n- Added `aria-hidden={true}`
to decorative `EuiIcon` components (icons\nadjacent to text labels)\n-
Added `aria-label` where icons convey meaning independently
(e.g.,\nstatus indicators)\n\nAffected packages/plugins:
`@kbn/aiops-components`, `@kbn/file-upload`,\n`data_visualizer`,
`aiops`, `ml`\n\n**Example:**\n```tsx\n// Before\n<EuiIcon
type=\"checkCircleFill\" color={euiTheme.colors.success} />\n\n//
After\n<EuiIcon aria-hidden={true} type=\"checkCircleFill\"
color={euiTheme.colors.success} />\n```\n\n## Checklist\n- [x] Added
label `a11y:agent-pr`\n- [x] Fixed all 47 files listed in the
issue\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov <alexwizp@gmail.com>\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f31bd6dd505e404abfbafbf64a79eac18f8c7896"}},{"branch":"9.3","label":"v9.3.5","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
alexwizp added a commit that referenced this pull request May 8, 2026
…oss `@elastic/ml-ui` files (#267698) (#268429)

# Backport

This will backport the following commits from `main` to `9.4`:
- [Fix `@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files
(#267698)](#267698)

<!--- Backport version: 11.0.2 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT
[{"author":{"name":"Copilot","email":"198982749+Copilot@users.noreply.github.com"},"sourceCommit":{"committedDate":"2026-05-06T09:47:06Z","message":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files (#267698)\n\nResolves 74 ESLint
`@elastic/eui/icon-accessibility-rules` violations\nacross 47 files
owned by `@elastic/ml-ui`.\n\n## Changes\n\n- Added `aria-hidden={true}`
to decorative `EuiIcon` components (icons\nadjacent to text labels)\n-
Added `aria-label` where icons convey meaning independently
(e.g.,\nstatus indicators)\n\nAffected packages/plugins:
`@kbn/aiops-components`, `@kbn/file-upload`,\n`data_visualizer`,
`aiops`, `ml`\n\n**Example:**\n```tsx\n// Before\n<EuiIcon
type=\"checkCircleFill\" color={euiTheme.colors.success} />\n\n//
After\n<EuiIcon aria-hidden={true} type=\"checkCircleFill\"
color={euiTheme.colors.success} />\n```\n\n## Checklist\n- [x] Added
label `a11y:agent-pr`\n- [x] Fixed all 47 files listed in the
issue\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov <alexwizp@gmail.com>\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f31bd6dd505e404abfbafbf64a79eac18f8c7896","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Project:Accessibility","release_note:skip","backport
missing","💝community","backport:version","v9.4.0","a11y:agent-pr","v9.5.0","v9.3.5"],"title":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui`
files","number":267698,"url":"https://github.com/elastic/kibana/pull/267698","mergeCommit":{"message":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files (#267698)\n\nResolves 74 ESLint
`@elastic/eui/icon-accessibility-rules` violations\nacross 47 files
owned by `@elastic/ml-ui`.\n\n## Changes\n\n- Added `aria-hidden={true}`
to decorative `EuiIcon` components (icons\nadjacent to text labels)\n-
Added `aria-label` where icons convey meaning independently
(e.g.,\nstatus indicators)\n\nAffected packages/plugins:
`@kbn/aiops-components`, `@kbn/file-upload`,\n`data_visualizer`,
`aiops`, `ml`\n\n**Example:**\n```tsx\n// Before\n<EuiIcon
type=\"checkCircleFill\" color={euiTheme.colors.success} />\n\n//
After\n<EuiIcon aria-hidden={true} type=\"checkCircleFill\"
color={euiTheme.colors.success} />\n```\n\n## Checklist\n- [x] Added
label `a11y:agent-pr`\n- [x] Fixed all 47 files listed in the
issue\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov <alexwizp@gmail.com>\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f31bd6dd505e404abfbafbf64a79eac18f8c7896"}},"sourceBranch":"main","suggestedTargetBranches":["9.4","9.3"],"targetPullRequestStates":[{"branch":"9.4","label":"v9.4.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/267698","number":267698,"mergeCommit":{"message":"Fix
`@elastic/eui/icon-accessibility-rules` lint violations across
`@elastic/ml-ui` files (#267698)\n\nResolves 74 ESLint
`@elastic/eui/icon-accessibility-rules` violations\nacross 47 files
owned by `@elastic/ml-ui`.\n\n## Changes\n\n- Added `aria-hidden={true}`
to decorative `EuiIcon` components (icons\nadjacent to text labels)\n-
Added `aria-label` where icons convey meaning independently
(e.g.,\nstatus indicators)\n\nAffected packages/plugins:
`@kbn/aiops-components`, `@kbn/file-upload`,\n`data_visualizer`,
`aiops`, `ml`\n\n**Example:**\n```tsx\n// Before\n<EuiIcon
type=\"checkCircleFill\" color={euiTheme.colors.success} />\n\n//
After\n<EuiIcon aria-hidden={true} type=\"checkCircleFill\"
color={euiTheme.colors.success} />\n```\n\n## Checklist\n- [x] Added
label `a11y:agent-pr`\n- [x] Fixed all 47 files listed in the
issue\n\n---------\n\nCo-authored-by: copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov <alexwizp@gmail.com>\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f31bd6dd505e404abfbafbf64a79eac18f8c7896"}},{"branch":"9.3","label":"v9.3.5","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
@kibanamachine kibanamachine added v9.4.1 and removed backport missing Added to PRs automatically when the are determined to be missing a backport. labels May 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a11y:agent-pr PR has been created by the agent backport:version Backport to applied version labels 💝community Project:Accessibility release_note:skip Skip the PR/issue when compiling release notes v9.3.5 v9.4.0 v9.4.1 v9.5.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[eslint-issue-reporter] Fix @elastic_eui_icon-accessibility-rules lint violations across @elastic_ml-ui files

4 participants