From ce96a0e5272d6bcdf732dd0fc1ff8a9d9c834a0c Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Wed, 03 Jun 2026 15:00:58 +0800
Subject: [PATCH] Fix Round 4 model download QA issues

---
 CHANGELOG.md |   65 ++++++++++++++++++++++++++++++++
 1 files changed, 65 insertions(+), 0 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index cd87d89..202bde4 100755
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,70 @@
 # Changelog
 
+## v2.1.21 (2026-06-03)
+
+### QA 候选包
+
+- **Round 3 Moonshine English 默认模型**:English 语言版本默认 current model 改为 `moonshine-en`,中文语言版本继续默认 `sensevoice-zh`。
+- **Moonshine backend**:macOS sherpa-onnx 接入 Moonshine v1 四文件配置:`preprocess.onnx`、`encode.int8.onnx`、`uncached_decode.int8.onnx`、`cached_decode.int8.onnx`、`tokens.txt`。
+- **模型选择解析**:新增 `ModelSelectionMode=auto|manual`,旧配置缺字段时按 `auto` 处理,避免 Round 2 的 `SelectedModelID=sensevoice-zh` 锁死 English 默认模型。
+- **按当前模型下载**:Onboarding 改为调用 `DownloadCurrentModel()`,由后端根据 effective language 和 profile 选择下载 SenseVoice 或 Moonshine。
+- **语言切换同步模型**:设置页切换中文/English 后会刷新 current model;缺模型时进入 onboarding,已安装时重载引擎。
+- **安全回归保护**:Moonshine 初始化失败会清空旧引擎,避免用户实际继续使用旧模型;SenseVoice 中文路径和用户数据保持兼容。
+- **QA 资料**:新增 `02-P-NBL/round-3` 下 PRD、研发拆解、QA 计划、自查、复审、QA handoff 和 QA 预检记录。
+
+### 构建
+
+- build: `20260603.1327`
+- 说明: 本版本为 Round 3 QA 测试包候选,已完成源码级自查和 QA 预检,仍需真机验证 Moonshine 下载、加载、英文断网识别、history 写入、语言切换和中文 SenseVoice 回归。
+
+---
+
+## v2.1.20 (2026-06-03)
+
+### QA 候选包
+
+- **Round 2 语言版本设置**:设置页新增“语言版本”,支持自动、中文、English 三种模式。
+- **系统语言解析**:新增语言 profile 和 resolver,中文系统默认中文,English 系统默认 English,其他语言默认 English。
+- **前端 i18n 切换**:语言切换后设置页、侧边栏、关于页等关键文案立即切换。
+- **老用户兼容**:旧 `config.json` 缺少 `LanguageMode` / `LanguageID` 时可正常启动,并自动 fallback。
+- **模型隔离**:本轮语言切换不引入 Moonshine / Parakeet / Qwen3-ASR,不改写或删除 SenseVoice 模型。
+- **QA 资料**:新增 `02-P-NBL/round-2` 下 PRD、研发拆解、QA 计划、QA 报告和验收记录。
+
+### 构建
+
+- build: `20260603.1145`
+- 说明: 本版本为 Round 2 QA 通过后的测试包候选,已完成老用户升级、新用户临时 HOME、语言切换、重启持久化、断网启动和断网真实语音输入复测。
+
+---
+
+## v2.1.19 (2026-06-02)
+
+### QA 候选包
+
+- **Round 1 模型 Profile 架构基线**:将正式源码目录固定为 `privatevoice.src`,建立模型 profile、安装状态、resolver、staging 下载校验和旧 `models/sensevoice` fallback 基线,为后续 Moonshine / Parakeet / Qwen3-ASR 多模型扩展做准备。
+- **模型下载安全性**:下载流程改为临时目录下载、staging 解压校验、安全替换;primary URL 下载到坏包时会继续尝试 fallback URL;失败时不删除已有可用模型。
+- **启动状态可恢复**:engine 初始化区分缺模型和模型结构存在但不可加载,前端可通过 `EngineService.GetStatus()` 补查启动早期状态。
+- **QA 资料**:新增 `02-P-NBL/round-1` 下 PRD、研发拆解、QA 计划、自查记录、预检记录和自动化测试日志。
+
+### 构建
+
+- build: `20260602.2022`
+- 说明: 本版本为 Round 1 QA 测试包,尚需真机验证真实 SenseVoice 模型、麦克风权限、断网识别、replacement、历史写入、网络观察和 macOS 窗口/Dock smoke。
+
+---
+
+## v2.1.4 (2026-05-18)
+
+### 改进
+
+- **更新 macOS App 图标**:采用最终确认的 B 版白底蓝色麦克风矢量图标,并保留轻微麦克风层次阴影,重新生成 PNG、iconset 和 `icon.icns`。
+
+### 构建
+
+- build: `20260518.1748`
+
+---
+
 ## v2.1.3 (2026-05-18)
 
 ### 新功能

--
Gitblit v1.9.3