Repository navigation
v0.1.2
dsh-git-vcs 0.1.2 —— 适配 DeepSeek Harness 0.1.7
修复:面板一直显示「(未加载)」
DSH 0.1.7 的会话清单快照 SessionListState 移除了 current 字段(0.1.5 时代用它定位"当前会话"),
旧写法 sessions.byId[sessions.current] 取到 undefined → 默认仓库路径恒为空 → 面板连 repo/snapshot
都不发出去,于是分支胶囊停在「(未加载)」、路径框空白、中间提示手填路径(host 侧通道其实是好的)。
现在改走 session 作用域的标准 prop sessionId:
const sessionCwd = useSessions((state) => sessionCwdOf(state, sessionId))与官方 dsh-client-ui-sidebar-files 在 0.1.7 里的写法一致(useSessions((s) => s.byId[sessionId]?.cwd)),
并保留旧版本 state.current 回退,所以 0.1.5 / 0.1.7 都能自动打开会话工作目录。
变更清单
lib/client.js:新增sessionCwdOf(state, sessionId);引导页入口补上 0.1.7 要求的稳定idpackage.json:dsh.engines.dsh提到>=0.1.7-rc.2(不能写>=0.1.7:semver 下预发布版小于同号正式版)- 探针夹具同步成 0.1.7 真机 props 形态;
render-probe.mjs支持RENDER_PROBE_CLIENT反向对照 - 新增
scripts/live-probe.mjs:隔离 DSH_HOME 起真实例 + headless 浏览器打开带 token 的真实页面(诊断用) - README:兼容性表、更新记录、排障新增「(未加载)」一节
兼容性
| 项目 | 值 |
|---|---|
需要 @deepseek-ai/dsh |
≥ 0.1.7-rc.2 |
| 依赖的官方插件 | @deepseek-ai/dsh-client-ui-sidebar-right(随 web-app 分发) |
| 构建 | 零构建、零运行时依赖 |
自检
verify-host 64/64、render-probe 15/15、dom-probe 33/33、web-rpc-probe 在 0.1.7 下 401 = 路由在;
反向对照(把 cwd 取法还原成旧写法)新夹具立刻报 12 条红,证明断言咬得住这次的问题。
安装 / 升级
dsh plugin --profile web add dsh-git-vcs@0.1.2升级后重启 dsh web(host 半区是进程内代码),浏览器里再 Ctrl+Shift+R。