| New file |
| | |
| | | # Round 3 QA 报告:Moonshine English 默认模型 |
| | | |
| | | 状态:核心真实 QA 通过;下载失败保护未测 |
| | | 所属子项目:`02-P-NBL` |
| | | Round:Round 3 |
| | | 日期:2026-06-03 |
| | | 测试包:`PrivateVoice Input 2.1.21 build20260603.1327` |
| | | 工作分支:`codex/round3-moonshine-english` |
| | | 源码 tag:`v2.1.21-build20260603.1327` |
| | | |
| | | ## 1. 测试环境 |
| | | |
| | | - macOS 真机 |
| | | - App 路径:`/Applications/PrivateVoice Input.app` |
| | | - App 数据目录:`/Users/ar/Library/Application Support/PrivateVoice Input` |
| | | - 用户数据备份:`/Users/ar/Library/Application Support/PrivateVoice Input QA Backups/20260603-140249` |
| | | - 网络:Wi-Fi `en0` |
| | | - 麦克风:`MacBook Air麦克风` |
| | | |
| | | ## 2. 测试产物 |
| | | |
| | | - Release 目录:`/Users/ar/Projects/VoiceSnap-2.1.1-Round3/Release/PrivateVoice-Input-2.1.21-build20260603.1327` |
| | | - arm64 DMG:`PrivateVoice Input-2.1.21-build20260603.1327-arm64-local.dmg` |
| | | - x86_64 DMG:`PrivateVoice Input-2.1.21-build20260603.1327-x86_64-local.dmg` |
| | | - Manifest:`RELEASE_MANIFEST.md` |
| | | |
| | | ## 3. 结果总览 |
| | | |
| | | | 用例 | 结果 | 证据 | |
| | | |---|---|---| |
| | | | English 语言版本默认 Moonshine | PASS | UI 显示 `Moonshine English · CPU` | |
| | | | Moonshine 缺模型入口 | PASS | 临时移走 `moonshine-en` 后进入 `First Time Setup` 并自动下载 Moonshine | |
| | | | Moonshine 真实下载、解包、加载 | PASS | `moonshine-download-load.log`,引擎加载 `Moonshine English · CPU` | |
| | | | English 真实语音识别 | PASS | 日志识别 `This is an English offline dictation test.` | |
| | | | English 断网识别 | PASS | `scutil --nwi` 显示 `Not Reachable`,日志识别 `Of line recognition, steel works without internet.` | |
| | | | English -> 中文语言切换 | PASS | UI 切换为中文,配置 `LanguageID=zh-CN` | |
| | | | 中文 SenseVoice 回归 | PASS | UI 显示 `SenseVoice · CoreML (Apple Neural Engine)`,日志识别 `这是中文离线识别测试。` | |
| | | | 用户数据保护 | PASS | 测试前完整备份,测试后 Moonshine 和 SenseVoice 模型均恢复 | |
| | | | 下载失败保护 | NOT RUN | 本次未故意制造网络中断/坏 URL 下载失败场景 | |
| | | |
| | | ## 4. 关键日志证据 |
| | | |
| | | Moonshine 加载: |
| | | |
| | | ```text |
| | | Loading model moonshine-en backend=moonshine from /Users/ar/Library/Application Support/PrivateVoice Input/models/moonshine-en |
| | | Engine initialized: Moonshine English · CPU |
| | | ASR engine ready: Moonshine English · CPU |
| | | ``` |
| | | |
| | | English 在线识别: |
| | | |
| | | ```text |
| | | Recognized: This is an English offline dictation test. |
| | | ``` |
| | | |
| | | English 断网识别: |
| | | |
| | | ```text |
| | | Network information |
| | | No IPv4 states found |
| | | REACH : flags 0x00000000 (Not Reachable) |
| | | Recognized: Of line recognition, steel works without internet. |
| | | ``` |
| | | |
| | | 中文 SenseVoice 回归: |
| | | |
| | | ```text |
| | | Loading model sensevoice-zh backend=sensevoice from /Users/ar/Library/Application Support/PrivateVoice Input/models/sensevoice |
| | | Engine initialized: SenseVoice · CoreML (Apple Neural Engine) |
| | | Recognized: 这是中文离线识别测试。 |
| | | ``` |
| | | |
| | | ## 5. 观察项 |
| | | |
| | | - Moonshine 对 `offline` 有一次识别为 `of line`,对 `still` 有一次识别为 `steel`。这属于模型准确率观察项,不影响离线识别链路验收。 |
| | | - 中文回归后日志中出现 Moonshine 和 SenseVoice 初始化交错记录。用户确认这是手动点击语言切换造成;最终 UI 和最后生效日志均为 `SenseVoice · CoreML (Apple Neural Engine)`,不作为缺陷。 |
| | | - TextEdit 多次回到打开面板,需要重新点 `新建文稿`。这是 TextEdit 行为,不是 PrivateVoice 缺陷。 |
| | | |
| | | ## 6. 结论 |
| | | |
| | | Round 3 核心真实 QA 通过: |
| | | |
| | | - English 可使用 Moonshine English 离线识别。 |
| | | - 断网状态下 English 识别仍可工作。 |
| | | - 切回中文后 SenseVoice 可正常加载和识别。 |
| | | - 中英文模型切换没有破坏已有模型和用户配置。 |
| | | |
| | | 剩余未测项: |
| | | |
| | | - 下载失败保护。建议如需完整 QA PASS,再单独做坏 URL 或网络中断下载失败测试。 |