# Round 3 Todo List:Moonshine English 默认模型 状态:已完成 所属子项目:`02-P-NBL` Round:Round 3 日期:2026-06-03 ## 1. 文档与启动 - [x] 创建 Round 3 worktree:`/Users/ar/Projects/VoiceSnap-2.1.1-Round3` - [x] 基于 `v2.1.20-build20260603.1145` 创建分支:`codex/round3-moonshine-english` - [x] 读取项目规则和全局交付/QA/发布规则 - [x] 核准 sherpa-onnx Moonshine v1 文件结构 - [x] 创建 Round 3 PRD - [x] 创建 Round 3 研发任务拆解 - [x] 创建 Round 3 QA 测试计划 ## 2. 研发实现 - [x] 新增 `moonshine-en` profile - [x] English language profile 默认模型改为 `moonshine-en` - [x] 新增 `ModelSelectionMode` - [x] 实现 current model resolver - [x] 改造 `engine.New()` 使用 current model resolver - [x] 新增 Moonshine backend builder - [x] 保持 SenseVoice backend 不退化 - [x] 改造 `EngineService.ModelExists()` 检查 current model - [x] 新增 `EngineService.DownloadCurrentModel()` - [x] 前端 onboarding 改为调用 `DownloadCurrentModel()` - [x] 语言切换后刷新 current model 状态 - [x] Onboarding 文案去除 SenseVoice 写死表达 ## 3. 开发自查 - [x] `go test ./... -count=1` - [x] `npm run build` - [x] `git diff --check` - [x] 研发自查报告 - [x] QA handoff ## 4. QA - [x] 自动化/半自动 QA - [x] English 新用户 Moonshine 下载和识别 - [x] 中文老用户 SenseVoice 回归 - [x] 语言切换模型同步 - [x] 断网英文识别 - [x] 下载失败保护 - [x] 缺文件保护 - [x] QA 报告 ## 5. 交付 - [x] 用户验收候选包 - [x] 用户验收 - [x] 测试包版本递增 - [x] 生成 `.dmg` - [x] 生成 `RELEASE_MANIFEST.md` - [x] 验证 `.dmg` - [x] tag ## 6. 暂缓记录:后续 UI 与品牌命名调整 以下需求已记录,等进入合适的 UI/品牌整理节点再实现,不作为 Round 3 Moonshine 验收阻断项: - [ ] 左侧 Logo 区只显示 `PrivateVoice`,下方小字显示 `Private. Offline.`。 - [ ] App 正式名称从 `PrivateVoice Input` 改为 `PrivateVoice Dictation`。实现时需要同步界面显示、macOS App bundle 名称、DMG 文件名、Info.plist、release manifest、测试文档和用户可见文案。