概览
dsh-notify-toast
README / ZH
插件文档
目录摘要
dsh.pub 核对固定版本的组合包契约、运行时事实与分发语义;完整 README 请查看源仓库。
在 GitHub 阅读完整 READMELIMITATIONS
已知限制
1. 页面必须处于打开状态(DSH 窗口最小化可以,但页面进程不能退出);浏览器关闭则没有通知。 2. 通知权限被拒绝 / 系统不支持 Web Notification 时:设置页显示状态,原生 toast 不可用(保留声音与点击回窗能力),不崩溃。 3. Windows 关闭了通知横幅、或开启了专注助手时,原生 toast 可能只进通知中心不弹横幅;设置页「系统通知」计数与「测试系统通知」可用于确认,请在 Windows 设置中允许该应用通知并关闭专注助手。 4. 首次提示音需要页面上发生过一次用户手势(Chromium 自动播放策略);未解锁前声音静默,通知照常。 5. 点击回窗的置前依赖 DSH 自带 koffi 原生模块;模块路径变化/加载失败时降级为 `window.focus()`,可能不置前但仍会打开会话。 6. 多窗口/多标签页时用 localStorage 租约(5 s 心跳、15 s 过期)只让一个窗口弹 toast/出声;租约竞争极端情况下可能短暂重复。 7. 子代理完成始终不提醒;对子代理的提问/审批仍会提醒(它们同样阻塞任务)。 8. 「完成」正文取最后一条助手回复的首段;若回复只有代码/工具调用,正文回退为「点击查看」。 9. 合并只针对「完成」;提问/授权不合并(需要你尽快处理)。 10. **Windows 原生 toast 的退场动画和横幅停留时间由 Windows 控制**(Windows 设置/专注助手);「通知自动移除时间(近似)」控制进度更新停止与通知中心保留窗口,不保证横幅精确停留 N 秒。到期后插件会短暂缓冲再调用 `Hide()` 收回横幅;`Hide()` 的视觉过渡仍由 Windows 决定。 11. 原生进度通知的点击回会话依赖 C# helper 的本地激活回调;回调失败时可能只关闭通知、无法定位会话。提示条不再使用 `dsh://open` 协议唤起,避免点击时另起 DSH 实例/会话。 12. 原生 helper 首次运行会在 `%LOCALAPPDATA%\dsh-notify-toast\native-cache` 编译/缓存一个 C# DLL;编译失败或 PowerShell/C# 不可用时自动回退兼容通知。 13. 插件不修改 DSH 核心;DSH 升级若改动上述事件/RPC/settings 契约,插件可能需要同步升级。 14. DSH 0.2.1-rc.2 的官方 `connection.rpc.handle` 自身有 bug(`cannot get property "webServer" without inject`), 插件已自动回退为同路径 + `connection.requestRejection` 的官方栅栏路由;这不改变客户端行为,但 DSH 修复该 API 后插件会优先走官方 channel。 ---
