figmar
|
cfc9d3c884
|
fix(apes-sidebar): dsh 声明改嵌套格式(修 DSH 拒绝加载)
根因:package.json 用扁平键 dsh.bundle.patch / dsh.client.inject /
dsh.client.platform,但 DSH loadRecoveryFilteredProfile 只认嵌套
dsh 对象({ bundle: { patch }, client: { inject, platform } })。
扁平格式导致 DSH 报 'profile bundle apes-sidebar declares no
dsh.bundle' → 恢复模式循环。
修正为与 dsh-better-sidebar 0.18.0 一致的嵌套格式:
dsh: {
bundle: { patch: './cordis.patch.yml' },
client: { inject: [betterSidebar, locale, sessions], platform: web }
}
验证:node_modules/apes-sidebar 的 dsh.bundle 字段存在,
格式与 better-sidebar 逐键一致(Object.keys 比对 true)。
门禁:typecheck rc=0 · build rc=0 · test 29/29
|
2026-09-04 21:08:09 +08:00 |
|
figmar
|
4e60dde18d
|
chore(apes-sidebar): 挂载验收脚本 scripts/verify-mount.cjs
模拟 DSH host 的 bundle 解析,验证 apes-sidebar 在 profile node_modules:
- package.json 可解析 (name=apes-sidebar v2.0.0)
- host entry 命名导出 { name, inject:['logger'], apply } 无 default
- invariant surface 可用 (assert)
- client entry 是 __ModuleLoader__ browser bundle(line 1 window)
- peer dsh-better-sidebar 满足 ^0.18.0
用法:node scripts/verify-mount.cjs(或 pnpm verify:mount)
依赖 profile 环境(~/.dsh/profiles/desktop 已装 apes-sidebar),
非单测门禁的一部分——CI 无 DSH profile 时跳过。
验收结果:14/14 通过(apes-sidebar 2.0.0 已挂载进
~/.dsh/profiles/desktop,dsh-better-sidebar 升级 ^0.17.1→0.18.0,
无新增 peer 冲突——所有 warning 为预存 runtime-provided peer)
门禁:typecheck rc=0 · build rc=0 · test 29/29
|
2026-09-04 20:54:53 +08:00 |
|