From 516375d8a2c6c43a12268b5dbf95f126fe53a598 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Wed, 03 Jun 2026 01:43:57 +0800
Subject: [PATCH] Add Round 2 QA precheck

---
 02-P-NBL/round-2/todo-list.md           |    1 
 02-P-NBL/round-2/qa-precheck-current.md |  112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 113 insertions(+), 0 deletions(-)

diff --git a/02-P-NBL/round-2/qa-precheck-current.md b/02-P-NBL/round-2/qa-precheck-current.md
new file mode 100644
index 0000000..dc28807
--- /dev/null
+++ b/02-P-NBL/round-2/qa-precheck-current.md
@@ -0,0 +1,112 @@
+# Round 2 QA 预检记录
+
+状态:预检通过,待真机 QA
+日期:2026-06-03
+分支:`codex/round2-language-settings`
+commit:`9a85354 Implement Round 2 language settings`
+worktree:`/Users/ar/Projects/VoiceSnap-2.1.1-Round2`
+
+## 1. 已执行预检
+
+### 1.1 规则复读
+
+已重新读取:
+
+- `/Users/ar/.codex/AGENTS.md`
+- `/Users/ar/Projects/VoiceSnap-2.1.1/AGENTS.md`
+- `/Users/ar/.codex/rules/work-continuity.md`
+- `/Users/ar/.codex/rules/delivery-gate.md`
+- `/Users/ar/.codex/rules/qa-workflow.md`
+
+结论:
+
+- Round 2 当前仍有明确 QA Todo,应继续推进。
+- 开发自测通过不等于 QA 完成。
+- 真机 UI 交互、用户数据、权限、安装包类动作需要单独记录证据。
+
+### 1.2 自动化验证
+
+已执行:
+
+```bash
+cd privatevoice.src/frontend
+npm run build
+```
+
+结果:PASS。
+
+日志:
+
+```text
+/Users/ar/Projects/VoiceSnap-2.1.1-Round2/02-P-NBL/round-2/logs/npm-run-build-20260603.log
+```
+
+已执行:
+
+```bash
+cd privatevoice.src
+go test ./... -count=1
+```
+
+结果:PASS。
+
+日志:
+
+```text
+/Users/ar/Projects/VoiceSnap-2.1.1-Round2/02-P-NBL/round-2/logs/go-test-all-20260603.log
+```
+
+已执行:
+
+```bash
+git diff --check
+```
+
+结果:PASS。
+
+### 1.3 Focused Review
+
+已复核:
+
+- 语言设置代码只新增 `LanguageMode` / `LanguageID`,不改 `SelectedModelID` 默认值。
+- English profile 本轮默认模型仍为 `sensevoice-zh`。
+- 设置页语言切换不调用模型下载、删除或迁移 API。
+- App 启动时以前端调用后端 `GetLanguageSettings()` 为 i18n 事实源。
+- 托盘菜单语言改为使用后端 effective language。
+
+未发现立即阻断 Round 2 QA 的问题。
+
+## 2. 仍需真机 QA 的项目
+
+以下项目不能仅靠自动化预检关闭:
+
+- 老用户旧 config 升级后 UI 默认中文。
+- 设置页手动切换中文 / English / 自动后的即时 UI 切换。
+- 重启后语言选择持久化。
+- 切换语言后 `config.json`、`userdict.json`、`history.json`、模型目录不被破坏。
+- 切换语言后断网识别仍可用。
+- English UI 下设置页和 onboarding 关键文案可读。
+- 不出现 Moonshine、Parakeet、Qwen3-ASR。
+- macOS 窗口、Dock、菜单栏 smoke。
+
+## 3. 当前限制
+
+尚未构建或安装 Round 2 App。
+
+原因:
+
+- 项目规则要求:只有开发自测通过但 QA 尚未通过时,不得把版本作为测试人员可用包交付。
+- Round 2 当前仍处于 QA 待执行状态。
+- 如果要做真机 UI QA,需要单独运行或安装 Round 2 App,并记录对用户真实数据目录的影响。
+
+## 4. 建议下一步
+
+进入 Round 2 真机 QA,建议顺序:
+
+1. 在运行前备份当前 `/Users/ar/Library/Application Support/PrivateVoice Input`。
+2. 使用 Round 2 worktree 构建本地运行实例或临时安装包。
+3. 验证老用户升级路径。
+4. 验证设置页语言切换。
+5. 验证断网识别回归。
+6. 生成 Round 2 QA 报告。
+
diff --git a/02-P-NBL/round-2/todo-list.md b/02-P-NBL/round-2/todo-list.md
index 3f5efc6..f379351 100644
--- a/02-P-NBL/round-2/todo-list.md
+++ b/02-P-NBL/round-2/todo-list.md
@@ -35,6 +35,7 @@
 - [ ] 准备 detector mock 或测试开关。
 - [ ] 准备非法 config 测试样本。
 - [ ] 准备断网识别回归步骤。
+- [x] 准备 QA 预检记录。
 - [ ] 准备 QA 报告模板。
 
 ## 4. 验收

--
Gitblit v1.9.3