Skip to content

Add Russian locale#1635

Closed
DrMaks22 wants to merge 3 commits intodifferent-ai:devfrom
DrMaks22:codex/russian-localization
Closed

Add Russian locale#1635
DrMaks22 wants to merge 3 commits intodifferent-ai:devfrom
DrMaks22:codex/russian-localization

Conversation

@DrMaks22
Copy link
Copy Markdown

@DrMaks22 DrMaks22 commented May 1, 2026

Summary

  • Added a full Russian locale for the OpenWork app.
  • Fixed placeholder handling for the remaining locales with missing plural markers.
  • Added ru to locale exports, the language selector, docs, and the repo i18n audit.

Why

  • Make the app available in Russian with terminology aligned to existing product wording.
  • Keep the repo i18n audit green for all tracked locales.

Issue

  • None; requested directly by the user.

Scope

  • apps/app/src/i18n/locales/ru.ts
  • apps/app/src/i18n/locales/ja.ts
  • apps/app/src/i18n/locales/zh.ts
  • apps/app/src/i18n/locales/th.ts
  • apps/app/src/i18n/index.ts
  • apps/app/src/i18n/locales/index.ts
  • apps/app/src/react-app/shell/settings-route.tsx
  • apps/app/src/react-app/domains/settings/panels/den-settings-panel.tsx
  • scripts/i18n-audit.mjs
  • TRANSLATIONS.md
  • README.md

Out of scope

  • README translations for translated_readmes/
  • Other locale files beyond the audit fixes above

Testing

Ran

  • node -e custom en/ru key coverage check
  • node scripts/i18n-audit.mjs --missing | rg "^ ru:"
  • node scripts/i18n-audit.mjs --orphan | rg "^ ru:"
  • node scripts/i18n-audit.mjs --duplicates | rg "^ ru:"
  • node -e custom en/ru placeholder check
  • node scripts/i18n-audit.mjs --placeholders
  • git diff --check

Result

  • pass: en and ru both have 2111 keys; missing/extra = 0.
  • pass: ru has no missing keys, no orphans, and no duplicates.
  • pass: placeholders now match across all tracked locales.
  • pass: repo i18n audit reports ✓ all placeholders preserved.
  • note: pnpm is not installed in this shell, so I used the repo's node-based i18n audit and direct Node checks instead.

CI status

  • pass: not run locally
  • external/env/auth blockers: pnpm is not installed in this shell.

Manual verification

  1. Confirmed Русский is listed in the app language selector wiring.
  2. Confirmed ru.ts covers every key from en.ts.
  3. Confirmed the repo i18n audit now includes ru and all placeholders are preserved.

Evidence

  • N/A (code change only)

Risk

  • Low. The changes are additive and preserve existing fallback behavior.

Rollback

  • Remove the locale additions, the locale-specific plural helper, and the audit entry.

@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 1, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openwork-landing Ready Ready Preview, Comment, Open in v0 May 1, 2026 4:39pm

@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 1, 2026

@codex is attempting to deploy a commit to the Different AI Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 1, 2026

The following comment was made by an LLM, it may be inaccurate:

@DrMaks22
Copy link
Copy Markdown
Author

DrMaks22 commented May 1, 2026

Blocking update: I was able to sign in to Vercel, but this login only has the personal Hobby workspace drmas22. The Different AI team is not available in the team switcher, so the deploy authorization for PR #1635 still requires a Member+ account from that team. All repo-side checks are otherwise green. If someone with access can open the Vercel authorize link in the PR checks or the Vercel bot comment, the remaining deploy checks should unblock.

@DrMaks22
Copy link
Copy Markdown
Author

DrMaks22 commented May 3, 2026

Fresh blocker update: the current failing Vercel checks are on head 735bbd1, and each of them points to a new authorize link. The older Vercel bot comment in this thread references an outdated sha d1a01f4, so please use the latest PR check authorize link instead of the old one. Once a member of Different AI authorizes one of the current Vercel deploys, the remaining deploy checks should unblock.

@johnnyshields
Copy link
Copy Markdown
Contributor

johnnyshields commented May 4, 2026

@DrMaks22 I've taken over this PR here: #1642. My branch includes better support for plurals.

The easiest will be to merge my branch into the main project first, and then if you want to tweak any translations you can do it as a follow-up PR.

benjaminshafii pushed a commit to johnnyshields/openwork that referenced this pull request May 4, 2026
benjaminshafii pushed a commit that referenced this pull request May 4, 2026
* Add Russian locale

* Include Russian locale in i18n audit

* Fix plural placeholders in i18n locales

* Russian language support, based off of DrMaks22 #1635

* Improve i18n-audit --prune script to include non-EN locale orphaned translations, and prune the Russian translations

* I18n audit script: do not require {count} key for _zero and _one

* Fix Russian plurals

* Add missing Russian translations

* Fix LANGUAGE_OPTIONS label vs. nativeName

* Fix orphan check for plurals

* Fix source scan

---------

Co-authored-by: OpenAI Codex <codex@openai.com>
@johnnyshields
Copy link
Copy Markdown
Contributor

@benjaminshafii this PR was superseded by #1642 and can now be closed.

@src-opn src-opn closed this May 5, 2026
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.

4 participants