@xgjktech/xg_cwork_im 1.19.39 → 1.19.41

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 (604) hide show
  1. package/README.md +4 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +2 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/connection/account-connection.d.ts.map +1 -1
  6. package/dist/src/connection/account-connection.js +12 -3
  7. package/dist/src/connection/account-connection.js.map +1 -1
  8. package/dist/src/mcp/gateway-mcp-connection.d.ts +29 -0
  9. package/dist/src/mcp/gateway-mcp-connection.d.ts.map +1 -0
  10. package/dist/src/mcp/gateway-mcp-connection.js +112 -0
  11. package/dist/src/mcp/gateway-mcp-connection.js.map +1 -0
  12. package/dist/src/mcp/register-gateway-mcp-resolvers.d.ts +8 -0
  13. package/dist/src/mcp/register-gateway-mcp-resolvers.d.ts.map +1 -0
  14. package/dist/src/mcp/register-gateway-mcp-resolvers.js +53 -0
  15. package/dist/src/mcp/register-gateway-mcp-resolvers.js.map +1 -0
  16. package/dist/src/mcp/register-gateway-mcp-resolvers.test.d.ts +2 -0
  17. package/dist/src/mcp/register-gateway-mcp-resolvers.test.d.ts.map +1 -0
  18. package/dist/src/mcp/register-gateway-mcp-resolvers.test.js +99 -0
  19. package/dist/src/mcp/register-gateway-mcp-resolvers.test.js.map +1 -0
  20. package/dist/src/mcp/requester-appkey-store.d.ts +19 -0
  21. package/dist/src/mcp/requester-appkey-store.d.ts.map +1 -0
  22. package/dist/src/mcp/requester-appkey-store.js +66 -0
  23. package/dist/src/mcp/requester-appkey-store.js.map +1 -0
  24. package/dist/src/mcp/requester-appkey-store.test.d.ts +2 -0
  25. package/dist/src/mcp/requester-appkey-store.test.d.ts.map +1 -0
  26. package/dist/src/mcp/requester-appkey-store.test.js +43 -0
  27. package/dist/src/mcp/requester-appkey-store.test.js.map +1 -0
  28. package/dist/src/plugin/channel-config.d.ts +97 -0
  29. package/dist/src/plugin/channel-config.d.ts.map +1 -1
  30. package/dist/src/plugin/channel-config.js +25 -4
  31. package/dist/src/plugin/channel-config.js.map +1 -1
  32. package/dist/src/plugin/channel-config.test.js +20 -0
  33. package/dist/src/plugin/channel-config.test.js.map +1 -1
  34. package/dist/src/plugin/types.d.ts +32 -1
  35. package/dist/src/plugin/types.d.ts.map +1 -1
  36. package/dist/src/plugin/types.js.map +1 -1
  37. package/dist/src/turn/turn-agent-event-subscription.d.ts.map +1 -1
  38. package/dist/src/turn/turn-agent-event-subscription.js +7 -1
  39. package/dist/src/turn/turn-agent-event-subscription.js.map +1 -1
  40. package/package.json +1 -1
  41. package/dist/src/account-connection.d.ts +0 -37
  42. package/dist/src/account-connection.d.ts.map +0 -1
  43. package/dist/src/account-connection.js +0 -548
  44. package/dist/src/account-connection.js.map +0 -1
  45. package/dist/src/account-reconciler.d.ts +0 -64
  46. package/dist/src/account-reconciler.d.ts.map +0 -1
  47. package/dist/src/account-reconciler.js +0 -314
  48. package/dist/src/account-reconciler.js.map +0 -1
  49. package/dist/src/account-reconciler.test.d.ts +0 -2
  50. package/dist/src/account-reconciler.test.d.ts.map +0 -1
  51. package/dist/src/account-reconciler.test.js +0 -166
  52. package/dist/src/account-reconciler.test.js.map +0 -1
  53. package/dist/src/action-run-event.d.ts +0 -20
  54. package/dist/src/action-run-event.d.ts.map +0 -1
  55. package/dist/src/action-run-event.js +0 -62
  56. package/dist/src/action-run-event.js.map +0 -1
  57. package/dist/src/action-run-event.test.d.ts +0 -2
  58. package/dist/src/action-run-event.test.d.ts.map +0 -1
  59. package/dist/src/action-run-event.test.js +0 -83
  60. package/dist/src/action-run-event.test.js.map +0 -1
  61. package/dist/src/action-store-access.d.ts +0 -29
  62. package/dist/src/action-store-access.d.ts.map +0 -1
  63. package/dist/src/action-store-access.js +0 -81
  64. package/dist/src/action-store-access.js.map +0 -1
  65. package/dist/src/action-store-lifecycle.test.d.ts +0 -2
  66. package/dist/src/action-store-lifecycle.test.d.ts.map +0 -1
  67. package/dist/src/action-store-lifecycle.test.js +0 -195
  68. package/dist/src/action-store-lifecycle.test.js.map +0 -1
  69. package/dist/src/active-cron-context-store.d.ts +0 -20
  70. package/dist/src/active-cron-context-store.d.ts.map +0 -1
  71. package/dist/src/active-cron-context-store.js +0 -73
  72. package/dist/src/active-cron-context-store.js.map +0 -1
  73. package/dist/src/active-round-registry.d.ts +0 -35
  74. package/dist/src/active-round-registry.d.ts.map +0 -1
  75. package/dist/src/active-round-registry.js +0 -85
  76. package/dist/src/active-round-registry.js.map +0 -1
  77. package/dist/src/active-round-registry.test.d.ts +0 -2
  78. package/dist/src/active-round-registry.test.d.ts.map +0 -1
  79. package/dist/src/active-round-registry.test.js +0 -62
  80. package/dist/src/active-round-registry.test.js.map +0 -1
  81. package/dist/src/agent-context-types.d.ts +0 -205
  82. package/dist/src/agent-context-types.d.ts.map +0 -1
  83. package/dist/src/agent-context-types.js +0 -132
  84. package/dist/src/agent-context-types.js.map +0 -1
  85. package/dist/src/agent-context-types.test.d.ts +0 -2
  86. package/dist/src/agent-context-types.test.d.ts.map +0 -1
  87. package/dist/src/agent-context-types.test.js +0 -123
  88. package/dist/src/agent-context-types.test.js.map +0 -1
  89. package/dist/src/agent-stream-client-registry.d.ts +0 -8
  90. package/dist/src/agent-stream-client-registry.d.ts.map +0 -1
  91. package/dist/src/agent-stream-client-registry.js +0 -19
  92. package/dist/src/agent-stream-client-registry.js.map +0 -1
  93. package/dist/src/apply-sync-mapping.d.ts +0 -15
  94. package/dist/src/apply-sync-mapping.d.ts.map +0 -1
  95. package/dist/src/apply-sync-mapping.js +0 -98
  96. package/dist/src/apply-sync-mapping.js.map +0 -1
  97. package/dist/src/assistant-item-delivery.d.ts +0 -27
  98. package/dist/src/assistant-item-delivery.d.ts.map +0 -1
  99. package/dist/src/assistant-item-delivery.js +0 -134
  100. package/dist/src/assistant-item-delivery.js.map +0 -1
  101. package/dist/src/assistant-item-delivery.test.d.ts +0 -2
  102. package/dist/src/assistant-item-delivery.test.d.ts.map +0 -1
  103. package/dist/src/assistant-item-delivery.test.js +0 -116
  104. package/dist/src/assistant-item-delivery.test.js.map +0 -1
  105. package/dist/src/assistant-item-sink.d.ts +0 -17
  106. package/dist/src/assistant-item-sink.d.ts.map +0 -1
  107. package/dist/src/assistant-item-sink.js +0 -34
  108. package/dist/src/assistant-item-sink.js.map +0 -1
  109. package/dist/src/auth.d.ts +0 -32
  110. package/dist/src/auth.d.ts.map +0 -1
  111. package/dist/src/auth.js +0 -70
  112. package/dist/src/auth.js.map +0 -1
  113. package/dist/src/auto-model-router.d.ts +0 -36
  114. package/dist/src/auto-model-router.d.ts.map +0 -1
  115. package/dist/src/auto-model-router.js +0 -60
  116. package/dist/src/auto-model-router.js.map +0 -1
  117. package/dist/src/auto-model-router.test.d.ts +0 -2
  118. package/dist/src/auto-model-router.test.d.ts.map +0 -1
  119. package/dist/src/auto-model-router.test.js +0 -99
  120. package/dist/src/auto-model-router.test.js.map +0 -1
  121. package/dist/src/block-streaming-config.test.d.ts +0 -2
  122. package/dist/src/block-streaming-config.test.d.ts.map +0 -1
  123. package/dist/src/block-streaming-config.test.js +0 -91
  124. package/dist/src/block-streaming-config.test.js.map +0 -1
  125. package/dist/src/build-project-prompt.d.ts +0 -40
  126. package/dist/src/build-project-prompt.d.ts.map +0 -1
  127. package/dist/src/build-project-prompt.js +0 -183
  128. package/dist/src/build-project-prompt.js.map +0 -1
  129. package/dist/src/build-project-prompt.test.d.ts +0 -2
  130. package/dist/src/build-project-prompt.test.d.ts.map +0 -1
  131. package/dist/src/build-project-prompt.test.js +0 -100
  132. package/dist/src/build-project-prompt.test.js.map +0 -1
  133. package/dist/src/channel-config.d.ts +0 -716
  134. package/dist/src/channel-config.d.ts.map +0 -1
  135. package/dist/src/channel-config.js +0 -405
  136. package/dist/src/channel-config.js.map +0 -1
  137. package/dist/src/channel-config.test.d.ts +0 -2
  138. package/dist/src/channel-config.test.d.ts.map +0 -1
  139. package/dist/src/channel-config.test.js +0 -113
  140. package/dist/src/channel-config.test.js.map +0 -1
  141. package/dist/src/channel-disabled-account.test.d.ts +0 -2
  142. package/dist/src/channel-disabled-account.test.d.ts.map +0 -1
  143. package/dist/src/channel-disabled-account.test.js +0 -44
  144. package/dist/src/channel-disabled-account.test.js.map +0 -1
  145. package/dist/src/channel-log.d.ts +0 -17
  146. package/dist/src/channel-log.d.ts.map +0 -1
  147. package/dist/src/channel-log.js +0 -45
  148. package/dist/src/channel-log.js.map +0 -1
  149. package/dist/src/channel.d.ts +0 -17
  150. package/dist/src/channel.d.ts.map +0 -1
  151. package/dist/src/channel.js +0 -272
  152. package/dist/src/channel.js.map +0 -1
  153. package/dist/src/connection-workspace-event.test.d.ts +0 -2
  154. package/dist/src/connection-workspace-event.test.d.ts.map +0 -1
  155. package/dist/src/connection-workspace-event.test.js +0 -74
  156. package/dist/src/connection-workspace-event.test.js.map +0 -1
  157. package/dist/src/connection.d.ts +0 -110
  158. package/dist/src/connection.d.ts.map +0 -1
  159. package/dist/src/connection.js +0 -463
  160. package/dist/src/connection.js.map +0 -1
  161. package/dist/src/connection.test.d.ts +0 -2
  162. package/dist/src/connection.test.d.ts.map +0 -1
  163. package/dist/src/connection.test.js +0 -110
  164. package/dist/src/connection.test.js.map +0 -1
  165. package/dist/src/cron-appkey-binding-store.d.ts +0 -29
  166. package/dist/src/cron-appkey-binding-store.d.ts.map +0 -1
  167. package/dist/src/cron-appkey-binding-store.js +0 -239
  168. package/dist/src/cron-appkey-binding-store.js.map +0 -1
  169. package/dist/src/cron-appkey-binding-store.test.d.ts +0 -2
  170. package/dist/src/cron-appkey-binding-store.test.d.ts.map +0 -1
  171. package/dist/src/cron-appkey-binding-store.test.js +0 -387
  172. package/dist/src/cron-appkey-binding-store.test.js.map +0 -1
  173. package/dist/src/deliver-text.d.ts +0 -30
  174. package/dist/src/deliver-text.d.ts.map +0 -1
  175. package/dist/src/deliver-text.js +0 -88
  176. package/dist/src/deliver-text.js.map +0 -1
  177. package/dist/src/deliver-text.test.d.ts +0 -2
  178. package/dist/src/deliver-text.test.d.ts.map +0 -1
  179. package/dist/src/deliver-text.test.js +0 -117
  180. package/dist/src/deliver-text.test.js.map +0 -1
  181. package/dist/src/dispatch-mentioned-reply.d.ts +0 -47
  182. package/dist/src/dispatch-mentioned-reply.d.ts.map +0 -1
  183. package/dist/src/dispatch-mentioned-reply.js +0 -997
  184. package/dist/src/dispatch-mentioned-reply.js.map +0 -1
  185. package/dist/src/gateway-session-queue.d.ts +0 -37
  186. package/dist/src/gateway-session-queue.d.ts.map +0 -1
  187. package/dist/src/gateway-session-queue.js +0 -86
  188. package/dist/src/gateway-session-queue.js.map +0 -1
  189. package/dist/src/group-history-tool.d.ts +0 -31
  190. package/dist/src/group-history-tool.d.ts.map +0 -1
  191. package/dist/src/group-history-tool.js +0 -177
  192. package/dist/src/group-history-tool.js.map +0 -1
  193. package/dist/src/im-tool-progress.d.ts +0 -4
  194. package/dist/src/im-tool-progress.d.ts.map +0 -1
  195. package/dist/src/im-tool-progress.js +0 -87
  196. package/dist/src/im-tool-progress.js.map +0 -1
  197. package/dist/src/inbound-archive.d.ts +0 -4
  198. package/dist/src/inbound-archive.d.ts.map +0 -1
  199. package/dist/src/inbound-archive.js +0 -105
  200. package/dist/src/inbound-archive.js.map +0 -1
  201. package/dist/src/inbound-attachment-meta.d.ts +0 -13
  202. package/dist/src/inbound-attachment-meta.d.ts.map +0 -1
  203. package/dist/src/inbound-attachment-meta.js +0 -39
  204. package/dist/src/inbound-attachment-meta.js.map +0 -1
  205. package/dist/src/inbound-chat-type.d.ts +0 -33
  206. package/dist/src/inbound-chat-type.d.ts.map +0 -1
  207. package/dist/src/inbound-chat-type.js +0 -52
  208. package/dist/src/inbound-chat-type.js.map +0 -1
  209. package/dist/src/inbound-display.d.ts +0 -41
  210. package/dist/src/inbound-display.d.ts.map +0 -1
  211. package/dist/src/inbound-display.js +0 -170
  212. package/dist/src/inbound-display.js.map +0 -1
  213. package/dist/src/inbound-file-download.d.ts +0 -15
  214. package/dist/src/inbound-file-download.d.ts.map +0 -1
  215. package/dist/src/inbound-file-download.js +0 -48
  216. package/dist/src/inbound-file-download.js.map +0 -1
  217. package/dist/src/inbound-input-media.d.ts +0 -43
  218. package/dist/src/inbound-input-media.d.ts.map +0 -1
  219. package/dist/src/inbound-input-media.js +0 -230
  220. package/dist/src/inbound-input-media.js.map +0 -1
  221. package/dist/src/inbound-media-local.d.ts +0 -49
  222. package/dist/src/inbound-media-local.d.ts.map +0 -1
  223. package/dist/src/inbound-media-local.js +0 -194
  224. package/dist/src/inbound-media-local.js.map +0 -1
  225. package/dist/src/inbound-model.d.ts +0 -39
  226. package/dist/src/inbound-model.d.ts.map +0 -1
  227. package/dist/src/inbound-model.js +0 -66
  228. package/dist/src/inbound-model.js.map +0 -1
  229. package/dist/src/inbound-model.test.d.ts +0 -2
  230. package/dist/src/inbound-model.test.d.ts.map +0 -1
  231. package/dist/src/inbound-model.test.js +0 -88
  232. package/dist/src/inbound-model.test.js.map +0 -1
  233. package/dist/src/inbound-terminal-delivery.d.ts +0 -77
  234. package/dist/src/inbound-terminal-delivery.d.ts.map +0 -1
  235. package/dist/src/inbound-terminal-delivery.js +0 -251
  236. package/dist/src/inbound-terminal-delivery.js.map +0 -1
  237. package/dist/src/inbound-terminal-state.d.ts +0 -68
  238. package/dist/src/inbound-terminal-state.d.ts.map +0 -1
  239. package/dist/src/inbound-terminal-state.js +0 -185
  240. package/dist/src/inbound-terminal-state.js.map +0 -1
  241. package/dist/src/inbound-terminal-state.test.d.ts +0 -2
  242. package/dist/src/inbound-terminal-state.test.d.ts.map +0 -1
  243. package/dist/src/inbound-terminal-state.test.js +0 -224
  244. package/dist/src/inbound-terminal-state.test.js.map +0 -1
  245. package/dist/src/interrupt-round.d.ts +0 -9
  246. package/dist/src/interrupt-round.d.ts.map +0 -1
  247. package/dist/src/interrupt-round.js +0 -44
  248. package/dist/src/interrupt-round.js.map +0 -1
  249. package/dist/src/interrupt-round.test.d.ts +0 -2
  250. package/dist/src/interrupt-round.test.d.ts.map +0 -1
  251. package/dist/src/interrupt-round.test.js +0 -133
  252. package/dist/src/interrupt-round.test.js.map +0 -1
  253. package/dist/src/item-event-guard.d.ts +0 -28
  254. package/dist/src/item-event-guard.d.ts.map +0 -1
  255. package/dist/src/item-event-guard.js +0 -22
  256. package/dist/src/item-event-guard.js.map +0 -1
  257. package/dist/src/item-event-guard.test.d.ts +0 -2
  258. package/dist/src/item-event-guard.test.d.ts.map +0 -1
  259. package/dist/src/item-event-guard.test.js +0 -55
  260. package/dist/src/item-event-guard.test.js.map +0 -1
  261. package/dist/src/nas-site.d.ts +0 -16
  262. package/dist/src/nas-site.d.ts.map +0 -1
  263. package/dist/src/nas-site.js +0 -17
  264. package/dist/src/nas-site.js.map +0 -1
  265. package/dist/src/nas-volumes.d.ts +0 -53
  266. package/dist/src/nas-volumes.d.ts.map +0 -1
  267. package/dist/src/nas-volumes.js +0 -417
  268. package/dist/src/nas-volumes.js.map +0 -1
  269. package/dist/src/nas-volumes.test.d.ts +0 -2
  270. package/dist/src/nas-volumes.test.d.ts.map +0 -1
  271. package/dist/src/nas-volumes.test.js +0 -261
  272. package/dist/src/nas-volumes.test.js.map +0 -1
  273. package/dist/src/per-message-fallback-notice.d.ts +0 -43
  274. package/dist/src/per-message-fallback-notice.d.ts.map +0 -1
  275. package/dist/src/per-message-fallback-notice.js +0 -93
  276. package/dist/src/per-message-fallback-notice.js.map +0 -1
  277. package/dist/src/per-message-fallback-notice.test.d.ts +0 -2
  278. package/dist/src/per-message-fallback-notice.test.d.ts.map +0 -1
  279. package/dist/src/per-message-fallback-notice.test.js +0 -47
  280. package/dist/src/per-message-fallback-notice.test.js.map +0 -1
  281. package/dist/src/per-message-model-pending.d.ts +0 -52
  282. package/dist/src/per-message-model-pending.d.ts.map +0 -1
  283. package/dist/src/per-message-model-pending.js +0 -134
  284. package/dist/src/per-message-model-pending.js.map +0 -1
  285. package/dist/src/plan-blocked-notice.d.ts +0 -14
  286. package/dist/src/plan-blocked-notice.d.ts.map +0 -1
  287. package/dist/src/plan-blocked-notice.js +0 -41
  288. package/dist/src/plan-blocked-notice.js.map +0 -1
  289. package/dist/src/plan-blocked-notice.test.d.ts +0 -2
  290. package/dist/src/plan-blocked-notice.test.d.ts.map +0 -1
  291. package/dist/src/plan-blocked-notice.test.js +0 -96
  292. package/dist/src/plan-blocked-notice.test.js.map +0 -1
  293. package/dist/src/plan-core-adapter.d.ts +0 -54
  294. package/dist/src/plan-core-adapter.d.ts.map +0 -1
  295. package/dist/src/plan-core-adapter.js +0 -104
  296. package/dist/src/plan-core-adapter.js.map +0 -1
  297. package/dist/src/plan-core-adapter.test.d.ts +0 -2
  298. package/dist/src/plan-core-adapter.test.d.ts.map +0 -1
  299. package/dist/src/plan-core-adapter.test.js +0 -183
  300. package/dist/src/plan-core-adapter.test.js.map +0 -1
  301. package/dist/src/plan-core-db.d.ts +0 -22
  302. package/dist/src/plan-core-db.d.ts.map +0 -1
  303. package/dist/src/plan-core-db.js +0 -91
  304. package/dist/src/plan-core-db.js.map +0 -1
  305. package/dist/src/plan-core-db.test.d.ts +0 -2
  306. package/dist/src/plan-core-db.test.d.ts.map +0 -1
  307. package/dist/src/plan-core-db.test.js +0 -115
  308. package/dist/src/plan-core-db.test.js.map +0 -1
  309. package/dist/src/plan-core-snapshot.d.ts +0 -23
  310. package/dist/src/plan-core-snapshot.d.ts.map +0 -1
  311. package/dist/src/plan-core-snapshot.js +0 -66
  312. package/dist/src/plan-core-snapshot.js.map +0 -1
  313. package/dist/src/plan-core-snapshot.test.d.ts +0 -2
  314. package/dist/src/plan-core-snapshot.test.d.ts.map +0 -1
  315. package/dist/src/plan-core-snapshot.test.js +0 -157
  316. package/dist/src/plan-core-snapshot.test.js.map +0 -1
  317. package/dist/src/plan-event-subscription.d.ts +0 -36
  318. package/dist/src/plan-event-subscription.d.ts.map +0 -1
  319. package/dist/src/plan-event-subscription.js +0 -57
  320. package/dist/src/plan-event-subscription.js.map +0 -1
  321. package/dist/src/plan-event-subscription.test.d.ts +0 -2
  322. package/dist/src/plan-event-subscription.test.d.ts.map +0 -1
  323. package/dist/src/plan-event-subscription.test.js +0 -167
  324. package/dist/src/plan-event-subscription.test.js.map +0 -1
  325. package/dist/src/plan-stat-event.d.ts +0 -17
  326. package/dist/src/plan-stat-event.d.ts.map +0 -1
  327. package/dist/src/plan-stat-event.js +0 -41
  328. package/dist/src/plan-stat-event.js.map +0 -1
  329. package/dist/src/plan-stat-event.test.d.ts +0 -2
  330. package/dist/src/plan-stat-event.test.d.ts.map +0 -1
  331. package/dist/src/plan-stat-event.test.js +0 -131
  332. package/dist/src/plan-stat-event.test.js.map +0 -1
  333. package/dist/src/plan-tool-middleware.d.ts +0 -19
  334. package/dist/src/plan-tool-middleware.d.ts.map +0 -1
  335. package/dist/src/plan-tool-middleware.js +0 -63
  336. package/dist/src/plan-tool-middleware.js.map +0 -1
  337. package/dist/src/plan-tool-middleware.test.d.ts +0 -2
  338. package/dist/src/plan-tool-middleware.test.d.ts.map +0 -1
  339. package/dist/src/plan-tool-middleware.test.js +0 -103
  340. package/dist/src/plan-tool-middleware.test.js.map +0 -1
  341. package/dist/src/plan-tool-result.d.ts +0 -18
  342. package/dist/src/plan-tool-result.d.ts.map +0 -1
  343. package/dist/src/plan-tool-result.js +0 -77
  344. package/dist/src/plan-tool-result.js.map +0 -1
  345. package/dist/src/plan-tool-result.test.d.ts +0 -2
  346. package/dist/src/plan-tool-result.test.d.ts.map +0 -1
  347. package/dist/src/plan-tool-result.test.js +0 -129
  348. package/dist/src/plan-tool-result.test.js.map +0 -1
  349. package/dist/src/plan-ws-registry.d.ts +0 -15
  350. package/dist/src/plan-ws-registry.d.ts.map +0 -1
  351. package/dist/src/plan-ws-registry.js +0 -39
  352. package/dist/src/plan-ws-registry.js.map +0 -1
  353. package/dist/src/plan-ws-registry.test.d.ts +0 -2
  354. package/dist/src/plan-ws-registry.test.d.ts.map +0 -1
  355. package/dist/src/plan-ws-registry.test.js +0 -61
  356. package/dist/src/plan-ws-registry.test.js.map +0 -1
  357. package/dist/src/plugin-dispose.d.ts +0 -22
  358. package/dist/src/plugin-dispose.d.ts.map +0 -1
  359. package/dist/src/plugin-dispose.js +0 -66
  360. package/dist/src/plugin-dispose.js.map +0 -1
  361. package/dist/src/process-shared-store.d.ts +0 -48
  362. package/dist/src/process-shared-store.d.ts.map +0 -1
  363. package/dist/src/process-shared-store.js +0 -89
  364. package/dist/src/process-shared-store.js.map +0 -1
  365. package/dist/src/process-shared-store.test.d.ts +0 -2
  366. package/dist/src/process-shared-store.test.d.ts.map +0 -1
  367. package/dist/src/process-shared-store.test.js +0 -60
  368. package/dist/src/process-shared-store.test.js.map +0 -1
  369. package/dist/src/project-path-normalize.d.ts +0 -30
  370. package/dist/src/project-path-normalize.d.ts.map +0 -1
  371. package/dist/src/project-path-normalize.js +0 -101
  372. package/dist/src/project-path-normalize.js.map +0 -1
  373. package/dist/src/recommended-system-prompt.d.ts +0 -3
  374. package/dist/src/recommended-system-prompt.d.ts.map +0 -1
  375. package/dist/src/recommended-system-prompt.js +0 -8
  376. package/dist/src/recommended-system-prompt.js.map +0 -1
  377. package/dist/src/register-exec-env-hook.d.ts +0 -44
  378. package/dist/src/register-exec-env-hook.d.ts.map +0 -1
  379. package/dist/src/register-exec-env-hook.js +0 -473
  380. package/dist/src/register-exec-env-hook.js.map +0 -1
  381. package/dist/src/register-exec-env-hook.test.d.ts +0 -2
  382. package/dist/src/register-exec-env-hook.test.d.ts.map +0 -1
  383. package/dist/src/register-exec-env-hook.test.js +0 -189
  384. package/dist/src/register-exec-env-hook.test.js.map +0 -1
  385. package/dist/src/register-group-prompt-hook.d.ts +0 -17
  386. package/dist/src/register-group-prompt-hook.d.ts.map +0 -1
  387. package/dist/src/register-group-prompt-hook.js +0 -45
  388. package/dist/src/register-group-prompt-hook.js.map +0 -1
  389. package/dist/src/register-group-prompt-hook.test.d.ts +0 -2
  390. package/dist/src/register-group-prompt-hook.test.d.ts.map +0 -1
  391. package/dist/src/register-group-prompt-hook.test.js +0 -60
  392. package/dist/src/register-group-prompt-hook.test.js.map +0 -1
  393. package/dist/src/register-per-message-model-hook.d.ts +0 -14
  394. package/dist/src/register-per-message-model-hook.d.ts.map +0 -1
  395. package/dist/src/register-per-message-model-hook.js +0 -48
  396. package/dist/src/register-per-message-model-hook.js.map +0 -1
  397. package/dist/src/register-per-message-model-hook.test.d.ts +0 -2
  398. package/dist/src/register-per-message-model-hook.test.d.ts.map +0 -1
  399. package/dist/src/register-per-message-model-hook.test.js +0 -208
  400. package/dist/src/register-per-message-model-hook.test.js.map +0 -1
  401. package/dist/src/register-run-model-context-hook.d.ts +0 -11
  402. package/dist/src/register-run-model-context-hook.d.ts.map +0 -1
  403. package/dist/src/register-run-model-context-hook.js +0 -23
  404. package/dist/src/register-run-model-context-hook.js.map +0 -1
  405. package/dist/src/reply-dispatch-driver.d.ts +0 -89
  406. package/dist/src/reply-dispatch-driver.d.ts.map +0 -1
  407. package/dist/src/reply-dispatch-driver.js +0 -294
  408. package/dist/src/reply-dispatch-driver.js.map +0 -1
  409. package/dist/src/reply-dispatch-driver.test.d.ts +0 -2
  410. package/dist/src/reply-dispatch-driver.test.d.ts.map +0 -1
  411. package/dist/src/reply-dispatch-driver.test.js +0 -363
  412. package/dist/src/reply-dispatch-driver.test.js.map +0 -1
  413. package/dist/src/resolve-inbound-group-prompt.d.ts +0 -37
  414. package/dist/src/resolve-inbound-group-prompt.d.ts.map +0 -1
  415. package/dist/src/resolve-inbound-group-prompt.js +0 -57
  416. package/dist/src/resolve-inbound-group-prompt.js.map +0 -1
  417. package/dist/src/resource-file.d.ts +0 -119
  418. package/dist/src/resource-file.d.ts.map +0 -1
  419. package/dist/src/resource-file.js +0 -533
  420. package/dist/src/resource-file.js.map +0 -1
  421. package/dist/src/resource-file.test.d.ts +0 -2
  422. package/dist/src/resource-file.test.d.ts.map +0 -1
  423. package/dist/src/resource-file.test.js +0 -64
  424. package/dist/src/resource-file.test.js.map +0 -1
  425. package/dist/src/run-model-context.d.ts +0 -45
  426. package/dist/src/run-model-context.d.ts.map +0 -1
  427. package/dist/src/run-model-context.js +0 -108
  428. package/dist/src/run-model-context.js.map +0 -1
  429. package/dist/src/run-model-context.test.d.ts +0 -2
  430. package/dist/src/run-model-context.test.d.ts.map +0 -1
  431. package/dist/src/run-model-context.test.js +0 -68
  432. package/dist/src/run-model-context.test.js.map +0 -1
  433. package/dist/src/run-usage-session.d.ts +0 -13
  434. package/dist/src/run-usage-session.d.ts.map +0 -1
  435. package/dist/src/run-usage-session.js +0 -41
  436. package/dist/src/run-usage-session.js.map +0 -1
  437. package/dist/src/run-usage.d.ts +0 -67
  438. package/dist/src/run-usage.d.ts.map +0 -1
  439. package/dist/src/run-usage.js +0 -119
  440. package/dist/src/run-usage.js.map +0 -1
  441. package/dist/src/run-usage.test.d.ts +0 -2
  442. package/dist/src/run-usage.test.d.ts.map +0 -1
  443. package/dist/src/run-usage.test.js +0 -178
  444. package/dist/src/run-usage.test.js.map +0 -1
  445. package/dist/src/send-file-event.d.ts +0 -26
  446. package/dist/src/send-file-event.d.ts.map +0 -1
  447. package/dist/src/send-file-event.js +0 -33
  448. package/dist/src/send-file-event.js.map +0 -1
  449. package/dist/src/send-file-event.test.d.ts +0 -2
  450. package/dist/src/send-file-event.test.d.ts.map +0 -1
  451. package/dist/src/send-file-event.test.js +0 -86
  452. package/dist/src/send-file-event.test.js.map +0 -1
  453. package/dist/src/send-file-tool.d.ts +0 -81
  454. package/dist/src/send-file-tool.d.ts.map +0 -1
  455. package/dist/src/send-file-tool.js +0 -363
  456. package/dist/src/send-file-tool.js.map +0 -1
  457. package/dist/src/send-file-tool.test.d.ts +0 -2
  458. package/dist/src/send-file-tool.test.d.ts.map +0 -1
  459. package/dist/src/send-file-tool.test.js +0 -176
  460. package/dist/src/send-file-tool.test.js.map +0 -1
  461. package/dist/src/send-group-message-tool.d.ts +0 -17
  462. package/dist/src/send-group-message-tool.d.ts.map +0 -1
  463. package/dist/src/send-group-message-tool.js +0 -82
  464. package/dist/src/send-group-message-tool.js.map +0 -1
  465. package/dist/src/send-service.d.ts +0 -83
  466. package/dist/src/send-service.d.ts.map +0 -1
  467. package/dist/src/send-service.js +0 -324
  468. package/dist/src/send-service.js.map +0 -1
  469. package/dist/src/send-service.test.d.ts +0 -2
  470. package/dist/src/send-service.test.d.ts.map +0 -1
  471. package/dist/src/send-service.test.js +0 -40
  472. package/dist/src/send-service.test.js.map +0 -1
  473. package/dist/src/session-env-store.d.ts +0 -55
  474. package/dist/src/session-env-store.d.ts.map +0 -1
  475. package/dist/src/session-env-store.js +0 -328
  476. package/dist/src/session-env-store.js.map +0 -1
  477. package/dist/src/session-env-store.test.d.ts +0 -2
  478. package/dist/src/session-env-store.test.d.ts.map +0 -1
  479. package/dist/src/session-env-store.test.js +0 -151
  480. package/dist/src/session-env-store.test.js.map +0 -1
  481. package/dist/src/session-group-prompt.d.ts +0 -34
  482. package/dist/src/session-group-prompt.d.ts.map +0 -1
  483. package/dist/src/session-group-prompt.js +0 -101
  484. package/dist/src/session-group-prompt.js.map +0 -1
  485. package/dist/src/session-group-prompt.test.d.ts +0 -2
  486. package/dist/src/session-group-prompt.test.d.ts.map +0 -1
  487. package/dist/src/session-group-prompt.test.js +0 -72
  488. package/dist/src/session-group-prompt.test.js.map +0 -1
  489. package/dist/src/session-im-context.d.ts +0 -15
  490. package/dist/src/session-im-context.d.ts.map +0 -1
  491. package/dist/src/session-im-context.js +0 -54
  492. package/dist/src/session-im-context.js.map +0 -1
  493. package/dist/src/session-model-fallback.d.ts +0 -13
  494. package/dist/src/session-model-fallback.d.ts.map +0 -1
  495. package/dist/src/session-model-fallback.js +0 -24
  496. package/dist/src/session-model-fallback.js.map +0 -1
  497. package/dist/src/subagent-monitor.d.ts +0 -45
  498. package/dist/src/subagent-monitor.d.ts.map +0 -1
  499. package/dist/src/subagent-monitor.js +0 -498
  500. package/dist/src/subagent-monitor.js.map +0 -1
  501. package/dist/src/subagent-monitor.test.d.ts +0 -2
  502. package/dist/src/subagent-monitor.test.d.ts.map +0 -1
  503. package/dist/src/subagent-monitor.test.js +0 -335
  504. package/dist/src/subagent-monitor.test.js.map +0 -1
  505. package/dist/src/sync-mapping-types.d.ts +0 -220
  506. package/dist/src/sync-mapping-types.d.ts.map +0 -1
  507. package/dist/src/sync-mapping-types.js +0 -55
  508. package/dist/src/sync-mapping-types.js.map +0 -1
  509. package/dist/src/sync-service-client.d.ts +0 -29
  510. package/dist/src/sync-service-client.d.ts.map +0 -1
  511. package/dist/src/sync-service-client.js +0 -72
  512. package/dist/src/sync-service-client.js.map +0 -1
  513. package/dist/src/thinking-ws-progress.d.ts +0 -24
  514. package/dist/src/thinking-ws-progress.d.ts.map +0 -1
  515. package/dist/src/thinking-ws-progress.js +0 -45
  516. package/dist/src/thinking-ws-progress.js.map +0 -1
  517. package/dist/src/thinking-ws-progress.test.d.ts +0 -2
  518. package/dist/src/thinking-ws-progress.test.d.ts.map +0 -1
  519. package/dist/src/thinking-ws-progress.test.js +0 -38
  520. package/dist/src/thinking-ws-progress.test.js.map +0 -1
  521. package/dist/src/tool-event-adapter.d.ts +0 -31
  522. package/dist/src/tool-event-adapter.d.ts.map +0 -1
  523. package/dist/src/tool-event-adapter.js +0 -83
  524. package/dist/src/tool-event-adapter.js.map +0 -1
  525. package/dist/src/tool-event-adapter.test.d.ts +0 -2
  526. package/dist/src/tool-event-adapter.test.d.ts.map +0 -1
  527. package/dist/src/tool-event-adapter.test.js +0 -93
  528. package/dist/src/tool-event-adapter.test.js.map +0 -1
  529. package/dist/src/tool-json-result.d.ts +0 -14
  530. package/dist/src/tool-json-result.d.ts.map +0 -1
  531. package/dist/src/tool-json-result.js +0 -20
  532. package/dist/src/tool-json-result.js.map +0 -1
  533. package/dist/src/turn-agent-event-subscription.d.ts +0 -29
  534. package/dist/src/turn-agent-event-subscription.d.ts.map +0 -1
  535. package/dist/src/turn-agent-event-subscription.js +0 -289
  536. package/dist/src/turn-agent-event-subscription.js.map +0 -1
  537. package/dist/src/turn-agent-event-subscription.test.d.ts +0 -2
  538. package/dist/src/turn-agent-event-subscription.test.d.ts.map +0 -1
  539. package/dist/src/turn-agent-event-subscription.test.js +0 -165
  540. package/dist/src/turn-agent-event-subscription.test.js.map +0 -1
  541. package/dist/src/turn-deliver-buffer.d.ts +0 -60
  542. package/dist/src/turn-deliver-buffer.d.ts.map +0 -1
  543. package/dist/src/turn-deliver-buffer.js +0 -133
  544. package/dist/src/turn-deliver-buffer.js.map +0 -1
  545. package/dist/src/turn-deliver-buffer.test.d.ts +0 -2
  546. package/dist/src/turn-deliver-buffer.test.d.ts.map +0 -1
  547. package/dist/src/turn-deliver-buffer.test.js +0 -184
  548. package/dist/src/turn-deliver-buffer.test.js.map +0 -1
  549. package/dist/src/turn-end-controller.d.ts +0 -61
  550. package/dist/src/turn-end-controller.d.ts.map +0 -1
  551. package/dist/src/turn-end-controller.js +0 -239
  552. package/dist/src/turn-end-controller.js.map +0 -1
  553. package/dist/src/turn-end-controller.test.d.ts +0 -2
  554. package/dist/src/turn-end-controller.test.d.ts.map +0 -1
  555. package/dist/src/turn-end-controller.test.js +0 -97
  556. package/dist/src/turn-end-controller.test.js.map +0 -1
  557. package/dist/src/types.d.ts +0 -433
  558. package/dist/src/types.d.ts.map +0 -1
  559. package/dist/src/types.js +0 -32
  560. package/dist/src/types.js.map +0 -1
  561. package/dist/src/user-facing-errors.d.ts +0 -32
  562. package/dist/src/user-facing-errors.d.ts.map +0 -1
  563. package/dist/src/user-facing-errors.js +0 -120
  564. package/dist/src/user-facing-errors.js.map +0 -1
  565. package/dist/src/user-facing-errors.test.d.ts +0 -2
  566. package/dist/src/user-facing-errors.test.d.ts.map +0 -1
  567. package/dist/src/user-facing-errors.test.js +0 -102
  568. package/dist/src/user-facing-errors.test.js.map +0 -1
  569. package/dist/src/workspace-event-protocol.d.ts +0 -3
  570. package/dist/src/workspace-event-protocol.d.ts.map +0 -1
  571. package/dist/src/workspace-event-protocol.js +0 -3
  572. package/dist/src/workspace-event-protocol.js.map +0 -1
  573. package/dist/src/workspace-event-scheduler.d.ts +0 -54
  574. package/dist/src/workspace-event-scheduler.d.ts.map +0 -1
  575. package/dist/src/workspace-event-scheduler.js +0 -131
  576. package/dist/src/workspace-event-scheduler.js.map +0 -1
  577. package/dist/src/workspace-event-scheduler.test.d.ts +0 -2
  578. package/dist/src/workspace-event-scheduler.test.d.ts.map +0 -1
  579. package/dist/src/workspace-event-scheduler.test.js +0 -157
  580. package/dist/src/workspace-event-scheduler.test.js.map +0 -1
  581. package/dist/src/workspace-event.d.ts +0 -28
  582. package/dist/src/workspace-event.d.ts.map +0 -1
  583. package/dist/src/workspace-event.js +0 -674
  584. package/dist/src/workspace-event.js.map +0 -1
  585. package/dist/src/workspace-event.test.d.ts +0 -2
  586. package/dist/src/workspace-event.test.d.ts.map +0 -1
  587. package/dist/src/workspace-event.test.js +0 -265
  588. package/dist/src/workspace-event.test.js.map +0 -1
  589. package/dist/src/ws-inbound-schema.d.ts +0 -14
  590. package/dist/src/ws-inbound-schema.d.ts.map +0 -1
  591. package/dist/src/ws-inbound-schema.js +0 -68
  592. package/dist/src/ws-inbound-schema.js.map +0 -1
  593. package/dist/src/ws-inbound-schema.test.d.ts +0 -2
  594. package/dist/src/ws-inbound-schema.test.d.ts.map +0 -1
  595. package/dist/src/ws-inbound-schema.test.js +0 -58
  596. package/dist/src/ws-inbound-schema.test.js.map +0 -1
  597. package/dist/src/ws-run-event-unmapped.d.ts +0 -10
  598. package/dist/src/ws-run-event-unmapped.d.ts.map +0 -1
  599. package/dist/src/ws-run-event-unmapped.js +0 -16
  600. package/dist/src/ws-run-event-unmapped.js.map +0 -1
  601. package/dist/src/ws-run-event-unmapped.test.d.ts +0 -2
  602. package/dist/src/ws-run-event-unmapped.test.d.ts.map +0 -1
  603. package/dist/src/ws-run-event-unmapped.test.js +0 -15
  604. package/dist/src/ws-run-event-unmapped.test.js.map +0 -1
@@ -1,335 +0,0 @@
1
- import assert from "node:assert/strict";
2
- import { afterEach, describe, it } from "node:test";
3
- import { __resetActiveRoundRegistryForTests, registerActiveRound } from "./active-round-registry.js";
4
- import { __resetSubagentMonitorForTests, __tickForTests, hasActiveSubagents, markSubagentCompleted, prepareSubagentInterrupt, setPluginApi, startMonitor, } from "./subagent-monitor.js";
5
- afterEach(() => {
6
- __resetSubagentMonitorForTests();
7
- __resetActiveRoundRegistryForTests();
8
- });
9
- function createClient(events) {
10
- return {
11
- start: async () => undefined,
12
- streamProgress: async () => undefined,
13
- streamUsage: async () => undefined,
14
- sendEvent: async (event) => {
15
- const list = event.data.subagentList ?? [];
16
- events.push(`SUBAGENT_STAT:${list.map((s) => `${s.runId}:${s.status}`).join(",") || "(empty)"}`);
17
- },
18
- end: async (reason) => {
19
- events.push(`FINISHED:${reason}`);
20
- },
21
- };
22
- }
23
- function createPluginApi(overrides) {
24
- return {
25
- runtime: {
26
- subagent: {
27
- waitForRun: overrides.waitForRun ?? (async () => ({ status: "timeout" })),
28
- getSessionMessages: overrides.getSessionMessages ?? (async () => ({ messages: [] })),
29
- },
30
- },
31
- };
32
- }
33
- function setupRound(events) {
34
- const client = createClient(events);
35
- const round = registerActiveRound({
36
- accountId: "account-a",
37
- groupId: "group-1",
38
- agentId: "main",
39
- sessionKey: "session-1",
40
- replyToMsgId: "reply-1",
41
- streamClient: client,
42
- });
43
- return { round, client };
44
- }
45
- function spawnParams(round, client, childSessionKey, runId) {
46
- return {
47
- roundKey: round.roundKey,
48
- generation: round.generation,
49
- groupId: round.groupId,
50
- agentId: round.agentId,
51
- streamClient: client,
52
- replyToMsgId: round.replyToMsgId,
53
- spawn: { childSessionKey, runId },
54
- };
55
- }
56
- const settle = () => new Promise((resolve) => setImmediate(resolve));
57
- describe("subagent-monitor completion matching", () => {
58
- it("subagent_ended runId 与 spawn 不一致时仍按 childSessionKey 完成", async () => {
59
- const events = [];
60
- const { round, client } = setupRound(events);
61
- assert.equal(startMonitor(spawnParams(round, client, "child-1", "run-1")), true);
62
- events.length = 0;
63
- markSubagentCompleted("child-1", "run-2");
64
- await settle();
65
- assert.deepEqual(events, ["SUBAGENT_STAT:run-1:completed"]);
66
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
67
- });
68
- it("subagent_ended 缺失 runId 时按 childSessionKey 完成", async () => {
69
- const events = [];
70
- const { round, client } = setupRound(events);
71
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
72
- events.length = 0;
73
- markSubagentCompleted("child-1", undefined);
74
- await settle();
75
- assert.deepEqual(events, ["SUBAGENT_STAT:run-1:completed"]);
76
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
77
- });
78
- it("中断后同 childSessionKey 重新 spawn(新 runId)的结束事件不被 tombstone 误挡", async () => {
79
- const events = [];
80
- const { round, client } = setupRound(events);
81
- assert.equal(startMonitor(spawnParams(round, client, "child-1", "run-1")), true);
82
- prepareSubagentInterrupt(round.roundKey, round.generation);
83
- events.length = 0;
84
- const round2 = registerActiveRound({
85
- accountId: "account-a",
86
- groupId: "group-2",
87
- agentId: "main",
88
- sessionKey: "session-1",
89
- replyToMsgId: "reply-1",
90
- streamClient: client,
91
- });
92
- assert.equal(startMonitor(spawnParams(round2, client, "child-1", "run-2")), true);
93
- events.length = 0;
94
- markSubagentCompleted("child-1", "run-2");
95
- await settle();
96
- assert.deepEqual(events, ["SUBAGENT_STAT:run-2:completed"]);
97
- assert.equal(hasActiveSubagents(round2.roundKey, round2.generation), false);
98
- });
99
- it("中断后被中断旧 run 的迟到结束事件不会完成新 record", async () => {
100
- const events = [];
101
- const { round, client } = setupRound(events);
102
- assert.equal(startMonitor(spawnParams(round, client, "child-1", "run-1")), true);
103
- prepareSubagentInterrupt(round.roundKey, round.generation);
104
- const round2 = registerActiveRound({
105
- accountId: "account-a",
106
- groupId: "group-2",
107
- agentId: "main",
108
- sessionKey: "session-1",
109
- replyToMsgId: "reply-1",
110
- streamClient: client,
111
- });
112
- assert.equal(startMonitor(spawnParams(round2, client, "child-1", "run-2")), true);
113
- events.length = 0;
114
- markSubagentCompleted("child-1", "run-1");
115
- await settle();
116
- assert.equal(events.some((e) => e.includes(":completed")), false);
117
- assert.equal(hasActiveSubagents(round2.roundKey, round2.generation), true);
118
- });
119
- });
120
- describe("subagent-monitor tick reconciliation", () => {
121
- it("waitForRun 返回 ok → 标记完成并收口", async () => {
122
- const events = [];
123
- const { round, client } = setupRound(events);
124
- setPluginApi(createPluginApi({
125
- waitForRun: async () => ({ status: "ok" }),
126
- }));
127
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
128
- events.length = 0;
129
- await __tickForTests();
130
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-1:completed"));
131
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
132
- });
133
- it("waitForRun 返回 timeout → 保持 running 且不收口", async () => {
134
- const events = [];
135
- const { round, client } = setupRound(events);
136
- setPluginApi(createPluginApi({
137
- waitForRun: async () => ({ status: "timeout" }),
138
- }));
139
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
140
- events.length = 0;
141
- await __tickForTests();
142
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-1:running"));
143
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), true);
144
- });
145
- it("getSessionMessages 抛错 → tick 不被拖垮,仍发 stat 且保持 running", async () => {
146
- const events = [];
147
- const { round, client } = setupRound(events);
148
- setPluginApi(createPluginApi({
149
- getSessionMessages: async () => {
150
- throw new Error("Plugin runtime subagent methods are only available during a gateway request.");
151
- },
152
- waitForRun: async () => ({ status: "timeout" }),
153
- }));
154
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
155
- events.length = 0;
156
- await __tickForTests();
157
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-1:running"));
158
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), true);
159
- });
160
- it("waitForRun 返回 error → 标记完成并收口", async () => {
161
- const events = [];
162
- const { round, client } = setupRound(events);
163
- setPluginApi(createPluginApi({
164
- waitForRun: async () => ({ status: "error", error: "boom" }),
165
- }));
166
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
167
- events.length = 0;
168
- await __tickForTests();
169
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-1:completed"));
170
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
171
- });
172
- it("waitForRun 抛异常 → 保持 running,由事件路径兜底", async () => {
173
- const events = [];
174
- const { round, client } = setupRound(events);
175
- setPluginApi(createPluginApi({
176
- waitForRun: async () => {
177
- throw new Error("run not found");
178
- },
179
- }));
180
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
181
- events.length = 0;
182
- await __tickForTests();
183
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), true);
184
- markSubagentCompleted("child-1", "run-1");
185
- await settle();
186
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
187
- });
188
- it("多 subagent 的 waitForRun 探测并发执行(互不阻塞累加)", async () => {
189
- const events = [];
190
- const { round, client } = setupRound(events);
191
- let inFlight = 0;
192
- let maxInFlight = 0;
193
- setPluginApi(createPluginApi({
194
- waitForRun: async () => {
195
- inFlight += 1;
196
- maxInFlight = Math.max(maxInFlight, inFlight);
197
- await new Promise((resolve) => setTimeout(resolve, 20));
198
- inFlight -= 1;
199
- return { status: "timeout" };
200
- },
201
- }));
202
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
203
- startMonitor(spawnParams(round, client, "child-2", "run-2"));
204
- events.length = 0;
205
- // startMonitor 会触发一次立即 tick(fire-and-forget),先等它跑完再单独测量。
206
- await new Promise((resolve) => setTimeout(resolve, 30));
207
- inFlight = 0;
208
- maxInFlight = 0;
209
- await __tickForTests();
210
- assert.equal(maxInFlight, 2);
211
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), true);
212
- });
213
- });
214
- function requestScopedError() {
215
- const err = new Error("Plugin runtime subagent methods are only available during a gateway request.");
216
- err.name = "RequestScopedSubagentRuntimeError";
217
- return err;
218
- }
219
- describe("subagent-monitor pluginApi guard(方案B:坏 runtime 不劫持监控)", () => {
220
- it("好 runtime 确认可用后,坏 runtime 的 register 不会覆盖(监控继续用好的)", async () => {
221
- const events = [];
222
- const { round, client } = setupRound(events);
223
- // 好 runtime:probe 探测用 runId="probe" 返回 timeout(可用),真实 run 返回 ok(完成)。
224
- const good = createPluginApi({
225
- waitForRun: async ({ runId }) => runId === "probe" ? { status: "timeout" } : { status: "ok" },
226
- });
227
- setPluginApi(good);
228
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
229
- events.length = 0;
230
- await __tickForTests();
231
- // 首次 tick 探测确认 good,run-1 被完成
232
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-1:completed"));
233
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
234
- // 坏 runtime 注册:waitForRun 直接抛 RequestScoped
235
- const bad = createPluginApi({
236
- waitForRun: async () => {
237
- throw requestScopedError();
238
- },
239
- });
240
- setPluginApi(bad);
241
- // 新会话的 run-2:tick 仍应通过 good runtime 完成,坏 runtime 未劫持
242
- const round2 = registerActiveRound({
243
- accountId: "account-a",
244
- groupId: "group-2",
245
- agentId: "main",
246
- sessionKey: "session-1",
247
- replyToMsgId: "reply-1",
248
- streamClient: client,
249
- });
250
- startMonitor(spawnParams(round2, client, "child-2", "run-2"));
251
- events.length = 0;
252
- await __tickForTests();
253
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-2:completed"));
254
- assert.equal(hasActiveSubagents(round2.roundKey, round2.generation), false);
255
- });
256
- it("首个 runtime 不可用 → 探测后切回候选中的可用 runtime", async () => {
257
- const events = [];
258
- const { round, client } = setupRound(events);
259
- const bad = createPluginApi({
260
- waitForRun: async () => {
261
- throw requestScopedError();
262
- },
263
- });
264
- setPluginApi(bad);
265
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
266
- events.length = 0;
267
- await __tickForTests();
268
- // 只有坏 runtime:探测失败,run 保持 running
269
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), true);
270
- // 好 runtime 随后注册(当前已确认 bad → adopt=switch)
271
- const good = createPluginApi({ waitForRun: async () => ({ status: "ok" }) });
272
- setPluginApi(good);
273
- events.length = 0;
274
- await __tickForTests();
275
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-1:completed"));
276
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
277
- });
278
- it("探测结果缓存:确认 good 后不再重复探测", async () => {
279
- const events = [];
280
- const { round, client } = setupRound(events);
281
- let probeCalls = 0;
282
- setPluginApi(createPluginApi({
283
- waitForRun: async ({ runId }) => {
284
- if (runId === "probe")
285
- probeCalls += 1;
286
- return { status: "timeout" };
287
- },
288
- }));
289
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
290
- // 等 startMonitor 触发的 fire-and-forget tick 完成:它应探测一次并确认 good。
291
- await new Promise((resolve) => setTimeout(resolve, 20));
292
- assert.equal(probeCalls, 1);
293
- await __tickForTests();
294
- await __tickForTests();
295
- assert.equal(probeCalls, 1);
296
- });
297
- });
298
- describe("subagent-monitor 同一轮多波次(finalStatSent 锁存已去除)", () => {
299
- it("第一波完成后同轮第二波子任务完成仍能推送 completed SUBAGENT_STAT", async () => {
300
- const events = [];
301
- const { round, client } = setupRound(events);
302
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
303
- await settle();
304
- events.length = 0;
305
- markSubagentCompleted("child-1", "run-1");
306
- await settle();
307
- assert.ok(events.some((e) => e === "SUBAGENT_STAT:run-1:completed"), "第一波 final 缺失");
308
- // 同 round、同 generation 再派第二波
309
- startMonitor(spawnParams(round, client, "child-2", "run-2"));
310
- await settle();
311
- events.length = 0;
312
- markSubagentCompleted("child-2", "run-2");
313
- await settle();
314
- assert.ok(events.some((e) => e.startsWith("SUBAGENT_STAT:") && e.includes("run-2:completed")), "第二波被一轮一次锁存吞掉(应能推送 completed)");
315
- assert.equal(hasActiveSubagents(round.roundKey, round.generation), false);
316
- });
317
- it("全部完成后的空窗:无变化的 tick 不重复推 final 快照", async () => {
318
- const events = [];
319
- const { round, client } = setupRound(events);
320
- setPluginApi(createPluginApi({
321
- waitForRun: async () => ({ status: "ok" }),
322
- }));
323
- startMonitor(spawnParams(round, client, "child-1", "run-1"));
324
- await settle();
325
- // 首个 tick:探测 ok → 完成并 settle
326
- await __tickForTests();
327
- await __tickForTests();
328
- events.length = 0;
329
- // 空窗期反复 tick:状态无变化,不应再推(去重)
330
- await __tickForTests();
331
- await __tickForTests();
332
- assert.equal(events.length, 0, "无变化 tick 不应重复推送 SUBAGENT_STAT");
333
- });
334
- });
335
- //# sourceMappingURL=subagent-monitor.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subagent-monitor.test.js","sourceRoot":"","sources":["../../src/subagent-monitor.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,EAAE,kCAAkC,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAErG,OAAO,EACH,8BAA8B,EAC9B,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,wBAAwB,EACxB,YAAY,EACZ,YAAY,GACf,MAAM,uBAAuB,CAAC;AAE/B,SAAS,CAAC,GAAG,EAAE;IACX,8BAA8B,EAAE,CAAC;IACjC,kCAAkC,EAAE,CAAC;AACzC,CAAC,CAAC,CAAC;AAIH,SAAS,YAAY,CAAC,MAAgB;IAClC,OAAO;QACH,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS;QAC5B,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS;QACrC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS;QAClC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACvB,MAAM,IAAI,GAAI,KAAK,CAAC,IAAI,CAAC,YAAyD,IAAI,EAAE,CAAC;YACzF,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;QACrG,CAAC;QACD,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAClB,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;KACJ,CAAC;AACN,CAAC;AAED,SAAS,eAAe,CAAC,SAGxB;IACG,OAAO;QACH,OAAO,EAAE;YACL,QAAQ,EAAE;gBACN,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBACzE,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;aACvF;SACJ;KAC4B,CAAC;AACtC,CAAC;AAED,SAAS,UAAU,CAAC,MAAgB;IAChC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,mBAAmB,CAAC;QAC9B,SAAS,EAAE,WAAW;QACtB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,WAAW;QACvB,YAAY,EAAE,SAAS;QACvB,YAAY,EAAE,MAAM;KACvB,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,KAA6C,EAAE,MAAsB,EAAE,eAAuB,EAAE,KAAa;IAC9H,OAAO;QACH,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,KAAK,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE;KACpC,CAAC;AACN,CAAC;AAED,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAE3E,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACjF,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,MAAM,EAAE,CAAC;QAEf,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,qBAAqB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC5C,MAAM,MAAM,EAAE,CAAC;QAEf,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACjF,wBAAwB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,MAAM,MAAM,GAAG,mBAAmB,CAAC;YAC/B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,WAAW;YACvB,YAAY,EAAE,SAAS;YACvB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAClF,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,MAAM,EAAE,CAAC;QAEf,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACjF,wBAAwB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAE3D,MAAM,MAAM,GAAG,mBAAmB,CAAC;YAC/B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,WAAW;YACvB,YAAY,EAAE,SAAS;YACvB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAClF,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,MAAM,EAAE,CAAC;QAEf,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAClE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,YAAY,CACR,eAAe,CAAC;YACZ,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;SAC7C,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,MAAM,cAAc,EAAE,CAAC;QAEvB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,+BAA+B,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,YAAY,CACR,eAAe,CAAC;YACZ,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;SAClD,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,MAAM,cAAc,EAAE,CAAC;QAEvB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,6BAA6B,CAAC,CAAC,CAAC;QACnE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,YAAY,CACR,eAAe,CAAC;YACZ,kBAAkB,EAAE,KAAK,IAAI,EAAE;gBAC3B,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;YACpG,CAAC;YACD,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;SAClD,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,MAAM,cAAc,EAAE,CAAC;QAEvB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,6BAA6B,CAAC,CAAC,CAAC;QACnE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,YAAY,CACR,eAAe,CAAC;YACZ,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;SAC/D,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,MAAM,cAAc,EAAE,CAAC;QAEvB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,+BAA+B,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,YAAY,CACR,eAAe,CAAC;YACZ,UAAU,EAAE,KAAK,IAAI,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACrC,CAAC;SACJ,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,MAAM,cAAc,EAAE,CAAC;QAEvB,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;QAEzE,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,MAAM,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,YAAY,CACR,eAAe,CAAC;YACZ,UAAU,EAAE,KAAK,IAAI,EAAE;gBACnB,QAAQ,IAAI,CAAC,CAAC;gBACd,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;gBAC9C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC9D,QAAQ,IAAI,CAAC,CAAC;gBACd,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YACjC,CAAC;SACJ,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,yDAAyD;QACzD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9D,QAAQ,GAAG,CAAC,CAAC;QACb,WAAW,GAAG,CAAC,CAAC;QAEhB,MAAM,cAAc,EAAE,CAAC;QAEvB,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,SAAS,kBAAkB;IACvB,MAAM,GAAG,GAAG,IAAI,KAAK,CACjB,8EAA8E,CACjF,CAAC;IACF,GAAG,CAAC,IAAI,GAAG,mCAAmC,CAAC;IAC/C,OAAO,GAAG,CAAC;AACf,CAAC;AAED,QAAQ,CAAC,uDAAuD,EAAE,GAAG,EAAE;IACnE,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,qEAAqE;QACrE,MAAM,IAAI,GAAG,eAAe,CAAC;YACzB,UAAU,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAC5B,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;SACnE,CAAC,CAAC;QACH,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,cAAc,EAAE,CAAC;QACvB,8BAA8B;QAC9B,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,+BAA+B,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QAE1E,4CAA4C;QAC5C,MAAM,GAAG,GAAG,eAAe,CAAC;YACxB,UAAU,EAAE,KAAK,IAAI,EAAE;gBACnB,MAAM,kBAAkB,EAAE,CAAC;YAC/B,CAAC;SACJ,CAAC,CAAC;QACH,YAAY,CAAC,GAAG,CAAC,CAAC;QAElB,qDAAqD;QACrD,MAAM,MAAM,GAAG,mBAAmB,CAAC;YAC/B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,WAAW;YACvB,YAAY,EAAE,SAAS;YACvB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QACH,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,+BAA+B,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,eAAe,CAAC;YACxB,UAAU,EAAE,KAAK,IAAI,EAAE;gBACnB,MAAM,kBAAkB,EAAE,CAAC;YAC/B,CAAC;SACJ,CAAC,CAAC;QACH,YAAY,CAAC,GAAG,CAAC,CAAC;QAClB,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,cAAc,EAAE,CAAC;QACvB,kCAAkC;QAClC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;QAEzE,2CAA2C;QAC3C,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7E,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,+BAA+B,CAAC,CAAC,CAAC;QACrE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,YAAY,CACR,eAAe,CAAC;YACZ,UAAU,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC5B,IAAI,KAAK,KAAK,OAAO;oBAAE,UAAU,IAAI,CAAC,CAAC;gBACvC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YACjC,CAAC;SACJ,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,6DAA6D;QAC7D,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAE5B,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;IAC1D,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAE7C,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,MAAM,EAAE,CAAC;QACf,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,MAAM,EAAE,CAAC;QACf,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,+BAA+B,CAAC,EAAE,cAAc,CAAC,CAAC;QAErF,6BAA6B;QAC7B,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,MAAM,EAAE,CAAC;QACf,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,MAAM,EAAE,CAAC;QAEf,MAAM,CAAC,EAAE,CACL,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,EACnF,8BAA8B,CACjC,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7C,YAAY,CACR,eAAe,CAAC;YACZ,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;SAC7C,CAAC,CACL,CAAC;QACF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,MAAM,EAAE,CAAC;QAEf,6BAA6B;QAC7B,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAElB,4BAA4B;QAC5B,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,+BAA+B,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,220 +0,0 @@
1
- /**
2
- * IM → OpenClaw:目录同步映射 WebSocket 信令(openclawApplySyncMapping)
3
- */
4
- import { z } from "zod";
5
- /** 与 openclaw-xgkb-sync `syncDirection` 一致(MANAGEMENT_API.md) */
6
- export declare const SYNC_DIRECTIONS: readonly ["bidirectional", "push", "pull"];
7
- export type SyncDirection = (typeof SYNC_DIRECTIONS)[number];
8
- /** IM 信令:localRoot 统一为 { kind, path } */
9
- declare const localRootSchema: z.ZodObject<{
10
- kind: z.ZodEnum<["workspace_relative", "host_absolute"]>;
11
- path: z.ZodString;
12
- }, "strip", z.ZodTypeAny, {
13
- kind: "workspace_relative" | "host_absolute";
14
- path: string;
15
- }, {
16
- kind: "workspace_relative" | "host_absolute";
17
- path: string;
18
- }>;
19
- declare const upsertParamsSchema: z.ZodObject<{
20
- action: z.ZodLiteral<"upsert">;
21
- mappingId: z.ZodString;
22
- appKey: z.ZodString;
23
- localRoot: z.ZodObject<{
24
- kind: z.ZodEnum<["workspace_relative", "host_absolute"]>;
25
- path: z.ZodString;
26
- }, "strip", z.ZodTypeAny, {
27
- kind: "workspace_relative" | "host_absolute";
28
- path: string;
29
- }, {
30
- kind: "workspace_relative" | "host_absolute";
31
- path: string;
32
- }>;
33
- /** 知识库目录 fileId;与 remoteRootFolderPath 二选一,优先使用本字段 */
34
- remoteRootFolderId: z.ZodOptional<z.ZodString>;
35
- /** 知识库内逻辑路径;remoteRootFolderId 未填时必填 */
36
- remoteRootFolderPath: z.ZodOptional<z.ZodString>;
37
- kbProjectId: z.ZodOptional<z.ZodString>;
38
- enabled: z.ZodOptional<z.ZodBoolean>;
39
- sync: z.ZodOptional<z.ZodObject<{
40
- direction: z.ZodOptional<z.ZodEnum<["bidirectional", "push", "pull"]>>;
41
- filePatterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
42
- excludePatterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
43
- }, "strip", z.ZodTypeAny, {
44
- direction?: "push" | "bidirectional" | "pull" | undefined;
45
- filePatterns?: string[] | undefined;
46
- excludePatterns?: string[] | undefined;
47
- }, {
48
- direction?: "push" | "bidirectional" | "pull" | undefined;
49
- filePatterns?: string[] | undefined;
50
- excludePatterns?: string[] | undefined;
51
- }>>;
52
- }, "strip", z.ZodTypeAny, {
53
- localRoot: {
54
- kind: "workspace_relative" | "host_absolute";
55
- path: string;
56
- };
57
- appKey: string;
58
- action: "upsert";
59
- mappingId: string;
60
- remoteRootFolderPath?: string | undefined;
61
- enabled?: boolean | undefined;
62
- remoteRootFolderId?: string | undefined;
63
- kbProjectId?: string | undefined;
64
- sync?: {
65
- direction?: "push" | "bidirectional" | "pull" | undefined;
66
- filePatterns?: string[] | undefined;
67
- excludePatterns?: string[] | undefined;
68
- } | undefined;
69
- }, {
70
- localRoot: {
71
- kind: "workspace_relative" | "host_absolute";
72
- path: string;
73
- };
74
- appKey: string;
75
- action: "upsert";
76
- mappingId: string;
77
- remoteRootFolderPath?: string | undefined;
78
- enabled?: boolean | undefined;
79
- remoteRootFolderId?: string | undefined;
80
- kbProjectId?: string | undefined;
81
- sync?: {
82
- direction?: "push" | "bidirectional" | "pull" | undefined;
83
- filePatterns?: string[] | undefined;
84
- excludePatterns?: string[] | undefined;
85
- } | undefined;
86
- }>;
87
- declare const deleteParamsSchema: z.ZodObject<{
88
- action: z.ZodLiteral<"delete">;
89
- mappingId: z.ZodString;
90
- }, "strip", z.ZodTypeAny, {
91
- action: "delete";
92
- mappingId: string;
93
- }, {
94
- action: "delete";
95
- mappingId: string;
96
- }>;
97
- export declare const syncMappingParamsSchema: z.ZodEffects<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
98
- action: z.ZodLiteral<"upsert">;
99
- mappingId: z.ZodString;
100
- appKey: z.ZodString;
101
- localRoot: z.ZodObject<{
102
- kind: z.ZodEnum<["workspace_relative", "host_absolute"]>;
103
- path: z.ZodString;
104
- }, "strip", z.ZodTypeAny, {
105
- kind: "workspace_relative" | "host_absolute";
106
- path: string;
107
- }, {
108
- kind: "workspace_relative" | "host_absolute";
109
- path: string;
110
- }>;
111
- /** 知识库目录 fileId;与 remoteRootFolderPath 二选一,优先使用本字段 */
112
- remoteRootFolderId: z.ZodOptional<z.ZodString>;
113
- /** 知识库内逻辑路径;remoteRootFolderId 未填时必填 */
114
- remoteRootFolderPath: z.ZodOptional<z.ZodString>;
115
- kbProjectId: z.ZodOptional<z.ZodString>;
116
- enabled: z.ZodOptional<z.ZodBoolean>;
117
- sync: z.ZodOptional<z.ZodObject<{
118
- direction: z.ZodOptional<z.ZodEnum<["bidirectional", "push", "pull"]>>;
119
- filePatterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
120
- excludePatterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
121
- }, "strip", z.ZodTypeAny, {
122
- direction?: "push" | "bidirectional" | "pull" | undefined;
123
- filePatterns?: string[] | undefined;
124
- excludePatterns?: string[] | undefined;
125
- }, {
126
- direction?: "push" | "bidirectional" | "pull" | undefined;
127
- filePatterns?: string[] | undefined;
128
- excludePatterns?: string[] | undefined;
129
- }>>;
130
- }, "strip", z.ZodTypeAny, {
131
- localRoot: {
132
- kind: "workspace_relative" | "host_absolute";
133
- path: string;
134
- };
135
- appKey: string;
136
- action: "upsert";
137
- mappingId: string;
138
- remoteRootFolderPath?: string | undefined;
139
- enabled?: boolean | undefined;
140
- remoteRootFolderId?: string | undefined;
141
- kbProjectId?: string | undefined;
142
- sync?: {
143
- direction?: "push" | "bidirectional" | "pull" | undefined;
144
- filePatterns?: string[] | undefined;
145
- excludePatterns?: string[] | undefined;
146
- } | undefined;
147
- }, {
148
- localRoot: {
149
- kind: "workspace_relative" | "host_absolute";
150
- path: string;
151
- };
152
- appKey: string;
153
- action: "upsert";
154
- mappingId: string;
155
- remoteRootFolderPath?: string | undefined;
156
- enabled?: boolean | undefined;
157
- remoteRootFolderId?: string | undefined;
158
- kbProjectId?: string | undefined;
159
- sync?: {
160
- direction?: "push" | "bidirectional" | "pull" | undefined;
161
- filePatterns?: string[] | undefined;
162
- excludePatterns?: string[] | undefined;
163
- } | undefined;
164
- }>, z.ZodObject<{
165
- action: z.ZodLiteral<"delete">;
166
- mappingId: z.ZodString;
167
- }, "strip", z.ZodTypeAny, {
168
- action: "delete";
169
- mappingId: string;
170
- }, {
171
- action: "delete";
172
- mappingId: string;
173
- }>]>, {
174
- localRoot: {
175
- kind: "workspace_relative" | "host_absolute";
176
- path: string;
177
- };
178
- appKey: string;
179
- action: "upsert";
180
- mappingId: string;
181
- remoteRootFolderPath?: string | undefined;
182
- enabled?: boolean | undefined;
183
- remoteRootFolderId?: string | undefined;
184
- kbProjectId?: string | undefined;
185
- sync?: {
186
- direction?: "push" | "bidirectional" | "pull" | undefined;
187
- filePatterns?: string[] | undefined;
188
- excludePatterns?: string[] | undefined;
189
- } | undefined;
190
- } | {
191
- action: "delete";
192
- mappingId: string;
193
- }, {
194
- localRoot: {
195
- kind: "workspace_relative" | "host_absolute";
196
- path: string;
197
- };
198
- appKey: string;
199
- action: "upsert";
200
- mappingId: string;
201
- remoteRootFolderPath?: string | undefined;
202
- enabled?: boolean | undefined;
203
- remoteRootFolderId?: string | undefined;
204
- kbProjectId?: string | undefined;
205
- sync?: {
206
- direction?: "push" | "bidirectional" | "pull" | undefined;
207
- filePatterns?: string[] | undefined;
208
- excludePatterns?: string[] | undefined;
209
- } | undefined;
210
- } | {
211
- action: "delete";
212
- mappingId: string;
213
- }>;
214
- export type SyncMappingParams = z.infer<typeof syncMappingParamsSchema>;
215
- export type SyncMappingUpsertParams = z.infer<typeof upsertParamsSchema>;
216
- export type SyncMappingDeleteParams = z.infer<typeof deleteParamsSchema>;
217
- export type SyncMappingLocalRoot = z.infer<typeof localRootSchema>;
218
- export declare function parseSyncMappingParams(raw: unknown): SyncMappingParams;
219
- export {};
220
- //# sourceMappingURL=sync-mapping-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-mapping-types.d.ts","sourceRoot":"","sources":["../../src/sync-mapping-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,iEAAiE;AACjE,eAAO,MAAM,eAAe,4CAA6C,CAAC;AAC1E,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAU7D,yCAAyC;AACzC,QAAA,MAAM,eAAe;;;;;;;;;EAGnB,CAAC;AAEH,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;IAKpB,sDAAsD;;IAEtD,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK1C,CAAC;AAEH,QAAA,MAAM,kBAAkB;;;;;;;;;EAGtB,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;IAdhC,sDAAsD;;IAEtD,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBtC,CAAC;AAEP,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACzE,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACzE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAEnE,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAEtE"}
@@ -1,55 +0,0 @@
1
- /**
2
- * IM → OpenClaw:目录同步映射 WebSocket 信令(openclawApplySyncMapping)
3
- */
4
- import { z } from "zod";
5
- import { LOCAL_ROOT_KINDS } from "./project-path-normalize.js";
6
- /** 与 openclaw-xgkb-sync `syncDirection` 一致(MANAGEMENT_API.md) */
7
- export const SYNC_DIRECTIONS = ["bidirectional", "push", "pull"];
8
- const syncOptionsSchema = z
9
- .object({
10
- direction: z.enum(SYNC_DIRECTIONS).optional(),
11
- filePatterns: z.array(z.string().min(1)).optional(),
12
- excludePatterns: z.array(z.string().min(1)).optional(),
13
- })
14
- .optional();
15
- /** IM 信令:localRoot 统一为 { kind, path } */
16
- const localRootSchema = z.object({
17
- kind: z.enum(LOCAL_ROOT_KINDS),
18
- path: z.string().min(1),
19
- });
20
- const upsertParamsSchema = z.object({
21
- action: z.literal("upsert"),
22
- mappingId: z.string().min(1),
23
- appKey: z.string().min(1),
24
- localRoot: localRootSchema,
25
- /** 知识库目录 fileId;与 remoteRootFolderPath 二选一,优先使用本字段 */
26
- remoteRootFolderId: z.string().min(1).optional(),
27
- /** 知识库内逻辑路径;remoteRootFolderId 未填时必填 */
28
- remoteRootFolderPath: z.string().min(1).optional(),
29
- kbProjectId: z.string().min(1).optional(),
30
- enabled: z.boolean().optional(),
31
- sync: syncOptionsSchema,
32
- });
33
- const deleteParamsSchema = z.object({
34
- action: z.literal("delete"),
35
- mappingId: z.string().min(1),
36
- });
37
- export const syncMappingParamsSchema = z
38
- .discriminatedUnion("action", [upsertParamsSchema, deleteParamsSchema])
39
- .superRefine((data, ctx) => {
40
- if (data.action !== "upsert")
41
- return;
42
- const hasId = Boolean(data.remoteRootFolderId?.trim());
43
- const hasPath = Boolean(data.remoteRootFolderPath?.trim());
44
- if (!hasId && !hasPath) {
45
- ctx.addIssue({
46
- code: z.ZodIssueCode.custom,
47
- message: "remoteRootFolderId 与 remoteRootFolderPath 至少填一个",
48
- path: ["remoteRootFolderId"],
49
- });
50
- }
51
- });
52
- export function parseSyncMappingParams(raw) {
53
- return syncMappingParamsSchema.parse(raw);
54
- }
55
- //# sourceMappingURL=sync-mapping-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-mapping-types.js","sourceRoot":"","sources":["../../src/sync-mapping-types.ts"],"names":[],"mappings":"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"}