@xgjktech/xg_cwork_im 1.19.42 → 1.19.43

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 (370) hide show
  1. package/README.md +492 -492
  2. package/dist/src/account-connection.d.ts +1 -1
  3. package/dist/src/account-connection.d.ts.map +1 -1
  4. package/dist/src/account-connection.js +25 -136
  5. package/dist/src/account-connection.js.map +1 -1
  6. package/dist/src/account-reconciler.d.ts +8 -17
  7. package/dist/src/account-reconciler.d.ts.map +1 -1
  8. package/dist/src/account-reconciler.js +11 -31
  9. package/dist/src/account-reconciler.js.map +1 -1
  10. package/dist/src/account-reconciler.test.js +1 -19
  11. package/dist/src/account-reconciler.test.js.map +1 -1
  12. package/dist/src/action-store-access.d.ts +0 -2
  13. package/dist/src/action-store-access.d.ts.map +1 -1
  14. package/dist/src/action-store-access.js +0 -7
  15. package/dist/src/action-store-access.js.map +1 -1
  16. package/dist/src/active-round-registry.d.ts +0 -6
  17. package/dist/src/active-round-registry.d.ts.map +1 -1
  18. package/dist/src/active-round-registry.js +2 -27
  19. package/dist/src/active-round-registry.js.map +1 -1
  20. package/dist/src/agent-stream-client-registry.d.ts +0 -2
  21. package/dist/src/agent-stream-client-registry.d.ts.map +1 -1
  22. package/dist/src/agent-stream-client-registry.js +1 -6
  23. package/dist/src/agent-stream-client-registry.js.map +1 -1
  24. package/dist/src/apply-sync-mapping.d.ts +1 -1
  25. package/dist/src/apply-sync-mapping.d.ts.map +1 -1
  26. package/dist/src/auth.d.ts +0 -2
  27. package/dist/src/auth.d.ts.map +1 -1
  28. package/dist/src/auth.js +0 -4
  29. package/dist/src/auth.js.map +1 -1
  30. package/dist/src/block-streaming-config.test.js +1 -7
  31. package/dist/src/block-streaming-config.test.js.map +1 -1
  32. package/dist/src/build-project-prompt.test.js +18 -18
  33. package/dist/src/channel-config.d.ts +17 -83
  34. package/dist/src/channel-config.d.ts.map +1 -1
  35. package/dist/src/channel-config.js +13 -46
  36. package/dist/src/channel-config.js.map +1 -1
  37. package/dist/src/channel-config.test.js +1 -58
  38. package/dist/src/channel-config.test.js.map +1 -1
  39. package/dist/src/channel.d.ts +3 -4
  40. package/dist/src/channel.d.ts.map +1 -1
  41. package/dist/src/channel.js +4 -127
  42. package/dist/src/channel.js.map +1 -1
  43. package/dist/src/connection.d.ts +0 -28
  44. package/dist/src/connection.d.ts.map +1 -1
  45. package/dist/src/connection.js +78 -155
  46. package/dist/src/connection.js.map +1 -1
  47. package/dist/src/deliver-text.test.js +22 -22
  48. package/dist/src/delivery/deliver-text.test.js +22 -22
  49. package/dist/src/delivery/turn-deliver-buffer.test.js +25 -25
  50. package/dist/src/dispatch-mentioned-reply.d.ts +2 -7
  51. package/dist/src/dispatch-mentioned-reply.d.ts.map +1 -1
  52. package/dist/src/dispatch-mentioned-reply.js +68 -243
  53. package/dist/src/dispatch-mentioned-reply.js.map +1 -1
  54. package/dist/src/gateway-session-queue.d.ts +6 -2
  55. package/dist/src/gateway-session-queue.d.ts.map +1 -1
  56. package/dist/src/gateway-session-queue.js +21 -78
  57. package/dist/src/gateway-session-queue.js.map +1 -1
  58. package/dist/src/group-history-tool.d.ts +1 -1
  59. package/dist/src/group-history-tool.d.ts.map +1 -1
  60. package/dist/src/inbound-display.d.ts.map +1 -1
  61. package/dist/src/inbound-display.js +1 -2
  62. package/dist/src/inbound-display.js.map +1 -1
  63. package/dist/src/inbound-input-media.d.ts +1 -1
  64. package/dist/src/inbound-input-media.d.ts.map +1 -1
  65. package/dist/src/inbound-media-local.d.ts +1 -1
  66. package/dist/src/inbound-media-local.d.ts.map +1 -1
  67. package/dist/src/inbound-model.d.ts +0 -9
  68. package/dist/src/inbound-model.d.ts.map +1 -1
  69. package/dist/src/inbound-model.js +0 -26
  70. package/dist/src/inbound-model.js.map +1 -1
  71. package/dist/src/inbound-model.test.js +1 -23
  72. package/dist/src/inbound-model.test.js.map +1 -1
  73. package/dist/src/inbound-terminal-state.d.ts +0 -2
  74. package/dist/src/inbound-terminal-state.d.ts.map +1 -1
  75. package/dist/src/inbound-terminal-state.js +2 -7
  76. package/dist/src/inbound-terminal-state.js.map +1 -1
  77. package/dist/src/modified-file-push-tracker.d.ts +24 -0
  78. package/dist/src/modified-file-push-tracker.d.ts.map +1 -0
  79. package/dist/src/modified-file-push-tracker.js +125 -0
  80. package/dist/src/modified-file-push-tracker.js.map +1 -0
  81. package/dist/src/nas-volumes.d.ts +2 -12
  82. package/dist/src/nas-volumes.d.ts.map +1 -1
  83. package/dist/src/nas-volumes.js +37 -147
  84. package/dist/src/nas-volumes.js.map +1 -1
  85. package/dist/src/nas-volumes.test.js +7 -39
  86. package/dist/src/nas-volumes.test.js.map +1 -1
  87. package/dist/src/per-message-model-pending.d.ts +3 -38
  88. package/dist/src/per-message-model-pending.d.ts.map +1 -1
  89. package/dist/src/per-message-model-pending.js +7 -96
  90. package/dist/src/per-message-model-pending.js.map +1 -1
  91. package/dist/src/plan/action-dispatch-event-compat.test.d.ts +2 -0
  92. package/dist/src/plan/action-dispatch-event-compat.test.d.ts.map +1 -0
  93. package/dist/src/plan/action-dispatch-event-compat.test.js +81 -0
  94. package/dist/src/plan/action-dispatch-event-compat.test.js.map +1 -0
  95. package/dist/src/plan/action-store-lifecycle.test.js +5 -5
  96. package/dist/src/plan/plan-core-db.test.js +9 -9
  97. package/dist/src/plan/plan-core-snapshot.test.js +9 -9
  98. package/dist/src/plan-event-subscription.d.ts +1 -1
  99. package/dist/src/plan-event-subscription.d.ts.map +1 -1
  100. package/dist/src/plan-stat-event.d.ts +15 -4
  101. package/dist/src/plan-stat-event.d.ts.map +1 -1
  102. package/dist/src/plan-stat-event.js +37 -4
  103. package/dist/src/plan-stat-event.js.map +1 -1
  104. package/dist/src/plan-stat-event.test.js +118 -1
  105. package/dist/src/plan-stat-event.test.js.map +1 -1
  106. package/dist/src/plan-store-access.d.ts +23 -0
  107. package/dist/src/plan-store-access.d.ts.map +1 -0
  108. package/dist/src/plan-store-access.js +96 -0
  109. package/dist/src/plan-store-access.js.map +1 -0
  110. package/dist/src/plan-store-access.test.d.ts +2 -0
  111. package/dist/src/plan-store-access.test.d.ts.map +1 -0
  112. package/dist/src/plan-store-access.test.js +207 -0
  113. package/dist/src/plan-store-access.test.js.map +1 -0
  114. package/dist/src/plan-tool-middleware.d.ts +11 -3
  115. package/dist/src/plan-tool-middleware.d.ts.map +1 -1
  116. package/dist/src/plan-tool-middleware.js +60 -11
  117. package/dist/src/plan-tool-middleware.js.map +1 -1
  118. package/dist/src/plan-tool-middleware.test.js +603 -83
  119. package/dist/src/plan-tool-middleware.test.js.map +1 -1
  120. package/dist/src/plan-ws-registry.d.ts +0 -4
  121. package/dist/src/plan-ws-registry.d.ts.map +1 -1
  122. package/dist/src/plan-ws-registry.js +0 -12
  123. package/dist/src/plan-ws-registry.js.map +1 -1
  124. package/dist/src/plan-ws-registry.test.js +1 -19
  125. package/dist/src/plan-ws-registry.test.js.map +1 -1
  126. package/dist/src/progress-display.d.ts +77 -0
  127. package/dist/src/progress-display.d.ts.map +1 -0
  128. package/dist/src/progress-display.js +420 -0
  129. package/dist/src/progress-display.js.map +1 -0
  130. package/dist/src/register-per-message-model-hook.d.ts +2 -10
  131. package/dist/src/register-per-message-model-hook.d.ts.map +1 -1
  132. package/dist/src/register-per-message-model-hook.js +6 -32
  133. package/dist/src/register-per-message-model-hook.js.map +1 -1
  134. package/dist/src/resolve-inbound-group-prompt.d.ts +1 -17
  135. package/dist/src/resolve-inbound-group-prompt.d.ts.map +1 -1
  136. package/dist/src/resolve-inbound-group-prompt.js +2 -16
  137. package/dist/src/resolve-inbound-group-prompt.js.map +1 -1
  138. package/dist/src/run-usage-session.d.ts +1 -4
  139. package/dist/src/run-usage-session.d.ts.map +1 -1
  140. package/dist/src/run-usage-session.js +1 -13
  141. package/dist/src/run-usage-session.js.map +1 -1
  142. package/dist/src/run-usage.d.ts +0 -15
  143. package/dist/src/run-usage.d.ts.map +1 -1
  144. package/dist/src/run-usage.js +4 -30
  145. package/dist/src/run-usage.js.map +1 -1
  146. package/dist/src/run-usage.test.js +11 -99
  147. package/dist/src/run-usage.test.js.map +1 -1
  148. package/dist/src/send-file-tool.d.ts +1 -1
  149. package/dist/src/send-file-tool.d.ts.map +1 -1
  150. package/dist/src/send-group-message-tool.d.ts +1 -1
  151. package/dist/src/send-group-message-tool.d.ts.map +1 -1
  152. package/dist/src/session/build-project-prompt.test.js +18 -18
  153. package/dist/src/session-im-context.d.ts +0 -2
  154. package/dist/src/session-im-context.d.ts.map +1 -1
  155. package/dist/src/session-im-context.js +2 -11
  156. package/dist/src/session-im-context.js.map +1 -1
  157. package/dist/src/subagent-delivery-phase.d.ts +10 -0
  158. package/dist/src/subagent-delivery-phase.d.ts.map +1 -0
  159. package/dist/src/subagent-delivery-phase.js +4 -0
  160. package/dist/src/subagent-delivery-phase.js.map +1 -0
  161. package/dist/src/subagent-delivery-phase.test.d.ts +2 -0
  162. package/dist/src/subagent-delivery-phase.test.d.ts.map +1 -0
  163. package/dist/src/subagent-delivery-phase.test.js +12 -0
  164. package/dist/src/subagent-delivery-phase.test.js.map +1 -0
  165. package/dist/src/subagent-monitor.d.ts +1 -14
  166. package/dist/src/subagent-monitor.d.ts.map +1 -1
  167. package/dist/src/subagent-monitor.js +36 -164
  168. package/dist/src/subagent-monitor.js.map +1 -1
  169. package/dist/src/subagent-monitor.test.js +0 -121
  170. package/dist/src/subagent-monitor.test.js.map +1 -1
  171. package/dist/src/tool-json-result.d.ts +1 -1
  172. package/dist/src/tool-json-result.d.ts.map +1 -1
  173. package/dist/src/turn/turn-agent-event-subscription.d.ts.map +1 -1
  174. package/dist/src/turn/turn-agent-event-subscription.js +14 -0
  175. package/dist/src/turn/turn-agent-event-subscription.js.map +1 -1
  176. package/dist/src/turn-deliver-buffer.test.js +25 -25
  177. package/dist/src/types.d.ts +1 -48
  178. package/dist/src/types.d.ts.map +1 -1
  179. package/dist/src/types.js.map +1 -1
  180. package/dist/src/workspace/nas-volumes.test.js +3 -2
  181. package/dist/src/workspace/nas-volumes.test.js.map +1 -1
  182. package/dist/src/ws-inbound-schema.d.ts.map +1 -1
  183. package/dist/src/ws-inbound-schema.js +0 -1
  184. package/dist/src/ws-inbound-schema.js.map +1 -1
  185. package/openclaw.plugin.json +30 -30
  186. package/package.json +83 -83
  187. package/dist/src/action-store-lifecycle.test.d.ts +0 -2
  188. package/dist/src/action-store-lifecycle.test.d.ts.map +0 -1
  189. package/dist/src/action-store-lifecycle.test.js +0 -195
  190. package/dist/src/action-store-lifecycle.test.js.map +0 -1
  191. package/dist/src/active-cron-context-store.d.ts +0 -20
  192. package/dist/src/active-cron-context-store.d.ts.map +0 -1
  193. package/dist/src/active-cron-context-store.js +0 -73
  194. package/dist/src/active-cron-context-store.js.map +0 -1
  195. package/dist/src/assistant-item-delivery.d.ts +0 -27
  196. package/dist/src/assistant-item-delivery.d.ts.map +0 -1
  197. package/dist/src/assistant-item-delivery.js +0 -134
  198. package/dist/src/assistant-item-delivery.js.map +0 -1
  199. package/dist/src/assistant-item-delivery.test.d.ts +0 -2
  200. package/dist/src/assistant-item-delivery.test.d.ts.map +0 -1
  201. package/dist/src/assistant-item-delivery.test.js +0 -116
  202. package/dist/src/assistant-item-delivery.test.js.map +0 -1
  203. package/dist/src/assistant-item-sink.d.ts +0 -17
  204. package/dist/src/assistant-item-sink.d.ts.map +0 -1
  205. package/dist/src/assistant-item-sink.js +0 -34
  206. package/dist/src/assistant-item-sink.js.map +0 -1
  207. package/dist/src/connection-workspace-event.test.d.ts +0 -2
  208. package/dist/src/connection-workspace-event.test.d.ts.map +0 -1
  209. package/dist/src/connection-workspace-event.test.js +0 -74
  210. package/dist/src/connection-workspace-event.test.js.map +0 -1
  211. package/dist/src/connection.test.d.ts +0 -2
  212. package/dist/src/connection.test.d.ts.map +0 -1
  213. package/dist/src/connection.test.js +0 -110
  214. package/dist/src/connection.test.js.map +0 -1
  215. package/dist/src/cron-appkey-binding-store.d.ts +0 -29
  216. package/dist/src/cron-appkey-binding-store.d.ts.map +0 -1
  217. package/dist/src/cron-appkey-binding-store.js +0 -239
  218. package/dist/src/cron-appkey-binding-store.js.map +0 -1
  219. package/dist/src/cron-appkey-binding-store.test.d.ts +0 -2
  220. package/dist/src/cron-appkey-binding-store.test.d.ts.map +0 -1
  221. package/dist/src/cron-appkey-binding-store.test.js +0 -387
  222. package/dist/src/cron-appkey-binding-store.test.js.map +0 -1
  223. package/dist/src/nas-site.d.ts +0 -16
  224. package/dist/src/nas-site.d.ts.map +0 -1
  225. package/dist/src/nas-site.js +0 -17
  226. package/dist/src/nas-site.js.map +0 -1
  227. package/dist/src/plan-core-adapter.d.ts +0 -54
  228. package/dist/src/plan-core-adapter.d.ts.map +0 -1
  229. package/dist/src/plan-core-adapter.js +0 -104
  230. package/dist/src/plan-core-adapter.js.map +0 -1
  231. package/dist/src/plan-core-adapter.test.d.ts +0 -2
  232. package/dist/src/plan-core-adapter.test.d.ts.map +0 -1
  233. package/dist/src/plan-core-adapter.test.js +0 -183
  234. package/dist/src/plan-core-adapter.test.js.map +0 -1
  235. package/dist/src/plan-core-db.d.ts +0 -22
  236. package/dist/src/plan-core-db.d.ts.map +0 -1
  237. package/dist/src/plan-core-db.js +0 -91
  238. package/dist/src/plan-core-db.js.map +0 -1
  239. package/dist/src/plan-core-db.test.d.ts +0 -2
  240. package/dist/src/plan-core-db.test.d.ts.map +0 -1
  241. package/dist/src/plan-core-db.test.js +0 -115
  242. package/dist/src/plan-core-db.test.js.map +0 -1
  243. package/dist/src/plan-core-snapshot.d.ts +0 -23
  244. package/dist/src/plan-core-snapshot.d.ts.map +0 -1
  245. package/dist/src/plan-core-snapshot.js +0 -66
  246. package/dist/src/plan-core-snapshot.js.map +0 -1
  247. package/dist/src/plan-core-snapshot.test.d.ts +0 -2
  248. package/dist/src/plan-core-snapshot.test.d.ts.map +0 -1
  249. package/dist/src/plan-core-snapshot.test.js +0 -157
  250. package/dist/src/plan-core-snapshot.test.js.map +0 -1
  251. package/dist/src/plugin-dispose.d.ts +0 -22
  252. package/dist/src/plugin-dispose.d.ts.map +0 -1
  253. package/dist/src/plugin-dispose.js +0 -66
  254. package/dist/src/plugin-dispose.js.map +0 -1
  255. package/dist/src/process-shared-store.d.ts +0 -48
  256. package/dist/src/process-shared-store.d.ts.map +0 -1
  257. package/dist/src/process-shared-store.js +0 -89
  258. package/dist/src/process-shared-store.js.map +0 -1
  259. package/dist/src/process-shared-store.test.d.ts +0 -2
  260. package/dist/src/process-shared-store.test.d.ts.map +0 -1
  261. package/dist/src/process-shared-store.test.js +0 -60
  262. package/dist/src/process-shared-store.test.js.map +0 -1
  263. package/dist/src/register-exec-env-hook.d.ts +0 -44
  264. package/dist/src/register-exec-env-hook.d.ts.map +0 -1
  265. package/dist/src/register-exec-env-hook.js +0 -473
  266. package/dist/src/register-exec-env-hook.js.map +0 -1
  267. package/dist/src/register-exec-env-hook.test.d.ts +0 -2
  268. package/dist/src/register-exec-env-hook.test.d.ts.map +0 -1
  269. package/dist/src/register-exec-env-hook.test.js +0 -189
  270. package/dist/src/register-exec-env-hook.test.js.map +0 -1
  271. package/dist/src/register-group-prompt-hook.d.ts +0 -17
  272. package/dist/src/register-group-prompt-hook.d.ts.map +0 -1
  273. package/dist/src/register-group-prompt-hook.js +0 -45
  274. package/dist/src/register-group-prompt-hook.js.map +0 -1
  275. package/dist/src/register-group-prompt-hook.test.d.ts +0 -2
  276. package/dist/src/register-group-prompt-hook.test.d.ts.map +0 -1
  277. package/dist/src/register-group-prompt-hook.test.js +0 -60
  278. package/dist/src/register-group-prompt-hook.test.js.map +0 -1
  279. package/dist/src/register-per-message-model-hook.test.d.ts +0 -2
  280. package/dist/src/register-per-message-model-hook.test.d.ts.map +0 -1
  281. package/dist/src/register-per-message-model-hook.test.js +0 -208
  282. package/dist/src/register-per-message-model-hook.test.js.map +0 -1
  283. package/dist/src/register-run-model-context-hook.d.ts +0 -11
  284. package/dist/src/register-run-model-context-hook.d.ts.map +0 -1
  285. package/dist/src/register-run-model-context-hook.js +0 -23
  286. package/dist/src/register-run-model-context-hook.js.map +0 -1
  287. package/dist/src/reply-dispatch-driver.d.ts +0 -89
  288. package/dist/src/reply-dispatch-driver.d.ts.map +0 -1
  289. package/dist/src/reply-dispatch-driver.js +0 -294
  290. package/dist/src/reply-dispatch-driver.js.map +0 -1
  291. package/dist/src/reply-dispatch-driver.test.d.ts +0 -2
  292. package/dist/src/reply-dispatch-driver.test.d.ts.map +0 -1
  293. package/dist/src/reply-dispatch-driver.test.js +0 -363
  294. package/dist/src/reply-dispatch-driver.test.js.map +0 -1
  295. package/dist/src/run-model-context.d.ts +0 -45
  296. package/dist/src/run-model-context.d.ts.map +0 -1
  297. package/dist/src/run-model-context.js +0 -108
  298. package/dist/src/run-model-context.js.map +0 -1
  299. package/dist/src/run-model-context.test.d.ts +0 -2
  300. package/dist/src/run-model-context.test.d.ts.map +0 -1
  301. package/dist/src/run-model-context.test.js +0 -68
  302. package/dist/src/run-model-context.test.js.map +0 -1
  303. package/dist/src/session-env-store.d.ts +0 -55
  304. package/dist/src/session-env-store.d.ts.map +0 -1
  305. package/dist/src/session-env-store.js +0 -328
  306. package/dist/src/session-env-store.js.map +0 -1
  307. package/dist/src/session-env-store.test.d.ts +0 -2
  308. package/dist/src/session-env-store.test.d.ts.map +0 -1
  309. package/dist/src/session-env-store.test.js +0 -151
  310. package/dist/src/session-env-store.test.js.map +0 -1
  311. package/dist/src/session-group-prompt.d.ts +0 -34
  312. package/dist/src/session-group-prompt.d.ts.map +0 -1
  313. package/dist/src/session-group-prompt.js +0 -101
  314. package/dist/src/session-group-prompt.js.map +0 -1
  315. package/dist/src/session-group-prompt.test.d.ts +0 -2
  316. package/dist/src/session-group-prompt.test.d.ts.map +0 -1
  317. package/dist/src/session-group-prompt.test.js +0 -72
  318. package/dist/src/session-group-prompt.test.js.map +0 -1
  319. package/dist/src/session-model-fallback.d.ts +0 -13
  320. package/dist/src/session-model-fallback.d.ts.map +0 -1
  321. package/dist/src/session-model-fallback.js +0 -24
  322. package/dist/src/session-model-fallback.js.map +0 -1
  323. package/dist/src/tool-event-adapter.d.ts +0 -31
  324. package/dist/src/tool-event-adapter.d.ts.map +0 -1
  325. package/dist/src/tool-event-adapter.js +0 -83
  326. package/dist/src/tool-event-adapter.js.map +0 -1
  327. package/dist/src/tool-event-adapter.test.d.ts +0 -2
  328. package/dist/src/tool-event-adapter.test.d.ts.map +0 -1
  329. package/dist/src/tool-event-adapter.test.js +0 -93
  330. package/dist/src/tool-event-adapter.test.js.map +0 -1
  331. package/dist/src/turn-agent-event-subscription.d.ts +0 -29
  332. package/dist/src/turn-agent-event-subscription.d.ts.map +0 -1
  333. package/dist/src/turn-agent-event-subscription.js +0 -289
  334. package/dist/src/turn-agent-event-subscription.js.map +0 -1
  335. package/dist/src/turn-agent-event-subscription.test.d.ts +0 -2
  336. package/dist/src/turn-agent-event-subscription.test.d.ts.map +0 -1
  337. package/dist/src/turn-agent-event-subscription.test.js +0 -165
  338. package/dist/src/turn-agent-event-subscription.test.js.map +0 -1
  339. package/dist/src/turn-end-controller.d.ts +0 -61
  340. package/dist/src/turn-end-controller.d.ts.map +0 -1
  341. package/dist/src/turn-end-controller.js +0 -239
  342. package/dist/src/turn-end-controller.js.map +0 -1
  343. package/dist/src/turn-end-controller.test.d.ts +0 -2
  344. package/dist/src/turn-end-controller.test.d.ts.map +0 -1
  345. package/dist/src/turn-end-controller.test.js +0 -97
  346. package/dist/src/turn-end-controller.test.js.map +0 -1
  347. package/dist/src/workspace-event-protocol.d.ts +0 -3
  348. package/dist/src/workspace-event-protocol.d.ts.map +0 -1
  349. package/dist/src/workspace-event-protocol.js +0 -3
  350. package/dist/src/workspace-event-protocol.js.map +0 -1
  351. package/dist/src/workspace-event-scheduler.d.ts +0 -54
  352. package/dist/src/workspace-event-scheduler.d.ts.map +0 -1
  353. package/dist/src/workspace-event-scheduler.js +0 -131
  354. package/dist/src/workspace-event-scheduler.js.map +0 -1
  355. package/dist/src/workspace-event-scheduler.test.d.ts +0 -2
  356. package/dist/src/workspace-event-scheduler.test.d.ts.map +0 -1
  357. package/dist/src/workspace-event-scheduler.test.js +0 -157
  358. package/dist/src/workspace-event-scheduler.test.js.map +0 -1
  359. package/dist/src/workspace-event.d.ts +0 -28
  360. package/dist/src/workspace-event.d.ts.map +0 -1
  361. package/dist/src/workspace-event.js +0 -674
  362. package/dist/src/workspace-event.js.map +0 -1
  363. package/dist/src/workspace-event.test.d.ts +0 -2
  364. package/dist/src/workspace-event.test.d.ts.map +0 -1
  365. package/dist/src/workspace-event.test.js +0 -265
  366. package/dist/src/workspace-event.test.js.map +0 -1
  367. package/dist/src/ws-inbound-schema.test.d.ts +0 -2
  368. package/dist/src/ws-inbound-schema.test.d.ts.map +0 -1
  369. package/dist/src/ws-inbound-schema.test.js +0 -58
  370. package/dist/src/ws-inbound-schema.test.js.map +0 -1
@@ -9,26 +9,18 @@ import { shouldSuppressFallbackNoticeForIm } from "./per-message-fallback-notice
9
9
  import { resolveThinkingWsDisplayUpdate, THINKING_WS_SUMMARY_HINT, ThinkingWsBuffer, WS_THINKING_DISPLAY_MAX, } from "./thinking-ws-progress.js";
10
10
  import { resolveItemEventGuard } from "./item-event-guard.js";
11
11
  import { clearPendingPerMessageModel, setPendingPerMessageModel, splitModelRef, } from "./per-message-model-pending.js";
12
- import { resolveSessionModelFallbackContext } from "./session-model-fallback.js";
13
- import { IM_BLOCK_STREAMING_COALESCE_DEFAULT, isDeliverAssistantItemsEnabled, isDeliverPartialSnapshotEnabled, isDeliverSegmentBufferEnabled, isInboundBlockStreamingEnabled, resolveBlockStreamingReplyOptions, resolveDispatchOpenClawCfg, } from "./channel-config.js";
14
- import { clearAssistantItemSink, setAssistantItemSink } from "./assistant-item-sink.js";
15
- import { flushAssistantItem, resetAssistantItem } from "./assistant-item-delivery.js";
12
+ import { IM_BLOCK_STREAMING_COALESCE_DEFAULT, isDeliverPartialSnapshotEnabled, isDeliverSegmentBufferEnabled, isInboundBlockStreamingEnabled, resolveBlockStreamingReplyOptions, resolveDispatchOpenClawCfg, } from "./channel-config.js";
16
13
  import { sendReplyDeliverBlock, sendTextMessage } from "./send-service.js";
17
14
  import { isDeliverPayloadSendable, snapshotSupersedesBufferText, TurnDeliverBuffer } from "./turn-deliver-buffer.js";
18
15
  import { buildRunUsageFromSessionEntry, hasReportableUsage, toImStreamRunUsageData } from "./run-usage.js";
19
16
  import { readSessionUsageFields } from "./run-usage-session.js";
20
- import { finalizeRoundMonitoring } from "./subagent-monitor.js";
21
- import { registerCorePlanSnapshotClient } from "./plan-core-snapshot.js";
17
+ import { hasActiveSubagents, deferFinished } from "./subagent-monitor.js";
18
+ import { registerPlanWsClientAndSnapshot } from "./plan-stat-event.js";
22
19
  import { setSessionImContext } from "./session-im-context.js";
23
- import { completeActiveRound, registerActiveRound, roundExists, } from "./active-round-registry.js";
24
- import { turnEnsureRound, turnForget, turnIsEligible, turnIsSawSubagent, turnOnDispatchReturned, } from "./turn-end-controller.js";
25
- import { noteWrappedRunId } from "./turn-agent-event-subscription.js";
20
+ import { completeActiveRound, registerActiveRound, } from "./active-round-registry.js";
26
21
  import { resolveNasVolumeDispatchConfig } from "./nas-volumes.js";
27
- import { resolveDispatchDriver, dispatchXgImInboundReply } from "./reply-dispatch-driver.js";
28
22
  /** WS `displayText` 过长封顶(避免网关/客户端溢出) */
29
23
  const WS_DISPLAY_TEXT_MAX = 200;
30
- /** 子任务轮次等整轮结束(等父会话非 yield 终态 / 静默兜底)的最长等待时间;超时强制收尾,避免悬挂。 */
31
- const TURN_END_WAIT_MAX_MS = 30 * 60_000;
32
24
  /** 进度 `summary` 封顶(与网关约定一致) */
33
25
  const WS_PROGRESS_SUMMARY_MAX = 200;
34
26
  /** 流式正文预览(onPartialReply 快照)经 WS 展示的封顶长度 */
@@ -55,7 +47,7 @@ function clipWsProgressSummary(text, max = WS_PROGRESS_SUMMARY_MAX) {
55
47
  }
56
48
  /** 流式 BEGIN → dispatch → 可选 RUN_USAGE → 必发 FINISHED;首包超时仅日志(不对 IM 发超时话术) */
57
49
  export async function dispatchMentionedReply(args) {
58
- const { accountId, rt, cfg, config, log, logPrefix, route, inboundCtx, params, currentIdentity, streamClient, agentWorkspaceDir, nasVolumes, modelOverride, thinkingLevelOverride, autoRouteMeta, inboundTrigger, isStopControl = false, driver: explicitDriver, inboundRecord } = args;
50
+ const { accountId, rt, cfg, config, log, logPrefix, route, inboundCtx, params, currentIdentity, streamClient, agentWorkspaceDir, nasVolumes, modelOverride, thinkingLevelOverride, autoRouteMeta, inboundTrigger, isStopControl = false } = args;
59
51
  const terminal = new InboundTerminalController({
60
52
  messageId: params.msgId,
61
53
  groupId: params.groupId,
@@ -143,22 +135,14 @@ export async function dispatchMentionedReply(args) {
143
135
  let deliverInvokeCount = 0;
144
136
  let deliverCallCount = 0;
145
137
  let deliverSkippedCount = 0;
146
- let compactionNoticeDelivered = 0;
147
138
  let lastDeliveredText = "";
148
139
  let lastDeliveredHadMedia = false;
149
140
  let agentRunId;
150
141
  let dispatchError = undefined;
151
142
  let lastDeliverError = undefined;
152
143
  let dispatchResult;
153
- let assistantItemSink;
154
- // assistant-item 模式下的兜底:核心命令(如 /status)不跑 agent、无 assistant 流,
155
- // assistant-item 订阅不会触发。这里记录被跳过的正文,收尾若确认本轮无任何投递则补发。
156
- let assistantItemDelivered = false;
157
- let assistantItemFallback;
158
144
  const blockStreamingEnabled = isInboundBlockStreamingEnabled(config);
159
- // assistant item 投递:订阅 assistant 流按每条 assistant 消息逐条发;开启时 block reply 正文不再发。
160
- const assistantItemDeliveryEnabled = isDeliverAssistantItemsEnabled(config);
161
- const segmentBufferEnabled = blockStreamingEnabled && isDeliverSegmentBufferEnabled(config) && !assistantItemDeliveryEnabled;
145
+ const segmentBufferEnabled = blockStreamingEnabled && isDeliverSegmentBufferEnabled(config);
162
146
  const segmentBuffer = segmentBufferEnabled ? new TurnDeliverBuffer() : undefined;
163
147
  let hasBufferedSendable = false;
164
148
  let flushSegmentBuffer = async () => { };
@@ -234,27 +218,6 @@ export async function dispatchMentionedReply(args) {
234
218
  replyToMsgId: params.msgId,
235
219
  agentId: config.agentId || "main",
236
220
  });
237
- if (assistantItemDeliveryEnabled) {
238
- // assistant 流订阅按 item 逐条把完整正文交到这里;复用本 dispatch 的发送链路
239
- // (config/token/reply/终态/去重),因此 block reply 正文不再重复发送。
240
- assistantItemSink = (itemId, text) => {
241
- const label = deliverCallCount === 0 ? "First reply (assistant item)" : "Assistant item";
242
- return postHttpDeliver({
243
- payloadForSend: { text },
244
- textPart: text,
245
- sendLabel: label,
246
- invokeNum: deliverInvokeCount,
247
- hasMedia: false,
248
- omitDuplicateFileCaption: false,
249
- }).then(() => {
250
- assistantItemDelivered = true;
251
- }).catch((err) => {
252
- lastDeliverError = err;
253
- log.error(`${logPrefix} [assistant-item] send failed itemId=${itemId}: ${String(err)}`);
254
- });
255
- };
256
- setAssistantItemSink(route.sessionKey, assistantItemSink);
257
- }
258
221
  await streamClient.start({
259
222
  groupId: params.groupId,
260
223
  replyToMsgId: params.msgId,
@@ -267,31 +230,12 @@ export async function dispatchMentionedReply(args) {
267
230
  replyToMsgId: params.msgId,
268
231
  streamClient,
269
232
  });
270
- turnEnsureRound(activeRound.roundKey, activeRound.generation);
271
- registerCorePlanSnapshotClient({
272
- groupId: params.groupId,
273
- client: streamClient,
274
- replyToMsgId: params.msgId,
275
- agentId: config.agentId || "main",
276
- sessionKey: route.sessionKey,
277
- });
233
+ registerPlanWsClientAndSnapshot(params.groupId, streamClient, params.msgId);
278
234
  }
279
235
  if (modelOverride) {
280
236
  const parsed = splitModelRef(modelOverride);
281
237
  if (parsed) {
282
- const fallbackContext = resolveSessionModelFallbackContext({
283
- storePath: inboundRecord?.storePath?.trim() ||
284
- rt.channel.session.resolveStorePath(cfg.session?.store, {
285
- agentId: route.agentId,
286
- }),
287
- sessionKey: route.sessionKey,
288
- });
289
- if (fallbackContext.sessionInAutoFallback) {
290
- log.info(`${logPrefix} [model] session in auto-fallback ` +
291
- `origin=${fallbackContext.fallbackOrigin?.provider ?? ""}/` +
292
- `${fallbackContext.fallbackOrigin?.model ?? ""}`);
293
- }
294
- setPendingPerMessageModel(route.sessionKey, modelOverride, fallbackContext);
238
+ setPendingPerMessageModel(route.sessionKey, modelOverride);
295
239
  }
296
240
  else {
297
241
  log.warn(`${logPrefix} [model] invalid per-message model ref, ignoring: ${modelOverride}`);
@@ -326,11 +270,9 @@ export async function dispatchMentionedReply(args) {
326
270
  }
327
271
  }
328
272
  const dispatchCfg = nasDispatch.cfg;
329
- const nasConfigOverride = nasDispatch.configOverride;
330
273
  if (nasDispatch.specHash) {
331
274
  log.info(`${logPrefix} [nas-volumes] session=${route.sessionKey} volumes=${nasVolumes?.length ?? "cached"} ` +
332
- `spec=${nasDispatch.specHash.slice(0, 12)} reused=${nasDispatch.reused}` +
333
- ` configOverride=${Boolean(nasConfigOverride)}`);
275
+ `spec=${nasDispatch.specHash.slice(0, 12)} reused=${nasDispatch.reused}`);
334
276
  }
335
277
  if (blockStreamingEnabled && baseDispatchCfg !== cfg) {
336
278
  log.info(`${logPrefix} [dispatch] IM blockStreamingCoalesce override ` +
@@ -419,22 +361,19 @@ export async function dispatchMentionedReply(args) {
419
361
  });
420
362
  };
421
363
  dispatchInFlight = true;
422
- const dispatchRequest = {
364
+ dispatchResult = await rt.channel.reply.dispatchReplyWithBufferedBlockDispatcher({
423
365
  ctx: inboundCtx,
424
366
  cfg: dispatchCfg,
425
367
  replyOptions: {
426
368
  ...resolveBlockStreamingReplyOptions(config),
427
369
  sourceReplyDeliveryMode: "automatic",
428
370
  suppressDefaultToolProgressMessages: true,
429
- allowProgressCallbacksWhenSourceDeliverySuppressed: true,
430
- // 单轮模型覆盖不走 replyOptions(OpenClaw 不消费 modelOverride 字段),
431
- // 改由 dispatch 前登记的 pending + before_model_resolve hook 生效。
371
+ ...(modelOverride ? { modelOverride } : {}),
432
372
  ...(thinkingLevelOverride ? { thinkingLevelOverride } : {}),
433
373
  onAgentRunStart: (runId) => {
434
374
  agentRunStarted = true;
435
375
  agentRunId = runId.trim() || undefined;
436
376
  terminal.setRunId(runId);
437
- noteWrappedRunId(route.sessionKey, runId.trim());
438
377
  log.info(`${logPrefix} [dispatch] agent run started runId=${runId}`);
439
378
  },
440
379
  onModelSelected: (m) => {
@@ -525,6 +464,20 @@ export async function dispatchMentionedReply(args) {
525
464
  log.debug?.(`${logPrefix} [stream] ignored unmapped onItemEvent ` +
526
465
  `kind=${guard.kind || "unknown"} title=${guard.title || "unknown"}`);
527
466
  },
467
+ onPlanUpdate: async (p) => {
468
+ const title = typeof p.title === "string" ? p.title.trim() : "";
469
+ if (title.length > 0) {
470
+ await notifyStreamProgress("PLAN_UPDATE", clipWsDisplayText(`正在更新计划:${title}`, 160), typeof p.explanation === "string" && p.explanation.trim()
471
+ ? clipWsProgressSummary(p.explanation.trim())
472
+ : undefined);
473
+ }
474
+ else if (typeof p.explanation === "string" && p.explanation.trim().length > 0) {
475
+ await notifyStreamProgress("PLAN_UPDATE", clipWsDisplayText(`计划更新:${p.explanation.trim()}`, 160));
476
+ }
477
+ else {
478
+ await notifyStreamProgress("PLAN_UPDATE", "正在更新执行计划…");
479
+ }
480
+ },
528
481
  onCompactionStart: async () => {
529
482
  terminal.noteCompactionWsEvent("start");
530
483
  await notifyStreamProgress("RUN_EVENT", "正在整理上下文…");
@@ -627,26 +580,10 @@ export async function dispatchMentionedReply(args) {
627
580
  return;
628
581
  }
629
582
  if (payload.isCompactionNotice === true) {
583
+ deliverSkippedCount++;
630
584
  terminal.noteCompactionNotice(textPart || "Compacting context...");
631
- if (textPart) {
632
- // 放开 HTTP 屏蔽:compaction notice 不再丢弃,作为群消息真实发出,
633
- // 让用户能看到“会话正在整理/已整理”而不是莫名等待。
634
- // 故意不走 postHttpDeliver:不标记业务回复、不进入 lastDelivered 去重链,
635
- // 避免把“整理上下文”误当首条正式答复而破坏 first-reply 计时与终态兜底判定。
636
- try {
637
- await terminalSend(textPart);
638
- compactionNoticeDelivered += 1;
639
- log.info(`${logPrefix} [deliver] Compaction notice sent via HTTP: ` +
640
- `${JSON.stringify(textPart.slice(0, 80))}`);
641
- }
642
- catch (err) {
643
- log.warn(`${logPrefix} [deliver] Compaction notice HTTP send failed: ${String(err)}`);
644
- }
645
- }
646
- else {
647
- deliverSkippedCount++;
648
- log.info(`${logPrefix} [deliver] Compaction notice empty; skipped`);
649
- }
585
+ log.info(`${logPrefix} [deliver] Compaction notice suppressed from HTTP (WS progress only): ` +
586
+ `${JSON.stringify((textPart || "").slice(0, 80))}`);
650
587
  return;
651
588
  }
652
589
  if (payload.isReasoning === true) {
@@ -706,20 +643,6 @@ export async function dispatchMentionedReply(args) {
706
643
  ` (isThinking=${payload.isThinking ?? false} hasMedia=${hasMedia})`);
707
644
  return;
708
645
  }
709
- // assistant item 投递开启时:正文由 assistant 流订阅按 item 发送,
710
- // block reply 不再发纯文本;媒体照发但清空 caption,避免正文重复。
711
- if (assistantItemDeliveryEnabled && !hasMedia) {
712
- deliverSkippedCount++;
713
- // 记录兜底正文:核心命令/无 agent run 的轮次不会有 assistant 流,
714
- // assistant-item 订阅不会投递,收尾时用它补发避免用户看不到回复。
715
- assistantItemFallback = {
716
- payloadForSend: { ...payload, text: textPart, markdown: textPart },
717
- textPart,
718
- };
719
- log.info(`${logPrefix} [deliver] assistant-item mode: text handled by assistant subscription; ` +
720
- `skipping deliver text (textLen=${textPart.length})`);
721
- return;
722
- }
723
646
  let payloadForSend = textPart !== trimmedForSend
724
647
  ? {
725
648
  ...payload,
@@ -728,7 +651,7 @@ export async function dispatchMentionedReply(args) {
728
651
  : { text: textPart }),
729
652
  }
730
653
  : payload;
731
- if (omitDuplicateFileCaption || (assistantItemDeliveryEnabled && hasMedia)) {
654
+ if (omitDuplicateFileCaption) {
732
655
  payloadForSend = { ...payloadForSend, text: "", markdown: "" };
733
656
  }
734
657
  if (segmentBufferEnabled && segmentBuffer) {
@@ -771,35 +694,11 @@ export async function dispatchMentionedReply(args) {
771
694
  }
772
695
  },
773
696
  },
774
- };
775
- const effectiveDriver = explicitDriver ?? resolveDispatchDriver(rt, config.dispatchDriver ?? "auto").driver;
776
- log.info(`${logPrefix} [dispatch] driver=${effectiveDriver} recordInCore=${Boolean(inboundRecord)}`);
777
- const storePath = inboundRecord?.storePath?.trim() ||
778
- rt.channel.session.resolveStorePath(cfg.session?.store, {
779
- agentId: config.agentId || "main",
780
- });
781
- dispatchResult = await dispatchXgImInboundReply({
782
- rt,
783
- ctx: dispatchRequest.ctx,
784
- cfg: dispatchRequest.cfg,
785
- channel: "xg_cwork_im",
786
- accountId,
787
- agentId: config.agentId || "main",
788
- routeSessionKey: route.sessionKey,
789
- storePath,
790
- replyOptions: dispatchRequest.replyOptions,
791
- dispatcherOptions: dispatchRequest.dispatcherOptions,
792
- driver: effectiveDriver,
793
- inboundRecord,
794
- logPrefix,
795
- warn: (message) => log.warn(message),
796
- ...(nasConfigOverride ? { configOverride: nasConfigOverride } : {}),
797
697
  });
798
698
  dispatchInFlight = false;
799
699
  const bufStats = segmentBuffer?.getStats();
800
700
  log.info(`${logPrefix} [dispatch] Dispatch completed for sessionKey=${route.sessionKey}` +
801
701
  ` (invoke=${deliverInvokeCount} delivered=${deliverCallCount} skipped=${deliverSkippedCount}` +
802
- ` compaction_http=${compactionNoticeDelivered}` +
803
702
  (bufStats
804
703
  ? ` buffer_writes=${bufStats.writeCount}` +
805
704
  ` revision_overwrite=${bufStats.revisionOverwriteCount}` +
@@ -819,7 +718,7 @@ export async function dispatchMentionedReply(args) {
819
718
  log.warn(`${logPrefix} [dispatch] OpenClaw never invoked channel deliver() for this turn — ` +
820
719
  `this plugin will not POST /im/message/send; IM「收到消息」若存在,多半来自占位/END 或其它通道,而非本插件 HTTP 合并`);
821
720
  }
822
- else if (deliverCallCount === 0 && compactionNoticeDelivered === 0 && !segmentBuffer?.hasContent()) {
721
+ else if (deliverCallCount === 0 && !segmentBuffer?.hasContent()) {
823
722
  log.warn(`${logPrefix} [dispatch] deliver() invoked ${deliverInvokeCount} time(s) but none had sendable text/media — ` +
824
723
  `check model output (thinking-only / empty blocks) or OpenClaw normalizer`);
825
724
  }
@@ -831,38 +730,6 @@ export async function dispatchMentionedReply(args) {
831
730
  finally {
832
731
  dispatchInFlight = false;
833
732
  clearPendingPerMessageModel(route.sessionKey);
834
- if (assistantItemDeliveryEnabled) {
835
- // 收尾前把当前 item 的完整正文交给 sink 发完,再摘除 sink(避免终态判定漏掉最后一条)。
836
- try {
837
- await flushAssistantItem(route.sessionKey);
838
- }
839
- catch (itemErr) {
840
- lastDeliverError = itemErr;
841
- log.error(`${logPrefix} [assistant-item] flush_final failed: ${String(itemErr)}`);
842
- }
843
- clearAssistantItemSink(route.sessionKey, assistantItemSink);
844
- resetAssistantItem(route.sessionKey);
845
- // 兜底:assistant-item 订阅整轮没投出任何东西(核心命令/无 agent run 的轮次,
846
- // 或 assistant 流缺失),但 deliver() 收到了正文——补发一次,避免 no_reply 静默。
847
- if (!assistantItemDelivered && assistantItemFallback && deliverCallCount === 0) {
848
- try {
849
- await postHttpDeliver({
850
- payloadForSend: assistantItemFallback.payloadForSend,
851
- textPart: assistantItemFallback.textPart,
852
- sendLabel: "Fallback reply (assistant item not delivered)",
853
- invokeNum: deliverInvokeCount,
854
- hasMedia: false,
855
- omitDuplicateFileCaption: false,
856
- });
857
- log.info(`${logPrefix} [assistant-item] fallback HTTP send: assistant subscription produced ` +
858
- `no item this turn; sent textLen=${assistantItemFallback.textPart.length}`);
859
- }
860
- catch (fbErr) {
861
- lastDeliverError = fbErr;
862
- log.error(`${logPrefix} [assistant-item] fallback send failed: ${String(fbErr)}`);
863
- }
864
- }
865
- }
866
733
  try {
867
734
  await flushSegmentBuffer("final");
868
735
  }
@@ -896,49 +763,48 @@ export async function dispatchMentionedReply(args) {
896
763
  log.info(`${logPrefix} [stream] round interrupted; skip late RUN_USAGE/FINISHED`);
897
764
  return;
898
765
  }
899
- // —— 整轮收尾(OpenClaw 7.1+/8.x):子任务流程中 dispatch 返回只是「一段 run 结束」,
900
- // FINISHED/RUN_USAGE 必须等主会话出现非 yield 段终态(或静默兜底)后才发出,
901
- // 否则会在主会话 resume 继续派发更多子任务时提前结束本轮。——
902
- const finishWsRound = async (reason) => {
903
- const roundKey = activeRound?.roundKey;
904
- const generation = activeRound?.generation;
905
- const hasRound = roundKey !== undefined && generation !== undefined;
906
- if (hasRound && !roundExists(roundKey, generation)) {
907
- log.info(`${logPrefix} [stream] round already completed/interrupted; skip late RUN_USAGE/FINISHED`);
908
- turnForget(roundKey, generation);
909
- return;
910
- }
911
- try {
912
- const storePath = rt.channel.session.resolveStorePath(cfg.session?.store, {
913
- agentId: config.agentId || "main",
914
- });
915
- const sessionFields = readSessionUsageFields({
916
- storePath,
917
- sessionKey: route.sessionKey,
918
- });
919
- const usage = buildRunUsageFromSessionEntry(sessionFields, {
920
- runId: agentRunId ?? terminal.getRunId(),
921
- });
922
- if (hasReportableUsage(usage) && usage) {
923
- await streamClient.streamUsage(toImStreamRunUsageData(usage, {
924
- groupId: params.groupId,
925
- replyToMsgId: params.msgId,
926
- }));
927
- }
928
- else {
929
- log.info(`${logPrefix} [stream] RUN_USAGE skipped (session store has no model/token; ` +
930
- `sessionKey=${route.sessionKey} deliver_call=${deliverCallCount})`);
931
- }
766
+ try {
767
+ const storePath = rt.channel.session.resolveStorePath(cfg.session?.store, {
768
+ agentId: config.agentId || "main",
769
+ });
770
+ const sessionFields = readSessionUsageFields({
771
+ storePath,
772
+ sessionKey: route.sessionKey,
773
+ });
774
+ const usage = buildRunUsageFromSessionEntry(sessionFields, {
775
+ runId: agentRunId ?? terminal.getRunId(),
776
+ });
777
+ if (hasReportableUsage(usage) && usage) {
778
+ await streamClient.streamUsage(toImStreamRunUsageData(usage, {
779
+ groupId: params.groupId,
780
+ replyToMsgId: params.msgId,
781
+ }));
932
782
  }
933
- catch (usageErr) {
934
- log.warn(`${logPrefix} [stream] RUN_USAGE failed: ${String(usageErr)}`);
783
+ else {
784
+ log.info(`${logPrefix} [stream] RUN_USAGE skipped (session store has no model/token; ` +
785
+ `sessionKey=${route.sessionKey} deliver_call=${deliverCallCount})`);
935
786
  }
787
+ }
788
+ catch (usageErr) {
789
+ log.warn(`${logPrefix} [stream] RUN_USAGE failed: ${String(usageErr)}`);
790
+ }
791
+ // ✅ 检查是否有活跃的 subagent,如果有则延迟 FINISHED
792
+ if (activeRound &&
793
+ hasActiveSubagents(activeRound.roundKey, activeRound.generation)) {
794
+ log.info(`${logPrefix} [stream] FINISHED deferred: has active subagents, ` +
795
+ `will be sent by monitor when all complete. reason=${endReason} ` +
796
+ `terminal_state=${terminalState} deliver_invoke=${deliverInvokeCount}`);
797
+ // 记录延迟的 FINISHED,由 subagent-monitor 在所有完成后发送
798
+ deferFinished(activeRound.roundKey, activeRound.generation, endReason);
799
+ }
800
+ else {
801
+ // 没有活跃 subagent,正常发送 FINISHED
936
802
  try {
937
- await streamClient.end(reason, {
803
+ await streamClient.end(endReason, {
938
804
  groupId: params.groupId,
939
805
  replyToMsgId: params.msgId,
940
806
  });
941
- log.info(`${logPrefix} [stream] FINISHED sent: reason=${reason} terminal_state=${terminalState} ` +
807
+ log.info(`${logPrefix} [stream] FINISHED sent: reason=${endReason} terminal_state=${terminalState} ` +
942
808
  `has_first_reply=${hasFirstReply} deliver_invoke=${deliverInvokeCount} ` +
943
809
  `deliver_call=${deliverCallCount} skipped=${deliverSkippedCount}`);
944
810
  }
@@ -946,51 +812,10 @@ export async function dispatchMentionedReply(args) {
946
812
  log.error(`${logPrefix} [stream] FINISHED failed: ${String(endErr)}`);
947
813
  }
948
814
  finally {
949
- if (hasRound) {
950
- finalizeRoundMonitoring(roundKey, generation);
951
- completeActiveRound(roundKey, generation);
952
- turnForget(roundKey, generation);
815
+ if (activeRound) {
816
+ completeActiveRound(activeRound.roundKey, activeRound.generation);
953
817
  }
954
818
  }
955
- };
956
- const roundKey = activeRound?.roundKey;
957
- const generation = activeRound?.generation;
958
- const sawSubagent = subagentNotificationSent ||
959
- (roundKey !== undefined && generation !== undefined &&
960
- turnIsSawSubagent(roundKey, generation));
961
- if (sawSubagent) {
962
- turnEnsureRound(roundKey, generation);
963
- turnOnDispatchReturned(roundKey, generation);
964
- const deadline = Date.now() + TURN_END_WAIT_MAX_MS;
965
- log.info(`${logPrefix} [stream] FINISHED deferred: subagent turn, waiting for lifecycle ` +
966
- `final segment (no premature finish on resume). reason=${endReason} ` +
967
- `terminal_state=${terminalState} deliver_invoke=${deliverInvokeCount}`);
968
- const waitStartedAt = Date.now();
969
- // 等待整轮结束信号(lifecycle 非 yield 终态 / 子任务完成后的静默兜底);/
970
- // 若轮次被 `/stop` 或其它收口移除,则由该路径发送过 aborted,这里直接退出。
971
- while (!turnIsEligible(roundKey, generation)) {
972
- if (!roundExists(roundKey, generation) || activeRound?.interrupted) {
973
- log.info(`${logPrefix} [stream] round interrupted while waiting; skip late RUN_USAGE/FINISHED`);
974
- turnForget(roundKey, generation);
975
- return;
976
- }
977
- if (Date.now() > deadline) {
978
- log.warn(`${logPrefix} [stream] turn-end wait exceeded ${TURN_END_WAIT_MAX_MS}ms; force finishing`);
979
- break;
980
- }
981
- await new Promise((resolve) => setTimeout(resolve, 250));
982
- }
983
- log.info(`${logPrefix} [stream] turn-end released round=${roundKey}#${generation} ` +
984
- `eligible=${turnIsEligible(roundKey, generation)} waitMs=${Date.now() - waitStartedAt}`);
985
- await finishWsRound(endReason);
986
- }
987
- else {
988
- // 无子任务的普通轮次:dispatch 返回即整轮结束,立即收尾(保持既有行为)。
989
- if (roundKey !== undefined && generation !== undefined) {
990
- turnEnsureRound(roundKey, generation);
991
- turnOnDispatchReturned(roundKey, generation);
992
- }
993
- await finishWsRound(endReason);
994
819
  }
995
820
  }
996
821
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-mentioned-reply.js","sourceRoot":"","sources":["../../src/dispatch-mentioned-reply.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch-mentioned-reply.js","sourceRoot":"","sources":["../../src/dispatch-mentioned-reply.ts"],"names":[],"mappings":"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"}