mirror of
https://github.com/stablyai/orca.git
synced 2026-10-20 08:03:28 +00:00
fix(i18n): stop the repair policy de-localizing CJK UI labels
The build-time repair layer carried overrides that rewrite already-correct CJK values back to English. Most are inert against today's catalogs but fire on the next regeneration, so they read as latent regressions rather than policy: - zh workspace status picker (Play/Flag/Zinc/Rose/Emerald/Amber/Violet/Sky/ Blue/Neutral) and `sheet`/`page` were pinned to English while every sibling option, and ko/ja/es, stay translated — half a Chinese picker. - The zh `蓝色的`/`琥珀色`/`中性的` phrase fixes correctly flagged the adjectival 的 form but replaced it with English instead of the bare color noun. - ja `Play` was pinned to English though the catalog already reads 再生. - A value-wide zh `Open: '进行中'` mapped every "Open" to "in progress", including the button that opens an MCP config file. "Open" is a verb (打开) on buttons and a state (开放) beside 已关闭, so no single mapping fits. Catalog corrections in the same area: - The GitHub/PR state picker key override read 진행 중 / 进行中 for ko and zh while ja already had the correct オープン; now 열림 / 开放, matching 닫힘 / 已关闭 on the sibling entry. - The terminal cursor-color group is the on-screen cursor, not the Cursor editor; ja already had カーソル, ko/zh now get 커서/光标 instead of "Cursor". - Tailwind swatch labels 天空 (the sky) and 锌 (the metal) do not read as colors; now 天蓝/锌灰, and ja 空 becomes 空色. - The ko disk-usage heading was pinned to bare "Space" while its own description says 저장 공간; both now use 저장 공간. Two policy tests pinned the Play de-localization. They diagnosed the input correctly — 玩 / 遊ぶ are wrong for a play icon — so the expectations move to 播放 / 再生 rather than English. Destructive drift (localized -> English on regeneration) drops from 40 to 21 for zh, 6 to 5 for ja, and 5 to 3 for ko. What remains is deliberate: search qualifiers, path and filename literals, and product names.
This commit is contained in:
@@ -134,5 +134,30 @@ export const CROSS_LOCALE_KEY_OVERRIDES = {
|
||||
'auto.hooks.useSettingsNavigationMetadata.40d80bad8a': {
|
||||
zh: '测试版',
|
||||
ja: 'ベータ'
|
||||
},
|
||||
// Issue/PR state picker; it sits beside 已关闭, so 进行中 is a different state.
|
||||
'auto.components.PullRequestPage.7b8f6bf6d8': {
|
||||
zh: '开放'
|
||||
},
|
||||
// This "Open" is the button that opens the config file, not an issue state.
|
||||
'auto.components.settings.McpConfigFileRow.e720c139cd': {
|
||||
zh: '打开'
|
||||
},
|
||||
// Terminal cursor-color group: the on-screen cursor, not the Cursor editor.
|
||||
'auto.components.settings.TerminalWindowSection.c9e1fdf42f': {
|
||||
ko: '커서',
|
||||
zh: '光标'
|
||||
},
|
||||
'auto.components.onboarding.ThemeStep.ab2a583a97': {
|
||||
ko: '커서',
|
||||
zh: '光标'
|
||||
},
|
||||
// Tailwind swatch labels: bare 天空 (the sky), 锌 and 空 (the metal, the sky) are not colors.
|
||||
'auto.components.sidebar.workspace.status.6437a8c253': {
|
||||
zh: '天蓝',
|
||||
ja: '空色'
|
||||
},
|
||||
'auto.components.sidebar.workspace.status.caabd5ca85': {
|
||||
zh: '锌灰'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ export const JA_VALUE_OVERRIDES = {
|
||||
'Launch plan': '起動プラン',
|
||||
'Launch agent': 'エージェントを起動',
|
||||
'Launch {{value0}} in a new terminal': '新規ターミナルで {{value0}} を起動',
|
||||
Play: 'Play',
|
||||
Play: '再生',
|
||||
Action: '操作',
|
||||
Actions: '操作',
|
||||
action: '操作',
|
||||
|
||||
@@ -162,8 +162,8 @@ const BASE_LOCALE_KEY_OVERRIDES = {
|
||||
ja: 'クローズ'
|
||||
},
|
||||
'auto.components.GitHubItemDialog.dc1ca081a8': {
|
||||
ko: '진행 중',
|
||||
zh: '进行中',
|
||||
ko: '열림',
|
||||
zh: '开放',
|
||||
ja: 'オープン'
|
||||
},
|
||||
'auto.components.tab.bar.TabBarCreateEntry.b27864279e': {
|
||||
|
||||
@@ -4725,7 +4725,7 @@
|
||||
"ko": "중지 중"
|
||||
},
|
||||
"auto.components.status.bar.WorkspaceSpaceCompactPanel.8ff597593d": {
|
||||
"ko": "Space"
|
||||
"ko": "저장 공간"
|
||||
},
|
||||
"auto.components.status.bar.WorkspaceSpaceCompactPanel.9be86c46a0": {
|
||||
"ko": "확보 가능"
|
||||
@@ -4995,7 +4995,7 @@
|
||||
"ko": "선택한 리포지토리와 일치하는 비활성 워크스페이스가 없습니다."
|
||||
},
|
||||
"auto.components.workspace.space.WorkspaceSpacePage.45f6302dbc": {
|
||||
"ko": "Space"
|
||||
"ko": "저장 공간"
|
||||
},
|
||||
"auto.components.workspace.space.WorkspaceSpacePage.8d0048e1cb": {
|
||||
"ko": "워크스페이스 디스크 사용량과 회수 가능한 워크트리 저장 공간."
|
||||
|
||||
@@ -371,9 +371,10 @@ export const LOCALE_PHRASE_FIXES = {
|
||||
{ pattern: /指挥进展/g, replacement: 'Conductor 进度', whenEnIncludes: 'Conductor Progress' },
|
||||
{ pattern: /指挥评论/g, replacement: 'Conductor 评审', whenEnIncludes: 'Conductor Review' },
|
||||
{ pattern: /指挥完成/g, replacement: 'Conductor 完成', whenEnIncludes: 'Conductor Done' },
|
||||
{ pattern: /琥珀色/g, replacement: 'Amber', whenEnIncludes: 'Amber' },
|
||||
{ pattern: /蓝色的/g, replacement: 'Blue', whenEnIncludes: 'Blue' },
|
||||
{ pattern: /中性的/g, replacement: 'Neutral', whenEnIncludes: 'Neutral' },
|
||||
// Swatch labels want the bare color noun, not the adjectival 的 form — and not English.
|
||||
{ pattern: /琥珀色/g, replacement: '琥珀', whenEnIncludes: 'Amber' },
|
||||
{ pattern: /蓝色的/g, replacement: '蓝色', whenEnIncludes: 'Blue' },
|
||||
{ pattern: /中性的/g, replacement: '中性', whenEnIncludes: 'Neutral' },
|
||||
{ pattern: /破坏性的/g, replacement: 'destructive', whenEnIncludes: 'destructive' },
|
||||
{ pattern: /注解/g, replacement: '批注', whenEnIncludes: 'Annotation' },
|
||||
...ZH_PHRASE_FIXES_ROUND5
|
||||
|
||||
@@ -27,7 +27,7 @@ describe('locale-translation-policy ja round 5', () => {
|
||||
localeValue: '遊ぶ',
|
||||
locale: 'ja'
|
||||
})
|
||||
).toBe('Play')
|
||||
).toBe('再生')
|
||||
expect(
|
||||
repairTranslatedValue({
|
||||
key: 'auto.components.TaskPage.8396825a14',
|
||||
|
||||
@@ -546,7 +546,7 @@ describe('locale-translation-policy', () => {
|
||||
localeValue: '玩',
|
||||
locale: 'zh'
|
||||
})
|
||||
).toBe('Play')
|
||||
).toBe('播放')
|
||||
expect(
|
||||
repairTranslatedValue({
|
||||
key: 'auto.components.right.sidebar.SourceControlAgentActionDialogForm.1bc0bdbb5e',
|
||||
|
||||
@@ -305,7 +305,8 @@ export const LOCALE_VALUE_OVERRIDES = {
|
||||
teams: '团队',
|
||||
passing: '通过',
|
||||
'opened this issue': '创建了此议题',
|
||||
Open: '进行中',
|
||||
// No blanket "Open" override: it is a verb on buttons (打开) and a state next to 已关闭 (开放),
|
||||
// so a single value-wide mapping is wrong for half the call sites. Per-key catalog values decide.
|
||||
'Join Discord': '加入 Discord',
|
||||
'Pull request merged': '拉取请求已合并',
|
||||
'Agent Skills': '代理技能',
|
||||
|
||||
@@ -67,8 +67,8 @@ export const ZH_VALUE_OVERRIDES = {
|
||||
Inline: '内联',
|
||||
thread: '帖子串',
|
||||
destructive: 'destructive',
|
||||
sheet: 'sheet',
|
||||
page: 'page',
|
||||
sheet: '面板',
|
||||
page: '页面',
|
||||
Annotation: '批注',
|
||||
'check #': '检查 #',
|
||||
by: '由',
|
||||
@@ -92,16 +92,18 @@ export const ZH_VALUE_OVERRIDES = {
|
||||
'仓库操作方案。在此仓库自定义之前,将使用全局设置。',
|
||||
'Adds action recipes for Source Control commit, pull request, branch-name, and fix actions.':
|
||||
'为源代码管理的提交、拉取请求、分支命名和修复操作添加操作方案。',
|
||||
Play: 'Play',
|
||||
Flag: 'Flag',
|
||||
Zinc: 'Zinc',
|
||||
Rose: 'Rose',
|
||||
Emerald: 'Emerald',
|
||||
Amber: 'Amber',
|
||||
Violet: 'Violet',
|
||||
Sky: 'Sky',
|
||||
Blue: 'Blue',
|
||||
Neutral: 'Neutral',
|
||||
// Workspace status icon and color swatch labels; siblings below are translated, so English
|
||||
// pins here would leave the picker half-Chinese on the next catalog regeneration.
|
||||
Play: '播放',
|
||||
Flag: '标记',
|
||||
Zinc: '锌灰',
|
||||
Rose: '玫瑰',
|
||||
Emerald: '翡翠',
|
||||
Amber: '琥珀',
|
||||
Violet: '紫罗兰',
|
||||
Sky: '天蓝',
|
||||
Blue: '蓝色',
|
||||
Neutral: '中性',
|
||||
Dashed: '虚线',
|
||||
Dot: '圆点',
|
||||
Circle: '圆形',
|
||||
|
||||
@@ -4759,7 +4759,7 @@
|
||||
"ddf25b6262": "エメラルド",
|
||||
"7cebab6d4a": "アンバー",
|
||||
"1b81da243a": "バイオレット",
|
||||
"6437a8c253": "空",
|
||||
"6437a8c253": "空色",
|
||||
"fc3b92756c": "青",
|
||||
"52e3c6e2a4": "中性"
|
||||
}
|
||||
|
||||
@@ -2408,7 +2408,7 @@
|
||||
"WorkspaceSpacePage": {
|
||||
"8d0048e1cb": "워크스페이스 디스크 사용량과 회수 가능한 워크트리 저장 공간.",
|
||||
"e8d6ba11ab": "베타",
|
||||
"45f6302dbc": "공간",
|
||||
"45f6302dbc": "저장 공간",
|
||||
"ecf72fdc3b": "뒤로"
|
||||
}
|
||||
},
|
||||
@@ -3235,7 +3235,7 @@
|
||||
"f4d2651498": "스캔됨",
|
||||
"6a5dc3c61a": "리뷰",
|
||||
"c361440dc0": "베타",
|
||||
"8ff597593d": "공간",
|
||||
"8ff597593d": "저장 공간",
|
||||
"0582df6d2e": "스캔",
|
||||
"f5e1a84d79": "새로고침",
|
||||
"2af2174d6d": "취소",
|
||||
@@ -7329,7 +7329,7 @@
|
||||
"7f4063076c": "커서 아래의 텍스트 색상(블록 커서)",
|
||||
"a2d9f095a7": "Cursor 텍스트",
|
||||
"cd0700762b": "Cursor 색상",
|
||||
"c9e1fdf42f": "Cursor",
|
||||
"c9e1fdf42f": "커서",
|
||||
"da64e8f4c1": "Terminal 배경색",
|
||||
"cc1b2ffeb2": "배경",
|
||||
"026a0b8013": "본문 색상",
|
||||
@@ -11557,7 +11557,7 @@
|
||||
"86c0f1caa2": "패딩",
|
||||
"06a24f4f2d": "색상",
|
||||
"c021e9dddd": "테마 팔레트",
|
||||
"ab2a583a97": "Cursor",
|
||||
"ab2a583a97": "커서",
|
||||
"cc1858e19e": "글꼴",
|
||||
"248c812283": "가져오기",
|
||||
"7ee9234e54": "Ghostty 설정을 찾았습니다.",
|
||||
|
||||
@@ -859,7 +859,7 @@
|
||||
"c6f37a563d": "+ 负责人",
|
||||
"f41ec96c13": "+ 标签",
|
||||
"ab050dffec": "已关闭",
|
||||
"dc1ca081a8": "进行中",
|
||||
"dc1ca081a8": "开放",
|
||||
"2e4d806c92": "工作区",
|
||||
"886a64b081": "还没有",
|
||||
"4ba0132f37": "编辑标签",
|
||||
@@ -1357,7 +1357,7 @@
|
||||
"14c9fc70ed": "+ 负责人",
|
||||
"bc215fea4d": "+ 标签",
|
||||
"b936cc51a4": "已关闭",
|
||||
"7b8f6bf6d8": "进行中",
|
||||
"7b8f6bf6d8": "开放",
|
||||
"a18d01cda3": "尚未报告任何 CI 检查",
|
||||
"3912daf310": "此PR尚未报告检查。",
|
||||
"45877f5089": "未找到检查",
|
||||
@@ -4766,12 +4766,12 @@
|
||||
"1a9383112b": "Conductor 进度",
|
||||
"caebe3c10f": "Conductor 评审",
|
||||
"895f381714": "Conductor 完成",
|
||||
"caabd5ca85": "锌",
|
||||
"caabd5ca85": "锌灰",
|
||||
"7adb43ecf0": "玫瑰",
|
||||
"ddf25b6262": "翡翠",
|
||||
"7cebab6d4a": "琥珀",
|
||||
"1b81da243a": "紫罗兰",
|
||||
"6437a8c253": "天空",
|
||||
"6437a8c253": "天蓝",
|
||||
"fc3b92756c": "蓝色",
|
||||
"52e3c6e2a4": "中性"
|
||||
}
|
||||
@@ -6097,7 +6097,7 @@
|
||||
},
|
||||
"McpConfigFileRow": {
|
||||
"b145eb6009": "环境:",
|
||||
"e720c139cd": "开放",
|
||||
"e720c139cd": "打开",
|
||||
"845ae248e8": "有效的"
|
||||
},
|
||||
"McpConfigSection": {
|
||||
@@ -11577,7 +11577,7 @@
|
||||
"86c0f1caa2": "内边距",
|
||||
"06a24f4f2d": "颜色",
|
||||
"c021e9dddd": "主题配色",
|
||||
"ab2a583a97": "Cursor",
|
||||
"ab2a583a97": "光标",
|
||||
"cc1858e19e": "字体",
|
||||
"248c812283": "导入",
|
||||
"7ee9234e54": "已检测 Ghostty 配置。",
|
||||
|
||||
Reference in New Issue
Block a user