Skip to content

[Search Inference Endpoints] Announce preconfigured endpoint tooltip content to screen readers in model flyout#267618

Merged
bhavyarm merged 8 commits into
mainfrom
copilot/fix-tooltip-announcement-screen-readers
May 8, 2026
Merged

[Search Inference Endpoints] Announce preconfigured endpoint tooltip content to screen readers in model flyout#267618
bhavyarm merged 8 commits into
mainfrom
copilot/fix-tooltip-announcement-screen-readers

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 4, 2026

On the Elastic Inference Service model details flyout, the preconfigured-endpoint lock tooltip was visual-only and not exposed to assistive tech. This change adds an explicit programmatic relationship so keyboard/screen-reader users receive the same contextual message.

  • Accessibility wiring for preconfigured lock control

    • In model_endpoint_row.tsx, the preconfigured tooltip text is rendered in a screen-reader-only node with a generated id.
    • The focusable tooltip trigger (span wrapper) now carries:
      • aria-label="Preconfigured endpoint"
      • aria-describedby=<generated tooltip description id>
    • Tooltip content and label strings are centralized in local constants to avoid divergence.
  • Behavior preserved for existing actions

    • View/copy/delete control behavior is unchanged.
    • The change is scoped to the preconfigured lock path only.
  • Unit coverage for the a11y contract

    • Added a focused assertion in model_endpoint_row.test.tsx verifying the preconfigured trigger references the tooltip description via aria-describedby.
<EuiScreenReaderOnly>
  <span id={preconfiguredTooltipDescriptionId}>{preconfiguredTooltipContent}</span>
</EuiScreenReaderOnly>

<EuiToolTip content={preconfiguredTooltipContent}>
  <span
    tabIndex={0}
    aria-label={preconfiguredEndpointAriaLabel}
    aria-describedby={preconfiguredTooltipDescriptionId}
  >
    <EuiButtonIcon iconType="lock" size="xs" isDisabled />
  </span>
</EuiToolTip>

…creen readers

Agent-Logs-Url: https://github.com/elastic/kibana/sessions/ecd11930-1055-4963-97e0-4fca0c6e13a5

Co-authored-by: bhavyarm <7074629+bhavyarm@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix tooltip content announcement for screen reader users [Search Inference Endpoints] Announce preconfigured endpoint tooltip content to screen readers in model flyout May 4, 2026
Copilot AI requested a review from bhavyarm May 4, 2026 21:48
@bhavyarm
Copy link
Copy Markdown
Contributor

bhavyarm commented May 5, 2026

/ci

@bhavyarm
Copy link
Copy Markdown
Contributor

bhavyarm commented May 5, 2026

@elasticmachine run docs-build

@bhavyarm
Copy link
Copy Markdown
Contributor

bhavyarm commented May 5, 2026

/ci

@bhavyarm
Copy link
Copy Markdown
Contributor

bhavyarm commented May 5, 2026

@elasticmachine run docs-build

@bhavyarm bhavyarm marked this pull request as ready for review May 5, 2026 21:18
@bhavyarm bhavyarm requested a review from a team as a code owner May 5, 2026 21:18
@bhavyarm bhavyarm added release_note:skip Skip the PR/issue when compiling release notes a11y:agent-pr PR has been created by the agent backport:version Backport to applied version labels labels May 6, 2026
@bhavyarm
Copy link
Copy Markdown
Contributor

bhavyarm commented May 7, 2026

@elasticmachine run docs-build

@bhavyarm
Copy link
Copy Markdown
Contributor

bhavyarm commented May 7, 2026

/ci

@bhavyarm bhavyarm added the v9.4.1 label May 7, 2026
@kibanamachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] Scout Lane #25 - serverless-observability_complete / default / local-serverless-observability_complete - Serverless Observability Navigation - Complete tier body - clicking body nav items sets the active link, updates breadcrumbs, and navigates
  • [job] [logs] Scout Lane #8 - stateful-classic / default / local-stateful-classic - APM integration not installed but setup completed - Admin user
  • [job] [logs] Scout Lane #8 - stateful-classic / default / local-stateful-classic - Collector integration is not installed - collector integration missing
  • [job] [logs] Scout Lane #8 - stateful-classic / default / local-stateful-classic - Collector integration is not installed - Symbolizer integration is not installed
  • [job] [logs] Scout Lane #8 - stateful-classic / default / local-stateful-classic - Observability Landing Page (discover.isEsqlDefault enabled) - redirects to onboarding when no logs data exists
  • [job] [logs] Scout Lane #8 - stateful-classic / default / local-stateful-classic - Profiling is setup and data is loaded - Admin user
  • [job] [logs] Scout Lane #8 - stateful-classic / default / local-stateful-classic - Profiling is setup and data is loaded - Viewer user

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
searchInferenceEndpoints 222.6KB 222.8KB +207.0B

History

cc @bhavyarm @Copilot

@bhavyarm bhavyarm merged commit bc2c3bd into main May 8, 2026
78 checks passed
@bhavyarm bhavyarm deleted the copilot/fix-tooltip-announcement-screen-readers branch May 8, 2026 21:19
@kibanamachine
Copy link
Copy Markdown
Contributor

Starting backport for target branches: 9.3, 9.4

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

@kibanamachine
Copy link
Copy Markdown
Contributor

💔 Some backports could not be created

Status Branch Result
9.3 Backport failed because of merge conflicts

You might need to backport the following PRs to 9.3:
- [Security] Add maxLength to login fields (#266186)
- [Cases]Fix All Cases view phrase search (#266827)
- test: include noDataViewsPrompt in Observability Scout pageOrNoData (#268486)
- Add aria-hidden={true} to decorative EuiIcon instances (#268367)
- [APM][Scout] Stabilize service map embeddable test panel time range (#268459)
- test: stabilize profiling Scout has_setup_with_integrations API tests (#268361)
- [scout] migrate Lens API tests (#267993)
9.4

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

Manual backport

To create the backport manually run:

node scripts/backport --pr 267618

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request May 8, 2026
…oltip content to screen readers in model flyout (#267618) (#268554)

# Backport

This will backport the following commits from `main` to `9.4`:
- [[Search Inference Endpoints] Announce preconfigured endpoint tooltip
content to screen readers in model flyout
(#267618)](#267618)

<!--- Backport version: 9.6.6 -->

### 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-08T21:19:21Z","message":"[Search
Inference Endpoints] Announce preconfigured endpoint tooltip content to
screen readers in model flyout
(#267618)","sha":"bc2c3bdb541553f8bb16a4e7a85cb850195adc4d","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","💝community","backport:version","a11y:agent-pr","v9.5.0","v9.3.5","v9.4.1"],"title":"[Search
Inference Endpoints] Announce preconfigured endpoint tooltip content to
screen readers in model
flyout","number":267618,"url":"https://github.com/elastic/kibana/pull/267618","mergeCommit":{"message":"[Search
Inference Endpoints] Announce preconfigured endpoint tooltip content to
screen readers in model flyout
(#267618)","sha":"bc2c3bdb541553f8bb16a4e7a85cb850195adc4d"}},"sourceBranch":"main","suggestedTargetBranches":["9.3","9.4"],"targetPullRequestStates":[{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/267618","number":267618,"mergeCommit":{"message":"[Search
Inference Endpoints] Announce preconfigured endpoint tooltip content to
screen readers in model flyout
(#267618)","sha":"bc2c3bdb541553f8bb16a4e7a85cb850195adc4d"}},{"branch":"9.3","label":"v9.3.5","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"9.4","label":"v9.4.1","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
clintandrewhall pushed a commit that referenced this pull request May 12, 2026
@kibanamachine kibanamachine added v9.4.2 Version 9.4.2 and removed v9.4.1 labels May 13, 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 release_note:skip Skip the PR/issue when compiling release notes v9.3.5 v9.4.2 Version 9.4.2 v9.5.0

Projects

None yet

4 participants