## 1.1.2 **这一版补的是面板在三种真实状态下的行为**:宿主刚启动、标签页在后台、账号刚切换。三项都不改变正常路径的请求格式,只让等待、轮询与换号不再互相踩。 - **启动窗口的 404 会自愈**:dsh 的 Web 兜底处理器在插件路由挂上之前对任何未命中路径回 404。刷新页面撞上这个窗口时,`getJson` 现在对 `/qoder/` 的 GET 快速重试(350 / 800 / 1300ms);仍然 404 会明确提示「完全退出并重启 dsh」。POST 不重试(避免签到这类动作被重复执行),但仍会给出同样的重启提示。 - **换账号后旧响应不再覆盖新账号**:面板的 models / status / checkin / diagnostics 与对话页额度胶囊都按请求序号只接受最新结果,换号时清空旧模型与试跑模型。宿主端 `refreshExtras()` 按 `extrasGeneration` 隔离在途额度请求,旧账号的结果不会写进新账号缓存,新账号也不会复用旧 Promise。 - **后台标签页不再空转轮询**:设置页的状态 / 用量 / 账号 / 签到与对话页额度胶囊统一走可见性调度器。隐藏时停表,切回可见立即补一次再恢复定时;初始就在后台的页面会在第一次可见时启动,重复的 `visibilitychange` 事件不会触发多轮请求。 - **超大面板请求体也能读到 413**:超过 256KB 上限时先把剩余字节读掉再回 413,避免 Node 销毁请求流导致客户端先收到 `ECONNRESET`;存入内存的部分仍以 256KB 为上限。 - **发版校验更省心**:`npm run verify:release` 无参数时会选择与当前版本一致的 tgz,并列出被忽略的旧版本;同一版本出现多份时仍然拒绝猜。选中本地产物后还会逐字节对比工作区,版本号相同但忘了重新 `pack` 会直接失败。 ### 升级 tgz(推荐,可核对 SHA-256): ```bash dsh plugin --profile desktop add ./qoder-to-dsh-1.1.2.tgz ``` GitHub 直装: ```bash dsh plugin --profile desktop add github:Ianzhyh/qoder-to-dsh ``` 装完**完全退出 dsh 再打开**(插件在宿主启动时加载;只重开面板不会换掉已加载的代码)。 - 资产 SHA-256:`8de5cebb3c411244127ad0f0f2b030127ae41a966cead6c3cfdf0544cf9eccea`(32 个文件,578.2 KB) - 完整变更见 [CHANGELOG](https://github.com/Ianzhyh/qoder-to-dsh/blob/v1.1.2/CHANGELOG.md)。 ### 验证 - `npm run release:check` 全绿:模块语法检查 + 100 个用例 + 安装自检 11/11(`--offline`) - `npm run verify:release` 15/15:自动选中 v1.1.2 产物,32 个文件与工作区逐字节一致、两份 `VERSION` 一致、patch 名与包名一致、`tests/` 未混入 - 新增回归:启动窗口 404 重试 / POST 不重试 / 重试耗尽提示、后台暂停与恢复 / 事件风暴 / 初始隐藏、换号时旧额度请求不得覆盖新缓存、超限请求体完整读掉后再回 413 > 页面刷新后如果仍看到「插件接口还没就绪」,说明宿主里的插件代码还是旧的:完全退出 dsh 再重开即可。 > 非官方互操作实现,只使用你自己合法授权的 Qoder 账号;上游协议可能随时变化。失效时先看设置里的「诊断」页。