Skip to content

dsh-code-checker v0.2.2

Choose a tag to compare

@noname-iii noname-iii released this 17 Aug 00:11
· 3 commits to main since this release

dsh-code-checker v0.2.2

新规则:有 GUI 的项目必须执行第 3 步 GUI 模拟

只要项目带有 GUI(用户操作界面——DeepSeek Harness 插件挂载的 Web 面板、网页、桌面窗口等),且第 1、2 步都通过,第 3 步必须走 GUI 模拟:

  • Web 类(DSH 插件面板 / 前端项目):自动从源码提取面板路径(如 webServer.register 的 path),对候选端口(含 3080)做 HTTP 探针 + Playwright 浏览器操作,绝不退化成 CLI 模拟;
  • 桌面类(tkinter/PyQt/swing/egui 等):走 Windows UIA 真实鼠标键盘模拟;
  • 第 1 步或第 2 步有问题时,仍按原流程:报错/汇报缺失功能,不强行模拟。

修复

  • SIMULATORS_DIR 对编译产物定位错误(lib/simulators 不存在),导致浏览器模拟脚本始终执行失败退出 1 → 改为向上查找真实 simulators 目录;
  • CLI 检查完成用 process.exit 强杀,undici 长连接句柄未收敛导致 Windows UV_HANDLE_CLOSING 断言崩溃(退出码 -1073740791)→ HTTP 探针改用 node:http(Connection: close)+ CLI 优雅退出;
  • web-playwright.mjs 在 Chromium 未安装时优雅上报“未安装”而非崩溃。

测试

  • 16/16 单元测试通过(新增 2 个 GUI 规则用例);selfcheck / portable-check / mcp-smoke 全绿;
  • 插件对自身执行检查:第 3 步现在走 web 模拟(探测 /code-checker/ 面板),结论“没有问题”。

安装

dsh plugin --profile web add github:noname-iii/dsh-code-checker
dsh plugin --profile web add ./dsh-code-checker-0.2.2.tgz   # 离线(本附件)

bundle 安装后需重启 dsh web 生效。