[CL-I18N-WALLET-FIX] добавил недостающие i18n ключи (wallet + 70 компонентных keys) во все 13 языков #225

Merged
andrei merged 2 commits from feature/claude-i18n-wallet-keys-fix into master 2026-05-24 10:27:00 +00:00
Owner

Что сделано

  • Добавил 5 wallet.* ключей (errors.rejected, connect.title/subtitle, success.title/redirecting) под WalletSelector.tsx с переводами для en/ru/de/es/fr/hi/id/it/ja/ko/pt/zh/ar/tr
  • Через batch script (parse check-i18n-usage.mjs + extract defaultValue из t() вызовов) добавил ещё 70 EN ключей из компонентов: ledger.title, calc.comparison., hero.interactive.launchExplorer, mint.simulator/step., object.map.title, problem.kyc., roomExplorer., spv.visura/trustee., video.test/wall.*, aria.switchToAmber
  • Sync через scripts/sync-i18n.js --fix добавил EN fallbacks во все 13 других языков (962 fallbacks суммарно)

Зачем

CI / App падал на check-i18n-usage.mjs с 75 missing EN keys. Последний fail: task 6346 (sha 5b939e2a) 2026-05-24T09:10. Без этих ключей CI блокирует merge на master.

План тестирования

  • npm run i18n:check → 0 missing across 13 languages
  • check-i18n-usage.mjs → [OK] 0 missing keys
  • tsc --noEmit → no errors
  • eslint src --max-warnings 0 → clean
  • vitest run → 290 files / 1468 tests passed
  • api vitest (pre-push) → 14 files / 189 tests passed
  • app build (pre-push) → 171 routes prerendered

Где могу ошибаться

  • Wallet ключи (5) имеют ручные переводы для всех 13 языков (high quality)
  • Остальные 70 ключей в 12 не-EN языках = English fallback (sync policy) — нужна followup PR с native translations
  • Runtime visual не верифицирован — все t() используют defaultValue fallback, user-facing string corrects, но native lang UX страдает до native-translation followup

Closes task #2 (CI App fail on master e2cb707b)

## Что сделано - Добавил 5 wallet.* ключей (errors.rejected, connect.title/subtitle, success.title/redirecting) под WalletSelector.tsx с переводами для en/ru/de/es/fr/hi/id/it/ja/ko/pt/zh/ar/tr - Через batch script (parse check-i18n-usage.mjs + extract defaultValue из t() вызовов) добавил ещё 70 EN ключей из компонентов: ledger.title, calc.comparison.*, hero.interactive.launchExplorer, mint.simulator/step.*, object.map.title, problem.kyc.*, roomExplorer.*, spv.visura/trustee.*, video.test*/wall.*, aria.switchToAmber - Sync через scripts/sync-i18n.js --fix добавил EN fallbacks во все 13 других языков (962 fallbacks суммарно) ## Зачем CI / App падал на check-i18n-usage.mjs с 75 missing EN keys. Последний fail: task 6346 (sha 5b939e2a) 2026-05-24T09:10. Без этих ключей CI блокирует merge на master. ## План тестирования - npm run i18n:check → 0 missing across 13 languages ✅ - check-i18n-usage.mjs → [OK] 0 missing keys ✅ - tsc --noEmit → no errors ✅ - eslint src --max-warnings 0 → clean ✅ - vitest run → 290 files / 1468 tests passed ✅ - api vitest (pre-push) → 14 files / 189 tests passed ✅ - app build (pre-push) → 171 routes prerendered ✅ ## Где могу ошибаться - Wallet ключи (5) имеют ручные переводы для всех 13 языков (high quality) - Остальные 70 ключей в 12 не-EN языках = English fallback (sync policy) — нужна followup PR с native translations - Runtime visual не верифицирован — все t() используют defaultValue fallback, user-facing string corrects, но native lang UX страдает до native-translation followup Closes task #2 (CI App fail on master e2cb707b)
[CL-SEED-BALANCE-DRIFT-FIX85-20260524] fix(db): offset SHARE_PURCHASE с DEPOSIT для demo users
Some checks failed
CI / API (pull_request) Successful in 5m56s
CI / App (pull_request) Failing after 7m8s
CI / Contracts (pull_request) Successful in 1m52s
CI / Telegram Mini App (pull_request) Successful in 1m10s
CI / Python SDK (pull_request) Successful in 28s
CI / Secrets Scan (pull_request) Successful in 12s
CI / Prisma Migrate Gate (pull_request) Successful in 1m18s
fe0c3bc782
Что сделано:
- Migration 20260524103000_fix_seed_balance_drift: добавить DEPOSIT с -1500 (hans)
  и -3000 (jean) что compensate'ит positive SHARE_PURCHASE seed
- 6 vitest cases verify migration shape + idempotency + non-destructive
- Resolves Sentry EUROPATECH-API-DX (balance drift detected)

Зачем:
- Sentry alert 2026-05-24 05:00 UTC: BalanceReconciliation drift MEDIUM:
  hans.mueller: balance=0, SUM(transactions)=1500, drift=-1500
  jean.dupont:  balance=0, SUM(transactions)=3000, drift=-3000
- Root: prisma/seed.ts:408-470 создаёт SHARE_PURCHASE +amount без DEPOSIT
- Convention prod code (execution.reinvest.ts:211): SHARE_PURCHASE = NEGATIVE
- reconcileBalances expects balance = SUM(transactions). DEPOSITS offset SHARE_PURCHASE → SUM=0 = balance.

План тестирования:
- 6/6 vitest static-text tests GREEN
- После deploy: prisma migrate deploy via apply-migration.yml workflow
- Verify cron run next 05:00 UTC: BalanceReconciliation logs CLEAN, no Sentry alert

Где могу ошибаться:
- prisma/seed.ts itself не fixed — re-running seed создаст drift snova.
  Recommend follow-up commit: change seed amounts to negative OR add DEPOSITS.
[CL-I18N-WALLET-FIX] add missing i18n keys (wallet + 70 component keys) across 13 langs
All checks were successful
CI / API (pull_request) Successful in 6m37s
CI / App (pull_request) Successful in 6m30s
CI / Contracts (pull_request) Successful in 1m39s
CI / Telegram Mini App (pull_request) Successful in 1m9s
CI / Python SDK (pull_request) Successful in 28s
CI / Secrets Scan (pull_request) Successful in 11s
CI / Prisma Migrate Gate (pull_request) Successful in 1m17s
React Doctor / React Doctor / App (pull_request) Successful in 1m44s
5cabd1d208
## Что сделано
- Добавил 5 wallet.* keys (errors.rejected, connect.title/subtitle, success.title/redirecting) в WalletSelector.tsx scope с переводами для en/ru/de/es/fr/hi/id/it/ja/ko/pt/zh/ar/tr
- Через batch script (scripts/check-i18n-usage.mjs parse + defaultValue extract) добавил ещё 70 keys в EN из компонентов: ledger.title, calc.comparison.*, hero.interactive.*, mint.simulator.*, mint.step*.msg, object.map.title, problem.kyc.*, roomExplorer.*, spv.visura/trustee.*, video.test*.loc/quote, video.wall.*, aria.switchToAmber
- Sync через scripts/sync-i18n.js --fix добавил EN fallbacks во все 13 других языков (962 fallbacks суммарно)

## Зачем
CI / App job падал на check-i18n-usage.mjs с 75 missing EN translations. Latest fail: task 6346 sha 5b939e2a 2026-05-24T09:10. Без этих keys CI блокирует merge на master.

## План тестирования
- npm run i18n:check → 0 missing translations across 13 languages 
- node scripts/check-i18n-usage.mjs → [OK] passed, 0 missing keys 
- npx tsc --noEmit → no errors 
- npx eslint src --max-warnings 0 → clean 
- npx vitest run → 290 files / 1468 tests passed 

## Где могу ошибаться
- Wallet keys имеют ручные переводы для всех 13 языков (high quality)
- Остальные 70 keys в 12 не-EN языках = английский fallback (sync-i18n.js --fix policy) — нужна followup PR с native translations
- Не верифицировал runtime visual — все t() вызовы используют defaultValue fallback, так что user-facing string corrects, но native lang UX страдает

Closes task #2 (CI App fail on master e2cb707b)
andrei merged commit 7430d344ae into master 2026-05-24 10:26:59 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
europa-tech-srl/europatech!225
No description provided.