## 背景 前端审计第二轮对 zh/en locale 与组件硬编码文案做审计。key 数量对齐无占位符错位,但语义漂移与绕过 i18n 问题集中。聚合追踪(第一轮已知的 DesktopEntryGate 硬编码与 onboarding 孤儿键在 #1818)。 ## 所属部分 - [x] 前端 - [ ] 后端 - [x] 客户端 ## 要做什么 - [ ] web workbench state.* zh 说 Hub / en 说 Edge,主体错配且行动指引相反 - [ ] desktop settings.marketInstalledProfiles/marketNoProfiles zh 讲 Hub CustomAgent / en 讲 Local Runtime seeds,同一界面两种语言两个来源 - [ ] toast 直接显示 `err.message`:`ConversationHost.tsx` 三处,上游 webPlatform/webWorkbenchApprovals throw 英文开发文案直达用户 → 错误码化 + i18n 映射 - [ ] chatview i18n aria.* 约 30 键 zh/en 值全为英文,中文读屏标签无翻译 - [ ] 硬编码文案集群:DesktopChrome aria-label 中文、desktop AuthPage 高级面板英文标签、ConversationHost 搜索面板中文传参、ConversationSidebar「搜索.../最近活动」、RightInspectorModePanel 空态、UserMessage 头像硬编码字母 D、日期 toLocaleDateString('zh-CN')/en-US 硬编码、ComposerControlParts 可见标签与 aria-label 两套文案 - [ ] 术语统一:desktop 通过/已通过 vs web 批准/已批准;代理 vs Agent/智能体(desktop 12 处);执行详情 vs 运行详情;产出文件 vs 产物;任务 vs Run - [ ] 机翻与非人话:run.status.draining「排水(完成中)」、chat.teamRunNoRoute 夹带英文技术短语、en "Waiting Approval"/"Cancel add" - [ ] 用户可见文案暴露 API 路径(/web/custom-agents、/web/execution-targets) - [ ] web common.json hub.toast.*/hub.error.* 17 个孤儿键(含暴露原始 reason 的 wsAuthFailed)→ 消费或删除 - [ ] DiffReviewPanel toolbarBtn 用 10px 字号渲染中文按钮,击穿 11px CJK 下限 - [ ] settings.onlineIm* zh 写当前状态 / en 写路线图,authPolicyDesc zh/en 内容完全不同 - [ ] 空态无行动引导(messages.empty/privateChats sidebar.empty 对照 project.* 补齐 hint) ## 验收标准 - [ ] zh/en 语义一致(仓库规则);无硬编码用户可见文案 - [ ] 用户可见错误全部走 i18n 映射,无英文开发文案/原始 API 路径 - [ ] 相关包 typecheck/test 通过 ## 相关文档 - 根 `AGENTS.md` §4(zh/en 语义一致要求)
背景
前端审计第二轮对 zh/en locale 与组件硬编码文案做审计。key 数量对齐无占位符错位,但语义漂移与绕过 i18n 问题集中。聚合追踪(第一轮已知的 DesktopEntryGate 硬编码与 onboarding 孤儿键在 #1818)。
所属部分
要做什么
err.message:ConversationHost.tsx三处,上游 webPlatform/webWorkbenchApprovals throw 英文开发文案直达用户 → 错误码化 + i18n 映射验收标准
相关文档
AGENTS.md§4(zh/en 语义一致要求)