Repository navigation
v0.12.2 — 适配 DSH 0.2.0-rc.1
适配 DSH 0.2.0-rc.1:内核 peer 放宽为覆盖两代。
改了什么
- 6 个
@deepseek-ai/dsh-*peer 从^0.1.1-rc.1改为>=0.1.1-rc.1 <0.3.0。
为什么
caret 的上界是「下一个 minor」——^0.1.1-rc.1 展开为 >=0.1.1-rc.1 <0.2.0-0,对 0.2.0-rc.1 判定 false。而 peer 不满足时插件不会被加载,也不出现在 did not activate 列表里:它在进入 fiber 图之前就被跳过,界面不报错,只表现为少一批功能。内核一跨 minor,所有写成 ^0.1.x 的插件会一起静默失效。
判据用 typecheck,不用推理
把 devDependencies 的 6 个内核包升到 0.2.0-rc.1,用新内核的类型定义跑 tsc --noEmit:零错误——说明本插件没有使用新内核的 API,属「宽范围两边都能跑」那一类。故下限保持原值(作者实际验证过的最早版本),只放开上界。devDeps 不进发布包。
验证
- typecheck 零错误(用的就是 0.2.0 的类型定义),测试 166 例全绿。
- 隔离实例(
home-100/ssid-dev)实机加载:三个失败信号did not activate/pending (waiting for service/incompatible全为 0,@max-null/dsh-memory在 client combo URL 内。 - 关键:该实例的
compatibility.json豁免只写了@max-null/dsh-memory@0.12.1,本次挂 0.12.2 匹配不上仍加载成功——证明确实是 peer 本身满足了,而不是靠豁免续命。
兼容性
- 验证过的内核:
0.1.1-rc.2、0.2.0-rc.1。 - 0.1 线与 0.2 线都可装载;比
0.1.1-rc.1更早的内核未验证,不声称支持。