Skip to content

a11y: ai-action-confirmation — all user-facing strings hardcoded English; no next-intl #1202

@claude

Description

@claude

Summary

web/src/components/ai-action-confirmation.tsx has zero use of useTranslations. All user-facing strings — including button labels, status text, and descriptions — are hardcoded English literals. This file is fully outside the project's i18n pattern.

Location

web/src/components/ai-action-confirmation.tsx

Hardcoded strings (partial list):

  • Button labels: "Deny" (~line 228), "Allow" (~line 237), "Working…" (~line 241), "Done" (~line 249), "Denied" (~line 255)
  • Action icons (<Download>, <Sliders>, etc.) rendered without aria-hidden="true" — screen readers may announce icon titles

No useTranslations import in the file.

WCAG Criteria

  • Project requirement: ALL user-facing strings must route through next-intl
  • 4.1.2 Name, Role, Value (Level AA): accessible names must be locale-aware

Expected Fix

  1. Add useTranslations("aiActionConfirmation") hook
  2. Replace all hardcoded button labels and status text with t("key") calls
  3. Add aria-hidden="true" to all decorative ActionIcon icons
  4. Add keys to web/messages/en.json under "aiActionConfirmation"

Severity

B — Accessibility defect / i18n violation

🤖 Filed by automated a11y audit (round 1)

Metadata

Metadata

Assignees

No one assigned

    Labels

    a11yAccessibility (WCAG) issuesa11y-auditFiled by automated accessibility auditclaude-fixRun the Claude issue-triage workflow on this issuefrontend

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions