# 变更记录 只记录用户可感知的变化。版本遵循 SemVer。已发布版本和 tag 不覆盖。 ## 0.3.1 - 2026-10-04 ### 修复 - 浏览器卸载时取消排队的发送锁与回执撤销锁,卸载后不再留下挂起的投递等待。 ### 兼容范围 - 补充 `engines.dsh`,供插件市场显示本插件支持的宿主范围。 ## 0.3.0 - 2026-10-04 ### 兼容范围 - 声明 `peerDependencies`:`@deepseek-ai/dsh` 限定为 `>=0.2.0-rc.2 <0.3.0-0`。在不受支持的 dsh 上安装会被插件管理器拒绝并回滚,而不是装上后才出问题;需要时可用 `dsh plugin allow-version` 逐版本豁免。 ### 新增 - 通知可显示 `ask_user_question` 的问题正文(默认开启,可在“通知外观”关闭)。正文在宿主从工具参数提取并做长度与数量限制;关闭时正文不会随订阅响应发给浏览器,通知只保留分类与会话标识。 ## 0.2.0 - 2026-10-04 ### 修复 - 修复浏览器提醒在 dsh `0.2.0-rc.2` 上完全无法连接的问题。原实现用 `connection.rpc.handle` 注册通道;官方实现会用调用方 Context 读取 `webServer`,晚于 `connection` 加载的插件注册必然失败,错误只进入静默日志。现在改用官方受认证的精确 Fetch 路由 `/api/state-notifier`,信任边界、浏览器认证、请求关联与取消仍由官方 Connection 负责。 - 系统通知的会话标识不再只显示被截断的 `session-` 前缀,改为真实会话短标识;可在“通知外观”中选择显示会话标题。 - 测试入口不再写死 Node 24 的 `--test-isolation=none`。Node 22 只有 `--experimental-test-isolation=none`,原脚本会让声明支持的 Node 22 与 CI 直接失败。`npm test` 现在按当前版本选择拼写,并在两者都不支持时退回默认隔离。 ### 新增 - 声音与桌面通知改为复选框开关。浏览器要求用户手势才能解锁声音或授权通知,只有在该状态才出现一次“点击解锁/授权”提示。 - “声音方案与试听”“通知外观”“权限及运行信息”改为默认折叠面板,底部状态与说明统一收纳。 - 每个事件类别可单独选择合成音方案(默认、柔和、明亮、急促),也可一键应用到全部。 - 铃铛图标可选内置图标,或上传本机图片;上传只写入本机 `localStorage`,不发送到宿主,限制 32KB 与受支持的图片类型。 ### 文档 - 记录会话头部铃铛只在会话非空后渲染的官方行为,避免把它当作插件缺陷。 - 增加完整 dsh Web 验收脚本 `scripts/web-acceptance.mjs` 与运行说明。 ## 0.1.0 - 2026-10-03 ### 新增 - 五类任务提醒、主会话过滤、严格完成判定与完成耗时门槛。 - 浏览器合成音、系统通知、会话跳转、音量与本机静音设置。 - 跨标签页发送协调、有界回执、断线补发与实例游标重置。 - 基于官方 Connection 的认证订阅通道,以及终端 BEL 降级。 - 中文调研、架构、验收与交接文档。 ### 兼容范围 - 固定核对 npm dsh `0.2.0-rc.2` 和 Git `5badb15`。 - 具体运行证据与尚未完成的系统验收见 `docs/STATUS.md`。