# Phase 3:双语骨架 + 腾讯 TMT 翻译管线 - 完成总结 ## 交付结论 - 结果:完成 - 完成时间:2026-10-25 09:40 ## 假设回顾 ### 已验证假设 - TMT TextTranslate 单请求上限 2000 字符,长文需分块(按段落聚合) - TMT 译文对文学内容质量有限,AI 标注 + 可人工润色锁定是补偿机制 ### 仍未完全验证的假设 - 无 ## 交付范围 ### 已交付 - T1 astro i18n 配置 + locale 管道 - T2 UI 字典 + 组件串接 - T3 语言切换组件(Header 中英互跳) - T4 /en/ 页面骨架 + AI 译文标注组件 - T5 TMT 翻译管线 - T6 存量翻译执行 + 标注落页 - T7 hreflang + 双语 RSS + sitemap locale - T8 构建验收 + staging ### 未交付 - 无 ### 偏差说明 - 无 ## 简化决策 ### 保持简单的关键选择 - 最简单可行方案:posts-en 独立集合 + TMT 管线脚本(幂等增量:未变文章不重译)+ /en/ 薄页面复用现有组件 - 暂不引入:runtime i18n 框架、cookie 语言记忆(切换即跳转,浏览器语言检测二期) - 不做的抽象/配置化:不多语言框架化(zh/en 硬两语) ### 本轮明确不做的内容 - 上线切换(Phase 4)、Halo 退役(Phase 5) ## 变更边界 ### 本轮主要改动模块 - 见 tasks.md 的 boundary 记录 ### 明确未触碰的区域 - 上线切换(Phase 4)、Halo 退役(Phase 5) ## 验证证据 ### 备注 - 机器证据:runs.jsonl(见验证范围的机器验证率) ## 验证范围 - 级别:package - 机器验证率:8/8 - 规则:check 与 done 复用该范围;只有记录升级触发时才执行全项目检查 ## 哲学生效证据 ### 行为成效回填 - Development Record 行为门禁通过 ### 一致性门禁回顾 - 验收面(checklist 或成功标准)已通过 ## Git 记录 - 日期时间:2026-10-25 09:40 - 范围:Phase 3:双语骨架 + 腾讯 TMT 翻译管线 - 功能:T1 astro i18n 配置 + locale 管道;T2 UI 字典 + 组件串接;T3 语言切换组件(Header 中英互跳);T4 /en/ 页面骨架 + AI 译文标注组件;T5 TMT 翻译管线;T6 存量翻译执行 + 标注落页;T7 hreflang + 双语 RSS + sitemap locale;T8 构建验收 + staging - 操作:提交 / 推送 - 成效:Development Record 行为门禁通过 - 提交:pending local commit - 提交区间:44bfb23efbd0bea97ae058c06c54b08d38ad73df..4aa79fca065c6aa70fa8a8ce1bf62b2b383f661e - 推送:not-run (push stage follows commit) ## AGENTS.md 增量提议 ```diff i18n 纪律:页面间不能传 props,双语页必须 body 提取为 components/pages/*Page 薄化(zh/en 各一层皮);页面搬目录后 import 相对深度全线要审;HTML 注释不可进 frontmatter 模块区;ts 端点首行误带 --- 会报 undefined:2:7。TMT 管线:1800+ 字符包服务端静默截断(CHUNK_LIMIT=1600 + ratio<0.3 检测 + 段边界二分);幂等 state 落 content/posts-en/.translation-state.json;locked:true 人工润色锁。翻译脚本幂等可重跑,新文章 push 后手动跑一次即可。 ``` ## 被拒绝的扩展提议 - 无 ## 门禁证据 - check_spec_package.py exit 0 ## 遗留事项 - 无;问题处置见下方结构化区块 ## 问题处置 ```json { "issues": [], "version": 1 } ```