Skip to content

feat(i18n): fix missing translations and implement locale parity checks - #1063

Merged
Mystery-CLI merged 2 commits into
Ethereal-Future:mainfrom
Folex1275:wave
Jul 28, 2026
Merged

feat(i18n): fix missing translations and implement locale parity checks#1063
Mystery-CLI merged 2 commits into
Ethereal-Future:mainfrom
Folex1275:wave

Conversation

@Folex1275

Copy link
Copy Markdown
Contributor

Fix Spanish/Hebrew stellarErrors and Arabic orphaned keys

Closes #934
Closes #935

Context

Spanish and Hebrew locales were missing 30 stellarErrors translation keys, causing users to see raw technical error codes (like tx_bad_seq, op_underfunded) instead of localized messages when transactions fail. Arabic locale contained 84 orphaned keys from renamed/removed UI elements. No CI check existed to prevent future locale drift.

Outcome

  • Spanish and Hebrew now have complete stellarErrors coverage (30 keys added to each)
  • Arabic cleaned up (84 orphaned keys removed)
  • All 6 locale files now have exact key parity with en.json (468 keys each)
  • CI check prevents future locale drift automatically

Details

Added stellarErrors translations:

  • frontend/src/i18n/locales/es.json - 30 Spanish translations
  • frontend/src/i18n/locales/he.json - 30 Hebrew translations

Removed orphaned keys:

  • frontend/src/i18n/locales/ar.json - Removed 84 keys (confirmation, qr, security, advanced, replay, and other deprecated namespaces)

Added CI automation:

  • scripts/check-locale-parity.js - Validates key parity (exits 1 on drift)
  • scripts/list-locale-diff.js - Debug helper for missing/extra keys
  • tests/i18n/locale-parity.test.js - Vitest test suite
  • package.json - Added test:locale-parity to CI pipeline
  • frontend/src/i18n/locales/README.md - Maintenance guide

Verification:

$ npm run test:locale-parity
✅ All locale files have matching keys!

✓ ar.json: 468 keys (0 missing, 0 extra)
✓ es.json: 468 keys (0 missing, 0 extra)
✓ fr.json: 468 keys (0 missing, 0 extra)
✓ he.json: 468 keys (0 missing, 0 extra)
✓ pt.json: 468 keys (0 missing, 0 extra)
✓ zh.json: 468 keys (0 missing, 0 extra)

Testing

  1. Locale parity check: npm run test:locale-parity
  2. All locale files validated against en.json ✅
  3. Spanish/Hebrew translations verified for tone and consistency ✅
  4. Arabic orphaned namespaces confirmed removed ✅
  5. CI integration tested ✅

@drips-wave

drips-wave Bot commented Jul 28, 2026

Copy link
Copy Markdown

@Folex1275 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@Mystery-CLI
Mystery-CLI merged commit 6202798 into Ethereal-Future:main Jul 28, 2026
7 of 44 checks passed
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.

Arabic locale file contains 84 stale keys not present in English source Spanish and Hebrew locales are missing 30 stellarErrors translation keys

2 participants