edit | blame | history | raw

Round 3 研发自查记录

状态:开发自查通过,待 QA
所属子项目:02-P-NBL
Round:Round 3
日期:2026-06-03
工作分支:codex/round3-moonshine-english
基线 commit:f66a79670c444010a59b8513c9f61257ebc7d9b6

1. 变更范围

本次已完成 Round 3 核心开发:

  • 新增 moonshine-en model profile。
  • English language profile 默认模型改为 moonshine-en
  • 新增 ModelSelectionMode=auto|manual,旧配置缺字段时按 auto 处理。
  • 新增 internal/modelselection 包,集中解析 current model。
  • engine.New() 改为按 current model 初始化。
  • macOS engine 新增 sherpa-onnx Moonshine v1 backend builder。
  • EngineService 新增 current model 状态、下载和重载 API。
  • Onboarding 改为下载 current model profile,不再由前端传 SenseVoice URL。
  • 设置页语言切换后会同步 current model,缺模型时进入 onboarding。
  • 引擎替换增加互斥保护,避免重载和识别并发关闭。
  • 前端文案去掉 Round 2 的“English 仍保持 SenseVoice”描述。

2. 明确未做

  • 未接入 Parakeet。
  • 未接入 Qwen3-ASR。
  • 未接入 Moonshine v2。
  • 未做模型选择页。
  • 未做模型删除 UI。
  • 未做正式签名和 notarization。

3. 自查命令

命令 结果 日志
npm run build PASS logs/npm-run-build-20260603.log
go test ./... -count=1 PASS logs/go-test-all-20260603.log
git diff --check PASS logs/git-diff-check-20260603.log

4. 等效代码复审

复审记录:code-review-current.md

5. 已知提示

npm run build 仍有既有 Svelte a11y warning:

  • UpdateDialog.svelte 的 dialog tabindex warning。
  • UpdateDialog.svelte 的 div interaction warning。
  • ToggleSwitch.svelte 的 aria-label warning。

这些 warning 不是本轮新增功能引入,当前不阻断 Round 3 QA。

6. 研发结论

Round 3 开发自查通过,可以进入 QA。