Ariver
2026-07-12 24f551a39eae849d891da26cc91f90d354e3a2db
CHANGELOG.md
@@ -1,5 +1,186 @@
# Changelog
## v2.2.2 (2026-07-03)
### 性能与稳定性恢复
- **恢复 2.2.1 本地体验包中的性能修复**:合入慢识别诊断、流水线耗时记录、识别 benchmark 工具和诊断服务,用于定位模型、录音、识别、粘贴和 UI 生命周期耗时。
- **强化引擎生命周期保护**:补入引擎重载串行化、释放保护和跨平台占位实现,降低频繁切换语言 / 模型或长时间运行时的状态竞争风险。
- **补入录音、热键、overlay 和事件订阅清理**:收敛 recorder、hotkey、overlay 与前端事件订阅的生命周期泄漏风险,改善长时间真实使用稳定性。
- **保留正式版本口径**:本版本恢复的是 `2.2.1 build 20260702.1737` 的修复内容,但正式候选版本升为 `2.2.2`,避免与旧 macOS arm64 local 体验包混淆。
### 构建
- build: `20260703.0335`
- 说明: 本版本为 2.2.1 性能 / 稳定性修复恢复后的正式候选源码目标;进入四包冻结前仍需代码审核、QA 和发布门禁。
---
## v2.2.0 (2026-07-02)
### 粤语语言版本
- **新增粤语语言选项**:输入配置页语言列表新增 `粤语`,位置紧跟 `中文`。
- **新增 SenseVoice Yue 模型 profile**:接入 `sherpa-onnx-sense-voice-zh-en-ja-ko-yue-int8-2025-09-09`,作为粤语默认离线模型。
- **固定粤语识别语言参数**:粤语模型加载时显式设置 SenseVoice `language=yue`,避免走默认自动识别。
- **收敛粤语模型列表**:粤语语言下只展示粤语默认模型,不把 Qwen3-ASR / X-ASR 作为粤语专项模型展示。
- **补充回归测试**:覆盖粤语语言 profile、模型校验、模型选择、engine 配置、前端构建和 Windows 交叉编译。
### 构建
- build: `20260702.0303`
- 说明: 本版本为 Round 6 粤语语言版本真实用户测试候选包基线,已完成代码审核和 QA 回归。
---
## v2.1.40 (2026-07-02)
### 多平台测试包整理
- **同步 macOS 与 App 版本元数据**:将 macOS `Info.plist` 与 App 内显示版本统一到 `2.1.40 (build 20260702.0143)`,避免 macOS 包继续显示旧 build。
- **新增 macOS universal 本地 DMG 构建入口**:可在同一 build 下生成 `arm64`、`x86_64` 和 `universal` 三种 macOS DMG,方便分别验证 Apple Silicon、Intel Mac 和双架构通用包。
- **继续提供 Windows x64 预览包**:保留 2.1.39 的 Windows 炫彩 overlay 预览能力,并统一升级到本次 build。
- **Release 目录收敛**:本版本作为整理后的最新版四包基线,旧产物统一归档到 `X-旧版build成果`。
### 构建
- build: `20260702.0143`
- 说明: 本版本为 macOS 三架构 DMG + Windows x64 预览 zip 的多平台测试包整理基线。
---
## v2.1.39 (2026-07-01)
### Windows 动态指示视觉升级
- **Windows overlay 升级为轻量炫彩胶囊**:保留原生 Win32 overlay 路线,不改热键、录音和识别链路,只提升视觉表现。
- **胶囊窗口更轻更透**:降低背景不透明度,加入更柔和的边框和内层高光,减轻之前厚重发闷的观感。
- **柱条动画更接近 macOS 风格**:柱条从 5 根扩展到 11 根,录音/处理中加入更丰富的动态起伏、光谱过渡和发光层。
- **仍保留 Windows 原生行为**:继续使用现有顶层窗、非激活、拖拽和定位逻辑,避免把视觉升级扩大成平台重构。
### 构建
- build: `20260701.2356`
- 说明: 本版本为 Windows 动态指示视觉升级后的预览候选包。
---
## v2.1.38 (2026-06-29)
### 性能诊断
- **新增识别流水线性能日志**:为录音尾部等待、停止录音、语音检测、模型识别、文本后处理、历史写入、热键释放等待、粘贴和总耗时加入 `PERF` 分段日志。
- **新增 macOS 粘贴链路性能日志**:记录辅助权限检查、剪贴板快照、写入剪贴板、剪贴板校验和 Cmd+V 的耗时,用于判断慢感是否来自粘贴安全链路。
- **保持识别行为不变**:本版本只增加诊断日志,不调整首尾字保护、模型选择、识别参数或 UI 行为。
### 构建
- build: `20260629.2014`
- 说明: 本版本为性能回退排查诊断候选包,用于真实使用几天后分析慢在识别、尾部等待还是粘贴链路。
### Windows 技术预览
- **新增 Windows 预览构建脚本**:`privatevoice.src/scripts/build-windows-preview.sh` 可生成 Windows x64 预览目录和 zip。
- **内置 Windows 真机 QA 采集脚本**:预览包包含 `QA-WINDOWS-PREVIEW.ps1`,用于采集 WebView2 / 音频端点预检信息、启动 App、打开 Notepad 目标文件、提示完成一次听写,并收集日志和目标文本证据。
- **新增双击 QA 启动器**:预览包包含 `RUN-WINDOWS-QA.cmd`,便于 Windows 测试者直接启动 QA 流程。
- **新增 Windows QA 证据验证脚本**:`privatevoice.src/scripts/verify-windows-qa-evidence.sh` 可检查返回的 `qa-evidence-*.zip` 是否证明启动、引擎、录音、识别和上屏。
- **预览版只开放 SenseVoice**:Windows build 中其他模型仍可见但置灰禁用,避免用户选择尚未验证的模型导致启动或识别失败。
- **打包 sherpa/onnxruntime 运行时 DLL**:预览包包含 `onnxruntime.dll`、`sherpa-onnx-c-api.dll`、`sherpa-onnx-cxx-api.dll`。
- **交付边界**:该产物是 Windows 技术预览,不是已签名安装器,也未完成 Windows 10/11 真机 QA。
---
## v2.1.37 (2026-06-29)
### 双构建线
- **默认 macOS 14+ 构建继续支持 Qwen3-ASR**:主 `go.mod` 保持当前 sherpa-onnx 依赖线,中文高级模型能力不回退。
- **新增 Monterey 兼容构建线**:新增 `monterey_compat` 构建标签和 `go.monterey.mod`,使用 macOS 11 兼容的旧版 sherpa/onnxruntime。
- **兼容包中 Qwen3-ASR 置灰禁用**:Qwen3-ASR 不隐藏,仍显示在中文模型列表中,但标记为不可用并提示需要 macOS 14 或更高版本。
- **构建最低系统版本分离**:默认构建声明 macOS 14.0 起,Monterey 兼容脚本覆盖为 macOS 11.0 起。
### 构建
- build: `20260629.0059`
- 说明: 本版本为双构建线和 Monterey 兼容本地验证候选包。
---
## v2.1.36 (2026-06-28)
### 首尾字稳定性修复
- **Hold 模式首字保护扩展到所有模型**:按下热键后立即启动本地预采集,确认不是组合键后保留这段音频,降低 SenseVoice / Qwen3-ASR / Moonshine / Parakeet 等离线模型开头 1-2 个字丢失的概率。
- **松键尾部采集保护扩展到所有模型**:松开热键后默认继续采集约 300ms 再停止录音,降低最后 1-2 个字被截断的概率。
- **保留取消和组合键隔离**:组合键或过早释放仍会丢弃预采集音频,不进入识别流程。
### 构建
- build: `20260628.2354`
- 说明: 本版本为首尾字稳定性修复的本地验证候选包。
---
## v2.1.35 (2026-06-23)
### 输入配置页排版优化
- **语言选择改为紧凑网格**:输入页语言列表从拥挤的多行 segmented control 调整为响应式网格,避免单个语言孤立成行。
- **模型列表改为 grouped list**:识别模型从多张独立卡片调整为统一分组列表,用内部分割线表达层级。
- **当前模型状态减噪**:当前模型只保留一个主要状态表达,减少蓝框、badge、禁用按钮同时出现造成的视觉负担。
### 构建
- build: `20260623.1435`
- 说明: 本版本为输入配置页排版优化后的本地验收候选包。
---
## v2.1.34 (2026-06-23)
### 输入配置页签拆分
- **语言选择独立成输入页签**:设置窗口新增“输入”页签,集中承载输入语言和离线识别模型选择。
- **首页设置减负**:首页保留热键、输入设备、提示音、剪贴板、开机启动和 Dock 图标等通用设置,减少语言区域拥挤感。
- **保持配置结构不变**:本版本只做阶段 1 信息架构拆分,不新增每语言默认模型、备用模型或自动模型选择配置。
### 构建
- build: `20260623.1312`
- 说明: 本版本为输入配置页签拆分的本地验收候选包。
---
## v2.1.33 (2026-06-23)
### 首启下载状态修复
- **下载中不再误报失败**:首启模型下载过程中,如果后端仍广播 `need_model` 状态,界面会继续保持下载态;只有下载调用真正失败或后端明确返回 `error` 时才显示失败。
### 构建
- build: `20260623.1242`
- 说明: 本版本为首启下载状态修复的本地验收候选包,基于 `v2.1.32` 多语种扩展候选包继续修复。
---
## v2.1.32 (2026-06-23)
### 多语种扩展候选包
- **欧洲五语正式语言基础**:新增 French、German、Spanish、Italian、Portuguese 语言版本,并将 Parakeet TDT v3 作为默认离线模型候选。
- **日语 / 韩语正式语言基础**:新增 Japanese、Korean 语言版本,分别接入日语 Zipformer ReazonSpeech 和韩语 Zipformer 专项模型。
- **动态语言选择**:设置页语言列表改为由后端语言 profile 动态返回,避免继续硬编码中文 / English。
- **多语种模型校验**:新增 Parakeet TDT v3、日语 Zipformer、韩语 Zipformer 的模型文件校验和默认模型回退测试。
- **本地化基础**:新增 `fr`、`de`、`es`、`it`、`pt`、`ja`、`ko` locale 文件,暂以核心设置页文案和英文 fallback 支撑验收。
### 构建
- build: `20260623.0012`
- 说明: 本版本为多语种扩展本地验收候选包;Canary / Whisper benchmark、真实语音 QA 和完整人工翻译仍需发布前补齐。
---
## v2.1.31 (2026-06-14)
### X-ASR 实验修复