Repository navigation
Releases
Releases · EternalNight996/dsh-ui-three-body
v0.3.0 — DSH 0.2.x 双线兼容 + 本机状态路由
一、DSH 0.2.x 兼容适配(同时支持 0.1.7 与 0.2.0)
DSH 0.2.0 的设置系统是双端破坏性替换(官方 commit \601d6761e4\),本版逐项修复:
| 断点 | 修复 |
|---|---|
| host \ctx.settings.register()\ 被删(0.2 改为 SettingsForms + 活引用) | 新增 \lib/settings-host.js\,运行时形状嗅探把两代收敛成 {get,watch,update}\,含 revision 冲突自动重试 |
| 0.2 设置页只投影 \meta.volatile\ 字段,一个都没打就整页不显示 | 遍历 \schema.dict\ 逐字段打标(不能链式 .volatile()\——3.18.1 没这方法,会在 import 期炸) |
| client \settingsScope\ 服务被删(0.2 改为 \ctx.configForms\) | 新增 \src/client/settings-adapter.js\ 双形状归一,永不返回 null(空快照用单例引用,避免 useSyncExternalStore 死循环) |
| 硬声明 \settingsScope\ 会让插件在 0.2.0 下永不激活且静默不报错 | 从客户端硬依赖移除 |
| ^0.1.0-rc.7\ 经真实 semver 7.8.5 实测挡得住 0.2.0-rc.2 → 被兼容预检拒载 | peer 放宽为 >=0.1.0-rc.7 <0.3.0\,补 \engines.dsh\ 与 \dsh.compatibility\ 台账 |
二、本机状态路由(新能力)
新增 \GET /beast-tamer/api/state\(无需认证、只读)——官方 /api/*\ 一律要凭据(实测 401),故由插件自建路由。三条接缝约束全部遵守:避开 /api\ 前缀、\webServer.register()\ 必须包 \ctx.effect\、用 \ctx.inject\ 等 webServer 就绪。
三、配套
- 桌面宠物应用:https://github.com/EternalNight996/dsh-pet-sophon
- 官方智能体团队对比:\docs/AGENT-TEAMS-vs-PROJECT.md\
验证
- 三体:42 用例全绿(state-route 12 / metadata-compat 7 / settings-host 17 / client adapter 6)
- 诚实边界:本机运行时为 0.1.7-rc.2,0.2 路径无真机端到端验证,只有源码级证据与假 ctx 单测