@lemoncat7/dsh-partner 2.8.3 → 2.8.4

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 (165) hide show
  1. package/README.md +27 -406
  2. package/docs/bark-notifications.md +27 -0
  3. package/docs/concern-workflow.md +39 -0
  4. package/docs/releases/1.12.0.md +16 -0
  5. package/docs/releases/1.14.2.md +8 -0
  6. package/docs/releases/1.15.0.md +15 -0
  7. package/docs/releases/1.16.0.md +15 -0
  8. package/docs/releases/1.16.1.md +12 -0
  9. package/docs/releases/1.16.2.md +12 -0
  10. package/docs/releases/2.0.0.md +19 -0
  11. package/docs/releases/2.1.0.md +8 -0
  12. package/docs/releases/2.2.0.md +8 -0
  13. package/docs/releases/2.3.0.md +8 -0
  14. package/docs/releases/2.4.0.md +8 -0
  15. package/docs/releases/2.5.0.md +8 -0
  16. package/docs/releases/2.8.0.md +6 -0
  17. package/docs/releases/2.8.4.md +35 -0
  18. package/docs/releases/README.md +14 -0
  19. package/lib/agent-runtime.d.ts +1 -0
  20. package/lib/agent-runtime.d.ts.map +1 -1
  21. package/lib/agent-runtime.js +14 -5
  22. package/lib/agent-runtime.js.map +1 -1
  23. package/lib/api/features/push-api.d.ts +4 -0
  24. package/lib/api/features/push-api.d.ts.map +1 -0
  25. package/lib/api/features/push-api.js +47 -0
  26. package/lib/api/features/push-api.js.map +1 -0
  27. package/lib/api.d.ts +2 -0
  28. package/lib/api.d.ts.map +1 -1
  29. package/lib/api.js +5 -1
  30. package/lib/api.js.map +1 -1
  31. package/lib/autonomy.d.ts.map +1 -1
  32. package/lib/autonomy.js +5 -4
  33. package/lib/autonomy.js.map +1 -1
  34. package/lib/client-api.d.ts +1 -0
  35. package/lib/client-api.d.ts.map +1 -1
  36. package/lib/client-api.js.map +1 -1
  37. package/lib/client.d.ts.map +1 -1
  38. package/lib/client.js +1157 -638
  39. package/lib/client.js.map +4 -4
  40. package/lib/collaboration/composition.d.ts.map +1 -1
  41. package/lib/collaboration/composition.js +1 -0
  42. package/lib/collaboration/composition.js.map +1 -1
  43. package/lib/collaboration/ssh-task-access.d.ts +33 -0
  44. package/lib/collaboration/ssh-task-access.d.ts.map +1 -0
  45. package/lib/collaboration/ssh-task-access.js +26 -0
  46. package/lib/collaboration/ssh-task-access.js.map +1 -0
  47. package/lib/companions/removal.d.ts.map +1 -1
  48. package/lib/companions/removal.js +4 -0
  49. package/lib/companions/removal.js.map +1 -1
  50. package/lib/concern-domain.d.ts +2 -0
  51. package/lib/concern-domain.d.ts.map +1 -1
  52. package/lib/concern-domain.js.map +1 -1
  53. package/lib/concern-execution-notes.d.ts +2 -0
  54. package/lib/concern-execution-notes.d.ts.map +1 -1
  55. package/lib/concern-execution-notes.js +9 -2
  56. package/lib/concern-execution-notes.js.map +1 -1
  57. package/lib/concern-execution-receipt.d.ts.map +1 -1
  58. package/lib/concern-execution-receipt.js +3 -2
  59. package/lib/concern-execution-receipt.js.map +1 -1
  60. package/lib/concern-execution.d.ts.map +1 -1
  61. package/lib/concern-execution.js +1 -0
  62. package/lib/concern-execution.js.map +1 -1
  63. package/lib/concern-knowledge-source.d.ts +23 -0
  64. package/lib/concern-knowledge-source.d.ts.map +1 -0
  65. package/lib/concern-knowledge-source.js +30 -0
  66. package/lib/concern-knowledge-source.js.map +1 -0
  67. package/lib/concern-note-source.d.ts +2 -1
  68. package/lib/concern-note-source.d.ts.map +1 -1
  69. package/lib/concern-note-source.js +6 -2
  70. package/lib/concern-note-source.js.map +1 -1
  71. package/lib/concern-store.d.ts.map +1 -1
  72. package/lib/concern-store.js +5 -0
  73. package/lib/concern-store.js.map +1 -1
  74. package/lib/domain.d.ts +2 -0
  75. package/lib/domain.d.ts.map +1 -1
  76. package/lib/domain.js.map +1 -1
  77. package/lib/index.d.ts.map +1 -1
  78. package/lib/index.js +18 -1
  79. package/lib/index.js.map +1 -1
  80. package/lib/notifications/bark-adapter.d.ts +9 -0
  81. package/lib/notifications/bark-adapter.d.ts.map +1 -0
  82. package/lib/notifications/bark-adapter.js +69 -0
  83. package/lib/notifications/bark-adapter.js.map +1 -0
  84. package/lib/notifications/push-config.d.ts +10 -0
  85. package/lib/notifications/push-config.d.ts.map +1 -0
  86. package/lib/notifications/push-config.js +79 -0
  87. package/lib/notifications/push-config.js.map +1 -0
  88. package/lib/notifications/push-credentials.d.ts +9 -0
  89. package/lib/notifications/push-credentials.d.ts.map +1 -0
  90. package/lib/notifications/push-credentials.js +16 -0
  91. package/lib/notifications/push-credentials.js.map +1 -0
  92. package/lib/notifications/push-domain.d.ts +66 -0
  93. package/lib/notifications/push-domain.d.ts.map +1 -0
  94. package/lib/notifications/push-domain.js +6 -0
  95. package/lib/notifications/push-domain.js.map +1 -0
  96. package/lib/notifications/push-observer.d.ts +19 -0
  97. package/lib/notifications/push-observer.d.ts.map +1 -0
  98. package/lib/notifications/push-observer.js +96 -0
  99. package/lib/notifications/push-observer.js.map +1 -0
  100. package/lib/notifications/push-service.d.ts +33 -0
  101. package/lib/notifications/push-service.d.ts.map +1 -0
  102. package/lib/notifications/push-service.js +228 -0
  103. package/lib/notifications/push-service.js.map +1 -0
  104. package/lib/notifications/push-state.d.ts +3 -0
  105. package/lib/notifications/push-state.d.ts.map +1 -0
  106. package/lib/notifications/push-state.js +23 -0
  107. package/lib/notifications/push-state.js.map +1 -0
  108. package/lib/observation-budget.d.ts +3 -2
  109. package/lib/observation-budget.d.ts.map +1 -1
  110. package/lib/observation-budget.js +5 -3
  111. package/lib/observation-budget.js.map +1 -1
  112. package/lib/observation-loop.d.ts +1 -0
  113. package/lib/observation-loop.d.ts.map +1 -1
  114. package/lib/observation-loop.js +129 -21
  115. package/lib/observation-loop.js.map +1 -1
  116. package/lib/observation-model-retry.d.ts +20 -0
  117. package/lib/observation-model-retry.d.ts.map +1 -0
  118. package/lib/observation-model-retry.js +48 -0
  119. package/lib/observation-model-retry.js.map +1 -0
  120. package/lib/observation-progress.d.ts +1 -0
  121. package/lib/observation-progress.d.ts.map +1 -1
  122. package/lib/observation-progress.js +24 -4
  123. package/lib/observation-progress.js.map +1 -1
  124. package/lib/observation-workflow.d.ts +40 -0
  125. package/lib/observation-workflow.d.ts.map +1 -0
  126. package/lib/observation-workflow.js +154 -0
  127. package/lib/observation-workflow.js.map +1 -0
  128. package/lib/recording-snapshot.d.ts.map +1 -1
  129. package/lib/recording-snapshot.js +12 -2
  130. package/lib/recording-snapshot.js.map +1 -1
  131. package/lib/storage/migrate-layout.d.ts.map +1 -1
  132. package/lib/storage/migrate-layout.js +2 -0
  133. package/lib/storage/migrate-layout.js.map +1 -1
  134. package/lib/storage/split-state.js +2 -2
  135. package/lib/storage/split-state.js.map +1 -1
  136. package/lib/store.d.ts.map +1 -1
  137. package/lib/store.js +2 -0
  138. package/lib/store.js.map +1 -1
  139. package/lib/ui/capability-editor.d.ts.map +1 -1
  140. package/lib/ui/capability-editor.js +3 -5
  141. package/lib/ui/capability-editor.js.map +1 -1
  142. package/lib/ui/channels-panel.d.ts.map +1 -1
  143. package/lib/ui/channels-panel.js +7 -1
  144. package/lib/ui/channels-panel.js.map +1 -1
  145. package/lib/ui/push-channels.d.ts +11 -0
  146. package/lib/ui/push-channels.d.ts.map +1 -0
  147. package/lib/ui/push-channels.js +28 -0
  148. package/lib/ui/push-channels.js.map +1 -0
  149. package/lib/ui/push-draft.d.ts +30 -0
  150. package/lib/ui/push-draft.d.ts.map +1 -0
  151. package/lib/ui/push-draft.js +13 -0
  152. package/lib/ui/push-draft.js.map +1 -0
  153. package/lib/ui/push-editor.d.ts +10 -0
  154. package/lib/ui/push-editor.d.ts.map +1 -0
  155. package/lib/ui/push-editor.js +99 -0
  156. package/lib/ui/push-editor.js.map +1 -0
  157. package/lib/ui/runtime-settings.d.ts +18 -0
  158. package/lib/ui/runtime-settings.d.ts.map +1 -0
  159. package/lib/ui/runtime-settings.js +25 -0
  160. package/lib/ui/runtime-settings.js.map +1 -0
  161. package/lib/ui/workspace-components.d.ts +7 -1
  162. package/lib/ui/workspace-components.d.ts.map +1 -1
  163. package/lib/ui/workspace-components.js +8 -4
  164. package/lib/ui/workspace-components.js.map +1 -1
  165. package/package.json +4 -1
@@ -9,3 +9,15 @@
9
9
  - Markdown 依赖打包至服务端模块,不更改宿主核心依赖版本。
10
10
 
11
11
  385 项自动化测试通过;已部署,线上模块加载、API 和页面检查通过,用户已确认效果。旧消息不会自动更新;具体富文本显示依赖接收客户端,不新增 E2EE 或附件支持。
12
+
13
+ ## 从 README 迁入的历史说明
14
+
15
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
16
+
17
+ ## 1.16.1 更新:Matrix / Mattermost Markdown 适配
18
+
19
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**;要求 Node.js **^22.19.0 或 >=24.0.0**。
20
+
21
+ Matrix 增加安全 HTML 富文本与文本兜底;Mattermost 保留原生 Markdown。长消息按块分段,超长代码补齐围栏、表格重复表头,普通回复与主动通知复用同一适配器。385 项测试通过,已部署验证。
22
+
23
+ 详见 [1.16.1 发布说明](../../docs/releases/1.16.1.md) 与 [渠道消息格式](../../docs/channel-message-format.md)。
@@ -9,3 +9,15 @@
9
9
  - Markdown 使用安全 AST 渲染,原始 HTML 作为文字,危险链接不可点击,远程图片转为链接。宽表格和代码块局部滚动,适配深浅色与窄屏。
10
10
 
11
11
  395 项自动化测试通过,Markdown 浏览器检查与部署页面/API 检查通过。具体正在输入和消息编辑显示依赖渠道客户端;不新增 Matrix 加密支持。旧消息不会自动转换为进度消息。
12
+
13
+ ## 从 README 迁入的历史说明
14
+
15
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
16
+
17
+ ## 1.16.2 更新:渠道回复进度与卡片 Markdown
18
+
19
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**;要求 Node.js **^22.19.0 或 >=24.0.0**。
20
+
21
+ Matrix / Mattermost 支持正在输入和可更新的回复进度消息,完成后更新为正式回复;悬浮卡片消息详情支持 Markdown,适配窄屏和深浅色。395 项自动化测试通过,并完成浏览器与部署检查。
22
+
23
+ 详见 [1.16.2 发布说明](../../docs/releases/1.16.2.md) 与 [回复进度设计](../../docs/channel-reply-progress.md)。
@@ -32,3 +32,22 @@
32
32
  这是当前环境验证结果,不表示所有部署环境和旧宿主版本均已测试。
33
33
 
34
34
  详细布局及恢复限制见 [存储迁移说明](../storage-migration.md)。
35
+
36
+ ## 从 README 迁入的历史说明
37
+
38
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
39
+
40
+ ## 2.0.0 大版本:规范存储与安全迁移
41
+
42
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**;要求 Node.js **^22.19.0 或 >=24.0.0**。
43
+ 旧宿主兼容分支保留,但未重新完成旧宿主端到端验证。
44
+
45
+ - 导航分为「功能 / 设置」,卡片设置归入设置。
46
+ - 伙伴私有配置、记忆、关注、通知与交付记录统一进入各自 `.partner/`;公共数据独立整理。
47
+ - 设置 → 基本设置 → 升级迁移:按存储版本顺序执行,先完整备份、校验,再切换版本并清理已核验的旧路径。
48
+ - 历史 `memory-backup-*`、`memory_back` 等原样归档;清理失败保留原文件,可单独重试。
49
+ - 卡片提示待迁移版本,点击进入设置;迁移期间断连自动重查状态,不重复提交。
50
+
51
+ **安装不会自动迁移。迁移后不可直接降级到不支持新版存储的插件,恢复前需备份新旧数据。**
52
+ 429 项自动化测试通过;已完成浏览器恢复检查及生产迁移数据核验。
53
+ 详见 [2.0.0 发布说明](../../docs/releases/2.0.0.md) 与 [存储迁移说明](../../docs/storage-migration.md)。
@@ -11,3 +11,11 @@
11
11
  443 项自动化测试及 6 组响应式/主题界面检查通过。渠道头像接口通过本地模拟服务验证,未对真实 Matrix / Mattermost 账号执行头像变更。
12
12
 
13
13
  升级不改变 2.0.0 的存储迁移规则,安装不会自动迁移。详见 [存储迁移说明](../storage-migration.md) 与 [提问来源与渠道头像](../channel-questions-and-avatar.md)。
14
+
15
+ ## 从 README 迁入的历史说明
16
+
17
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
18
+
19
+ ## 2.1.0:提问来源与渠道头像
20
+
21
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**。提问按实际发起端返回;伙伴默认可修改自身 Matrix / Mattermost 渠道账号头像,无需能力开关。详见 [2.1.0 发布说明](../../docs/releases/2.1.0.md)。
@@ -23,3 +23,11 @@
23
23
  463 项自动化测试通过,覆盖认证收发、上传确认、大小限制、重定向拒绝、授权撤回、跨轮询合并、下载失败不执行和路由隔离。已在本地部署核对 Matrix 图片与文字合并进入同一条会话输入。Mattermost 媒体收发通过模拟服务器验证,未向真实联系人发送测试附件。
24
24
 
25
25
  存储迁移规则与 2.0.0 一致,不会因安装自动迁移。详见 [渠道说明](../direct-channels.md)。
26
+
27
+ ## 从 README 迁入的历史说明
28
+
29
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
30
+
31
+ ## 2.2.0:渠道附件与合并接收
32
+
33
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**。Matrix / Mattermost 支持附件收发,并合并紧邻的文字和附件,下载完成后再交给伙伴。详见 [2.2.0 发布说明](../../docs/releases/2.2.0.md)。
@@ -27,3 +27,11 @@
27
27
  - 用户概述旧版本保留最近五份,暂未提供历史版本浏览界面。
28
28
  - 升级前备份插件、公共数据及各伙伴的私有数据目录。
29
29
  - 501 项自动化测试通过;桌面、手机、平板及深浅色界面检查通过;本地部署验证 Matrix 恢复 running。
30
+
31
+ ## 从 README 迁入的历史说明
32
+
33
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
34
+
35
+ ## 2.3.0:统一记忆、用户概述与 Matrix 恢复
36
+
37
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**。统一记忆列表与可纠正的用户概述,修复共享会话记忆和弹窗定位;Matrix 消息缺口支持分页补拉及网络自动重连。详见 [2.3.0 发布说明](../../docs/releases/2.3.0.md)。
@@ -9,3 +9,11 @@
9
9
  - 管理弹窗按屏幕尺寸自适应,保存反馈不再悬浮遮挡内容。
10
10
  - 任务规划明确指定验收伙伴;自动验收使用持久任务恢复,避免重复执行已完成的工作;未作出验收决定时显示可操作错误。
11
11
  - MCP 服务支持文档见 [MCP 配置说明](../mcp.md)。升级前建议备份插件及数据。
12
+
13
+ ## 从 README 迁入的历史说明
14
+
15
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
16
+
17
+ ## 2.4.0:伙伴 MCP、能力管理与验收恢复
18
+
19
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**。新增 MCP 服务与伙伴授权,能力修改自动保存,资源管理改为自适应弹窗;修复验收分配、自动验收恢复及凭据键随机保存失败。详见 [2.4.0 发布说明](../../docs/releases/2.4.0.md)。
@@ -11,3 +11,11 @@
11
11
  - 旧的一次性预约可在原会话、相同外部 ID 与 taskKey 下重新关联当前任务;不猜测迁移或删除旧周期计划,不自动取消外部服务任务。
12
12
 
13
13
  验证:全量 573 项自动化测试通过,最终构建和 26 项续接定向测试通过。详见 [续接协议与恢复边界](../long-task-continuation.md)。
14
+
15
+ ## 从 README 迁入的历史说明
16
+
17
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
18
+
19
+ ## 2.5.0:长任务续接与看板等待协调
20
+
21
+ 正式版,已验证宿主 **DSH 0.1.5-rc.1**,Node.js **^22.19.0 或 >=24.0.0**。长时间外部任务支持持久化一次性预约;绑定看板后等待期间不重复派发、不提前送验收,到期只检查外部结果,由看板恢复后续步骤。修复恢复会话首次工具装配时序,内置可选续接技能。详见 [2.5.0 发布说明](../../docs/releases/2.5.0.md)。
@@ -11,3 +11,9 @@
11
11
  - 修复“需求成果交付”回执误切断正常答复收集,导致页面有回复、渠道报空的问题。
12
12
 
13
13
  验证:646 项自动化测试通过;真实会话回放确认空答复修复;本地构建已部署检查。既有任务与记忆数据保留。
14
+
15
+ ## 从 README 迁入的历史说明
16
+
17
+ 以下为该版本当时的介绍,适用范围以该版为准,不作为当前使用指南。
18
+
19
+ 2.8.0 完善持续关注的修改与清理、受阻任务逐级协调和临时计划生命周期;需求负责人明确提交总结与附件清单,渠道保留失败重试并按接收人、文件内容去重。修复交付回执插入用户轮次后,页面有答复但渠道提示空答复的问题。详见 [生命周期与交付](../../docs/lifecycle-recovery.md)。
@@ -0,0 +1,35 @@
1
+ # 2.8.4 · 统一交互、Bark 通知与持续关注可靠性
2
+
3
+ 适配 DeepSeek Harness **0.2.0-rc.2**;需要 Node.js **^22.19.0 或 >=24.0.0**。不改变现有宿主版本约束。
4
+
5
+ ## 界面与保存
6
+
7
+ - 统一按钮、输入框、搜索和下拉控件;弹窗居中、自适应视口,浅深主题保持一致,防止宿主主题覆盖身份和渠道控件。
8
+ - 运行配置改为紧凑摘要与选择弹窗,模型支持搜索,不再用三条长下拉框占据能力页。
9
+ - 自动保存弹窗不再显示多余的“完成”;保留保存中、成功及失败反馈。手动保存按实际内容差异判断草稿,展开高级选项、查看下拉框或改回原值不触发放弃确认。
10
+ - 固定底部与正文使用同一背景,避免色差和滚动文字透出;失败保留编辑内容,确认弹窗保持焦点及原草稿。
11
+
12
+ ## Bark 与持续关注
13
+
14
+ - 在渠道中增加 Bark,支持多个服务器和发送目标;无需联系人配对,独立于双向渠道的通知交付选择。Key 存入凭据服务,不回显。
15
+ - 最终结果异步入队,按设备记录、退避重试及重启恢复;可查看、重试或清理投递记录。不逐条推送工具和验收过程。服务端接受不是设备送达回执,网络回执丢失时仍可能重复通知。
16
+ - 持续关注按“读取依据、识别步骤、核验证据、交接执行”推进,支持定向知识文档/笔记分页读取、版本复核、批量登记步骤及恢复检查点。
17
+ - 开启后续执行时直接向伙伴原会话交接核实结果与步骤,不另建看板;区分检查与执行,不把待成稿、待生成步骤误报为检查失败。
18
+ - 为读取依据和登记检查点提供有界准备预算;临时模型连接错误有限退避重试,不重放已经执行的工具操作。修正自动压缩检查点导致的执行回执误判。
19
+
20
+ ## 看板临时 SSH 授权
21
+
22
+ - 搭配 SSH 插件 **1.11.3**,按具体看板任务、指定执行伙伴和实际执行会话绑定临时授权,不共享创建者的永久挂载。
23
+ - 暂不启动任务,核验真实用户授意后再提交执行;一次执行有效,结束、取消、过期、改派或任务要求变更后不可复用,重试与验收不自动继承。
24
+ - 无 SSH 插件或没有相应授权时维持原权限边界,不自动启用能力。
25
+
26
+ ## 验证与升级
27
+
28
+ - 744 项测试通过;浏览器回归覆盖能力自动保存、Bark 编辑及放弃确认、弹窗焦点、主题覆盖、记忆工作区和窄屏布局。
29
+ - 功能代码与已部署的 `2.8.4-style.4` 试用版一致;与 SSH 的授权联动已通过隔离模拟验证,未在测试中执行真实远端命令。
30
+ - 沿用既有存储布局,新增 Bark 状态字段向后读取兼容,无须执行存储目录迁移。升级前仍应备份配置与凭据;升级并重启 Profile 后刷新页面。
31
+ - 不自动重放旧发布任务或受阻任务,不承诺上游模型、渠道和外部服务始终可用。
32
+
33
+ Bark 说明:https://github.com/lemoncat7/dsh-partner/blob/main/docs/bark-notifications.md
34
+
35
+ 持续关注流程:https://github.com/lemoncat7/dsh-partner/blob/main/docs/concern-workflow.md
@@ -0,0 +1,14 @@
1
+ # 发布说明维护
2
+
3
+ [返回项目介绍](../../README.md) · [GitHub Releases](https://github.com/lemoncat7/dsh-partner/releases)
4
+
5
+ README 只维护当前功能、安装方法、适用边界和文档入口,不逐版追加更新日志。详细配置放在使用文档中。
6
+
7
+ 每次发布:
8
+
9
+ 1. 在本目录维护 `<version>.md`,记录该版变更、兼容要求、迁移注意事项和实际验证范围;历史说明不代表当前行为。
10
+ 2. 将对应说明同步到 GitHub Release 正文,使用有效的绝对文档链接;不要只放一句更新摘要或指向 README。
11
+ 3. 核对版本标签、npm 版本与附件的一致性,优先使用已验证的同一安装包,不重新构建替换旧版本附件。
12
+ 4. 同一版本复用已有 Release;发布后检查不再遗留重复草稿。补发历史版本不能将它设成 Latest,撤回版本不能自动重新发布。
13
+
14
+ 本次从 README 迁出的历史段落保存在对应版本文件中。尚未正式发布的说明文件不代表该版本可用,请以 GitHub Release 和 npm 实际记录为准。
@@ -52,6 +52,7 @@ export interface HeartbeatExecution {
52
52
  phase: 'check' | 'final';
53
53
  modelMs: number;
54
54
  outputChars: number;
55
+ retries?: import('./observation-model-retry.js').ObservationRetry[];
55
56
  }>;
56
57
  blocked?: string[];
57
58
  blockedReasons?: Record<string, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ import { PARTNER_MEDIA_MAX_BYTES, safeMediaName } from './channel-message.js';
19
19
  import { listConcernFileSources } from './concern-sources.js';
20
20
  import { CONCERN_CREATED_NOTICE, renderConcernCreatedNotice } from './concern-notification.js';
21
21
  import { concernExecutionNotes } from './concern-execution-notes.js';
22
+ import { bindTaskSshAccess } from './collaboration/ssh-task-access.js';
22
23
  import { hasConcernReply } from './concern-execution-receipt.js';
23
24
  import { executeObservationLoop } from './observation-loop.js';
24
25
  import { waitForBoardTurn } from './tasks/continuation-yield.js';
@@ -347,7 +348,7 @@ export class PartnerAgentRuntime {
347
348
  throw new Error('未找到原注入消息,仅核对结果,不重新执行');
348
349
  await this.store.update(s => { const r = s.concernExecutions?.find(r => r.id === receipt.id); if (!r)
349
350
  throw new Error('关注执行已取消'); r.status = 'running'; r.updatedAt = Date.now(); });
350
- const access = await concernExecutionNotes({ store: this.store, concerns: this.concerns, companionId: companion.id, sourceId: receipt.id, sessionId: key, bridge: () => this.ctx.get('dshKnowledgeNoteRecording') });
351
+ const access = await concernExecutionNotes({ store: this.store, concerns: this.concerns, companionId: companion.id, sourceId: receipt.id, sessionId: key, bridge: () => this.ctx.get('dshKnowledgeNoteRecording'), knowledgeBridge: () => this.ctx.get('dshKnowledgeTracking') });
351
352
  const disposers = [];
352
353
  try {
353
354
  for (const tool of access.tools)
@@ -396,13 +397,14 @@ export class PartnerAgentRuntime {
396
397
  delegation.executionSessionId = route.sessionId;
397
398
  });
398
399
  input.signal?.throwIfAborted();
399
- const noteAccess = this.concerns ? await concernExecutionNotes({ store: this.store, concerns: this.concerns, companionId: input.companion.id, sourceId: input.sourceId, sessionId: route.sessionId, bridge: () => this.ctx.get('dshKnowledgeNoteRecording') }) : undefined;
400
+ const noteAccess = this.concerns ? await concernExecutionNotes({ store: this.store, concerns: this.concerns, companionId: input.companion.id, sourceId: input.sourceId, sessionId: route.sessionId, bridge: () => this.ctx.get('dshKnowledgeNoteRecording'), knowledgeBridge: () => this.ctx.get('dshKnowledgeTracking') }) : undefined;
400
401
  const noteDisposers = [];
402
+ const sshAccess = bindTaskSshAccess(this.store, this.ctx.get('dshSshTemporaryAccess'), { sourceId: input.sourceId, companionId: input.companion.id, sessionId: key, ...(input.signal ? { signal: input.signal } : {}) });
401
403
  try {
402
404
  for (const tool of noteAccess?.tools ?? [])
403
405
  noteDisposers.push(agent.ctx.tools.register(tool));
404
406
  agent.followup(createUserMessage({
405
- content: [{ type: 'text', text: input.prompt + (noteAccess?.prompt ?? '') }],
407
+ content: [{ type: 'text', text: input.prompt + (noteAccess?.prompt ?? '') + (sshAccess?.prompt ?? '') }],
406
408
  source: { kind: 'plugin:@lemoncat7/dsh-partner', plugin: '@lemoncat7/dsh-partner', form: 'notice', summary: input.sourceId.startsWith('requirement:') ? '伙伴汇总需求' : input.sourceId.startsWith('review:') ? '伙伴核验看板任务' : '伙伴执行看板任务' },
407
409
  }));
408
410
  let timedOut = false;
@@ -433,6 +435,7 @@ export class PartnerAgentRuntime {
433
435
  throw new Error('伙伴会话没有产生任务结果');
434
436
  }
435
437
  finally {
438
+ sshAccess?.dispose();
436
439
  noteAccess?.dispose();
437
440
  for (const dispose of noteDisposers.reverse())
438
441
  dispose();
@@ -639,7 +642,13 @@ export class PartnerAgentRuntime {
639
642
  }
640
643
  async driveScopedHeartbeat(conversation, companion, concerns) {
641
644
  const access = await resolveHeartbeatFileAccess(conversation.session.header.cwd, concerns);
642
- return executeObservationLoop({ ctx: this.ctx, conversation, companion, concerns, guard: (name, args) => heartbeatToolDenial(name, args, access), parse: parseConcernObservations, checkpoint: async (item, snapshot) => { if (!this.concerns)
645
+ return executeObservationLoop({ ctx: this.ctx, conversation, companion, concerns, guard: (name, args) => heartbeatToolDenial(name, args, access), parse: parseConcernObservations,
646
+ assertCurrent: async (item) => {
647
+ const current = (await this.concerns?.list(companion.id))?.find(c => c.id === item.id);
648
+ if (this.store.isCompanionRemoving(companion.id) || !current || current.control === 'stopped' || !['active', 'watching'].includes(current.state) || current.updatedAt !== item.updatedAt || JSON.stringify(current.resources) !== JSON.stringify(item.resources))
649
+ throw new Error('[SOURCE_BINDING_REVOKED] 关注已停止、删除或依据配置改变,请重新检查');
650
+ },
651
+ checkpoint: async (item, snapshot) => { if (!this.concerns)
643
652
  throw new Error('关注存储不可用'); await this.concerns.checkpointRecording(item, snapshot); }, saveProgress: async (item, progress) => { if (!this.concerns)
644
653
  throw new Error('关注存储不可用'); await this.concerns.saveObservationProgress(item, progress); } });
645
654
  }
@@ -1256,7 +1265,7 @@ export function renderHeartbeatActivity(execution, outcome, deliveryError) {
1256
1265
  `用时:${formatDuration(execution.completedAt - execution.startedAt)}`,
1257
1266
  `工具:${execution.tools.length > 0 ? `${execution.tools.length} 次调用` : '未调用'}`,
1258
1267
  ...(execution.recording ?? []).map(item => `记录同步:${execution.concerns.find(concern => concern.id === item.concernId)?.subject ?? item.concernId} · ${item.state === 'synced' ? '已写入手动指定位置' : '待同步(本轮未完成写入,下轮继续处理)'}`),
1259
- ...(execution.rounds?.length ? [`模型轮次:${execution.rounds.map(item => `${item.round}${item.phase === 'final' ? '(收尾)' : ''} / ${(item.modelMs / 1000).toFixed(1)}秒 / ${item.outputChars}字`).join(';')}`] : []),
1268
+ ...(execution.rounds?.length ? [`模型轮次:${execution.rounds.map(item => `${item.round}${item.phase === 'final' ? '(收尾)' : ''} / ${(item.modelMs / 1000).toFixed(1)}秒 / ${item.outputChars}字${item.retries?.length ? ` / 连接异常退避重试 ${item.retries.length} 次` : ''}`).join(';')}`] : []),
1260
1269
  ];
1261
1270
  execution.tools.forEach((trace, index) => {
1262
1271
  lines.push('', `${index + 1}. ${trace.name} · ${trace.status === 'completed' ? '完成' : '失败'} · ${formatDuration(trace.completedAt - trace.startedAt)}`, `输入:${trace.input}`, `结果:${trace.output}`);