dsh-kingdom 2.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/ASSETS_NOTICE.md +22 -22
  2. package/README.md +244 -243
  3. package/THIRD_PARTY_NOTICES.md +92 -92
  4. package/docs/DSH-KINGDOM-3.0-ANNOUNCEMENT.md +13 -0
  5. package/docs/V2.0-RELEASE-NOTES.md +30 -30
  6. package/docs/V2.0-USER-GUIDE.md +74 -74
  7. package/docs/V3.0-RELEASE-NOTES.md +21 -0
  8. package/docs/V3.0-USER-GUIDE.md +33 -0
  9. package/docs/V3.1-RELEASE-NOTES.md +72 -0
  10. package/lib/core/binding.js +2 -0
  11. package/lib/core/binding.js.map +1 -1
  12. package/lib/core/db.js +546 -546
  13. package/lib/core/delivery-ack.js +1356 -0
  14. package/lib/core/delivery-ack.js.map +1 -0
  15. package/lib/core/delivery-change.js +1237 -0
  16. package/lib/core/delivery-change.js.map +1 -0
  17. package/lib/core/owner-window.js +592 -11
  18. package/lib/core/owner-window.js.map +1 -1
  19. package/lib/core/task-service.js +144 -5
  20. package/lib/core/task-service.js.map +1 -1
  21. package/lib/gui/assets/characters/chancellor-idle.svg +67 -67
  22. package/lib/gui/assets/characters/chancellor-sleeping.svg +67 -67
  23. package/lib/gui/assets/characters/chancellor-thinking.svg +67 -67
  24. package/lib/gui/assets/characters/chancellor-working.svg +67 -67
  25. package/lib/gui/assets/characters/knight-redraw-r1-idle.svg +67 -67
  26. package/lib/gui/assets/characters/knight-redraw-r1-sleeping.svg +67 -67
  27. package/lib/gui/assets/characters/knight-redraw-r1-thinking.svg +67 -67
  28. package/lib/gui/assets/characters/knight-redraw-r1-working.svg +67 -67
  29. package/lib/gui/assets/characters/supervisor-idle.svg +67 -67
  30. package/lib/gui/assets/characters/supervisor-sleeping.svg +67 -67
  31. package/lib/gui/assets/characters/supervisor-thinking.svg +67 -67
  32. package/lib/gui/assets/characters/supervisor-working.svg +67 -67
  33. package/lib/gui/console-app.js +7 -1
  34. package/lib/gui/console-app.js.map +1 -1
  35. package/lib/gui/contract.js +6 -0
  36. package/lib/gui/contract.js.map +1 -1
  37. package/lib/gui/owner-control.js +114 -4
  38. package/lib/gui/owner-control.js.map +1 -1
  39. package/lib/gui/owner-ui.js +604 -183
  40. package/lib/gui/owner-ui.js.map +1 -1
  41. package/lib/gui/server.js +109 -109
  42. package/lib/gui/snapshot.js +127 -4
  43. package/lib/gui/snapshot.js.map +1 -1
  44. package/lib/gui/visual-assets.js +37 -21
  45. package/lib/gui/visual-assets.js.map +1 -1
  46. package/lib/gui/visual-system.js +269 -269
  47. package/lib/gui/workbench-ui.js +537 -136
  48. package/lib/gui/workbench-ui.js.map +1 -1
  49. package/lib/gui/workbench.js +123 -0
  50. package/lib/gui/workbench.js.map +1 -1
  51. package/lib/index.js +338 -26
  52. package/lib/index.js.map +1 -1
  53. package/lib/types/core/binding.d.ts +15 -0
  54. package/lib/types/core/delivery-ack.d.ts +688 -0
  55. package/lib/types/core/delivery-change.d.ts +381 -0
  56. package/lib/types/core/owner-window.d.ts +235 -2
  57. package/lib/types/core/task-service.d.ts +22 -0
  58. package/lib/types/gui/contract.d.ts +153 -1
  59. package/lib/types/gui/owner-control.d.ts +61 -1
  60. package/lib/types/gui/snapshot.d.ts +8 -0
  61. package/lib/types/gui/visual-assets.d.ts +16 -0
  62. package/lib/types/gui/workbench.d.ts +47 -1
  63. package/lib/types/index.d.ts +49 -0
  64. package/lib/types/worker/governed-executor.d.ts +15 -0
  65. package/lib/worker/governed-executor.js +21 -0
  66. package/lib/worker/governed-executor.js.map +1 -1
  67. package/package.json +79 -75
@@ -1,92 +1,92 @@
1
- # Third-party notices
2
-
3
- The dsh-Kingdom npm package does not bundle its JavaScript peer dependencies
4
- or development dependencies. Those dependencies are installed separately and
5
- remain subject to their own licenses and notices.
6
-
7
- No third-party artwork is included in the twelve character SVG assets; see
8
- `ASSETS_NOTICE.md`.
9
-
10
- ## Inline GUI icons: Lucide
11
-
12
- `src/gui/visual-assets.ts` includes a minimal, static subset of the Lucide SVG
13
- icons. There is no Lucide runtime dependency, CDN request, or remote font.
14
- Only SVG whitespace and the outer accessibility/class attributes were adapted;
15
- the upstream geometry is retained.
16
-
17
- - Project: https://github.com/lucide-icons/lucide
18
- - Exact source revision: `a537cb6eb323b885f4c60baf3cec1a995982d167`
19
- (upstream commit dated 2026-09-07; retrieved 2026-09-08).
20
- - Icon source directory: https://github.com/lucide-icons/lucide/tree/a537cb6eb323b885f4c60baf3cec1a995982d167/icons
21
- - License source: https://github.com/lucide-icons/lucide/blob/a537cb6eb323b885f4c60baf3cec1a995982d167/LICENSE
22
-
23
- | GUI key | Upstream SVG |
24
- | --- | --- |
25
- | map | `icons/map.svg` |
26
- | management | `icons/sliders-horizontal.svg` |
27
- | ledger | `icons/book-open.svg` |
28
- | refresh | `icons/refresh-cw.svg` |
29
- | chancellor | `icons/crown.svg` |
30
- | supervisor | `icons/shield-check.svg` |
31
- | worker | `icons/bot.svg` |
32
- | plan | `icons/clipboard-list.svg` |
33
- | assign | `icons/git-branch.svg` |
34
- | next | `icons/arrow-right.svg` |
35
- | run | `icons/play.svg` |
36
- | review | `icons/clipboard-check.svg` |
37
- | accept | `icons/circle-check.svg` |
38
- | lock | `icons/lock-keyhole.svg` |
39
- | error | `icons/circle-alert.svg` |
40
- | idle | `icons/circle.svg` |
41
- | unknown | `icons/circle-question-mark.svg` |
42
- | empty | `icons/inbox.svg` |
43
-
44
- The complete upstream license, including its Feather attribution and MIT
45
- license, follows unchanged. These permissive terms are retained alongside the
46
- project's AGPL-3.0-or-later license.
47
-
48
- ```text
49
- ISC License
50
-
51
- Copyright (c) 2026 Lucide Icons and Contributors
52
-
53
- Permission to use, copy, modify, and/or distribute this software for any
54
- purpose with or without fee is hereby granted, provided that the above
55
- copyright notice and this permission notice appear in all copies.
56
-
57
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
58
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
59
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
60
- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
61
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
62
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
63
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
64
-
65
- ---
66
-
67
- The following Lucide icons are derived from the Feather project:
68
-
69
- airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
70
-
71
- The MIT License (MIT) (for the icons listed above)
72
-
73
- Copyright (c) 2013-present Cole Bemis
74
-
75
- Permission is hereby granted, free of charge, to any person obtaining a copy
76
- of this software and associated documentation files (the "Software"), to deal
77
- in the Software without restriction, including without limitation the rights
78
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
79
- copies of the Software, and to permit persons to whom the Software is
80
- furnished to do so, subject to the following conditions:
81
-
82
- The above copyright notice and this permission notice shall be included in all
83
- copies or substantial portions of the Software.
84
-
85
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
86
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
87
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
88
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
89
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
90
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
91
- SOFTWARE.
92
- ```
1
+ # Third-party notices
2
+
3
+ The dsh-Kingdom npm package does not bundle its JavaScript peer dependencies
4
+ or development dependencies. Those dependencies are installed separately and
5
+ remain subject to their own licenses and notices.
6
+
7
+ No third-party artwork is included in the twelve character SVG assets; see
8
+ `ASSETS_NOTICE.md`.
9
+
10
+ ## Inline GUI icons: Lucide
11
+
12
+ `src/gui/visual-assets.ts` includes a minimal, static subset of the Lucide SVG
13
+ icons. There is no Lucide runtime dependency, CDN request, or remote font.
14
+ Only SVG whitespace and the outer accessibility/class attributes were adapted;
15
+ the upstream geometry is retained.
16
+
17
+ - Project: https://github.com/lucide-icons/lucide
18
+ - Exact source revision: `a537cb6eb323b885f4c60baf3cec1a995982d167`
19
+ (upstream commit dated 2026-09-07; retrieved 2026-09-08).
20
+ - Icon source directory: https://github.com/lucide-icons/lucide/tree/a537cb6eb323b885f4c60baf3cec1a995982d167/icons
21
+ - License source: https://github.com/lucide-icons/lucide/blob/a537cb6eb323b885f4c60baf3cec1a995982d167/LICENSE
22
+
23
+ | GUI key | Upstream SVG |
24
+ | --- | --- |
25
+ | map | `icons/map.svg` |
26
+ | management | `icons/sliders-horizontal.svg` |
27
+ | ledger | `icons/book-open.svg` |
28
+ | refresh | `icons/refresh-cw.svg` |
29
+ | chancellor | `icons/crown.svg` |
30
+ | supervisor | `icons/shield-check.svg` |
31
+ | worker | `icons/bot.svg` |
32
+ | plan | `icons/clipboard-list.svg` |
33
+ | assign | `icons/git-branch.svg` |
34
+ | next | `icons/arrow-right.svg` |
35
+ | run | `icons/play.svg` |
36
+ | review | `icons/clipboard-check.svg` |
37
+ | accept | `icons/circle-check.svg` |
38
+ | lock | `icons/lock-keyhole.svg` |
39
+ | error | `icons/circle-alert.svg` |
40
+ | idle | `icons/circle.svg` |
41
+ | unknown | `icons/circle-question-mark.svg` |
42
+ | empty | `icons/inbox.svg` |
43
+
44
+ The complete upstream license, including its Feather attribution and MIT
45
+ license, follows unchanged. These permissive terms are retained alongside the
46
+ project's AGPL-3.0-or-later license.
47
+
48
+ ```text
49
+ ISC License
50
+
51
+ Copyright (c) 2026 Lucide Icons and Contributors
52
+
53
+ Permission to use, copy, modify, and/or distribute this software for any
54
+ purpose with or without fee is hereby granted, provided that the above
55
+ copyright notice and this permission notice appear in all copies.
56
+
57
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
58
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
59
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
60
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
61
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
62
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
63
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
64
+
65
+ ---
66
+
67
+ The following Lucide icons are derived from the Feather project:
68
+
69
+ airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
70
+
71
+ The MIT License (MIT) (for the icons listed above)
72
+
73
+ Copyright (c) 2013-present Cole Bemis
74
+
75
+ Permission is hereby granted, free of charge, to any person obtaining a copy
76
+ of this software and associated documentation files (the "Software"), to deal
77
+ in the Software without restriction, including without limitation the rights
78
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
79
+ copies of the Software, and to permit persons to whom the Software is
80
+ furnished to do so, subject to the following conditions:
81
+
82
+ The above copyright notice and this permission notice shall be included in all
83
+ copies or substantial portions of the Software.
84
+
85
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
86
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
87
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
88
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
89
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
90
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
91
+ SOFTWARE.
92
+ ```
@@ -0,0 +1,13 @@
1
+ # dsh-Kingdom 3.0 本地候选:让 Agent 的交付,真正到达人
2
+
3
+ 一轮 Worker 执行的结果经宿主接收,主管审查并接受后,人若只看到一句“审核系统完成了”,仍很难判断自己该看什么、哪里变了、还有哪些问题需要追问。dsh-Kingdom 3.0 在已有 2.0 工作台上加入一份可逐层打开的交付清单,由 Owner 主动查看;宰相目前不会自动上报。
4
+
5
+ 先看结果,再看依据。Owner 可以从交付摘要进入具体事项、产物、风险和改动证据。点开一项,能看到它对应的内容版本;点“查看改动”,能进一步查看有界的文件差异。未提交的修改也能通过执行前后快照保留证据,由主管挑选并确认哪些条目属于本次交付。界面会明确写出“主管确认的改动证据”——它不是 Git 对 Worker 作者身份的证明,覆盖不足也不会伪装成完整记录。
6
+
7
+ 看过之后,可以逐条点“知悉”。这不是考试,也不是让系统猜人是否理解:Owner 点了并在管理窗口确认,就表示“我知道这一条当前版本”。摘要与细项各记各的;后续内容改版,旧知悉留在历史,新版本重新待知悉。知悉不会替主管验收,也不会把任务自动标成完成。
8
+
9
+ 如果还想问,从那条内容直接点“提问”。问题固定在该任务、该条目、该版本上,由**接受这份交付的主管**在自己的会话身份下读取并回复。回复回到同一条问答记录;主管退任或换绑时,系统明确显示不可达,不会悄悄把问题交给继任者。未确认主管已读取之前,界面只说“待领取”,不把写入账本误称为已经通知。
10
+
11
+ 这一轮的核心不是让 Agent 多说几段总结,而是让人可以沿着“结论 → 细节 → 改动 → 问题”自主深入,并把自己已经知悉的版本留成可追溯事实。按钮和图标承担操作,长文字只留给真正需要解释的内容。
12
+
13
+ 3.0.0 目前是本地候选:这批新内容是在已升级的 2.0 工作台上完成的;开发期曾用仍标为 2.0.0 的本地包提前安装验证,现在把它准确归入 3.0。它还不是 npm/GitHub 上已发布的新版本。知悉不是最终验收,改动证据不是作者鉴定,真实 Agent 回合与正式验收仍需单独验证。我们希望先把信息差变成看得见、点得开、问得清的界面,再用真实使用反馈检验它是否真的减轻人的负担。
@@ -1,30 +1,30 @@
1
- # dsh-Kingdom 2.0.0
2
-
3
- 2.0 将目标草稿、任务执行、主管审查、交付、用量与人类管理窗口放在同一个个人工作台中。默认一个执行者;独立子项适合并行时,先审核一份固定版本的协作计划,再由主管按预算、依赖与工作区约束推进。
4
-
5
- ## 功能与使用边界
6
-
7
- - 今日工作台、任务、待我处理、王国地图、用量、设置六个入口;四主题、窄屏、键盘与减少动态效果偏好。
8
- - 独立短时人类管理窗口,准确预览变更、确认提交、查询回执;到期、撤销、窗口替换和丢响应不会自动扩大权限或重发操作。
9
- - 协作最多两个子项和一个独立整合者;只读资源可共享,写资源独占,接受的前置结果才可交接。子项完成后父任务仍须实际整合与单独审查。
10
- - 用量区分实报、估计预留、未确认、共享与恢复中。软预算限制新增工作,在途请求仍可能计费;金额未知不会显示为零。
11
- - 超时不等于执行失败,未知执行先对账;证据不足时保留占用和 RECOVERING,不自动重发。
12
-
13
- 本版不包含记忆系统、跨任务召回、自动会话续接或无限扩队。工具按需展示保持关闭,协作须明确采纳。真实人工减负和付费 Token 节省尚未完成成对测量,不宣传具体收益比例。
14
-
15
- ## 安装与兼容
16
-
17
- 参阅随包提供的 [使用指南](V2.0-USER-GUIDE.md)。验证组合是 Windows、Node 24.11.1、DSH CLI 0.1.5-rc.1 和主要组件 0.1.5-rc.2;2.0 的 DSH peer 范围明确限定在相应 rc 系列。旧宿主请使用对应旧版 Kingdom。避免在插件目录安装另一份 DSH Core。
18
-
19
- 升级前先停止新增任务并核对未决执行,做 SQLite 一致备份,在新路径恢复副本验证。WAL 模式不能只复制主数据库。正式数据库、任意旧库、v3→v4 迁移及持续并发写入备份均未在本轮执行;不能从打包成功推断迁移安全。
20
-
21
- ## 发布前修复与验证
22
-
23
- - 已采纳计划固定执行者,拒绝会让计划永久失效的 HANDOFF;普通任务原有转交保持可用。
24
- - 失败或中止的准确尝试经主管 REWORK 后可以重试,包括真实派发事务和多个失败子项的逐项恢复。历史未结算执行仍阻断新增工作。
25
- - Legacy 与受治理入口双向遵守真实目录写互斥,覆盖父子目录及链接别名;检查与执行事实创建同事务,失败整体回滚。
26
- - 管理窗口明确拒绝提交后保留输入并允许重新预览;结果未知时保留非敏感操作引用,刷新后先查询原回执,不重复发送。窄屏可完整读取计划指纹。
27
- - 修复 Unix socket 路径过长导致的本地通信启动失败;超出系统字节上限时在创建资源前给出明确原因。完整认证与清理边界不变。
28
- - 打包前重新编译;发布脚本在编译或测试非零退出时停止。CI 和 smoke 使用隔离 fixture,不读取用户的正式数据库。
29
-
30
- Windows 干净工作区全量检查中 **473 项通过**;Unix 专用路径检查在 Linux CI 中验证。发布还核对隔离 smoke、准确包的官方 DSH 本地 SSE 接线、四主题与宽/窄屏 GUI、包内容与远端摘要。上述运行使用隔离数据和脚本模型,用于核对产品接线与失败路径,不代表真实付费模型质量或收益。
1
+ # dsh-Kingdom 2.0.0
2
+
3
+ 2.0 将目标草稿、任务执行、主管审查、交付、用量与人类管理窗口放在同一个个人工作台中。默认一个执行者;独立子项适合并行时,先审核一份固定版本的协作计划,再由主管按预算、依赖与工作区约束推进。
4
+
5
+ ## 功能与使用边界
6
+
7
+ - 今日工作台、任务、待我处理、王国地图、用量、设置六个入口;四主题、窄屏、键盘与减少动态效果偏好。
8
+ - 独立短时人类管理窗口,准确预览变更、确认提交、查询回执;到期、撤销、窗口替换和丢响应不会自动扩大权限或重发操作。
9
+ - 协作最多两个子项和一个独立整合者;只读资源可共享,写资源独占,接受的前置结果才可交接。子项完成后父任务仍须实际整合与单独审查。
10
+ - 用量区分实报、估计预留、未确认、共享与恢复中。软预算限制新增工作,在途请求仍可能计费;金额未知不会显示为零。
11
+ - 超时不等于执行失败,未知执行先对账;证据不足时保留占用和 RECOVERING,不自动重发。
12
+
13
+ 本版不包含记忆系统、跨任务召回、自动会话续接或无限扩队。工具按需展示保持关闭,协作须明确采纳。真实人工减负和付费 Token 节省尚未完成成对测量,不宣传具体收益比例。
14
+
15
+ ## 安装与兼容
16
+
17
+ 参阅随包提供的 [使用指南](V2.0-USER-GUIDE.md)。验证组合是 Windows、Node 24.11.1、DSH CLI 0.1.5-rc.1 和主要组件 0.1.5-rc.2;2.0 的 DSH peer 范围明确限定在相应 rc 系列。旧宿主请使用对应旧版 Kingdom。避免在插件目录安装另一份 DSH Core。
18
+
19
+ 升级前先停止新增任务并核对未决执行,做 SQLite 一致备份,在新路径恢复副本验证。WAL 模式不能只复制主数据库。正式数据库、任意旧库、v3→v4 迁移及持续并发写入备份均未在本轮执行;不能从打包成功推断迁移安全。
20
+
21
+ ## 发布前修复与验证
22
+
23
+ - 已采纳计划固定执行者,拒绝会让计划永久失效的 HANDOFF;普通任务原有转交保持可用。
24
+ - 失败或中止的准确尝试经主管 REWORK 后可以重试,包括真实派发事务和多个失败子项的逐项恢复。历史未结算执行仍阻断新增工作。
25
+ - Legacy 与受治理入口双向遵守真实目录写互斥,覆盖父子目录及链接别名;检查与执行事实创建同事务,失败整体回滚。
26
+ - 管理窗口明确拒绝提交后保留输入并允许重新预览;结果未知时保留非敏感操作引用,刷新后先查询原回执,不重复发送。窄屏可完整读取计划指纹。
27
+ - 修复 Unix socket 路径过长导致的本地通信启动失败;超出系统字节上限时在创建资源前给出明确原因。完整认证与清理边界不变。
28
+ - 打包前重新编译;发布脚本在编译或测试非零退出时停止。CI 和 smoke 使用隔离 fixture,不读取用户的正式数据库。
29
+
30
+ Windows 干净工作区全量检查中 **473 项通过**;Unix 专用路径检查在 Linux CI 中验证。发布还核对隔离 smoke、准确包的官方 DSH 本地 SSE 接线、四主题与宽/窄屏 GUI、包内容与远端摘要。上述运行使用隔离数据和脚本模型,用于核对产品接线与失败路径,不代表真实付费模型质量或收益。
@@ -1,74 +1,74 @@
1
- # dsh-Kingdom 2.0 使用指南
2
-
3
- 这是运行于 DSH 的个人 Agent 工作台。任务规划、角色分工、执行、返工、主管审查、用量和人类管理窗口已连通。默认单执行者;协作须明确采纳,工具按需展示默认关闭。
4
-
5
- ## 支持组合与安装
6
-
7
- 本轮验证环境为 Windows、Node 24.11.1、DSH CLI 0.1.5-rc.1;Session/Agent/Tools/Commands/PiAI/token-meter 主要组件实际为0.1.5-rc.2、Cordis4.0.2。包声明Node≥22.19,但本轮没有逐个验证所有Node/操作系统组合。
8
-
9
- 2.0 支持经过验证的 DSH `0.1.5-rc` 组件组合;较旧宿主请继续使用对应旧版 Kingdom。使用官方 DSH 的同一套依赖,避免在插件目录再装一份不同版本的 DSH Core。包包含编译插件、内置 GUI、12 个角色 SVG、bundle 补丁与本指南,不需要另起前端服务。
10
-
11
- 已有可用 `web` profile 时,安装准确版本:
12
-
13
- ```shell
14
- dsh plugin --profile web add dsh-kingdom@2.0.0 --registry=https://registry.npmjs.org
15
- ```
16
-
17
- 也可从 [GitHub Release](https://github.com/lusblead/dsh-Kingdom/releases/tag/v2.0.0) 下载 tgz,核对随附校验清单后安装:
18
-
19
- ```shell
20
- dsh plugin --profile web add ./dsh-kingdom-2.0.0.tgz
21
- ```
22
-
23
- 若要先隔离试用,在新的终端给 DSH 选择一个新的目录,再按所用官方模板建立 profile;不要指向已有正式数据目录。例如:
24
-
25
- ```powershell
26
- $env:DSH_HOME = Join-Path $env:LOCALAPPDATA 'KingdomTrial'
27
- ```
28
-
29
- 选择自己的全新目录,不覆盖已有 `KingdomTrial`。按官方模板建立并配置 `web` profile 后再安装插件,启动时沿用同一个 `DSH_HOME` 和 profile。仅安装插件不会自动配好模型或绑定角色。模型 Provider 配置由 DSH 管理,必须使用真实可用的模型路线;“模型已配置”不等于执行成功。
30
-
31
- ## 第一次使用
32
-
33
- 1. 在可信的本机直接命令入口运行 `/kingdom init`。若希望通过网页填写初始化内容,可直接输入下面的单次管理命令;两种初始化方式任选一种。Owner 是人类操作者,不是 Agent 角色或会话。
34
- 2. 准备独立的宰相与主管DSH会话,建立角色绑定、领地及主理主管,给执行者选择模型配置。每个执行者保留一个长期会话,同一会话不跨领地。
35
- 3. 打开 `/kingdom gui` 查看今日工作台、任务、待我处理、地图、用量与设置。普通进度无需人类逐条处理;主管审查和人类管理事项分开显示。
36
- 4. 常用人类管理动作在 `/kingdom owner.gui` 创建的独立短时窗口进行,先逐字段预览再提交。窗口只包含当次明确动作与资源范围,至多10分钟;到期需重新从直接入口激活。管理窗口不能代替主管ACCEPT。
37
-
38
- 空库首次初始化的网页命令(初始化后不能重复使用):
39
-
40
- ```text
41
- /kingdom owner.gui {"kingdomId":null,"actions":["init"],"scope":{"kingdomWide":false,"territoryIds":[],"bindingIds":[],"roleTypes":[],"targetSessionIds":[],"workspaceRoots":[]},"ttlMs":600000}
42
- ```
43
-
44
- 日常窗口的 `owner.gui` 参数是 `{kingdomId,actions,scope,ttlMs}`;scope 包含 `kingdomWide/territoryIds/bindingIds/roleTypes/targetSessionIds/workspaceRoots`。使用 `/kingdom status` 和 `/kingdom help` 核对真实王国、角色和命令,只填写本次需要的范围。窗口到期或打开失败后重新从直接入口激活,不能把干净的 `/owner` 或 `/console` 地址当作含一次性授权的启动链接。不要分享带启动票据的地址。
45
-
46
- 普通工作台和人类管理窗口分别持有短时控制状态:人类管理窗口不能代替宰相建任务或主管 ACCEPT;切换角色时从对应真实 DSH 会话重新执行 `/kingdom gui`。若按钮不可用,先查看其原因,核对当前会话、领地及绑定。模型不能通过转述“用户同意”激活人类窗口。
47
-
48
- ## 日常任务与协作
49
-
50
- 从一句目标建立可编辑草稿,明确范围和验收;宰相创建任务,主管指派并授予当次能力,执行者产生Claim。主管可ACCEPT、REWORK或FAIL。执行结束、主管接受、人类验收是不同状态;返工保留原验收与上一轮理由。
51
-
52
- 小任务使用单执行者。适合拆分时,宰相提出一份有理由、成员、依赖、范围、产物与整合人的计划;人类准确采纳后,主管有界推进。首版至多两个子项及一个主整合者,专家强制只读。独立目录可并行,同一目录读共享、写独占;不能并行写同一工作区时先等待结算,再串行推进。
53
-
54
- 子项被接受后,主整合者还要完成父任务并单独审查。成员多数同意不能代替验证;计划和摘要不能授予权限。失败收缩为串行只停止新增并行,不粗暴中止已有执行。
55
-
56
- ## 用量与异常
57
-
58
- 用量页区分Provider实报、预留估计、在途、未确认、共享/未归属与恢复中。没有可信价格表时金额显示未知,不能把估计当账单。计划的协调费用标为同期王国成本保守上界;软预算只限制新增,已在途仍可能继续产生费用。
59
-
60
- 等待超时不等于失败。已有Dispatch、丢响应、迟到结果或清理不明时,先由当前合法主管对账原执行,不能重发来试运气。原进程证据完整的迟到结果可对账;重启后旧内存凭据不能恢复,证据不足保持RECOVERING/资源占用,界面说明可确认事实及缺口。尚不承诺任意运行状态都能一键暂停、恢复或中止。
61
-
62
- ## 升级、备份和回退
63
-
64
- 先停止新增任务并核对所有活动/恢复执行,再对源库做SQLite一致备份;WAL模式下不能只复制主 `.db` 文件。保留原版本、配置及备份,在全新目录恢复副本并核验完整性、外键、Task/结果/事件和未结算占用,之后才考虑正式切换。
65
-
66
- 已有v3库默认不自动迁移v4;新库自动具备v4,旧库只有在准确迁移授权和副本验证后才显式启用迁移。1.4/1.5在现有事件账本增加事实,不清洗历史结果。恢复备份不会恢复旧Owner窗口或不透明运行凭据。
67
-
68
- 尚未写入新事实时,可以在隔离目录恢复旧程序与旧备份。写入新计划/预算/资源事实后,不能盲目用旧程序打开新库;旧程序不懂这些约束。出现问题先保留新库和日志,在新路径恢复最近一致副本,不覆盖原始数据、不伪造已运行工作被撤销。
69
-
70
- ## 当前限制
71
-
72
- 本地隔离脚本验证证明的是接线与异常约束。没有完成真实付费 Provider 的质量/缓存/成本成对实验,也没有测出真人主动操作时间减少约 30% 或任务 Token 费用下降 20%。因此不宣称收益达标,不自动打开工具展示或协作。记忆、跨任务召回、自动会话续接、大规模扩队、云端多租户及自动主管 ACCEPT 不在本版内。
73
-
74
- 安装、恢复、修复和最终包的实测范围见 [2.0 版本说明](V2.0-RELEASE-NOTES.md)。公开版本及下载以 [Releases](https://github.com/lusblead/dsh-Kingdom/releases) 和 [官方 npm](https://www.npmjs.com/package/dsh-kingdom) 为准;发布不替代正式数据迁移或真人使用验收。
1
+ # dsh-Kingdom 2.0 使用指南
2
+
3
+ 这是运行于 DSH 的个人 Agent 工作台。任务规划、角色分工、执行、返工、主管审查、用量和人类管理窗口已连通。默认单执行者;协作须明确采纳,工具按需展示默认关闭。
4
+
5
+ ## 支持组合与安装
6
+
7
+ 本轮验证环境为 Windows、Node 24.11.1、DSH CLI 0.1.5-rc.1;Session/Agent/Tools/Commands/PiAI/token-meter 主要组件实际为0.1.5-rc.2、Cordis4.0.2。包声明Node≥22.19,但本轮没有逐个验证所有Node/操作系统组合。
8
+
9
+ 2.0 支持经过验证的 DSH `0.1.5-rc` 组件组合;较旧宿主请继续使用对应旧版 Kingdom。使用官方 DSH 的同一套依赖,避免在插件目录再装一份不同版本的 DSH Core。包包含编译插件、内置 GUI、12 个角色 SVG、bundle 补丁与本指南,不需要另起前端服务。
10
+
11
+ 已有可用 `web` profile 时,安装准确版本:
12
+
13
+ ```shell
14
+ dsh plugin --profile web add dsh-kingdom@2.0.0 --registry=https://registry.npmjs.org
15
+ ```
16
+
17
+ 也可从 [GitHub Release](https://github.com/lusblead/dsh-Kingdom/releases/tag/v2.0.0) 下载 tgz,核对随附校验清单后安装:
18
+
19
+ ```shell
20
+ dsh plugin --profile web add ./dsh-kingdom-2.0.0.tgz
21
+ ```
22
+
23
+ 若要先隔离试用,在新的终端给 DSH 选择一个新的目录,再按所用官方模板建立 profile;不要指向已有正式数据目录。例如:
24
+
25
+ ```powershell
26
+ $env:DSH_HOME = Join-Path $env:LOCALAPPDATA 'KingdomTrial'
27
+ ```
28
+
29
+ 选择自己的全新目录,不覆盖已有 `KingdomTrial`。按官方模板建立并配置 `web` profile 后再安装插件,启动时沿用同一个 `DSH_HOME` 和 profile。仅安装插件不会自动配好模型或绑定角色。模型 Provider 配置由 DSH 管理,必须使用真实可用的模型路线;“模型已配置”不等于执行成功。
30
+
31
+ ## 第一次使用
32
+
33
+ 1. 在可信的本机直接命令入口运行 `/kingdom init`。若希望通过网页填写初始化内容,可直接输入下面的单次管理命令;两种初始化方式任选一种。Owner 是人类操作者,不是 Agent 角色或会话。
34
+ 2. 准备独立的宰相与主管DSH会话,建立角色绑定、领地及主理主管,给执行者选择模型配置。每个执行者保留一个长期会话,同一会话不跨领地。
35
+ 3. 打开 `/kingdom gui` 查看今日工作台、任务、待我处理、地图、用量与设置。普通进度无需人类逐条处理;主管审查和人类管理事项分开显示。
36
+ 4. 常用人类管理动作在 `/kingdom owner.gui` 创建的独立短时窗口进行,先逐字段预览再提交。窗口只包含当次明确动作与资源范围,至多10分钟;到期需重新从直接入口激活。管理窗口不能代替主管ACCEPT。
37
+
38
+ 空库首次初始化的网页命令(初始化后不能重复使用):
39
+
40
+ ```text
41
+ /kingdom owner.gui {"kingdomId":null,"actions":["init"],"scope":{"kingdomWide":false,"territoryIds":[],"bindingIds":[],"roleTypes":[],"targetSessionIds":[],"workspaceRoots":[]},"ttlMs":600000}
42
+ ```
43
+
44
+ 日常窗口的 `owner.gui` 参数是 `{kingdomId,actions,scope,ttlMs}`;scope 包含 `kingdomWide/territoryIds/bindingIds/roleTypes/targetSessionIds/workspaceRoots`。使用 `/kingdom status` 和 `/kingdom help` 核对真实王国、角色和命令,只填写本次需要的范围。窗口到期或打开失败后重新从直接入口激活,不能把干净的 `/owner` 或 `/console` 地址当作含一次性授权的启动链接。不要分享带启动票据的地址。
45
+
46
+ 普通工作台和人类管理窗口分别持有短时控制状态:人类管理窗口不能代替宰相建任务或主管 ACCEPT;切换角色时从对应真实 DSH 会话重新执行 `/kingdom gui`。若按钮不可用,先查看其原因,核对当前会话、领地及绑定。模型不能通过转述“用户同意”激活人类窗口。
47
+
48
+ ## 日常任务与协作
49
+
50
+ 从一句目标建立可编辑草稿,明确范围和验收;宰相创建任务,主管指派并授予当次能力,执行者产生Claim。主管可ACCEPT、REWORK或FAIL。执行结束、主管接受、人类验收是不同状态;返工保留原验收与上一轮理由。
51
+
52
+ 小任务使用单执行者。适合拆分时,宰相提出一份有理由、成员、依赖、范围、产物与整合人的计划;人类准确采纳后,主管有界推进。首版至多两个子项及一个主整合者,专家强制只读。独立目录可并行,同一目录读共享、写独占;不能并行写同一工作区时先等待结算,再串行推进。
53
+
54
+ 子项被接受后,主整合者还要完成父任务并单独审查。成员多数同意不能代替验证;计划和摘要不能授予权限。失败收缩为串行只停止新增并行,不粗暴中止已有执行。
55
+
56
+ ## 用量与异常
57
+
58
+ 用量页区分Provider实报、预留估计、在途、未确认、共享/未归属与恢复中。没有可信价格表时金额显示未知,不能把估计当账单。计划的协调费用标为同期王国成本保守上界;软预算只限制新增,已在途仍可能继续产生费用。
59
+
60
+ 等待超时不等于失败。已有Dispatch、丢响应、迟到结果或清理不明时,先由当前合法主管对账原执行,不能重发来试运气。原进程证据完整的迟到结果可对账;重启后旧内存凭据不能恢复,证据不足保持RECOVERING/资源占用,界面说明可确认事实及缺口。尚不承诺任意运行状态都能一键暂停、恢复或中止。
61
+
62
+ ## 升级、备份和回退
63
+
64
+ 先停止新增任务并核对所有活动/恢复执行,再对源库做SQLite一致备份;WAL模式下不能只复制主 `.db` 文件。保留原版本、配置及备份,在全新目录恢复副本并核验完整性、外键、Task/结果/事件和未结算占用,之后才考虑正式切换。
65
+
66
+ 已有v3库默认不自动迁移v4;新库自动具备v4,旧库只有在准确迁移授权和副本验证后才显式启用迁移。1.4/1.5在现有事件账本增加事实,不清洗历史结果。恢复备份不会恢复旧Owner窗口或不透明运行凭据。
67
+
68
+ 尚未写入新事实时,可以在隔离目录恢复旧程序与旧备份。写入新计划/预算/资源事实后,不能盲目用旧程序打开新库;旧程序不懂这些约束。出现问题先保留新库和日志,在新路径恢复最近一致副本,不覆盖原始数据、不伪造已运行工作被撤销。
69
+
70
+ ## 当前限制
71
+
72
+ 本地隔离脚本验证证明的是接线与异常约束。没有完成真实付费 Provider 的质量/缓存/成本成对实验,也没有测出真人主动操作时间减少约 30% 或任务 Token 费用下降 20%。因此不宣称收益达标,不自动打开工具展示或协作。记忆、跨任务召回、自动会话续接、大规模扩队、云端多租户及自动主管 ACCEPT 不在本版内。
73
+
74
+ 安装、恢复、修复和最终包的实测范围见 [2.0 版本说明](V2.0-RELEASE-NOTES.md)。公开版本及下载以 [Releases](https://github.com/lusblead/dsh-Kingdom/releases) 和 [官方 npm](https://www.npmjs.com/package/dsh-kingdom) 为准;发布不替代正式数据迁移或真人使用验收。
@@ -0,0 +1,21 @@
1
+ # dsh-Kingdom 3.0.0 本地候选说明
2
+
3
+ 本轮在已升级的 2.0 个人工作台基础上,新增 Owner 可见的交付清单、逐条知悉、主管确认的改动证据与条目问答,并把它们确立为 3.0 的主题。开发验证阶段的本地包仍标为 2.0.0,曾提前包含本轮代码;这个临时包号不改变 3.0 的功能归属,也不代表公共 npm/GitHub Release 已存在。
4
+
5
+ ## 使用者可见内容
6
+
7
+ - Owner 主动打开已确认交付,从摘要展开到具体条目;宰相目前不会自动上报。每条有稳定身份和内容版本;旧版知悉不会自动覆盖新版,父摘要知悉也不会覆盖子条。
8
+ - Owner 可在独立管理窗口预览并提交“知悉”。它只记录 Owner 声明知道该条当前版本,不是理解测验、质量验收、任务完成或发布授权。
9
+ - 执行前后有界快照支持未提交文件的差异证据。主管在 `ACCEPT` 时显式确认属于本交付的条目;Owner 可按条目查看。证据说明“主管确认的改动”,不证明文件由哪个 Worker 编写;覆盖不足时不伪称完整。
10
+ - Owner 可就一条交付提出问题;接受该交付的原主管通过当前 session-bound Agent Tool 收件和回复。正文不进入普通工作台快照或事件轮询;工作台仅展示状态/计数。没有自动通知、自动唤醒或继任者转派。
11
+ - 旧格式主管接受记录可知悉,但标注历史接受证据较弱。
12
+
13
+ ## 安装和兼容边界
14
+
15
+ 本候选沿用现有 schema v4 和事件账本,没有因知悉/问答增加新表。它仍按已声明的 DSH `0.1.5-rc` peer 范围运行。升级前请保留旧包和配置,并对数据库做 SQLite 一致备份;安装后须重启所用的 DSH profile。若要安装此候选,须先从当前源码构建并核验准确的本地 `dsh-kingdom-3.0.0.tgz`;公共 registry 与 GitHub Releases 发布未执行。操作见 [3.0 使用指南](V3.0-USER-GUIDE.md)。
16
+
17
+ ## 证据与未完成项
18
+
19
+ 本轮功能开发期(本地包号仍为 2.0.0)的代码评审中,Owner 面板定向测试 50/50、问答闭环 21/21,构建和 Feature Flow 校验通过;提前安装到本机 DSH Web 后,模块可导入、Web/Kingdom GUI 可启动,新问答路由对未授权请求返回 401(不存在的路由返回 404)。这不证明授权读取成功。重新标记 3.0.0 后,定向测试 109 通过、1 跳过,全量 `npm test` 582 通过、2 跳过,Feature Flow 变更校验为 0 错误、0 警告。3.0.0 安装结果仍须以准确包和独立安装回执核验,不能继承旧包哈希。
20
+
21
+ 正式 Audit、Owner 最终验收、正式数据库中的知悉/问答写入、真实 Agent/Provider 回合、完整浏览器人工交互与收益测量均 `NOT_RUN`。因此不宣传具体节省时间、Token 或成本比例,也不把本地安装写成公开发布或生产就绪。
@@ -0,0 +1,33 @@
1
+ # dsh-Kingdom 3.0 交付知悉与问答指南
2
+
3
+ 3.0.0 是当前本地候选版本,尚未发布到 npm 或 GitHub Releases。本轮在已升级的 2.0 工作台上新增 Owner 交付知悉与问答层;任务、协作、用量和基础配置仍见 [2.0 使用指南](V2.0-USER-GUIDE.md)。开发验证时曾使用仍标为 2.0.0 的本地包,不应把那个临时包号当作 3.0 功能已正式发布的证据。
4
+
5
+ ## 安装与第一次使用
6
+
7
+ 先保留原插件包与配置,对现有 SQLite 数据库做一致备份。取得从本候选源码构建并核对过的 `dsh-kingdom-3.0.0.tgz` 后,在自己的 DSH Web profile 中安装,再重启该 profile;仅更改 `package.json` 的版本号不会让运行中的 DSH 自动加载新代码。
8
+
9
+ ```shell
10
+ dsh plugin --profile web add ./dsh-kingdom-3.0.0.tgz
11
+ ```
12
+
13
+ 不要将上述本地包命令替换成尚不存在的 `dsh-kingdom@3.0.0` 公共 registry 版本。首次建立王国、领地和角色仍按 [2.0 第一次使用](V2.0-USER-GUIDE.md#第一次使用) 操作。Owner 是人类操作者,不是 Agent 或 DSH Session。
14
+
15
+ ## Owner:从交付清单到逐条知悉
16
+
17
+ 1. Worker 提交结果后,先由该任务的主管完成审查并 `ACCEPT`。Worker 的 Claim 本身不是已确认交付。
18
+ 2. Owner 主动在个人工作台打开已确认交付;宰相目前不会自动上报。先看摘要,再展开事项、产物、风险和主管确认的改动条目。父条目和每个子条目分别有自己的内容版本与知悉状态。
19
+ 3. 对改动条目选择“查看改动”,在有效的人类管理窗口里读取固定版本的仓库相对路径、有界差异和证据状态。未提交改动也可来自执行前后快照;只有主管显式选择的条目才标为“主管确认的改动证据”。这不是 Git 对 Worker 作者身份的证明;忽略、超限或证据漂移时以界面标注的部分覆盖或不可定位为准。
20
+ 4. 选择某条的“知悉”后,管理窗口固定该 Task、条目及内容版本;尚未激活窗口时,按提示从本人直接命令入口完成授权,回来仍定位原条目。核对预览并提交后才写入 Owner 知悉事实;同版重试幂等,条目改版后旧知悉只留历史,新版需要重新知悉。
21
+ 5. “知悉”只表示 Owner 声明知道**这一条的当前版本**。它不测理解程度,不代表质量认可、人类最终验收、主管 `ACCEPT`、Task `DONE` 或发布许可;知道父摘要也不会自动覆盖子条目。
22
+
23
+ 旧版 `TASK_ACCEPTED` 若没有结果摘要绑定,仍允许查看和知悉,但界面明确标出较弱的历史接受证据。不能把该标签升级成新格式的精确结果证明。
24
+
25
+ ## Owner 提问与主管回复
26
+
27
+ 从具体条目点“提问”,管理窗口会固定同一个 Task、条目和内容版本。填写问题、预览并提交后,它成为独立事件;提问不会顺带写入“知悉”。工作台只显示有界计数与状态,问题和回复正文须在有效 Owner 管理窗口回看。
28
+
29
+ 问题交给**接受该交付时记录的主管**。该主管在自己真实、当前且有效的 session-bound 身份下,用 `kingdom_delivery_questions` 读取属于自己的问题,再用 `kingdom_delivery_reply` 回复。系统不会自动通知、唤醒主管或把问题改投继任者;未核实主管已读取前只称“待领取”。原主管退任、换 Session 或领地改绑时,问题保留可回看,但当前不可回复。条目改版后,旧问答仍是历史,不冒充新版待办。
30
+
31
+ ## 当前验证边界
32
+
33
+ 本地代码评审和隔离测试覆盖知悉、改动证据及问答的关键成功/拒绝路径;开发期本地 DSH 安装验证只证明包已加载、新问答路由对未授权请求返回 401(不存在的路由返回 404),不证明授权读取成功。正式数据库中的真实知悉/提问、真实 Agent/Provider 回合、完整浏览器人工验收与正式 Audit 尚未完成。不要从版本号或安装成功推出这些结论。详情见 [3.0 版本说明](V3.0-RELEASE-NOTES.md)。
@@ -0,0 +1,72 @@
1
+ # dsh-Kingdom 3.1.0 本地候选说明
2
+
3
+ 3.1.0 只有两处产品变更:**DSH peer 兼容范围** 与 **无 live Agent 会话的席位绑定**。
4
+ schema、事件账本、GUI 与治理语义均未改动——沿用 schema v4 与既有事件类型,没有新增表、
5
+ 没有新增迁移。
6
+
7
+ ## 验证状态(本轮实际执行过的)
8
+
9
+ | 项 | 结果 |
10
+ |---|---|
11
+ | `npm run typecheck`(`tsc -p tsconfig.json --noEmit`) | 通过,0 错误 |
12
+ | 全量 `node --test tests/*.test.ts` | 586 项:**584 通过 / 0 失败 / 2 跳过**(2 项为 Unix-only 用例) |
13
+ | 定向用例 `tests/index-owner-binding-integration.test.ts` | 8/8 通过(含 2 个 v3.1 新增用例) |
14
+ | peer 谓词复算(运行时自带 `semver@7.8.5`) | `0.1.5-rc.2` ✓、`0.1.7-rc.2` ✓;`0.1.6-*` 与 `0.1.8+` 刻意不含 |
15
+ | peer 预检复算(用 DSH 0.1.7-rc.2 自带的 `evaluatePluginCompatibility`,`includePrerelease: true`) | `0.1.7-rc.2` → 不跳过;父提交声明 → 4 条 peer 全部不兼容(会被整层跳过) |
16
+ | 发布门 `pwsh -File scripts/release.ps1 -Version 3.1.0 -DryRun` | P0–P3 全 PASS |
17
+ | 本机 profile 重装 3.1.0(2026-09-28 11:43) | 完成:profile 依赖指向 `dsh-kingdom-3.1.0.tgz`,已装 `version=3.1.0`,`lib/index.js` 与候选构建同哈希 |
18
+ | DSH `0.1.7-rc.2` 实机加载回归(2026-09-28 11:48 起) | 完成:宿主命令行指向 `dsh-0.1.7-rc.2`,`skipping profile bundle` 与 `disabling profile plugin` 均 **0 行** |
19
+ | 无 live Agent 会话的真机验证 | 完成:`ROLE_BOUND` 事件记 `session_evidence=DURABLE_SESSION`(无 live Agent 的会话被接受);不存在的 session id 仍被 `SESSION_ABSENT` 拒绝且零写入 |
20
+
21
+ **未执行(NOT_RUN)**:真实浏览器人工交互验收;DSH 0.1.7 下**全部 14 条 bundle 的真实 boot**(只做了
22
+ `--dump-config` dry-run 与行级门禁的离线复算);其它第三方插件在 0.1.7 下的业务功能正确性;Linux 平台;
23
+ 收益与成本测量。未运行过的项不得当作已通过。本版发布前的独立审查结论与 Owner 验收记录见发布回执(不在包内)。
24
+
25
+ ## 1. DSH peer 兼容范围放宽
26
+
27
+ - 旧:`@deepseek-ai/dsh-commands` / `dsh-llm` / `dsh-tools` = `>=0.1.5-rc.1 <0.1.5`,
28
+ `dsh-token-meter` = `>=0.1.5-rc.2 <0.1.5`。
29
+ - 新:两条版本线并列 `>=0.1.5-rc.1 <0.1.6-0 || >=0.1.7-0 <0.1.8-0`
30
+ (`dsh-token-meter` 下界为 `0.1.5-rc.2`)。`package-lock.json` 的 peer 快照同步。
31
+ - **为什么必须分线写**:在 semver 的 prerelease 规则下,`>=0.1.5-rc.1 <0.2.0` 并**不包含**
32
+ `0.1.7-rc.2`(只包含 0.1.5-rc 线与 0.1.8 稳定版)。分线写法是唯一能同时表达"已验证的
33
+ 0.1.5-rc 线"与"目标 0.1.7 线"且不误收未测版本的形式。
34
+ - **为什么必须改**:DSH `0.1.7-rc.2` 的 `@deepseek-ai/dsh-app-boot` 新增插件兼容性预检
35
+ (`evaluatePluginCompatibility`,`lib/index.js:286-313`)。它只检查 `@deepseek-ai/dsh` 与
36
+ `@deepseek-ai/dsh-*`,判据是 `semver.satisfies(runtime, range, { includePrerelease: true })`;
37
+ `loadProfileDirectory`(`:919-955`)对 `dsh.profile.bundles` 中每个 bundle 判定,不通过且未豁免
38
+ 即抛出 → 收进 `skippedBundles` → **该 bundle 整层不加载**。症状是启动不报错,只在 stderr 留
39
+ 一行 skip 警告,而工具、`/kingdom` 命令与 GUI 会一起消失。
40
+ - **只改声明不够**:预检读取的是**已安装副本**的 `package.json`。必须重新打包并重装该 profile,
41
+ 否则升级后仍然是旧的 `<0.1.5` 声明。
42
+ - 未改 `@deepseek-ai/cordis`(`>=4.0.0-rc <5`)与 `@deepseek-ai/schemastery`(`^3.18.0`):它们
43
+ 不在预检集合内,且 0.1.7-rc.2 携带的 4.0.4 / 3.18.4 均落在范围内。
44
+
45
+ ## 2. 无 live Agent 的会话现在可以绑定席位
46
+
47
+ - **症状**:对一个刚创建、尚未产生任何消息的会话执行
48
+ `/kingdom role.bind {"role_type":"SUPERVISOR",…,"session_id":"…"}` 会得到
49
+ `INPUT_DENIED [SESSION_ABSENT]`,于是无法预先设置主管席位。
50
+ - **原因**:目标会话校验只接受 live Agent(`agents.get(session_id)` 返回同一条 Agent,且状态为
51
+ `idle` 或 `running`)。DSH 的 Agent 一旦被回收就会移出注册表(`AgentStatus` 本身只有
52
+ `idle | running`,disposal 不是第三种状态),此后该 session_id 再也过不了校验。
53
+ - **现行为**(`resolveDirectTargetSession`):
54
+ 1. live Agent 命中 → 放行,事件记 `session_evidence: "LIVE_AGENT"`;
55
+ 2. 仅当分类为 `ABSENT`(注册表里没有这条 live Agent)时,回退到"该 session_id 已在本机 DSH
56
+ 持久会话存储中登记"的存在性证明(`ctx.sessionQuery.observeSession`,只用 header 做身份比对,
57
+ 观察租约用完即释放)→ 放行,事件记 `session_evidence: "DURABLE_SESSION"`;
58
+ 3. 两条路都证明不了 → 仍然拒绝,**零写入**。
59
+ - **没有放宽的部分**:`FOREIGN` / `MULTIPLE` / `EXPIRED` / `UNKNOWN` 一律保持 fail-closed,不因
60
+ "可能是它"而放行;调用者身份校验(`resolveTrustedToolSession`)未改动,仍要求 live Agent;
61
+ 宿主未挂载 `sessionQuery` 时退化为原行为(拒绝并说明缺少观察通道)。Owner 管理窗口的目标会话
62
+ 校验与列表使用同一解析器,行为一致。
63
+ - **语义边界**:`DURABLE_SESSION` 只说明"这条会话属于本机 DSH",**不说明它当前可执行**。席位在
64
+ 该会话真正启动前不能派发或复核;这条证据强度差异会记进 `ROLE_BOUND` /
65
+ `BINDING_PROFILE_UPDATED` 事件的 `session_evidence` 字段,供审计区分。
66
+
67
+ ## 3. 与本机现状的关系
68
+
69
+ 本文件描述 3.1.0 候选。截至 2026-09-28:本机 `web` profile 已于 11:43 重装为 `dsh-kingdom-3.1.0`
70
+ (依赖指向 `dsh-kingdom-3.1.0.tgz`),运行宿主自 11:48 起为 DSH `0.1.7-rc.2`,且未出现任何 bundle 跳过。
71
+ 回退路径:保留的 `dsh-kingdom-3.0.0.tgz`、profile 三件套备份、会话与 storages 全量副本、王国库一致性
72
+ 副本,以及 `rollback-to-015.ps1`。
@@ -193,6 +193,7 @@ export function bindRole(store, input, auth) {
193
193
  model_name: modelName,
194
194
  agent_name: agentName,
195
195
  session_meta: sessionMeta ? JSON.parse(sessionMeta) : null,
196
+ session_evidence: input.sessionEvidence ?? null,
196
197
  ...admin.eventSource,
197
198
  }),
198
199
  created_at: now,
@@ -313,6 +314,7 @@ export function rebindSession(store, input, auth) {
313
314
  model_name: after?.model_name ?? null,
314
315
  agent_name: after?.agent_name ?? null,
315
316
  session_meta: after?.session_meta ? JSON.parse(after.session_meta) : null,
317
+ session_evidence: input.sessionEvidence ?? null,
316
318
  ...admin.eventSource,
317
319
  }),
318
320
  created_at: new Date().toISOString(),