Skip to content

fix(i18n): translate recent UI copy - #32125

Merged
AmethystLiang merged 1 commit into
mainfrom
automation/localization-2026-10-20
Oct 22, 2026
Merged

AmethystLiang merged 1 commit into
mainfrom
automation/localization-2026-10-20

Conversation

@AmethystLiang

@AmethystLiang AmethystLiang commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor
Files Added Deleted Net
Test 0 0 0 0
Prod 5 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​787 $\color{#cf222e}{\Huge{\mathbf{−}}}$​71 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​716

Translates newly merged UI copy and corrects reviewed locale wording.\n\nChecks: localization catalogs, extraction, and coverage.

@coderabbitai

coderabbitai Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

📝 Walkthrough

The Spanish, French, Japanese, Korean, and Simplified Chinese locale files add and revise strings for browser controls and suggestions, SSH terminals and local PTYs, chat and editor states, plan review, and search. They also update several Git, session-scan, and source-control descriptions. The Spanish and French files remove sidebar project-drop translations.

Priority: ⬇️ Low

Merge Risk: 🔵 Low · up to 4d1b7

Spanish and French users can see English project-drop messages, and the Japanese closed-state label is inconsistent with adjacent labels. These are bounded localization issues; restore the translations before merging if full locale coverage is required.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Description check Warning The description gives a short summary: it translates newly merged UI copy and corrects reviewed locale wording. It also lists checks for localization catalogs, extraction, and coverage. It omits most … Complete the description using the repository template. Add the following:
1. ELI5: a plain-language explanation of the change.
2. What Changed: the before and after for users. For example, state which UI strings were previously untranslate…
Passed Passed checks: 4 passed
Check name Status Explanation
Title check Passed The title "fix(i18n): translate recent UI copy" matches the changeset. The PR updates the es, fr, ja, ko, and zh locale files with translations for recently merged UI strings and corrects reviewed wor…
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Title check

Explanation

The title "fix(i18n): translate recent UI copy" matches the changeset. The PR updates the es, fr, ja, ko, and zh locale files with translations for recently merged UI strings and corrects reviewed wording. The title is specific to localization and names the main change. It uses a conventional-commit prefix, which is acceptable.

Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (5 skipped: 5 unsupported.)

Full details: Description check

Explanation

The description gives a short summary: it translates newly merged UI copy and corrects reviewed locale wording. It also lists checks for localization catalogs, extraction, and coverage. It omits most required template sections: ELI5, What Changed, Why, Linked Issue, Visual Proof, Testing checkboxes, Review, and Checklist. The description is brief but does state the purpose. Most required sections are missing, so the description is largely incomplete against the template.

Resolution

Complete the description using the repository template. Add the following:

  1. ELI5: a plain-language explanation of the change.
  2. What Changed: the before and after for users. For example, state which UI strings were previously untranslated or incorrect in each locale.
  3. Why: the reason for the change and why translation was chosen over other options.
  4. Linked Issue: an actual issue reference ("Fixes #..."). The template requires a linked issue for outside contributors.
  5. Visual Proof: write N/A with a reason, since the change affects locale copy. If you show translated UI, attach before and after captures.
  6. Testing: list the steps used to verify the translations, the platforms tested, and mark the testing checkboxes.
  7. AI Disclosure: state whether AI tools helped write the translations, if you are not a maintainer.
  8. Review and Notes: confirm no issues in security, cross-platform support, remote SSH, backwards compatibility, or performance.
  9. Checklist: mark the items that apply, including the results of pnpm lint, typecheck, test, and build.
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🔇 Additional comments: 4
src/renderer/src/i18n/locales/es.json: 1

1283-1297: LGTM!

Also applies to: 6127-6128, 7109-7110, 12965-12981, 16368-16370, 16677-16690, 16782-16790, 18366-18366, 18534-18534, 18559-18559, 18580-18581, 18851-18853, 19756-19776, 20412-20418, 20419-20475

src/renderer/src/i18n/locales/ko.json: 1

7097-7098: LGTM!

Also applies to: 14498-14516, 16381-16383, 16765-16779, 16804-16813, 18286-18300, 18630-18630, 18720-18721, 18903-18905, 19189-19192, 19885-19905, 20065-20070, 20440-20445, 20762-20819

src/renderer/src/i18n/locales/zh.json: 1

7097-7098: LGTM!

Also applies to: 7629-7629, 10142-10142, 13244-13246, 14500-14516, 16381-16383, 16765-16779, 16804-16813, 18286-18300, 18598-18598, 18868-18876, 19784-19804, 20440-20445, 20762-20819

src/renderer/src/i18n/locales/fr.json-20431-20431: 1

20431-20431: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

⚠️ Unverified finding
Verification ran but could not confirm this finding. It is shown for review, not as a verified issue.

Use a status label for the bound state.

"A un onglet" is an incomplete French sentence and does not match the status form of "Sans onglet". Use "Onglet associé" or "Avec un onglet".


ℹ️ Review info
⚙️ Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 5a23c91a-7deb-48fa-b432-9cbac6cad316
📥 Commits

Reviewing files that changed from the base of the PR and between 5288d26 and 4d1b7d6.

📒 Files selected for processing: 5
  • src/renderer/src/i18n/locales/es.json
  • src/renderer/src/i18n/locales/fr.json
  • src/renderer/src/i18n/locales/ja.json
  • src/renderer/src/i18n/locales/ko.json
  • src/renderer/src/i18n/locales/zh.json

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.

Comment on lines +6127 to +6128
},
"project": {}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🔎 Supported by static analysis

🏁 Script executed:

git diff --unified=20 5288d26a108345ca0e599b7e81fe58dd5dfb0ed7 4d1b7d656811cfadd9f59a35c89edfd3712048d6 -- src/renderer/src/i18n/locales/es.json src/renderer/src/components/sidebar/sidebar-project-drop.ts src/renderer/src/i18n/i18n.ts

Repository: stablyai/orca

Length of output: 37325


Restore the Spanish project-drop translations.

When the project-drop affordance is visible, sidebar-project-drop.ts selects the sidebar.project.drop.* messages for its handling, remote-runtime, WSL, and default branches. The empty Spanish object removes those keys, so the i18n fallback displays English text such as Checking folder and Drop folder to add project in the Spanish locale.

Suggested fix
-          "project": {}
+          "project": {
+            "drop": {
+              "669e12dd97": "Carpetas locales y repositorios Git",
+              "ffc769ca29": "Suelta una carpeta para agregar el proyecto",
+              "740e8d0d46": "Usa Agregar proyecto para rutas de host",
+              "e344666fb8": "Servidor activo",
+              "d0f8943f8b": "Preparando el flujo para agregar proyecto",
+              "18d3cf40e9": "Comprobando carpeta",
+              "wslFolder": "Suelta una carpeta de WSL para agregar un proyecto",
+              "wslFolderDescription": "Carpetas en \\\\wsl.localhost"
+            }
+          }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
},
"project": {}
},
"project": {
"drop": {
"669e12dd97": "Carpetas locales y repositorios Git",
"ffc769ca29": "Suelta una carpeta para agregar el proyecto",
"740e8d0d46": "Usa Agregar proyecto para rutas de host",
"e344666fb8": "Servidor activo",
"d0f8943f8b": "Preparando el flujo para agregar proyecto",
"18d3cf40e9": "Comprobando carpeta",
"wslFolder": "Suelta una carpeta de WSL para agregar un proyecto",
"wslFolderDescription": "Carpetas en \\\\wsl.localhost"
}
}

Comment on lines +6257 to +6258
},
"project": {}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🔎 Supported by static analysis

🏁 Script executed:

sed -n '6248,6262p' src/renderer/src/i18n/locales/fr.json
sed -n '6425,6445p' src/renderer/src/i18n/locales/en.json
sed -n '84,102p' src/renderer/src/components/sidebar/sidebar-project-drop.ts

Repository: stablyai/orca

Length of output: 2063


🏁 Script executed:

git show 5288d26a108345ca0e599b7e81fe58dd5dfb0ed7:src/renderer/src/i18n/locales/fr.json | rg -n -F -A 18 -B 4 -- '"drop"' | head -n 30
printf '%s\n' '--- reviewed head block ---'
git show 4d1b7d656811cfadd9f59a35c89edfd3712048d6:src/renderer/src/i18n/locales/fr.json | sed -n '6248,6262p'
printf '%s\n' '--- focused diff ---'
git diff 5288d26a108345ca0e599b7e81fe58dd5dfb0ed7 4d1b7d656811cfadd9f59a35c89edfd3712048d6 -- src/renderer/src/i18n/locales/fr.json | rg -n -A 16 -B 8 -F '"project"' | head -n 40

Repository: stablyai/orca

Length of output: 3923


Restore the translations under project.drop.

sidebar-project-drop.ts requests auto.components.sidebar.sidebar.project.drop.*. The current French catalog defines project as an empty object, so these lookups use English fallback text. Direct properties under project would not match the requested paths.

Suggested fix
-          "project": {}
+          "project": {
+            "drop": {
+              "669e12dd97": "Dossiers locaux et dépôts Git",
+              "ffc769ca29": "Déposez un dossier pour ajouter un projet",
+              "740e8d0d46": "Utilisez « Ajouter un projet » pour les chemins d'hôte",
+              "e344666fb8": "Runtime serveur actif",
+              "d0f8943f8b": "Préparation du flux d'ajout de projet",
+              "18d3cf40e9": "Vérification du dossier",
+              "wslFolder": "Déposez un dossier WSL pour ajouter le projet",
+              "wslFolderDescription": "Dossiers sous \\\\wsl.localhost"
+            }
+          }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
},
"project": {}
},
"project": {
"drop": {
"669e12dd97": "Dossiers locaux et dépôts Git",
"ffc769ca29": "Déposez un dossier pour ajouter un projet",
"740e8d0d46": "Utilisez « Ajouter un projet » pour les chemins d'hôte",
"e344666fb8": "Runtime serveur actif",
"d0f8943f8b": "Préparation du flux d'ajout de projet",
"18d3cf40e9": "Vérification du dossier",
"wslFolder": "Déposez un dossier WSL pour ajouter le projet",
"wslFolderDescription": "Dossiers sous \\\\wsl.localhost"
}
}

"removedFromHistory": "履歴から「{{title}}」を削除しました",
"removeSuggestion": "履歴から削除",
"state": {
"closed": "閉じました",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Use a status label for the closed state.

"閉じました" is a polite past-tense sentence meaning “closed it.” The other state values are status labels. Use "クローズ済み" or equivalent status wording.

@AmethystLiang
AmethystLiang merged commit c1a47b0 into main Oct 22, 2026
32 checks passed
@AmethystLiang
AmethystLiang deleted the automation/localization-2026-10-20 branch October 22, 2026 23:31
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.

1 participant