@xgjktech/xg_cwork_im 1.19.24 → 1.19.26

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 (615) hide show
  1. package/README.md +490 -489
  2. package/dist/index.js +1 -1
  3. package/dist/src/connection/account-connection.d.ts.map +1 -1
  4. package/dist/src/connection/account-connection.js +3 -0
  5. package/dist/src/connection/account-connection.js.map +1 -1
  6. package/dist/src/connection/connection.d.ts +0 -6
  7. package/dist/src/connection/connection.d.ts.map +1 -1
  8. package/dist/src/connection/connection.js +0 -6
  9. package/dist/src/connection/connection.js.map +1 -1
  10. package/dist/src/connection/connection.test.js +1 -17
  11. package/dist/src/connection/connection.test.js.map +1 -1
  12. package/dist/src/inbound/inbound-url-rewrite.d.ts +32 -0
  13. package/dist/src/inbound/inbound-url-rewrite.d.ts.map +1 -0
  14. package/dist/src/inbound/inbound-url-rewrite.js +94 -0
  15. package/dist/src/inbound/inbound-url-rewrite.js.map +1 -0
  16. package/dist/src/inbound/inbound-url-rewrite.test.d.ts +2 -0
  17. package/dist/src/inbound/inbound-url-rewrite.test.d.ts.map +1 -0
  18. package/dist/src/inbound/inbound-url-rewrite.test.js +90 -0
  19. package/dist/src/inbound/inbound-url-rewrite.test.js.map +1 -0
  20. package/dist/src/plan/plan-core-adapter.d.ts +1 -12
  21. package/dist/src/plan/plan-core-adapter.d.ts.map +1 -1
  22. package/dist/src/plan/plan-core-adapter.js +3 -15
  23. package/dist/src/plan/plan-core-adapter.js.map +1 -1
  24. package/dist/src/plan/plan-core-adapter.test.js +0 -50
  25. package/dist/src/plan/plan-core-adapter.test.js.map +1 -1
  26. package/dist/src/plan/plan-stat-event.d.ts.map +1 -1
  27. package/dist/src/plan/plan-stat-event.js +0 -6
  28. package/dist/src/plan/plan-stat-event.js.map +1 -1
  29. package/dist/src/plugin/channel-config.d.ts +32 -0
  30. package/dist/src/plugin/channel-config.d.ts.map +1 -1
  31. package/dist/src/plugin/channel-config.js +12 -0
  32. package/dist/src/plugin/channel-config.js.map +1 -1
  33. package/dist/src/plugin/channel-config.test.js +15 -0
  34. package/dist/src/plugin/channel-config.test.js.map +1 -1
  35. package/dist/src/plugin/types.d.ts +15 -0
  36. package/dist/src/plugin/types.d.ts.map +1 -1
  37. package/dist/src/plugin/types.js.map +1 -1
  38. package/dist/src/turn/turn-agent-event-subscription.d.ts.map +1 -1
  39. package/dist/src/turn/turn-agent-event-subscription.js +2 -66
  40. package/dist/src/turn/turn-agent-event-subscription.js.map +1 -1
  41. package/dist/src/turn/turn-agent-event-subscription.test.js +0 -92
  42. package/dist/src/turn/turn-agent-event-subscription.test.js.map +1 -1
  43. package/package.json +82 -82
  44. package/dist/src/account-connection.d.ts +0 -37
  45. package/dist/src/account-connection.d.ts.map +0 -1
  46. package/dist/src/account-connection.js +0 -548
  47. package/dist/src/account-connection.js.map +0 -1
  48. package/dist/src/account-reconciler.d.ts +0 -64
  49. package/dist/src/account-reconciler.d.ts.map +0 -1
  50. package/dist/src/account-reconciler.js +0 -314
  51. package/dist/src/account-reconciler.js.map +0 -1
  52. package/dist/src/account-reconciler.test.d.ts +0 -2
  53. package/dist/src/account-reconciler.test.d.ts.map +0 -1
  54. package/dist/src/account-reconciler.test.js +0 -166
  55. package/dist/src/account-reconciler.test.js.map +0 -1
  56. package/dist/src/action-run-event.d.ts +0 -20
  57. package/dist/src/action-run-event.d.ts.map +0 -1
  58. package/dist/src/action-run-event.js +0 -62
  59. package/dist/src/action-run-event.js.map +0 -1
  60. package/dist/src/action-run-event.test.d.ts +0 -2
  61. package/dist/src/action-run-event.test.d.ts.map +0 -1
  62. package/dist/src/action-run-event.test.js +0 -83
  63. package/dist/src/action-run-event.test.js.map +0 -1
  64. package/dist/src/action-store-access.d.ts +0 -29
  65. package/dist/src/action-store-access.d.ts.map +0 -1
  66. package/dist/src/action-store-access.js +0 -81
  67. package/dist/src/action-store-access.js.map +0 -1
  68. package/dist/src/action-store-lifecycle.test.d.ts +0 -2
  69. package/dist/src/action-store-lifecycle.test.d.ts.map +0 -1
  70. package/dist/src/action-store-lifecycle.test.js +0 -195
  71. package/dist/src/action-store-lifecycle.test.js.map +0 -1
  72. package/dist/src/active-cron-context-store.d.ts +0 -20
  73. package/dist/src/active-cron-context-store.d.ts.map +0 -1
  74. package/dist/src/active-cron-context-store.js +0 -73
  75. package/dist/src/active-cron-context-store.js.map +0 -1
  76. package/dist/src/active-round-registry.d.ts +0 -35
  77. package/dist/src/active-round-registry.d.ts.map +0 -1
  78. package/dist/src/active-round-registry.js +0 -85
  79. package/dist/src/active-round-registry.js.map +0 -1
  80. package/dist/src/active-round-registry.test.d.ts +0 -2
  81. package/dist/src/active-round-registry.test.d.ts.map +0 -1
  82. package/dist/src/active-round-registry.test.js +0 -62
  83. package/dist/src/active-round-registry.test.js.map +0 -1
  84. package/dist/src/agent-context-types.d.ts +0 -205
  85. package/dist/src/agent-context-types.d.ts.map +0 -1
  86. package/dist/src/agent-context-types.js +0 -132
  87. package/dist/src/agent-context-types.js.map +0 -1
  88. package/dist/src/agent-context-types.test.d.ts +0 -2
  89. package/dist/src/agent-context-types.test.d.ts.map +0 -1
  90. package/dist/src/agent-context-types.test.js +0 -123
  91. package/dist/src/agent-context-types.test.js.map +0 -1
  92. package/dist/src/agent-stream-client-registry.d.ts +0 -8
  93. package/dist/src/agent-stream-client-registry.d.ts.map +0 -1
  94. package/dist/src/agent-stream-client-registry.js +0 -19
  95. package/dist/src/agent-stream-client-registry.js.map +0 -1
  96. package/dist/src/apply-sync-mapping.d.ts +0 -15
  97. package/dist/src/apply-sync-mapping.d.ts.map +0 -1
  98. package/dist/src/apply-sync-mapping.js +0 -98
  99. package/dist/src/apply-sync-mapping.js.map +0 -1
  100. package/dist/src/assistant-item-delivery.d.ts +0 -27
  101. package/dist/src/assistant-item-delivery.d.ts.map +0 -1
  102. package/dist/src/assistant-item-delivery.js +0 -134
  103. package/dist/src/assistant-item-delivery.js.map +0 -1
  104. package/dist/src/assistant-item-delivery.test.d.ts +0 -2
  105. package/dist/src/assistant-item-delivery.test.d.ts.map +0 -1
  106. package/dist/src/assistant-item-delivery.test.js +0 -116
  107. package/dist/src/assistant-item-delivery.test.js.map +0 -1
  108. package/dist/src/assistant-item-sink.d.ts +0 -17
  109. package/dist/src/assistant-item-sink.d.ts.map +0 -1
  110. package/dist/src/assistant-item-sink.js +0 -34
  111. package/dist/src/assistant-item-sink.js.map +0 -1
  112. package/dist/src/auth.d.ts +0 -32
  113. package/dist/src/auth.d.ts.map +0 -1
  114. package/dist/src/auth.js +0 -70
  115. package/dist/src/auth.js.map +0 -1
  116. package/dist/src/auto-model-router.d.ts +0 -36
  117. package/dist/src/auto-model-router.d.ts.map +0 -1
  118. package/dist/src/auto-model-router.js +0 -60
  119. package/dist/src/auto-model-router.js.map +0 -1
  120. package/dist/src/auto-model-router.test.d.ts +0 -2
  121. package/dist/src/auto-model-router.test.d.ts.map +0 -1
  122. package/dist/src/auto-model-router.test.js +0 -99
  123. package/dist/src/auto-model-router.test.js.map +0 -1
  124. package/dist/src/block-streaming-config.test.d.ts +0 -2
  125. package/dist/src/block-streaming-config.test.d.ts.map +0 -1
  126. package/dist/src/block-streaming-config.test.js +0 -91
  127. package/dist/src/block-streaming-config.test.js.map +0 -1
  128. package/dist/src/build-project-prompt.d.ts +0 -40
  129. package/dist/src/build-project-prompt.d.ts.map +0 -1
  130. package/dist/src/build-project-prompt.js +0 -183
  131. package/dist/src/build-project-prompt.js.map +0 -1
  132. package/dist/src/build-project-prompt.test.d.ts +0 -2
  133. package/dist/src/build-project-prompt.test.d.ts.map +0 -1
  134. package/dist/src/build-project-prompt.test.js +0 -100
  135. package/dist/src/build-project-prompt.test.js.map +0 -1
  136. package/dist/src/channel-config.d.ts +0 -716
  137. package/dist/src/channel-config.d.ts.map +0 -1
  138. package/dist/src/channel-config.js +0 -405
  139. package/dist/src/channel-config.js.map +0 -1
  140. package/dist/src/channel-config.test.d.ts +0 -2
  141. package/dist/src/channel-config.test.d.ts.map +0 -1
  142. package/dist/src/channel-config.test.js +0 -113
  143. package/dist/src/channel-config.test.js.map +0 -1
  144. package/dist/src/channel-disabled-account.test.d.ts +0 -2
  145. package/dist/src/channel-disabled-account.test.d.ts.map +0 -1
  146. package/dist/src/channel-disabled-account.test.js +0 -44
  147. package/dist/src/channel-disabled-account.test.js.map +0 -1
  148. package/dist/src/channel-log.d.ts +0 -17
  149. package/dist/src/channel-log.d.ts.map +0 -1
  150. package/dist/src/channel-log.js +0 -45
  151. package/dist/src/channel-log.js.map +0 -1
  152. package/dist/src/channel.d.ts +0 -17
  153. package/dist/src/channel.d.ts.map +0 -1
  154. package/dist/src/channel.js +0 -272
  155. package/dist/src/channel.js.map +0 -1
  156. package/dist/src/connection-workspace-event.test.d.ts +0 -2
  157. package/dist/src/connection-workspace-event.test.d.ts.map +0 -1
  158. package/dist/src/connection-workspace-event.test.js +0 -74
  159. package/dist/src/connection-workspace-event.test.js.map +0 -1
  160. package/dist/src/connection.d.ts +0 -110
  161. package/dist/src/connection.d.ts.map +0 -1
  162. package/dist/src/connection.js +0 -463
  163. package/dist/src/connection.js.map +0 -1
  164. package/dist/src/connection.test.d.ts +0 -2
  165. package/dist/src/connection.test.d.ts.map +0 -1
  166. package/dist/src/connection.test.js +0 -110
  167. package/dist/src/connection.test.js.map +0 -1
  168. package/dist/src/cron-appkey-binding-store.d.ts +0 -29
  169. package/dist/src/cron-appkey-binding-store.d.ts.map +0 -1
  170. package/dist/src/cron-appkey-binding-store.js +0 -239
  171. package/dist/src/cron-appkey-binding-store.js.map +0 -1
  172. package/dist/src/cron-appkey-binding-store.test.d.ts +0 -2
  173. package/dist/src/cron-appkey-binding-store.test.d.ts.map +0 -1
  174. package/dist/src/cron-appkey-binding-store.test.js +0 -387
  175. package/dist/src/cron-appkey-binding-store.test.js.map +0 -1
  176. package/dist/src/deliver-text.d.ts +0 -30
  177. package/dist/src/deliver-text.d.ts.map +0 -1
  178. package/dist/src/deliver-text.js +0 -88
  179. package/dist/src/deliver-text.js.map +0 -1
  180. package/dist/src/deliver-text.test.d.ts +0 -2
  181. package/dist/src/deliver-text.test.d.ts.map +0 -1
  182. package/dist/src/deliver-text.test.js +0 -117
  183. package/dist/src/deliver-text.test.js.map +0 -1
  184. package/dist/src/dispatch-mentioned-reply.d.ts +0 -47
  185. package/dist/src/dispatch-mentioned-reply.d.ts.map +0 -1
  186. package/dist/src/dispatch-mentioned-reply.js +0 -997
  187. package/dist/src/dispatch-mentioned-reply.js.map +0 -1
  188. package/dist/src/gateway-session-queue.d.ts +0 -37
  189. package/dist/src/gateway-session-queue.d.ts.map +0 -1
  190. package/dist/src/gateway-session-queue.js +0 -86
  191. package/dist/src/gateway-session-queue.js.map +0 -1
  192. package/dist/src/group-history-tool.d.ts +0 -31
  193. package/dist/src/group-history-tool.d.ts.map +0 -1
  194. package/dist/src/group-history-tool.js +0 -177
  195. package/dist/src/group-history-tool.js.map +0 -1
  196. package/dist/src/im-tool-progress.d.ts +0 -4
  197. package/dist/src/im-tool-progress.d.ts.map +0 -1
  198. package/dist/src/im-tool-progress.js +0 -87
  199. package/dist/src/im-tool-progress.js.map +0 -1
  200. package/dist/src/inbound-archive.d.ts +0 -4
  201. package/dist/src/inbound-archive.d.ts.map +0 -1
  202. package/dist/src/inbound-archive.js +0 -105
  203. package/dist/src/inbound-archive.js.map +0 -1
  204. package/dist/src/inbound-attachment-meta.d.ts +0 -13
  205. package/dist/src/inbound-attachment-meta.d.ts.map +0 -1
  206. package/dist/src/inbound-attachment-meta.js +0 -39
  207. package/dist/src/inbound-attachment-meta.js.map +0 -1
  208. package/dist/src/inbound-chat-type.d.ts +0 -33
  209. package/dist/src/inbound-chat-type.d.ts.map +0 -1
  210. package/dist/src/inbound-chat-type.js +0 -52
  211. package/dist/src/inbound-chat-type.js.map +0 -1
  212. package/dist/src/inbound-display.d.ts +0 -41
  213. package/dist/src/inbound-display.d.ts.map +0 -1
  214. package/dist/src/inbound-display.js +0 -170
  215. package/dist/src/inbound-display.js.map +0 -1
  216. package/dist/src/inbound-file-download.d.ts +0 -15
  217. package/dist/src/inbound-file-download.d.ts.map +0 -1
  218. package/dist/src/inbound-file-download.js +0 -48
  219. package/dist/src/inbound-file-download.js.map +0 -1
  220. package/dist/src/inbound-input-media.d.ts +0 -43
  221. package/dist/src/inbound-input-media.d.ts.map +0 -1
  222. package/dist/src/inbound-input-media.js +0 -230
  223. package/dist/src/inbound-input-media.js.map +0 -1
  224. package/dist/src/inbound-media-local.d.ts +0 -49
  225. package/dist/src/inbound-media-local.d.ts.map +0 -1
  226. package/dist/src/inbound-media-local.js +0 -194
  227. package/dist/src/inbound-media-local.js.map +0 -1
  228. package/dist/src/inbound-model.d.ts +0 -39
  229. package/dist/src/inbound-model.d.ts.map +0 -1
  230. package/dist/src/inbound-model.js +0 -66
  231. package/dist/src/inbound-model.js.map +0 -1
  232. package/dist/src/inbound-model.test.d.ts +0 -2
  233. package/dist/src/inbound-model.test.d.ts.map +0 -1
  234. package/dist/src/inbound-model.test.js +0 -88
  235. package/dist/src/inbound-model.test.js.map +0 -1
  236. package/dist/src/inbound-terminal-delivery.d.ts +0 -77
  237. package/dist/src/inbound-terminal-delivery.d.ts.map +0 -1
  238. package/dist/src/inbound-terminal-delivery.js +0 -251
  239. package/dist/src/inbound-terminal-delivery.js.map +0 -1
  240. package/dist/src/inbound-terminal-state.d.ts +0 -68
  241. package/dist/src/inbound-terminal-state.d.ts.map +0 -1
  242. package/dist/src/inbound-terminal-state.js +0 -185
  243. package/dist/src/inbound-terminal-state.js.map +0 -1
  244. package/dist/src/inbound-terminal-state.test.d.ts +0 -2
  245. package/dist/src/inbound-terminal-state.test.d.ts.map +0 -1
  246. package/dist/src/inbound-terminal-state.test.js +0 -224
  247. package/dist/src/inbound-terminal-state.test.js.map +0 -1
  248. package/dist/src/interrupt-round.d.ts +0 -9
  249. package/dist/src/interrupt-round.d.ts.map +0 -1
  250. package/dist/src/interrupt-round.js +0 -44
  251. package/dist/src/interrupt-round.js.map +0 -1
  252. package/dist/src/interrupt-round.test.d.ts +0 -2
  253. package/dist/src/interrupt-round.test.d.ts.map +0 -1
  254. package/dist/src/interrupt-round.test.js +0 -133
  255. package/dist/src/interrupt-round.test.js.map +0 -1
  256. package/dist/src/item-event-guard.d.ts +0 -28
  257. package/dist/src/item-event-guard.d.ts.map +0 -1
  258. package/dist/src/item-event-guard.js +0 -22
  259. package/dist/src/item-event-guard.js.map +0 -1
  260. package/dist/src/item-event-guard.test.d.ts +0 -2
  261. package/dist/src/item-event-guard.test.d.ts.map +0 -1
  262. package/dist/src/item-event-guard.test.js +0 -55
  263. package/dist/src/item-event-guard.test.js.map +0 -1
  264. package/dist/src/nas-site.d.ts +0 -16
  265. package/dist/src/nas-site.d.ts.map +0 -1
  266. package/dist/src/nas-site.js +0 -17
  267. package/dist/src/nas-site.js.map +0 -1
  268. package/dist/src/nas-volumes.d.ts +0 -53
  269. package/dist/src/nas-volumes.d.ts.map +0 -1
  270. package/dist/src/nas-volumes.js +0 -417
  271. package/dist/src/nas-volumes.js.map +0 -1
  272. package/dist/src/nas-volumes.test.d.ts +0 -2
  273. package/dist/src/nas-volumes.test.d.ts.map +0 -1
  274. package/dist/src/nas-volumes.test.js +0 -261
  275. package/dist/src/nas-volumes.test.js.map +0 -1
  276. package/dist/src/per-message-fallback-notice.d.ts +0 -43
  277. package/dist/src/per-message-fallback-notice.d.ts.map +0 -1
  278. package/dist/src/per-message-fallback-notice.js +0 -93
  279. package/dist/src/per-message-fallback-notice.js.map +0 -1
  280. package/dist/src/per-message-fallback-notice.test.d.ts +0 -2
  281. package/dist/src/per-message-fallback-notice.test.d.ts.map +0 -1
  282. package/dist/src/per-message-fallback-notice.test.js +0 -47
  283. package/dist/src/per-message-fallback-notice.test.js.map +0 -1
  284. package/dist/src/per-message-model-pending.d.ts +0 -52
  285. package/dist/src/per-message-model-pending.d.ts.map +0 -1
  286. package/dist/src/per-message-model-pending.js +0 -134
  287. package/dist/src/per-message-model-pending.js.map +0 -1
  288. package/dist/src/plan-blocked-notice.d.ts +0 -14
  289. package/dist/src/plan-blocked-notice.d.ts.map +0 -1
  290. package/dist/src/plan-blocked-notice.js +0 -41
  291. package/dist/src/plan-blocked-notice.js.map +0 -1
  292. package/dist/src/plan-blocked-notice.test.d.ts +0 -2
  293. package/dist/src/plan-blocked-notice.test.d.ts.map +0 -1
  294. package/dist/src/plan-blocked-notice.test.js +0 -96
  295. package/dist/src/plan-blocked-notice.test.js.map +0 -1
  296. package/dist/src/plan-core-adapter.d.ts +0 -54
  297. package/dist/src/plan-core-adapter.d.ts.map +0 -1
  298. package/dist/src/plan-core-adapter.js +0 -104
  299. package/dist/src/plan-core-adapter.js.map +0 -1
  300. package/dist/src/plan-core-adapter.test.d.ts +0 -2
  301. package/dist/src/plan-core-adapter.test.d.ts.map +0 -1
  302. package/dist/src/plan-core-adapter.test.js +0 -183
  303. package/dist/src/plan-core-adapter.test.js.map +0 -1
  304. package/dist/src/plan-core-db.d.ts +0 -22
  305. package/dist/src/plan-core-db.d.ts.map +0 -1
  306. package/dist/src/plan-core-db.js +0 -91
  307. package/dist/src/plan-core-db.js.map +0 -1
  308. package/dist/src/plan-core-db.test.d.ts +0 -2
  309. package/dist/src/plan-core-db.test.d.ts.map +0 -1
  310. package/dist/src/plan-core-db.test.js +0 -115
  311. package/dist/src/plan-core-db.test.js.map +0 -1
  312. package/dist/src/plan-core-snapshot.d.ts +0 -23
  313. package/dist/src/plan-core-snapshot.d.ts.map +0 -1
  314. package/dist/src/plan-core-snapshot.js +0 -66
  315. package/dist/src/plan-core-snapshot.js.map +0 -1
  316. package/dist/src/plan-core-snapshot.test.d.ts +0 -2
  317. package/dist/src/plan-core-snapshot.test.d.ts.map +0 -1
  318. package/dist/src/plan-core-snapshot.test.js +0 -157
  319. package/dist/src/plan-core-snapshot.test.js.map +0 -1
  320. package/dist/src/plan-event-subscription.d.ts +0 -36
  321. package/dist/src/plan-event-subscription.d.ts.map +0 -1
  322. package/dist/src/plan-event-subscription.js +0 -57
  323. package/dist/src/plan-event-subscription.js.map +0 -1
  324. package/dist/src/plan-event-subscription.test.d.ts +0 -2
  325. package/dist/src/plan-event-subscription.test.d.ts.map +0 -1
  326. package/dist/src/plan-event-subscription.test.js +0 -167
  327. package/dist/src/plan-event-subscription.test.js.map +0 -1
  328. package/dist/src/plan-stat-event.d.ts +0 -17
  329. package/dist/src/plan-stat-event.d.ts.map +0 -1
  330. package/dist/src/plan-stat-event.js +0 -41
  331. package/dist/src/plan-stat-event.js.map +0 -1
  332. package/dist/src/plan-stat-event.test.d.ts +0 -2
  333. package/dist/src/plan-stat-event.test.d.ts.map +0 -1
  334. package/dist/src/plan-stat-event.test.js +0 -131
  335. package/dist/src/plan-stat-event.test.js.map +0 -1
  336. package/dist/src/plan-store-access.d.ts +0 -25
  337. package/dist/src/plan-store-access.d.ts.map +0 -1
  338. package/dist/src/plan-store-access.js +0 -100
  339. package/dist/src/plan-store-access.js.map +0 -1
  340. package/dist/src/plan-store-access.test.d.ts +0 -2
  341. package/dist/src/plan-store-access.test.d.ts.map +0 -1
  342. package/dist/src/plan-store-access.test.js +0 -207
  343. package/dist/src/plan-store-access.test.js.map +0 -1
  344. package/dist/src/plan-tool-middleware.d.ts +0 -19
  345. package/dist/src/plan-tool-middleware.d.ts.map +0 -1
  346. package/dist/src/plan-tool-middleware.js +0 -63
  347. package/dist/src/plan-tool-middleware.js.map +0 -1
  348. package/dist/src/plan-tool-middleware.test.d.ts +0 -2
  349. package/dist/src/plan-tool-middleware.test.d.ts.map +0 -1
  350. package/dist/src/plan-tool-middleware.test.js +0 -103
  351. package/dist/src/plan-tool-middleware.test.js.map +0 -1
  352. package/dist/src/plan-tool-result.d.ts +0 -18
  353. package/dist/src/plan-tool-result.d.ts.map +0 -1
  354. package/dist/src/plan-tool-result.js +0 -77
  355. package/dist/src/plan-tool-result.js.map +0 -1
  356. package/dist/src/plan-tool-result.test.d.ts +0 -2
  357. package/dist/src/plan-tool-result.test.d.ts.map +0 -1
  358. package/dist/src/plan-tool-result.test.js +0 -129
  359. package/dist/src/plan-tool-result.test.js.map +0 -1
  360. package/dist/src/plan-ws-registry.d.ts +0 -15
  361. package/dist/src/plan-ws-registry.d.ts.map +0 -1
  362. package/dist/src/plan-ws-registry.js +0 -39
  363. package/dist/src/plan-ws-registry.js.map +0 -1
  364. package/dist/src/plan-ws-registry.test.d.ts +0 -2
  365. package/dist/src/plan-ws-registry.test.d.ts.map +0 -1
  366. package/dist/src/plan-ws-registry.test.js +0 -61
  367. package/dist/src/plan-ws-registry.test.js.map +0 -1
  368. package/dist/src/plugin-dispose.d.ts +0 -22
  369. package/dist/src/plugin-dispose.d.ts.map +0 -1
  370. package/dist/src/plugin-dispose.js +0 -66
  371. package/dist/src/plugin-dispose.js.map +0 -1
  372. package/dist/src/process-shared-store.d.ts +0 -48
  373. package/dist/src/process-shared-store.d.ts.map +0 -1
  374. package/dist/src/process-shared-store.js +0 -89
  375. package/dist/src/process-shared-store.js.map +0 -1
  376. package/dist/src/process-shared-store.test.d.ts +0 -2
  377. package/dist/src/process-shared-store.test.d.ts.map +0 -1
  378. package/dist/src/process-shared-store.test.js +0 -60
  379. package/dist/src/process-shared-store.test.js.map +0 -1
  380. package/dist/src/project-path-normalize.d.ts +0 -30
  381. package/dist/src/project-path-normalize.d.ts.map +0 -1
  382. package/dist/src/project-path-normalize.js +0 -101
  383. package/dist/src/project-path-normalize.js.map +0 -1
  384. package/dist/src/recommended-system-prompt.d.ts +0 -3
  385. package/dist/src/recommended-system-prompt.d.ts.map +0 -1
  386. package/dist/src/recommended-system-prompt.js +0 -8
  387. package/dist/src/recommended-system-prompt.js.map +0 -1
  388. package/dist/src/register-exec-env-hook.d.ts +0 -44
  389. package/dist/src/register-exec-env-hook.d.ts.map +0 -1
  390. package/dist/src/register-exec-env-hook.js +0 -473
  391. package/dist/src/register-exec-env-hook.js.map +0 -1
  392. package/dist/src/register-exec-env-hook.test.d.ts +0 -2
  393. package/dist/src/register-exec-env-hook.test.d.ts.map +0 -1
  394. package/dist/src/register-exec-env-hook.test.js +0 -189
  395. package/dist/src/register-exec-env-hook.test.js.map +0 -1
  396. package/dist/src/register-group-prompt-hook.d.ts +0 -17
  397. package/dist/src/register-group-prompt-hook.d.ts.map +0 -1
  398. package/dist/src/register-group-prompt-hook.js +0 -45
  399. package/dist/src/register-group-prompt-hook.js.map +0 -1
  400. package/dist/src/register-group-prompt-hook.test.d.ts +0 -2
  401. package/dist/src/register-group-prompt-hook.test.d.ts.map +0 -1
  402. package/dist/src/register-group-prompt-hook.test.js +0 -60
  403. package/dist/src/register-group-prompt-hook.test.js.map +0 -1
  404. package/dist/src/register-per-message-model-hook.d.ts +0 -14
  405. package/dist/src/register-per-message-model-hook.d.ts.map +0 -1
  406. package/dist/src/register-per-message-model-hook.js +0 -48
  407. package/dist/src/register-per-message-model-hook.js.map +0 -1
  408. package/dist/src/register-per-message-model-hook.test.d.ts +0 -2
  409. package/dist/src/register-per-message-model-hook.test.d.ts.map +0 -1
  410. package/dist/src/register-per-message-model-hook.test.js +0 -208
  411. package/dist/src/register-per-message-model-hook.test.js.map +0 -1
  412. package/dist/src/register-run-model-context-hook.d.ts +0 -11
  413. package/dist/src/register-run-model-context-hook.d.ts.map +0 -1
  414. package/dist/src/register-run-model-context-hook.js +0 -23
  415. package/dist/src/register-run-model-context-hook.js.map +0 -1
  416. package/dist/src/reply-dispatch-driver.d.ts +0 -89
  417. package/dist/src/reply-dispatch-driver.d.ts.map +0 -1
  418. package/dist/src/reply-dispatch-driver.js +0 -294
  419. package/dist/src/reply-dispatch-driver.js.map +0 -1
  420. package/dist/src/reply-dispatch-driver.test.d.ts +0 -2
  421. package/dist/src/reply-dispatch-driver.test.d.ts.map +0 -1
  422. package/dist/src/reply-dispatch-driver.test.js +0 -363
  423. package/dist/src/reply-dispatch-driver.test.js.map +0 -1
  424. package/dist/src/resolve-inbound-group-prompt.d.ts +0 -37
  425. package/dist/src/resolve-inbound-group-prompt.d.ts.map +0 -1
  426. package/dist/src/resolve-inbound-group-prompt.js +0 -57
  427. package/dist/src/resolve-inbound-group-prompt.js.map +0 -1
  428. package/dist/src/resource-file.d.ts +0 -119
  429. package/dist/src/resource-file.d.ts.map +0 -1
  430. package/dist/src/resource-file.js +0 -533
  431. package/dist/src/resource-file.js.map +0 -1
  432. package/dist/src/resource-file.test.d.ts +0 -2
  433. package/dist/src/resource-file.test.d.ts.map +0 -1
  434. package/dist/src/resource-file.test.js +0 -64
  435. package/dist/src/resource-file.test.js.map +0 -1
  436. package/dist/src/run-model-context.d.ts +0 -45
  437. package/dist/src/run-model-context.d.ts.map +0 -1
  438. package/dist/src/run-model-context.js +0 -108
  439. package/dist/src/run-model-context.js.map +0 -1
  440. package/dist/src/run-model-context.test.d.ts +0 -2
  441. package/dist/src/run-model-context.test.d.ts.map +0 -1
  442. package/dist/src/run-model-context.test.js +0 -68
  443. package/dist/src/run-model-context.test.js.map +0 -1
  444. package/dist/src/run-usage-session.d.ts +0 -13
  445. package/dist/src/run-usage-session.d.ts.map +0 -1
  446. package/dist/src/run-usage-session.js +0 -41
  447. package/dist/src/run-usage-session.js.map +0 -1
  448. package/dist/src/run-usage.d.ts +0 -67
  449. package/dist/src/run-usage.d.ts.map +0 -1
  450. package/dist/src/run-usage.js +0 -119
  451. package/dist/src/run-usage.js.map +0 -1
  452. package/dist/src/run-usage.test.d.ts +0 -2
  453. package/dist/src/run-usage.test.d.ts.map +0 -1
  454. package/dist/src/run-usage.test.js +0 -178
  455. package/dist/src/run-usage.test.js.map +0 -1
  456. package/dist/src/send-file-event.d.ts +0 -26
  457. package/dist/src/send-file-event.d.ts.map +0 -1
  458. package/dist/src/send-file-event.js +0 -33
  459. package/dist/src/send-file-event.js.map +0 -1
  460. package/dist/src/send-file-event.test.d.ts +0 -2
  461. package/dist/src/send-file-event.test.d.ts.map +0 -1
  462. package/dist/src/send-file-event.test.js +0 -86
  463. package/dist/src/send-file-event.test.js.map +0 -1
  464. package/dist/src/send-file-tool.d.ts +0 -81
  465. package/dist/src/send-file-tool.d.ts.map +0 -1
  466. package/dist/src/send-file-tool.js +0 -363
  467. package/dist/src/send-file-tool.js.map +0 -1
  468. package/dist/src/send-file-tool.test.d.ts +0 -2
  469. package/dist/src/send-file-tool.test.d.ts.map +0 -1
  470. package/dist/src/send-file-tool.test.js +0 -176
  471. package/dist/src/send-file-tool.test.js.map +0 -1
  472. package/dist/src/send-group-message-tool.d.ts +0 -17
  473. package/dist/src/send-group-message-tool.d.ts.map +0 -1
  474. package/dist/src/send-group-message-tool.js +0 -82
  475. package/dist/src/send-group-message-tool.js.map +0 -1
  476. package/dist/src/send-service.d.ts +0 -83
  477. package/dist/src/send-service.d.ts.map +0 -1
  478. package/dist/src/send-service.js +0 -324
  479. package/dist/src/send-service.js.map +0 -1
  480. package/dist/src/send-service.test.d.ts +0 -2
  481. package/dist/src/send-service.test.d.ts.map +0 -1
  482. package/dist/src/send-service.test.js +0 -40
  483. package/dist/src/send-service.test.js.map +0 -1
  484. package/dist/src/session-env-store.d.ts +0 -55
  485. package/dist/src/session-env-store.d.ts.map +0 -1
  486. package/dist/src/session-env-store.js +0 -328
  487. package/dist/src/session-env-store.js.map +0 -1
  488. package/dist/src/session-env-store.test.d.ts +0 -2
  489. package/dist/src/session-env-store.test.d.ts.map +0 -1
  490. package/dist/src/session-env-store.test.js +0 -151
  491. package/dist/src/session-env-store.test.js.map +0 -1
  492. package/dist/src/session-group-prompt.d.ts +0 -34
  493. package/dist/src/session-group-prompt.d.ts.map +0 -1
  494. package/dist/src/session-group-prompt.js +0 -101
  495. package/dist/src/session-group-prompt.js.map +0 -1
  496. package/dist/src/session-group-prompt.test.d.ts +0 -2
  497. package/dist/src/session-group-prompt.test.d.ts.map +0 -1
  498. package/dist/src/session-group-prompt.test.js +0 -72
  499. package/dist/src/session-group-prompt.test.js.map +0 -1
  500. package/dist/src/session-im-context.d.ts +0 -15
  501. package/dist/src/session-im-context.d.ts.map +0 -1
  502. package/dist/src/session-im-context.js +0 -54
  503. package/dist/src/session-im-context.js.map +0 -1
  504. package/dist/src/session-model-fallback.d.ts +0 -13
  505. package/dist/src/session-model-fallback.d.ts.map +0 -1
  506. package/dist/src/session-model-fallback.js +0 -24
  507. package/dist/src/session-model-fallback.js.map +0 -1
  508. package/dist/src/subagent-monitor.d.ts +0 -45
  509. package/dist/src/subagent-monitor.d.ts.map +0 -1
  510. package/dist/src/subagent-monitor.js +0 -498
  511. package/dist/src/subagent-monitor.js.map +0 -1
  512. package/dist/src/subagent-monitor.test.d.ts +0 -2
  513. package/dist/src/subagent-monitor.test.d.ts.map +0 -1
  514. package/dist/src/subagent-monitor.test.js +0 -335
  515. package/dist/src/subagent-monitor.test.js.map +0 -1
  516. package/dist/src/sync-mapping-types.d.ts +0 -220
  517. package/dist/src/sync-mapping-types.d.ts.map +0 -1
  518. package/dist/src/sync-mapping-types.js +0 -55
  519. package/dist/src/sync-mapping-types.js.map +0 -1
  520. package/dist/src/sync-service-client.d.ts +0 -29
  521. package/dist/src/sync-service-client.d.ts.map +0 -1
  522. package/dist/src/sync-service-client.js +0 -72
  523. package/dist/src/sync-service-client.js.map +0 -1
  524. package/dist/src/thinking-ws-progress.d.ts +0 -24
  525. package/dist/src/thinking-ws-progress.d.ts.map +0 -1
  526. package/dist/src/thinking-ws-progress.js +0 -45
  527. package/dist/src/thinking-ws-progress.js.map +0 -1
  528. package/dist/src/thinking-ws-progress.test.d.ts +0 -2
  529. package/dist/src/thinking-ws-progress.test.d.ts.map +0 -1
  530. package/dist/src/thinking-ws-progress.test.js +0 -38
  531. package/dist/src/thinking-ws-progress.test.js.map +0 -1
  532. package/dist/src/tool-event-adapter.d.ts +0 -31
  533. package/dist/src/tool-event-adapter.d.ts.map +0 -1
  534. package/dist/src/tool-event-adapter.js +0 -83
  535. package/dist/src/tool-event-adapter.js.map +0 -1
  536. package/dist/src/tool-event-adapter.test.d.ts +0 -2
  537. package/dist/src/tool-event-adapter.test.d.ts.map +0 -1
  538. package/dist/src/tool-event-adapter.test.js +0 -93
  539. package/dist/src/tool-event-adapter.test.js.map +0 -1
  540. package/dist/src/tool-json-result.d.ts +0 -14
  541. package/dist/src/tool-json-result.d.ts.map +0 -1
  542. package/dist/src/tool-json-result.js +0 -20
  543. package/dist/src/tool-json-result.js.map +0 -1
  544. package/dist/src/turn-agent-event-subscription.d.ts +0 -29
  545. package/dist/src/turn-agent-event-subscription.d.ts.map +0 -1
  546. package/dist/src/turn-agent-event-subscription.js +0 -289
  547. package/dist/src/turn-agent-event-subscription.js.map +0 -1
  548. package/dist/src/turn-agent-event-subscription.test.d.ts +0 -2
  549. package/dist/src/turn-agent-event-subscription.test.d.ts.map +0 -1
  550. package/dist/src/turn-agent-event-subscription.test.js +0 -165
  551. package/dist/src/turn-agent-event-subscription.test.js.map +0 -1
  552. package/dist/src/turn-deliver-buffer.d.ts +0 -60
  553. package/dist/src/turn-deliver-buffer.d.ts.map +0 -1
  554. package/dist/src/turn-deliver-buffer.js +0 -133
  555. package/dist/src/turn-deliver-buffer.js.map +0 -1
  556. package/dist/src/turn-deliver-buffer.test.d.ts +0 -2
  557. package/dist/src/turn-deliver-buffer.test.d.ts.map +0 -1
  558. package/dist/src/turn-deliver-buffer.test.js +0 -184
  559. package/dist/src/turn-deliver-buffer.test.js.map +0 -1
  560. package/dist/src/turn-end-controller.d.ts +0 -61
  561. package/dist/src/turn-end-controller.d.ts.map +0 -1
  562. package/dist/src/turn-end-controller.js +0 -239
  563. package/dist/src/turn-end-controller.js.map +0 -1
  564. package/dist/src/turn-end-controller.test.d.ts +0 -2
  565. package/dist/src/turn-end-controller.test.d.ts.map +0 -1
  566. package/dist/src/turn-end-controller.test.js +0 -97
  567. package/dist/src/turn-end-controller.test.js.map +0 -1
  568. package/dist/src/types.d.ts +0 -433
  569. package/dist/src/types.d.ts.map +0 -1
  570. package/dist/src/types.js +0 -32
  571. package/dist/src/types.js.map +0 -1
  572. package/dist/src/user-facing-errors.d.ts +0 -32
  573. package/dist/src/user-facing-errors.d.ts.map +0 -1
  574. package/dist/src/user-facing-errors.js +0 -120
  575. package/dist/src/user-facing-errors.js.map +0 -1
  576. package/dist/src/user-facing-errors.test.d.ts +0 -2
  577. package/dist/src/user-facing-errors.test.d.ts.map +0 -1
  578. package/dist/src/user-facing-errors.test.js +0 -102
  579. package/dist/src/user-facing-errors.test.js.map +0 -1
  580. package/dist/src/workspace-event-protocol.d.ts +0 -3
  581. package/dist/src/workspace-event-protocol.d.ts.map +0 -1
  582. package/dist/src/workspace-event-protocol.js +0 -3
  583. package/dist/src/workspace-event-protocol.js.map +0 -1
  584. package/dist/src/workspace-event-scheduler.d.ts +0 -54
  585. package/dist/src/workspace-event-scheduler.d.ts.map +0 -1
  586. package/dist/src/workspace-event-scheduler.js +0 -131
  587. package/dist/src/workspace-event-scheduler.js.map +0 -1
  588. package/dist/src/workspace-event-scheduler.test.d.ts +0 -2
  589. package/dist/src/workspace-event-scheduler.test.d.ts.map +0 -1
  590. package/dist/src/workspace-event-scheduler.test.js +0 -157
  591. package/dist/src/workspace-event-scheduler.test.js.map +0 -1
  592. package/dist/src/workspace-event.d.ts +0 -28
  593. package/dist/src/workspace-event.d.ts.map +0 -1
  594. package/dist/src/workspace-event.js +0 -674
  595. package/dist/src/workspace-event.js.map +0 -1
  596. package/dist/src/workspace-event.test.d.ts +0 -2
  597. package/dist/src/workspace-event.test.d.ts.map +0 -1
  598. package/dist/src/workspace-event.test.js +0 -265
  599. package/dist/src/workspace-event.test.js.map +0 -1
  600. package/dist/src/ws-inbound-schema.d.ts +0 -14
  601. package/dist/src/ws-inbound-schema.d.ts.map +0 -1
  602. package/dist/src/ws-inbound-schema.js +0 -68
  603. package/dist/src/ws-inbound-schema.js.map +0 -1
  604. package/dist/src/ws-inbound-schema.test.d.ts +0 -2
  605. package/dist/src/ws-inbound-schema.test.d.ts.map +0 -1
  606. package/dist/src/ws-inbound-schema.test.js +0 -58
  607. package/dist/src/ws-inbound-schema.test.js.map +0 -1
  608. package/dist/src/ws-run-event-unmapped.d.ts +0 -10
  609. package/dist/src/ws-run-event-unmapped.d.ts.map +0 -1
  610. package/dist/src/ws-run-event-unmapped.js +0 -16
  611. package/dist/src/ws-run-event-unmapped.js.map +0 -1
  612. package/dist/src/ws-run-event-unmapped.test.d.ts +0 -2
  613. package/dist/src/ws-run-event-unmapped.test.d.ts.map +0 -1
  614. package/dist/src/ws-run-event-unmapped.test.js +0 -15
  615. package/dist/src/ws-run-event-unmapped.test.js.map +0 -1
@@ -1,131 +0,0 @@
1
- import assert from "node:assert/strict";
2
- import { describe, it, beforeEach } from "node:test";
3
- import { resetPlanWsRegistryForTest, setPlanWsClient } from "./plan-ws-registry.js";
4
- import { sendPlanStat, toWirePlan } from "./plan-stat-event.js";
5
- function makePlan(overrides = {}) {
6
- return {
7
- planId: "plan-1",
8
- goal: "迁移配置到新版本",
9
- createdAt: "2026-07-27T00:00:00.000Z",
10
- updatedAt: "2026-07-27T00:00:00.000Z",
11
- tasks: [{ title: "t1", status: "pending" }],
12
- ...overrides,
13
- };
14
- }
15
- function makeRecordingClient() {
16
- const calls = [];
17
- const client = {
18
- start: async () => { },
19
- streamProgress: async () => { },
20
- streamUsage: async () => { },
21
- sendEvent: async (opts) => {
22
- calls.push(opts);
23
- },
24
- end: async () => { },
25
- };
26
- return { client, calls };
27
- }
28
- beforeEach(() => {
29
- resetPlanWsRegistryForTest();
30
- });
31
- describe("sendPlanStat: 正常路径", () => {
32
- it("plan 带 origin + WS 已登记 → sendEvent 被调用一次,event/source/planId 正确", () => {
33
- const { client, calls } = makeRecordingClient();
34
- setPlanWsClient("g-1", client, "msg-1");
35
- const plan = makePlan({ origin: { channel: "xg_cwork_im", to: "g-1" } });
36
- sendPlanStat({ plan, source: "tool" });
37
- assert.equal(calls.length, 1);
38
- assert.equal(calls[0].event, "PLAN_STAT");
39
- assert.equal(calls[0].groupId, "g-1");
40
- assert.equal(calls[0].replyToMsgId, "msg-1");
41
- assert.equal(calls[0].data.source, "tool");
42
- assert.equal(calls[0].data.plan.planId, plan.planId);
43
- });
44
- });
45
- describe("sendPlanStat: 🔴 payload 不含 origin(防泄漏)", () => {
46
- it("data.plan.origin 应为 undefined", () => {
47
- const { client, calls } = makeRecordingClient();
48
- setPlanWsClient("g-1", client, "msg-1");
49
- const plan = makePlan({
50
- origin: { channel: "xg_cwork_im", to: "g-1", sessionKey: "sess-secret" },
51
- });
52
- sendPlanStat({ plan, source: "tool" });
53
- assert.equal(calls.length, 1);
54
- assert.equal(calls[0].data.plan.origin, undefined);
55
- });
56
- });
57
- describe("sendPlanStat: 🔴 不 mutate 入参", () => {
58
- it("调用后原 plan 对象仍然带着 origin", () => {
59
- const { client } = makeRecordingClient();
60
- setPlanWsClient("g-1", client, "msg-1");
61
- const origin = { channel: "xg_cwork_im", to: "g-1" };
62
- const plan = makePlan({ origin });
63
- sendPlanStat({ plan, source: "tool" });
64
- assert.deepEqual(plan.origin, origin);
65
- });
66
- it("toWirePlan 本身不 mutate 入参,剥离 origin 并保留 status/cancelledAt", () => {
67
- const origin = { channel: "xg_cwork_im", to: "g-1" };
68
- const plan = makePlan({
69
- origin,
70
- status: "cancelled",
71
- cancelledAt: "2026-07-31T01:02:03.000Z",
72
- });
73
- const wire = toWirePlan(plan);
74
- assert.deepEqual(plan.origin, origin, "入参 plan 不受影响");
75
- assert.equal(wire.origin, undefined, "返回值不含 origin");
76
- assert.equal(wire.planId, plan.planId);
77
- assert.equal(wire.status, "cancelled");
78
- assert.equal(wire.cancelledAt, "2026-07-31T01:02:03.000Z");
79
- });
80
- });
81
- describe("sendPlanStat: 降级路径", () => {
82
- it("plan 无 origin(旧数据)→ 不发、不抛", () => {
83
- const { client, calls } = makeRecordingClient();
84
- setPlanWsClient("g-1", client, "msg-1");
85
- const plan = makePlan();
86
- assert.doesNotThrow(() => sendPlanStat({ plan, source: "tool" }));
87
- assert.equal(calls.length, 0);
88
- });
89
- it("plan.origin.channel 不是 xg_cwork_im → 不发、不抛", () => {
90
- const { client, calls } = makeRecordingClient();
91
- setPlanWsClient("g-1", client, "msg-1");
92
- const plan = makePlan({ origin: { channel: "some_other_channel", to: "g-1" } });
93
- assert.doesNotThrow(() => sendPlanStat({ plan, source: "tool" }));
94
- assert.equal(calls.length, 0);
95
- });
96
- it("WS 未登记该 groupId → 不发、不抛", () => {
97
- const plan = makePlan({ origin: { channel: "xg_cwork_im", to: "g-never-registered" } });
98
- assert.doesNotThrow(() => sendPlanStat({ plan, source: "tool" }));
99
- });
100
- });
101
- describe("sendPlanStat: 🔴 fire-and-forget 红线", () => {
102
- it("sendEvent 返回 rejected Promise → 不抛出到调用方,函数同步返回", () => {
103
- const client = {
104
- start: async () => { },
105
- streamProgress: async () => { },
106
- streamUsage: async () => { },
107
- sendEvent: async () => {
108
- throw new Error("network down");
109
- },
110
- end: async () => { },
111
- };
112
- setPlanWsClient("g-1", client, "msg-1");
113
- const plan = makePlan({ origin: { channel: "xg_cwork_im", to: "g-1" } });
114
- assert.doesNotThrow(() => sendPlanStat({ plan, source: "tool" }));
115
- });
116
- it("sendEvent 返回永不 resolve 的 Promise → 函数仍立即返回", () => {
117
- const client = {
118
- start: async () => { },
119
- streamProgress: async () => { },
120
- streamUsage: async () => { },
121
- sendEvent: () => new Promise(() => { }),
122
- end: async () => { },
123
- };
124
- setPlanWsClient("g-1", client, "msg-1");
125
- const plan = makePlan({ origin: { channel: "xg_cwork_im", to: "g-1" } });
126
- // 若 sendPlanStat 内部 await 了 sendEvent,这行会挂起整个测试进程(超时失败)。
127
- const result = sendPlanStat({ plan, source: "tool" });
128
- assert.equal(result, undefined);
129
- });
130
- });
131
- //# sourceMappingURL=plan-stat-event.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-stat-event.test.js","sourceRoot":"","sources":["../../src/plan-stat-event.test.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- import type { Plan, PlanSummary } from "@xgjktech/xg-openclaw-shared";
2
- /** 注入 stateDir(来自 api.runtime.state.resolveStateDir())。register(api) 时调用一次。 */
3
- export declare function setPlanStateDir(dir: string): void;
4
- /** 测试用:重置模块级缓存与 stateDir */
5
- export declare function resetPlanStoreAccessForTest(): void;
6
- /** 插件卸载/重载时释放计划库只读句柄与 stateDir(shared 句柄无 close,释放引用即可)。 */
7
- export declare function disposePlanStore(): void;
8
- /**
9
- * 按 planId 反查完整计划。
10
- * 库不存在 / 打开失败 / 读取异常 → 返回 undefined 并记 warn 日志,绝不抛。
11
- */
12
- export declare function getPlanById(planId: string): Plan | undefined;
13
- /**
14
- * 列出全部计划摘要(重启恢复用)。
15
- * 异常同上 → 返回空数组,绝不抛。
16
- */
17
- export declare function listPlanSummaries(): PlanSummary[];
18
- /**
19
- * 按来源会话(channel + to)反查全量 plan(WS 快照用)。
20
- * shared 侧只读实现已内置"旧库缺 origin 列 → 返回 []"的探测降级;
21
- * 这里叠加本文件既有的句柄级降级纪律:拿不到句柄 / 查询异常 → 记 warn、返回 []、绝不抛、
22
- * 失败时清空句柄缓存(与 getPlanById 同款,供后续调用重试恢复)。
23
- */
24
- export declare function listPlansByOrigin(channel: string, to: string): Plan[];
25
- //# sourceMappingURL=plan-store-access.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-store-access.d.ts","sourceRoot":"","sources":["../../src/plan-store-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAWtE,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED,4BAA4B;AAC5B,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAED,4DAA4D;AAC5D,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC;AAyBD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAY5D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,WAAW,EAAE,CAYjD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,CAYrE"}
@@ -1,100 +0,0 @@
1
- import { openPlanStoreReadonly, resolvePlanDbPath } from "@xgjktech/xg-openclaw-shared";
2
- const LOG_PREFIX = "[xg_cwork_im] [plan-store]";
3
- let stateDir;
4
- let handle;
5
- let warnedNoStateDir = false;
6
- /** 注入 stateDir(来自 api.runtime.state.resolveStateDir())。register(api) 时调用一次。 */
7
- export function setPlanStateDir(dir) {
8
- stateDir = dir;
9
- handle = undefined;
10
- warnedNoStateDir = false;
11
- }
12
- /** 测试用:重置模块级缓存与 stateDir */
13
- export function resetPlanStoreAccessForTest() {
14
- disposePlanStore();
15
- }
16
- /** 插件卸载/重载时释放计划库只读句柄与 stateDir(shared 句柄无 close,释放引用即可)。 */
17
- export function disposePlanStore() {
18
- stateDir = undefined;
19
- handle = undefined;
20
- warnedNoStateDir = false;
21
- }
22
- function getHandle() {
23
- if (handle) {
24
- return handle;
25
- }
26
- if (!stateDir) {
27
- if (!warnedNoStateDir) {
28
- console.warn(`${LOG_PREFIX} stateDir 未设置,无法打开计划库`);
29
- warnedNoStateDir = true;
30
- }
31
- return undefined;
32
- }
33
- let dbPath = "<unresolved>";
34
- try {
35
- dbPath = resolvePlanDbPath(stateDir);
36
- handle = openPlanStoreReadonly(dbPath);
37
- return handle;
38
- }
39
- catch (cause) {
40
- console.warn(`${LOG_PREFIX} 打开计划库失败 dbPath=${dbPath} 原因=${String(cause)}`);
41
- return undefined;
42
- }
43
- }
44
- /**
45
- * 按 planId 反查完整计划。
46
- * 库不存在 / 打开失败 / 读取异常 → 返回 undefined 并记 warn 日志,绝不抛。
47
- */
48
- export function getPlanById(planId) {
49
- const h = getHandle();
50
- if (!h) {
51
- return undefined;
52
- }
53
- try {
54
- return h.get(planId);
55
- }
56
- catch (cause) {
57
- console.warn(`${LOG_PREFIX} 读取 plan 失败 planId=${planId} 原因=${String(cause)}`);
58
- handle = undefined;
59
- return undefined;
60
- }
61
- }
62
- /**
63
- * 列出全部计划摘要(重启恢复用)。
64
- * 异常同上 → 返回空数组,绝不抛。
65
- */
66
- export function listPlanSummaries() {
67
- const h = getHandle();
68
- if (!h) {
69
- return [];
70
- }
71
- try {
72
- return h.list();
73
- }
74
- catch (cause) {
75
- console.warn(`${LOG_PREFIX} 列出 plan 列表失败 原因=${String(cause)}`);
76
- handle = undefined;
77
- return [];
78
- }
79
- }
80
- /**
81
- * 按来源会话(channel + to)反查全量 plan(WS 快照用)。
82
- * shared 侧只读实现已内置"旧库缺 origin 列 → 返回 []"的探测降级;
83
- * 这里叠加本文件既有的句柄级降级纪律:拿不到句柄 / 查询异常 → 记 warn、返回 []、绝不抛、
84
- * 失败时清空句柄缓存(与 getPlanById 同款,供后续调用重试恢复)。
85
- */
86
- export function listPlansByOrigin(channel, to) {
87
- const h = getHandle();
88
- if (!h) {
89
- return [];
90
- }
91
- try {
92
- return h.listPlansByOrigin({ channel, to });
93
- }
94
- catch (cause) {
95
- console.warn(`${LOG_PREFIX} 按 origin 列出 plan 失败 channel=${channel} to=${to} 原因=${String(cause)}`);
96
- handle = undefined;
97
- return [];
98
- }
99
- }
100
- //# sourceMappingURL=plan-store-access.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-store-access.js","sourceRoot":"","sources":["../../src/plan-store-access.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=plan-store-access.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-store-access.test.d.ts","sourceRoot":"","sources":["../../src/plan-store-access.test.ts"],"names":[],"mappings":""}
@@ -1,207 +0,0 @@
1
- import assert from "node:assert/strict";
2
- import { mkdtempSync, rmSync } from "node:fs";
3
- import { tmpdir } from "node:os";
4
- import { join } from "node:path";
5
- import { DatabaseSync } from "node:sqlite";
6
- import { after, afterEach, beforeEach, describe, it } from "node:test";
7
- import { resolvePlanDbPath, SqlitePlanStore } from "@xgjktech/xg-openclaw-shared";
8
- import { getPlanById, listPlanSummaries, listPlansByOrigin, resetPlanStoreAccessForTest, setPlanStateDir, } from "./plan-store-access.js";
9
- const tempDirs = [];
10
- function makeTempStateDir() {
11
- const dir = mkdtempSync(join(tmpdir(), "xg-plan-store-access-test-"));
12
- tempDirs.push(dir);
13
- return dir;
14
- }
15
- function makePlan(overrides = {}) {
16
- return {
17
- planId: "plan-1",
18
- goal: "迁移配置到新版本",
19
- createdAt: "2026-07-27T00:00:00.000Z",
20
- updatedAt: "2026-07-27T00:00:00.000Z",
21
- tasks: [],
22
- ...overrides,
23
- };
24
- }
25
- beforeEach(() => {
26
- resetPlanStoreAccessForTest();
27
- });
28
- afterEach(() => {
29
- resetPlanStoreAccessForTest();
30
- });
31
- after(() => {
32
- for (const dir of tempDirs) {
33
- rmSync(dir, { recursive: true, force: true });
34
- }
35
- });
36
- describe("getPlanById / listPlanSummaries: 缺库降级 (F4)", () => {
37
- it("returns undefined / [] without throwing when plans.sqlite does not exist", () => {
38
- const stateDir = makeTempStateDir();
39
- setPlanStateDir(stateDir);
40
- assert.equal(getPlanById("x"), undefined);
41
- assert.deepEqual(listPlanSummaries(), []);
42
- });
43
- });
44
- describe("getPlanById: 后建库恢复 (F5)", () => {
45
- it("recovers once the harness plugin later creates and writes the db, without resetting module state", () => {
46
- const stateDir = makeTempStateDir();
47
- setPlanStateDir(stateDir);
48
- // T1: 库不存在时先调用一次,期望降级为 undefined 且不缓存失败
49
- assert.equal(getPlanById("plan-1"), undefined);
50
- // T2: harness 侧后建库并写入
51
- const dbPath = resolvePlanDbPath(stateDir);
52
- const writer = new SqlitePlanStore(dbPath);
53
- writer.set(makePlan({ planId: "plan-1", goal: "后建库恢复" }));
54
- writer.close();
55
- // T3: 不重置模块状态,再次调用应能读到(验证未缓存"打开失败")
56
- const plan = getPlanById("plan-1");
57
- assert.ok(plan);
58
- assert.equal(plan.planId, "plan-1");
59
- assert.equal(plan.goal, "后建库恢复");
60
- });
61
- });
62
- describe("getPlanById: 正常反查", () => {
63
- it("round-trips a plan with blocked task (note) and steps", () => {
64
- const stateDir = makeTempStateDir();
65
- setPlanStateDir(stateDir);
66
- const dbPath = resolvePlanDbPath(stateDir);
67
- const writer = new SqlitePlanStore(dbPath);
68
- writer.set(makePlan({
69
- planId: "plan-2",
70
- goal: "带阻塞任务的计划",
71
- tasks: [
72
- {
73
- title: "备份旧配置",
74
- status: "blocked",
75
- note: "缺少权限",
76
- steps: [{ text: "导出 json", status: "completed" }],
77
- },
78
- { title: "校验数据", status: "pending" },
79
- ],
80
- }));
81
- writer.close();
82
- const plan = getPlanById("plan-2");
83
- assert.ok(plan);
84
- assert.equal(plan.goal, "带阻塞任务的计划");
85
- assert.equal(plan.tasks.length, 2);
86
- assert.equal(plan.tasks[0].status, "blocked");
87
- assert.equal(plan.tasks[0].note, "缺少权限");
88
- assert.deepEqual(plan.tasks[0].steps, [{ text: "导出 json", status: "completed" }]);
89
- assert.equal(plan.tasks[1].status, "pending");
90
- });
91
- it("returns undefined for an unknown planId (normal case, not an error)", () => {
92
- const stateDir = makeTempStateDir();
93
- setPlanStateDir(stateDir);
94
- const dbPath = resolvePlanDbPath(stateDir);
95
- const writer = new SqlitePlanStore(dbPath);
96
- writer.set(makePlan({ planId: "plan-exists" }));
97
- writer.close();
98
- assert.equal(getPlanById("plan-does-not-exist"), undefined);
99
- });
100
- });
101
- describe("listPlanSummaries", () => {
102
- it("lists all plans with correct taskCounts", () => {
103
- const stateDir = makeTempStateDir();
104
- setPlanStateDir(stateDir);
105
- const dbPath = resolvePlanDbPath(stateDir);
106
- const writer = new SqlitePlanStore(dbPath);
107
- writer.set(makePlan({
108
- planId: "plan-a",
109
- goal: "计划 A",
110
- tasks: [
111
- { title: "t1", status: "completed" },
112
- { title: "t2", status: "blocked", note: "n" },
113
- { title: "t3", status: "in_progress" },
114
- { title: "t4", status: "pending" },
115
- ],
116
- }));
117
- writer.set(makePlan({
118
- planId: "plan-b",
119
- goal: "计划 B",
120
- tasks: [{ title: "t1", status: "completed" }],
121
- }));
122
- writer.close();
123
- const summaries = listPlanSummaries();
124
- assert.equal(summaries.length, 2);
125
- const byId = new Map(summaries.map((s) => [s.planId, s]));
126
- const a = byId.get("plan-a");
127
- assert.ok(a);
128
- assert.deepEqual(a.taskCounts, { total: 4, completed: 1, blocked: 1, inProgress: 1 });
129
- const b = byId.get("plan-b");
130
- assert.ok(b);
131
- assert.deepEqual(b.taskCounts, { total: 1, completed: 1, blocked: 0, inProgress: 0 });
132
- });
133
- });
134
- describe("未设置 stateDir", () => {
135
- it("getPlanById returns undefined without throwing", () => {
136
- assert.equal(getPlanById("x"), undefined);
137
- assert.deepEqual(listPlanSummaries(), []);
138
- });
139
- });
140
- /** 手工建一个 v1(无 origin 列)的 plans 表,模拟旧库升级前的真实状态(同 shared TASK-2x-1 手法)。 */
141
- function createV1Schema(dbPath) {
142
- const db = new DatabaseSync(dbPath);
143
- db.exec(`
144
- CREATE TABLE IF NOT EXISTS plans (
145
- plan_id TEXT PRIMARY KEY,
146
- goal TEXT NOT NULL,
147
- created_at TEXT NOT NULL,
148
- updated_at TEXT NOT NULL,
149
- doc TEXT NOT NULL
150
- ) STRICT;
151
- `);
152
- db.exec("CREATE INDEX IF NOT EXISTS idx_plans_updated_at ON plans(updated_at);");
153
- db.exec("PRAGMA user_version = 1;");
154
- db.close();
155
- }
156
- function insertV1Row(dbPath, plan) {
157
- const db = new DatabaseSync(dbPath);
158
- db.prepare(`INSERT INTO plans (plan_id, goal, created_at, updated_at, doc)
159
- VALUES (@planId, @goal, @createdAt, @updatedAt, @doc)`).run({
160
- planId: plan.planId,
161
- goal: plan.goal,
162
- createdAt: plan.createdAt,
163
- updatedAt: plan.updatedAt,
164
- doc: JSON.stringify(plan),
165
- });
166
- db.close();
167
- }
168
- describe("listPlansByOrigin", () => {
169
- it("真实临时库 + 多条 plan → 只返回匹配的", () => {
170
- const stateDir = makeTempStateDir();
171
- setPlanStateDir(stateDir);
172
- const dbPath = resolvePlanDbPath(stateDir);
173
- const writer = new SqlitePlanStore(dbPath);
174
- writer.set(makePlan({
175
- planId: "plan-g1",
176
- origin: { channel: "xg_cwork_im", to: "g-1" },
177
- }));
178
- writer.set(makePlan({
179
- planId: "plan-g2",
180
- origin: { channel: "xg_cwork_im", to: "g-2" },
181
- }));
182
- writer.set(makePlan({ planId: "plan-no-origin" }));
183
- writer.close();
184
- const results = listPlansByOrigin("xg_cwork_im", "g-1");
185
- assert.equal(results.length, 1);
186
- assert.equal(results[0].planId, "plan-g1");
187
- });
188
- it("🔴 旧版库(无 origin 列,手工建 v1 表)→ 返回 [] 不抛", () => {
189
- const stateDir = makeTempStateDir();
190
- setPlanStateDir(stateDir);
191
- const dbPath = resolvePlanDbPath(stateDir);
192
- createV1Schema(dbPath);
193
- insertV1Row(dbPath, makePlan({ planId: "plan-old" }));
194
- assert.doesNotThrow(() => {
195
- const results = listPlansByOrigin("xg_cwork_im", "g-1");
196
- assert.deepEqual(results, []);
197
- });
198
- });
199
- it("缺库 → 返回 [] 不抛", () => {
200
- const stateDir = makeTempStateDir();
201
- setPlanStateDir(stateDir);
202
- assert.doesNotThrow(() => {
203
- assert.deepEqual(listPlansByOrigin("xg_cwork_im", "g-1"), []);
204
- });
205
- });
206
- });
207
- //# sourceMappingURL=plan-store-access.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-store-access.test.js","sourceRoot":"","sources":["../../src/plan-store-access.test.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import type { OpenClawPluginApi } from "openclaw/plugin-sdk/channel-plugin-common";
2
- import type { ActionDispatchEvent } from "./action-store-access.js";
3
- export type AgentToolResultMiddleware = Parameters<OpenClawPluginApi["registerAgentToolResultMiddleware"]>[0];
4
- export interface PlanMiddlewareDeps {
5
- /** 按 eventId 反查 action 的权威状态。 */
6
- getActionById: (eventId: string) => ActionDispatchEvent | undefined;
7
- /** 推送 Action Dispatch 事件(内部 fire-and-forget)。 */
8
- sendActionRunEvent: (action: ActionDispatchEvent) => void;
9
- }
10
- /**
11
- * 创建 xg_action_dispatch 工具结果的 middleware handler。
12
- *
13
- * 三条硬约束(沿用 RULING-1 红线):
14
- * 1. 绝不抛异常:全身 try/catch,捕获后记 warn 并正常返回。
15
- * 2. 绝不修改结果:恒返回 void,不 mutate event.result。
16
- * 3. 不在 handler 内 await 网络 IO。
17
- */
18
- export declare function createPlanToolResultMiddleware(deps: PlanMiddlewareDeps): AgentToolResultMiddleware;
19
- //# sourceMappingURL=plan-tool-middleware.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-tool-middleware.d.ts","sourceRoot":"","sources":["../../src/plan-tool-middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAC9C,iBAAiB,CAAC,mCAAmC,CAAC,CACzD,CAAC,CAAC,CAAC,CAAC;AAML,MAAM,WAAW,kBAAkB;IAC/B,iCAAiC;IACjC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,mBAAmB,GAAG,SAAS,CAAC;IACpE,iDAAiD;IACjD,kBAAkB,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAC7D;AA+BD;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,kBAAkB,GAAG,yBAAyB,CAuBlG"}
@@ -1,63 +0,0 @@
1
- const ACTION_TOOL_NAME = "xg_action_dispatch";
2
- const LOG_PREFIX = "[xg_cwork_im] [action-tool-middleware]";
3
- function extractActionEventId(event) {
4
- const values = [event.result.details, safeJsonParse(firstTextContent(event.result) ?? "")];
5
- for (const value of values) {
6
- if (typeof value === "object" && value !== null) {
7
- const result = value;
8
- if (result.ok === true && typeof result.eventId === "string" && result.eventId.trim() !== "") {
9
- return result.eventId;
10
- }
11
- }
12
- }
13
- return undefined;
14
- }
15
- function firstTextContent(result) {
16
- const first = result.content[0];
17
- if (!first || first.type !== "text" || typeof first.text !== "string") {
18
- return undefined;
19
- }
20
- return first.text;
21
- }
22
- function safeJsonParse(text) {
23
- try {
24
- return JSON.parse(text);
25
- }
26
- catch {
27
- return undefined;
28
- }
29
- }
30
- /**
31
- * 创建 xg_action_dispatch 工具结果的 middleware handler。
32
- *
33
- * 三条硬约束(沿用 RULING-1 红线):
34
- * 1. 绝不抛异常:全身 try/catch,捕获后记 warn 并正常返回。
35
- * 2. 绝不修改结果:恒返回 void,不 mutate event.result。
36
- * 3. 不在 handler 内 await 网络 IO。
37
- */
38
- export function createPlanToolResultMiddleware(deps) {
39
- return (event, _ctx) => {
40
- try {
41
- if (event.toolName !== ACTION_TOOL_NAME) {
42
- return;
43
- }
44
- const eventId = extractActionEventId(event);
45
- if (!eventId) {
46
- console.warn(`${LOG_PREFIX} 无法从 action 工具返回中解析 eventId toolCallId=${event.toolCallId}`);
47
- return;
48
- }
49
- const action = deps.getActionById(eventId);
50
- if (!action) {
51
- console.warn(`${LOG_PREFIX} 反查不到 action,跳过 toolCallId=${event.toolCallId} eventId=${eventId}`);
52
- return;
53
- }
54
- deps.sendActionRunEvent(action);
55
- return;
56
- }
57
- catch (err) {
58
- console.warn(`${LOG_PREFIX} handler 内部异常,已吞: ${String(err)}`);
59
- return;
60
- }
61
- };
62
- }
63
- //# sourceMappingURL=plan-tool-middleware.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-tool-middleware.js","sourceRoot":"","sources":["../../src/plan-tool-middleware.ts"],"names":[],"mappings":"AAOA,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AAE9C,MAAM,UAAU,GAAG,wCAAwC,CAAC;AAS5D,SAAS,oBAAoB,CAAC,KAAwF;IAClH,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3F,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,KAAgC,CAAC;YAChD,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC3F,OAAO,MAAM,CAAC,OAAO,CAAC;YAC1B,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA2D;IACjF,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpE,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC;AACtB,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IAC/B,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,SAAS,CAAC;IACrB,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAwB;IACnE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACnB,IAAI,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;gBACtC,OAAO;YACX,CAAC;YACD,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,0CAA0C,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;gBACxF,OAAO;YACX,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,8BAA8B,KAAK,CAAC,UAAU,YAAY,OAAO,EAAE,CAAC,CAAC;gBAC/F,OAAO;YACX,CAAC;YACD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,OAAO;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,qBAAqB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9D,OAAO;QACX,CAAC;IACL,CAAC,CAAC;AACN,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=plan-tool-middleware.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-tool-middleware.test.d.ts","sourceRoot":"","sources":["../../src/plan-tool-middleware.test.ts"],"names":[],"mappings":""}