Skip to content

i18n: localize remaining UI strings and guard JSX literals - #664

Merged
matteius merged 2 commits into
mainfrom
agent/issue-655-i18n-literals
Oct 19, 2026
Merged

matteius merged 2 commits into
mainfrom
agent/issue-655-i18n-literals

Conversation

@matteius

Copy link
Copy Markdown
Contributor

Summary

  • Move remaining visible strings in recording, timeline, batch action, and related UI surfaces to English locale keys, reusing existing keys where available.
  • Format calendar dates, month names, and weekday names with Intl.DateTimeFormat and the active locale.
  • Add a component JSX literal guard to ESLint, with a counted baseline for technical labels and examples, plus a test that verifies static translation keys exist in en.json.
  • Correct detection-zone error translation calls and localize recording API notifications.

Validation

  • cd web && npm run build — passed.
  • cd web && npm run lint — passed with 0 errors (901 warnings).
  • cd web && npm test -- --runInBand — 397 tests passed.
  • no-undef on 29 touched web source files — 0 undefined names.
  • Headless Chrome with es showed Spanish calendar dates and weekdays and English fallback text for newly added dialog keys, without raw translation keys.

Closes #655

@codecov

codecov Bot commented Oct 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@matteius
matteius merged commit c0aa1cb into main Oct 19, 2026
13 checks passed
@matteius
matteius deleted the agent/issue-655-i18n-literals branch October 19, 2026 12:34
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.

[Agent] i18n: convert remaining hardcoded UI strings and add a no-literal-string guard

1 participant