fix(i18n): restore identifiers and commands machine translation localized in ko/zh/es (#13124)

* fix(i18n): restore identifiers and commands machine translation localized

39 values in ko, zh and es are code rather than copy — shell commands, CSS
class strings, git-style identifiers, sample filenames and hostnames — and had
been machine-translated. pnpm install read pnpm 설치, text-foreground read
文本前景, pr-view read PR视图, and localhost:3000 read 本地主机:3000.

pnpm install is the font-mono placeholder of the setup-script input, and
gh auth login / glab auth login are the commands the integration panes tell the
user to run, so the translated forms are shown to users as text to type.

Catalog-only. Running repair-locale-catalog.mjs over these locales fixes the
same values but rewrites several hundred unrelated ones, because the catalogs
are stale against the current policy.

* fix(i18n): restore the zh code strings found by call-site context

@smwbev scanned by where a translate() renders — inside <code> or a font-mono
element — rather than by value shape, and found nine more in zh: upstream read
上游 in the base-ref picker, nbformat read nb格式, orca.yaml read Orca.yaml,
LIN-329 read 林-329, GH #1799 lost its space, and orca · zsh read Orca·zsh.

The matching NEVER_TRANSLATE_VALUES entries landed with #12934.

* test(i18n): guard restored technical literals

---------

Co-authored-by: Brennan Benson <79079362+brennanb2025@users.noreply.github.com>
This commit is contained in:
makoto-developer
2026-08-10 15:43:36 -07:00
committed by GitHub
co-authored by Brennan Benson
parent 72184b75fd
commit 0b5c5d6e74
4 changed files with 128 additions and 49 deletions
+11 -11
View File
@@ -3991,7 +3991,7 @@
"e643b30398": "Proyecto agregado en host SSH"
},
"AddRepoCreateStep": {
"0ae45b8238": "mi-proyecto",
"0ae45b8238": "my-project",
"a8149a3a5a": "Nombre",
"11fd2a7db8": "Repositorio Git",
"5e97f0c4b9": "Proyecto creado",
@@ -6060,7 +6060,7 @@
"a6c2816115": "y",
"b8a7efb3f6": "ORCA_BITBUCKET_EMAIL",
"8489c0aa49": "Bitbucket",
"e74de656ce": "inicio de sesión de autenticación glab",
"e74de656ce": "glab auth login",
"05e5245af7": "La CLI de GitLab está instalada pero no autenticada. Ejecute este comando en una terminal:",
"a83cac5726": "Instalar la CLI de GitLab",
"35a3379372": "Instale la CLI de GitLab para habilitar solicitudes de fusión, problemas y canalizaciones.",
@@ -6068,7 +6068,7 @@
"a3326f6f1b": "glabro",
"027440e1cb": "Fusionar solicitudes, problemas, todos y canalizaciones a través de",
"513abfe47d": "GitLab",
"51000487c4": "inicio de sesión de autenticación gh",
"51000487c4": "gh auth login",
"09285e9fe6": "La CLI de GitHub está instalada pero no autenticada. Ejecute este comando en una terminal:",
"399cf46867": "Instalar la CLI de GitHub",
"c0c8575e05": "Instale la CLI de GitHub para habilitar solicitudes de extracción, problemas y comprobaciones.",
@@ -6475,12 +6475,12 @@
"07ba35bc68": "Revisa la indentación bajo `scripts:`. Las claves de hooks deben usar dos espacios y las líneas de comandos deben usar cuatro.",
"787ca433ef": "Define solo las claves admitidas: `scripts`, `setup`, `archive` e `issueCommand`.",
"ecc73d9125": "Compara tu archivo con la plantilla funcional de abajo y copia esa estructura si hace falta.",
"925f9e0dc4": "texto-primer plano",
"925f9e0dc4": "text-foreground",
"0cc712b823": "El archivo de configuración principal existe en la raíz del repositorio, pero Orca aún no pudo analizar las definiciones de hooks admitidas.",
"c90b858573": "texto-ámbar-700 oscuro:texto-ámbar-300",
"c90b858573": "text-amber-700 dark:text-amber-300",
"aba825233f": "El archivo contiene claves de configuración que esta versión de Orca no reconoce. Es posible que necesites actualizar Orca o revisar el archivo en busca de errores tipográficos.",
"ca424ff135": "Los valores predeterminados compartidos de hooks y automatización de Issues están definidos en el repositorio y disponibles para todos los que lo usan.",
"32f417fe17": "texto-esmeralda-700 oscuro:texto-esmeralda-300",
"32f417fe17": "text-emerald-700 dark:text-emerald-300",
"8bfe65fc60": "Usar comandos locales",
"8d6c56bff8": "Ejecutar ambos",
"0fa21e19ec": "Nombre del workspace, normalmente basado en el nombre de la rama.",
@@ -6524,7 +6524,7 @@
"2b7d27b93c": "Usar {{value0}} como color del repositorio",
"fde066a63b": "Las cargas PNG deben tener un tamaño de 256 KB o menos.",
"cc1286e263": "Favicon",
"03ca1a4e9b": "ejemplo.com",
"03ca1a4e9b": "example.com",
"381b4844fd": "Subir PNG",
"7da623abcc": "Se usa de forma predeterminada: GitHub siempre proporciona uno, incluso cuando el propietario no configuró una imagen personalizada.",
"39da8a10bf": "Usar avatar de GitHub",
@@ -10951,7 +10951,7 @@
"9fffaf17c1": "Alternar barra lateral derecha ({{value0}})",
"b37ff4a89a": "puertos",
"9f83375839": "cheques",
"6306b48afd": "control de fuente",
"6306b48afd": "source-control",
"ef182dcb12": "buscar",
"fc3095d2ed": "explorador",
"aiVaultSessionHistory": "Agentes",
@@ -12421,7 +12421,7 @@
"9220794f6a": "laboral"
},
"ReviewAnimatedVisual": {
"8df4d52b68": "pr-vista",
"8df4d52b68": "pr-view",
"8ab622e4d6": "notas"
},
"FeatureWallBrowserAction": {
@@ -12697,7 +12697,7 @@
"19c45cfdc0": "Expandir todo",
"982d14bfa5": "Abrir todos los cambios",
"3d909843bb": "Abrir diff de rama",
"8368d256ec": "rama combinada",
"8368d256ec": "combined-branch",
"8f68ad9ca9": "Mostrar {{value0}} AI {{value1}}",
"724a13568d": "en {{value0}}",
"6094135eec": "frente a {{value0}}",
@@ -12889,7 +12889,7 @@
"8f4d2c1a9b": "Redimensionar tabla de contenido"
},
"MarkdownTemplatePicker": {
"22cd94426f": "sin título.md",
"22cd94426f": "untitled.md",
"6e2e6c04ad": "Markdown en blanco",
"df667919ca": "No hay plantillas que coincidan.",
"22fd4890ad": "Buscar plantillas...",
+7 -7
View File
@@ -2774,7 +2774,7 @@
"agent": {
"row": {
"ad991ece5c": "Agent 창을 더 이상 사용할 수 없습니다.",
"090d607412": "오래된 agent-{{value0}}"
"090d607412": "stale-agent-row-{{value0}}"
}
}
},
@@ -6053,7 +6053,7 @@
"a3326f6f1b": "glab",
"027440e1cb": "MR, 이슈, 할 일, 파이프라인을 다음 도구로 사용합니다.",
"513abfe47d": "GitLab",
"51000487c4": "gh 인증 로그인",
"51000487c4": "gh auth login",
"09285e9fe6": "GitHub CLI가 설치되어 있지만 인증되지 않았습니다. terminal에서 다음 명령을 실행하세요.",
"399cf46867": "GitHub CLI 설치",
"c0c8575e05": "PR, 이슈 및 검사를 활성화하려면 GitHub CLI를 설치하세요.",
@@ -8275,7 +8275,7 @@
"compareAgainstUpstreamDescription": "소스 제어가 커밋된 변경 사항 비교에 기본으로 사용할 기준을 선택합니다. 브랜치 업스트림은 현재 브랜치를 자동으로 따라가며, 업스트림이 없으면 저장소 기본 브랜치로 돌아갑니다. 비교 기준은 해당 worktree의 Git 패널에서 worktree별로 변경할 수 있습니다. Pull Request 및 리베이스 대상은 변경되지 않습니다.",
"compareBase": "비교 기준",
"currentBranch": "현재 브랜치",
"upstream": "업스트림",
"upstream": "upstream",
"localChanges": "로컬 변경 사항",
"originMaster": "origin/master",
"committedChanges": "커밋된 변경 사항",
@@ -10951,7 +10951,7 @@
"9fffaf17c1": "오른쪽 사이드바 표시/숨기기({{value0}})",
"b37ff4a89a": "포트",
"9f83375839": "검사",
"6306b48afd": "소스 제어",
"6306b48afd": "source-control",
"ef182dcb12": "검색",
"fc3095d2ed": "탐색기",
"aiVaultSessionHistory": "에이전트",
@@ -12198,7 +12198,7 @@
"00078a6134": "설정에서 보기",
"14327073cc": "저장",
"88469e926b": "설정 스크립트",
"5c5b65044e": "pnpm 설치",
"5c5b65044e": "pnpm install",
"a7463915b6": "설정 스크립트를 저장하지 못했습니다.",
"6299297dac": "설정 스크립트가 저장되었습니다.",
"f0bbf7da77": "사용해 보세요",
@@ -12697,7 +12697,7 @@
"19c45cfdc0": "모두 확장",
"982d14bfa5": "commit 되지 않은 Diff 열기",
"3d909843bb": "브랜치 diff 열기",
"8368d256ec": "결합 브랜치",
"8368d256ec": "combined-branch",
"8f68ad9ca9": "{{value0}} AI {{value1}} 표시",
"724a13568d": "{{value0}}에서",
"6094135eec": "대 {{value0}}",
@@ -12889,7 +12889,7 @@
"8f4d2c1a9b": "목차 크기 조절"
},
"MarkdownTemplatePicker": {
"22cd94426f": "제목없음.md",
"22cd94426f": "untitled.md",
"6e2e6c04ad": "빈 Markdown",
"df667919ca": "일치하는 템플릿이 없습니다.",
"22fd4890ad": "템플릿 검색...",
+31 -31
View File
@@ -547,7 +547,7 @@
"notification": {
"b0536028c9": "打开快捷键",
"141ad6c004": "处理终端快捷方式",
"0ab0cd001a": "大小 4 文本静音前景"
"0ab0cd001a": "size-4 text-muted-foreground"
}
}
}
@@ -2212,7 +2212,7 @@
"IssueSourceSelector": {
"d6aeb2012b": "显示议题来自",
"787c970baf": "议题来源",
"643d7e9496": "上游",
"643d7e9496": "upstream",
"51d1608920": "origin",
"cdc9bd64fa": "紧凑",
"30b2c9df91": "上游"
@@ -3827,7 +3827,7 @@
"c7f9b3f0c1": "关",
"8b12c0850a": "保存",
"de8fce5854": "取消",
"ddbcaef7be": "src/渲染器包/ui",
"ddbcaef7be": "src/renderer packages/ui",
"0e9ad9c798": "目录",
"064c1e2d12": "渲染器用户界面",
"b3a500c623": "名称",
@@ -3984,7 +3984,7 @@
"e643b30398": "添加了远程项目"
},
"AddRepoCreateStep": {
"0ae45b8238": "我的项目",
"0ae45b8238": "my-project",
"a8149a3a5a": "名称",
"11fd2a7db8": "Git 存储库",
"5e97f0c4b9": "项目已创建",
@@ -5463,7 +5463,7 @@
"0de9fda203": "放弃",
"c71770c455": "{basePrompt}",
"f19a56498d": ";您的分支前缀设置仍然适用。",
"800edb1e54": "修复登录流程",
"800edb1e54": "fix-login-flow",
"5d569f5199": "。 Orca 仅生成最后一段,例如",
"570817d126": "和",
"56580dcf60": "。您还可以参考",
@@ -5487,7 +5487,7 @@
"63121132c0": "放弃",
"4416b25d29": "优先使用任务中的领域名词,避免工单 ID,并保持名称便于评审人理解。",
"39278f4411": ";您的分支前缀设置仍然适用。",
"ebb942a2ec": "修复登录流程",
"ebb942a2ec": "fix-login-flow",
"af2d9a2cc6": "。 Orca 仅生成最后一段,例如",
"182d419b97": "内置分支名称提示",
"2f5dc661fe": "附加到 Orca 的",
@@ -5506,7 +5506,7 @@
"ade9a5bb03": ") 来确定结果范围。",
"b468f46726": "upstream/main",
"80f7c82303": ")或完整的参考(例如",
"915ad97875": "上游",
"915ad97875": "upstream",
"a5c16712c1": "已检测多个遥控器。输入远程名称(例如",
"9a14ec7400": "选择下面的一个基础分支",
"086ce7f369": "跟随主分支 ({{value0}})",
@@ -6057,7 +6057,7 @@
"a6c2816115": "和",
"b8a7efb3f6": "ORCA_BITBUCKET_EMAIL",
"8489c0aa49": "Bitbucket",
"e74de656ce": "glab 身份验证登录",
"e74de656ce": "glab auth login",
"05e5245af7": "GitLab CLI 已安装但未经过身份验证。在终端中运行此命令:",
"a83cac5726": "安装 GitLab CLI",
"35a3379372": "安装 GitLab CLI 以启用合并请求、议题和管道。",
@@ -6065,7 +6065,7 @@
"a3326f6f1b": "光亮的",
"027440e1cb": "通过合并请求、议题、待办事项和管道",
"513abfe47d": "GitLab",
"51000487c4": "gh 验证登录",
"51000487c4": "gh auth login",
"09285e9fe6": "GitHub CLI 已安装但未经过身份验证。在终端中运行此命令:",
"399cf46867": "安装 GitHub CLI",
"c0c8575e05": "安装 GitHub CLI 以启用PR、议题和检查。",
@@ -6431,7 +6431,7 @@
"RepositoryHooksSection": {
"af49e2a19e": "该文件存在,但 Orca 找不到有效的“scripts”或“issueCommand”定义。",
"3397879bee": "并且本地命令存在,选择哪个运行。",
"39da2ae12f": "Orca.yaml",
"39da2ae12f": "orca.yaml",
"ac9038d2cc": "当两者",
"32fec28f5b": "命令源",
"bbbd6e0bc4": "命令源 & orca.yaml",
@@ -6472,12 +6472,12 @@
"07ba35bc68": "检查 `scripts:` 下的缩进。钩子键应使用两个空格,命令行应使用四个空格。",
"787ca433ef": "仅定义支持的键:`scripts`、`setup`、`archive` 和 `issueCommand`。",
"ecc73d9125": "将你的文件与下面可用的模板进行比较,并在需要时复制该结构。",
"925f9e0dc4": "文本前景",
"925f9e0dc4": "text-foreground",
"0cc712b823": "核心配置文件存在于仓库根目录中,但 Orca 尚无法解析支持的钩子定义。",
"c90b858573": "文本-Amber-700 深色:文本-Amber-300",
"c90b858573": "text-amber-700 dark:text-amber-300",
"aba825233f": "该文件包含此版本的 Orca 无法识别的配置密钥。您可能需要更新 Orca,或检查文件是否有拼写错误。",
"ca424ff135": "共享挂钩和议题自动化默认值在仓库中定义,可供所有使用它的人使用。",
"32f417fe17": "文本-emerald-700 深色:文本-emerald-300",
"32f417fe17": "text-emerald-700 dark:text-emerald-300",
"8bfe65fc60": "使用本地命令",
"8d6c56bff8": "运行两者",
"0fa21e19ec": "工作区的名称,通常基于分支名称。",
@@ -6998,7 +6998,7 @@
"a05bc9183f": "保存预设",
"2d7d45e991": "取消",
"c240a16f25": "使用仓库相对路径,例如packages/web 或apps/api。",
"fde7ff2cc3": "包/网络共享/ui",
"fde7ff2cc3": "packages/web shared/ui",
"caf33029cc": "目录",
"3b6f1abd3e": "例如仅限网络",
"a6fcdd9e3c": "名称",
@@ -8287,7 +8287,7 @@
"compareAgainstUpstreamDescription": "选择源代码管理在比较已提交变更时默认使用的基准。分支上游会自动跟随当前分支;如果没有上游,则回退到仓库默认分支。你仍然可以在对应 worktree 的 Git 面板中按 worktree 更改对比基准。Pull Request 和变基目标不会改变。",
"compareBase": "对比基准",
"currentBranch": "当前分支",
"upstream": "上游",
"upstream": "upstream",
"localChanges": "本地变更",
"originMaster": "origin/master",
"committedChanges": "已提交的更改",
@@ -8413,7 +8413,7 @@
"ac0a985873": "模拟器技能",
"9353854ff3": "Orca 模拟器",
"d4b7833894": "Orca CLI",
"84e5706975": "服务SIM卡",
"84e5706975": "serve-sim",
"7c5a8a2bee": "Xcode",
"bec7231663": "平板电脑",
"49727355a3": "iPhone",
@@ -8613,7 +8613,7 @@
"repository": {
"search": {
"bc7e504b8e": ".orca/issue-command",
"603c68b68c": "Orca.yaml",
"603c68b68c": "orca.yaml",
"9dc60d7f6d": "GitHub",
"ec70364df2": "工作流程",
"66b584bd6c": "issue 命令",
@@ -10971,7 +10971,7 @@
"9fffaf17c1": "切换右侧边栏 ({{value0}})",
"b37ff4a89a": "端口",
"9f83375839": "检查",
"6306b48afd": "源代码控制",
"6306b48afd": "source-control",
"ef182dcb12": "搜索",
"fc3095d2ed": "资源管理器",
"aiVaultSessionHistory": "智能体",
@@ -12106,7 +12106,7 @@
"0f8481e1a7": "发送给 Claude",
"3d2352f94b": "描述一下变化……",
"d8856b604a": "div.pricing-grid > div.card.starter:nth-of-type(1) > a.cta",
"7da6eed7bf": "本地主机:3000",
"7da6eed7bf": "localhost:3000",
"0a2bd01c02": "新浏览器选项卡",
"04096318ab": "终端 1",
"eb88125c6f": "✓ 已验证 — 免费试用仍然有效。",
@@ -12161,19 +12161,19 @@
"ef8b164dd1": "审查 src/auth",
"952d3ddd9a": "会话开始",
"771d8881c2": "claude",
"6ed43cb0e0": "仪表板规格.ts",
"24fedd5a52": "登录规范",
"6ed43cb0e0": "dashboard.spec.ts",
"24fedd5a52": "login.spec.ts",
"8279e9d95b": "运行 12 项测试",
"6218a9014d": "pnpm剧作家测试",
"04d54d50ec": "Orca·zsh",
"6218a9014d": "pnpm playwright test",
"04d54d50ec": "orca · zsh",
"1aa8a9a24a": "可拆分终端",
"2a7cfc82c8": "链接到 GH #1842",
"3822d8d14b": "修复/worktree-picker-截断",
"d54aefe09e": "-329",
"d54aefe09e": "LIN-329",
"40bbd92ef4": "开始",
"c1f28c03b2": "工作树选择器截断",
"fc0cc0b267": "GH #1842",
"0688842445": "GH#1799",
"0688842445": "GH #1799",
"bee6b4088d": "GitHub 和 Linear 任务",
"5171768676": "协调3个智能体",
"cebc7769cd": "重新设计身份验证流程",
@@ -12308,9 +12308,9 @@
"623881d72e": "checkout.spec.ts",
"5c5cbd783f": "1.2秒)",
"3261c6853b": " 可以登录",
"defe550fe2": "登录规范",
"defe550fe2": "login.spec.ts",
"0b20782e0f": "使用 4 名工作人员运行 12 项测试",
"4371cc9931": "pnpm剧作家测试",
"4371cc9931": "pnpm playwright test",
"16877e038d": "向下拆分",
"a2b114dad0": "向右拆分 ·",
"0bc9ad0cd1": "同一窗格:",
@@ -12441,7 +12441,7 @@
"9220794f6a": "处理中"
},
"ReviewAnimatedVisual": {
"8df4d52b68": "PR视图",
"8df4d52b68": "pr-view",
"8ab622e4d6": "笔记"
},
"FeatureWallBrowserAction": {
@@ -12717,7 +12717,7 @@
"19c45cfdc0": "全部展开",
"982d14bfa5": "打开未提交的差异",
"3d909843bb": "打开分支差异",
"8368d256ec": "组合分支",
"8368d256ec": "combined-branch",
"8f68ad9ca9": "显示 {{value0}} AI {{value1}}",
"724a13568d": "在 {{value0}}",
"6094135eec": "与 {{value0}}",
@@ -12852,7 +12852,7 @@
"10ed04a685": "笔记本单元在本机上从笔记本文件夹执行本地 Python。仅运行您信任的文件中的单元。",
"9e06ae5d36": "运行笔记本代码?",
"d6f37a640b": "空笔记本",
"8c3b21369a": "nb格式",
"8c3b21369a": "nbformat",
"329764e9fc": "BETA",
"15ec40a735": "保存笔记本",
"07e7d96612": "细胞",
@@ -12909,7 +12909,7 @@
"8f4d2c1a9b": "调整目录大小"
},
"MarkdownTemplatePicker": {
"22cd94426f": "无标题.md",
"22cd94426f": "untitled.md",
"6e2e6c04ad": "空白 Markdown",
"df667919ca": "没有匹配的模板。",
"22fd4890ad": "搜索模板...",
@@ -0,0 +1,79 @@
import { describe, expect, it } from 'vitest'
import en from './locales/en.json'
import es from './locales/es.json'
import ko from './locales/ko.json'
import zh from './locales/zh.json'
const repairedEntries = [
['es', 'auto.components.sidebar.AddRepoCreateStep.0ae45b8238'],
['es', 'auto.components.settings.IntegrationsPane.e74de656ce'],
['es', 'auto.components.settings.IntegrationsPane.51000487c4'],
['es', 'auto.components.settings.RepositoryHooksSection.925f9e0dc4'],
['es', 'auto.components.settings.RepositoryHooksSection.c90b858573'],
['es', 'auto.components.settings.RepositoryHooksSection.32f417fe17'],
['es', 'auto.components.settings.RepositoryIconPicker.03ca1a4e9b'],
['es', 'auto.components.right.sidebar.index.6306b48afd'],
['es', 'auto.components.feature.wall.ReviewAnimatedVisual.8df4d52b68'],
['es', 'auto.components.editor.CombinedDiffViewer.8368d256ec'],
['es', 'auto.components.editor.MarkdownTemplatePicker.22cd94426f'],
['ko', 'auto.components.terminal.pane.stale.agent.row.090d607412'],
['ko', 'auto.components.settings.IntegrationsPane.51000487c4'],
['ko', 'auto.components.settings.git.search.upstream'],
['ko', 'auto.components.right.sidebar.index.6306b48afd'],
['ko', 'auto.components.feature.wall.FeatureWallSetupWorkflowActions.5c5b65044e'],
['ko', 'auto.components.editor.CombinedDiffViewer.8368d256ec'],
['ko', 'auto.components.editor.MarkdownTemplatePicker.22cd94426f'],
['zh', 'auto.lib.terminal.shortcut.capture.notification.0ab0cd001a'],
['zh', 'auto.components.github.IssueSourceSelector.643d7e9496'],
['zh', 'auto.components.sparse.SparseCheckoutPresetSelect.ddbcaef7be'],
['zh', 'auto.components.sidebar.AddRepoCreateStep.0ae45b8238'],
['zh', 'auto.components.settings.AutoRenameBranchFromWorkSetting.800edb1e54'],
['zh', 'auto.components.settings.AutoRenameBranchPromptEditor.ebb942a2ec'],
['zh', 'auto.components.settings.BaseRefPicker.915ad97875'],
['zh', 'auto.components.settings.IntegrationsPane.e74de656ce'],
['zh', 'auto.components.settings.IntegrationsPane.51000487c4'],
['zh', 'auto.components.settings.RepositoryHooksSection.39da2ae12f'],
['zh', 'auto.components.settings.RepositoryHooksSection.925f9e0dc4'],
['zh', 'auto.components.settings.RepositoryHooksSection.c90b858573'],
['zh', 'auto.components.settings.RepositoryHooksSection.32f417fe17'],
['zh', 'auto.components.settings.SparsePresetSettingsSection.fde7ff2cc3'],
['zh', 'auto.components.settings.git.search.upstream'],
['zh', 'auto.components.settings.mobile.emulator.search.84e5706975'],
['zh', 'auto.components.settings.repository.search.603c68b68c'],
['zh', 'auto.components.right.sidebar.index.6306b48afd'],
['zh', 'auto.components.feature.wall.BrowserAnimatedVisual.7da6eed7bf'],
['zh', 'auto.components.feature.wall.FeatureTourPreview.6ed43cb0e0'],
['zh', 'auto.components.feature.wall.FeatureTourPreview.24fedd5a52'],
['zh', 'auto.components.feature.wall.FeatureTourPreview.6218a9014d'],
['zh', 'auto.components.feature.wall.FeatureTourPreview.04d54d50ec'],
['zh', 'auto.components.feature.wall.FeatureTourPreview.d54aefe09e'],
['zh', 'auto.components.feature.wall.FeatureTourPreview.0688842445'],
['zh', 'auto.components.feature.wall.WorkbenchAnimatedVisual.defe550fe2'],
['zh', 'auto.components.feature.wall.WorkbenchAnimatedVisual.4371cc9931'],
['zh', 'auto.components.feature.wall.ReviewAnimatedVisual.8df4d52b68'],
['zh', 'auto.components.editor.CombinedDiffViewer.8368d256ec'],
['zh', 'auto.components.editor.IpynbViewer.8c3b21369a'],
['zh', 'auto.components.editor.MarkdownTemplatePicker.22cd94426f']
] as const
const catalogs = { es, ko, zh } as const
function readValue(catalog: object, key: string): unknown {
return key.split('.').reduce<unknown>((value, part) => {
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
return undefined
}
return (value as Record<string, unknown>)[part]
}, catalog)
}
describe('technical literal catalog repairs (#13121)', () => {
it('keeps every repaired value identical to English', () => {
expect(repairedEntries).toHaveLength(49)
for (const [locale, key] of repairedEntries) {
expect(readValue(catalogs[locale], key), `${locale}:${key}`).toBe(readValue(en, key))
}
})
})