@rudderhq/server 0.7.14 → 0.7.16

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 (280) hide show
  1. package/dist/agent-runtimes/http/execute.test.d.ts +2 -0
  2. package/dist/agent-runtimes/http/execute.test.d.ts.map +1 -0
  3. package/dist/agent-runtimes/http/execute.test.js +43 -0
  4. package/dist/agent-runtimes/http/execute.test.js.map +1 -0
  5. package/dist/agent-runtimes/process/execute.d.ts.map +1 -1
  6. package/dist/agent-runtimes/process/execute.js +20 -3
  7. package/dist/agent-runtimes/process/execute.js.map +1 -1
  8. package/dist/agent-runtimes/process/execute.test.d.ts +2 -0
  9. package/dist/agent-runtimes/process/execute.test.d.ts.map +1 -0
  10. package/dist/agent-runtimes/process/execute.test.js +57 -0
  11. package/dist/agent-runtimes/process/execute.test.js.map +1 -0
  12. package/dist/agent-runtimes/registry.d.ts.map +1 -1
  13. package/dist/agent-runtimes/registry.js +3 -1
  14. package/dist/agent-runtimes/registry.js.map +1 -1
  15. package/dist/bootstrap/create-http-app.d.ts.map +1 -1
  16. package/dist/bootstrap/create-http-app.js +9 -3
  17. package/dist/bootstrap/create-http-app.js.map +1 -1
  18. package/dist/config.js +4 -4
  19. package/dist/config.js.map +1 -1
  20. package/dist/index.js +2 -2
  21. package/dist/index.js.map +1 -1
  22. package/dist/middleware/error-handler.d.ts.map +1 -1
  23. package/dist/middleware/error-handler.js +10 -2
  24. package/dist/middleware/error-handler.js.map +1 -1
  25. package/dist/middleware/logger.d.ts +3 -0
  26. package/dist/middleware/logger.d.ts.map +1 -1
  27. package/dist/middleware/logger.js +15 -6
  28. package/dist/middleware/logger.js.map +1 -1
  29. package/dist/middleware/logger.test.js +14 -1
  30. package/dist/middleware/logger.test.js.map +1 -1
  31. package/dist/routes/agents.management-routes.d.ts.map +1 -1
  32. package/dist/routes/agents.management-routes.js +51 -1
  33. package/dist/routes/agents.management-routes.js.map +1 -1
  34. package/dist/routes/chats.annotation-routes.d.ts +6 -1
  35. package/dist/routes/chats.annotation-routes.d.ts.map +1 -1
  36. package/dist/routes/chats.annotation-routes.js +40 -7
  37. package/dist/routes/chats.annotation-routes.js.map +1 -1
  38. package/dist/routes/chats.d.ts.map +1 -1
  39. package/dist/routes/chats.js +44 -3
  40. package/dist/routes/chats.js.map +1 -1
  41. package/dist/routes/chats.stream-routes.d.ts.map +1 -1
  42. package/dist/routes/chats.stream-routes.js +122 -18
  43. package/dist/routes/chats.stream-routes.js.map +1 -1
  44. package/dist/routes/issues.js +1 -1
  45. package/dist/routes/issues.js.map +1 -1
  46. package/dist/routes/issues.mutations.d.ts.map +1 -1
  47. package/dist/routes/issues.mutations.js +99 -1
  48. package/dist/routes/issues.mutations.js.map +1 -1
  49. package/dist/routes/orgs.d.ts.map +1 -1
  50. package/dist/routes/orgs.js +1 -0
  51. package/dist/routes/orgs.js.map +1 -1
  52. package/dist/routes/rudder-plugins.js +2 -2
  53. package/dist/routes/rudder-plugins.js.map +1 -1
  54. package/dist/routes/run-intelligence.d.ts.map +1 -1
  55. package/dist/routes/run-intelligence.js +11 -1
  56. package/dist/routes/run-intelligence.js.map +1 -1
  57. package/dist/services/agent-issue-creation.d.ts +1 -0
  58. package/dist/services/agent-issue-creation.d.ts.map +1 -1
  59. package/dist/services/agent-run-context.d.ts +1 -1
  60. package/dist/services/agent-run-context.d.ts.map +1 -1
  61. package/dist/services/agents.d.ts +35 -0
  62. package/dist/services/agents.d.ts.map +1 -1
  63. package/dist/services/automation-chat-output.d.ts +2 -0
  64. package/dist/services/automation-chat-output.d.ts.map +1 -1
  65. package/dist/services/automations.d.ts.map +1 -1
  66. package/dist/services/automations.js +1 -1
  67. package/dist/services/automations.js.map +1 -1
  68. package/dist/services/chat-agent-runs.d.ts +3 -0
  69. package/dist/services/chat-agent-runs.d.ts.map +1 -1
  70. package/dist/services/chat-annotation-copy-lineage.d.ts +2 -0
  71. package/dist/services/chat-annotation-copy-lineage.d.ts.map +1 -1
  72. package/dist/services/chat-assistant.d.ts.map +1 -1
  73. package/dist/services/chat-assistant.js +38 -18
  74. package/dist/services/chat-assistant.js.map +1 -1
  75. package/dist/services/chat-generation-locks.d.ts +3 -1
  76. package/dist/services/chat-generation-locks.d.ts.map +1 -1
  77. package/dist/services/chat-generation-locks.js +3 -1
  78. package/dist/services/chat-generation-locks.js.map +1 -1
  79. package/dist/services/chat-generation-locks.test.js +8 -0
  80. package/dist/services/chat-generation-locks.test.js.map +1 -1
  81. package/dist/services/chat-generation-protocol.d.ts +2 -0
  82. package/dist/services/chat-generation-protocol.d.ts.map +1 -1
  83. package/dist/services/chat-inline-annotation-validation.d.ts.map +1 -1
  84. package/dist/services/chat-inline-annotation-validation.js +10 -3
  85. package/dist/services/chat-inline-annotation-validation.js.map +1 -1
  86. package/dist/services/chat-inline-annotations.test.js +49 -9
  87. package/dist/services/chat-inline-annotations.test.js.map +1 -1
  88. package/dist/services/chat-message-mutation-fingerprint.d.ts +18 -0
  89. package/dist/services/chat-message-mutation-fingerprint.d.ts.map +1 -0
  90. package/dist/services/chat-message-mutation-fingerprint.js +22 -0
  91. package/dist/services/chat-message-mutation-fingerprint.js.map +1 -0
  92. package/dist/services/chat-queued-message-materialization.d.ts +2 -2
  93. package/dist/services/chat-queued-message-materialization.d.ts.map +1 -1
  94. package/dist/services/chat-queued-message-materialization.js +2 -2
  95. package/dist/services/chat-queued-message-materialization.js.map +1 -1
  96. package/dist/services/chats.annotation-persistence.d.ts +3 -0
  97. package/dist/services/chats.annotation-persistence.d.ts.map +1 -1
  98. package/dist/services/chats.annotation-persistence.js +68 -4
  99. package/dist/services/chats.annotation-persistence.js.map +1 -1
  100. package/dist/services/chats.d.ts +24 -0
  101. package/dist/services/chats.d.ts.map +1 -1
  102. package/dist/services/chats.js +30 -1
  103. package/dist/services/chats.js.map +1 -1
  104. package/dist/services/chats.queued-message-create.d.ts +1 -0
  105. package/dist/services/chats.queued-message-create.d.ts.map +1 -1
  106. package/dist/services/chats.queued-message-create.js +2 -2
  107. package/dist/services/chats.queued-message-create.js.map +1 -1
  108. package/dist/services/chats.types.d.ts +3 -1
  109. package/dist/services/chats.types.d.ts.map +1 -1
  110. package/dist/services/delegation-runs.d.ts +41 -0
  111. package/dist/services/delegation-runs.d.ts.map +1 -0
  112. package/dist/services/delegation-runs.js +229 -0
  113. package/dist/services/delegation-runs.js.map +1 -0
  114. package/dist/services/delegation-runs.test.d.ts +2 -0
  115. package/dist/services/delegation-runs.test.d.ts.map +1 -0
  116. package/dist/services/delegation-runs.test.js +373 -0
  117. package/dist/services/delegation-runs.test.js.map +1 -0
  118. package/dist/services/integrations/feishu/runtime.d.ts.map +1 -1
  119. package/dist/services/integrations/feishu/runtime.js +69 -23
  120. package/dist/services/integrations/feishu/runtime.js.map +1 -1
  121. package/dist/services/issues.d.ts.map +1 -1
  122. package/dist/services/issues.helpers.d.ts +5 -0
  123. package/dist/services/issues.helpers.d.ts.map +1 -1
  124. package/dist/services/issues.helpers.js +11 -0
  125. package/dist/services/issues.helpers.js.map +1 -1
  126. package/dist/services/issues.js +6 -9
  127. package/dist/services/issues.js.map +1 -1
  128. package/dist/services/knowledge-portability/organization-skills.catalog.d.ts +1 -1
  129. package/dist/services/knowledge-portability/organization-skills.catalog.d.ts.map +1 -1
  130. package/dist/services/knowledge-portability/organization-skills.catalog.js +7 -0
  131. package/dist/services/knowledge-portability/organization-skills.catalog.js.map +1 -1
  132. package/dist/services/messenger-run-origin.d.ts +1 -0
  133. package/dist/services/messenger-run-origin.d.ts.map +1 -1
  134. package/dist/services/messenger-run-origin.js +1 -0
  135. package/dist/services/messenger-run-origin.js.map +1 -1
  136. package/dist/services/messenger-saved-views.d.ts.map +1 -1
  137. package/dist/services/messenger-saved-views.js +29 -5
  138. package/dist/services/messenger-saved-views.js.map +1 -1
  139. package/dist/services/messenger.d.ts.map +1 -1
  140. package/dist/services/messenger.js +1 -0
  141. package/dist/services/messenger.js.map +1 -1
  142. package/dist/services/organization-workspace-browser.d.ts.map +1 -1
  143. package/dist/services/organization-workspace-browser.js +7 -1
  144. package/dist/services/organization-workspace-browser.js.map +1 -1
  145. package/dist/services/rudder-plugin-catalog.d.ts.map +1 -1
  146. package/dist/services/rudder-plugin-catalog.js +49 -35
  147. package/dist/services/rudder-plugin-catalog.js.map +1 -1
  148. package/dist/services/rudder-plugin-catalog.test.js +169 -1
  149. package/dist/services/rudder-plugin-catalog.test.js.map +1 -1
  150. package/dist/services/rudder-plugins.d.ts +2 -0
  151. package/dist/services/rudder-plugins.d.ts.map +1 -1
  152. package/dist/services/rudder-plugins.js +16 -11
  153. package/dist/services/rudder-plugins.js.map +1 -1
  154. package/dist/services/rudder-plugins.test.js +17 -1
  155. package/dist/services/rudder-plugins.test.js.map +1 -1
  156. package/dist/services/run-intelligence.d.ts.map +1 -1
  157. package/dist/services/run-intelligence.js +15 -1
  158. package/dist/services/run-intelligence.js.map +1 -1
  159. package/dist/services/runtime-kernel/assignment-run-guardrail.d.ts +12 -95
  160. package/dist/services/runtime-kernel/assignment-run-guardrail.d.ts.map +1 -1
  161. package/dist/services/runtime-kernel/assignment-run-guardrail.js +104 -350
  162. package/dist/services/runtime-kernel/assignment-run-guardrail.js.map +1 -1
  163. package/dist/services/runtime-kernel/assignment-run-guardrail.test.js +109 -143
  164. package/dist/services/runtime-kernel/assignment-run-guardrail.test.js.map +1 -1
  165. package/dist/services/runtime-kernel/heartbeat.core.d.ts +23 -2
  166. package/dist/services/runtime-kernel/heartbeat.core.d.ts.map +1 -1
  167. package/dist/services/runtime-kernel/heartbeat.core.js +1 -0
  168. package/dist/services/runtime-kernel/heartbeat.core.js.map +1 -1
  169. package/dist/services/runtime-kernel/heartbeat.d.ts +10 -0
  170. package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -1
  171. package/dist/services/runtime-kernel/heartbeat.execute.d.ts.map +1 -1
  172. package/dist/services/runtime-kernel/heartbeat.execute.js +103 -141
  173. package/dist/services/runtime-kernel/heartbeat.execute.js.map +1 -1
  174. package/dist/services/runtime-kernel/heartbeat.js +43 -7
  175. package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
  176. package/dist/services/runtime-kernel/heartbeat.misc.js +1 -1
  177. package/dist/services/runtime-kernel/heartbeat.misc.js.map +1 -1
  178. package/dist/services/runtime-kernel/heartbeat.recovery.d.ts +7 -0
  179. package/dist/services/runtime-kernel/heartbeat.recovery.d.ts.map +1 -1
  180. package/dist/services/runtime-kernel/heartbeat.recovery.js +101 -5
  181. package/dist/services/runtime-kernel/heartbeat.recovery.js.map +1 -1
  182. package/dist/services/runtime-kernel/heartbeat.release.d.ts.map +1 -1
  183. package/dist/services/runtime-kernel/heartbeat.release.js +1 -0
  184. package/dist/services/runtime-kernel/heartbeat.release.js.map +1 -1
  185. package/dist/services/runtime-kernel/heartbeat.sessions.d.ts.map +1 -1
  186. package/dist/services/runtime-kernel/heartbeat.sessions.js +2 -0
  187. package/dist/services/runtime-kernel/heartbeat.sessions.js.map +1 -1
  188. package/dist/services/runtime-kernel/heartbeat.terminal.d.ts +10 -1
  189. package/dist/services/runtime-kernel/heartbeat.terminal.d.ts.map +1 -1
  190. package/dist/services/runtime-kernel/heartbeat.terminal.js.map +1 -1
  191. package/dist/services/runtime-kernel/heartbeat.wakeup.d.ts.map +1 -1
  192. package/dist/services/runtime-kernel/heartbeat.wakeup.js +14 -1
  193. package/dist/services/runtime-kernel/heartbeat.wakeup.js.map +1 -1
  194. package/package.json +14 -14
  195. package/resources/bundled-skills/rudder-docs/references/cli-reference.md +4 -0
  196. package/skills/rudder-docs/references/cli-reference.md +4 -0
  197. package/ui-dist/assets/{LibraryLiveSurface-Dl_mRBqL.js → LibraryLiveSurface-DnY0wZep.js} +1 -1
  198. package/ui-dist/assets/{abnfDiagram-VRR7QNED-4MIrDcN0.js → abnfDiagram-VRR7QNED-CT-9m1Vc.js} +1 -1
  199. package/ui-dist/assets/{addon-fit-DaLbwAfQ.js → addon-fit-C6aMSfRz.js} +1 -1
  200. package/ui-dist/assets/{arc-DrbWjUWY.js → arc-1nExaM-y.js} +1 -1
  201. package/ui-dist/assets/{architectureDiagram-ZJ3FMSHR-Bt-JYYfG.js → architectureDiagram-ZJ3FMSHR-bILoPPs5.js} +1 -1
  202. package/ui-dist/assets/{blockDiagram-677ZJIJ3-OXUbGv47.js → blockDiagram-677ZJIJ3--zRFciqi.js} +1 -1
  203. package/ui-dist/assets/{c4Diagram-LMCZKHZV-C_EcNhSw.js → c4Diagram-LMCZKHZV-CrtaX6A_.js} +1 -1
  204. package/ui-dist/assets/channel-C3jj6nd_.js +1 -0
  205. package/ui-dist/assets/{chunk-2Q5K7J3B-DY-Rya7u.js → chunk-2Q5K7J3B-DoBb7ZYS.js} +1 -1
  206. package/ui-dist/assets/{chunk-32BRIVSS-CTrRcC7g.js → chunk-32BRIVSS-DilGswdp.js} +1 -1
  207. package/ui-dist/assets/{chunk-5VM5RSS4-CFfB2lwI.js → chunk-5VM5RSS4-D8q00d1k.js} +1 -1
  208. package/ui-dist/assets/{chunk-EX3LRPZG-C0nNM3QW.js → chunk-EX3LRPZG-Bl1KSAwQ.js} +1 -1
  209. package/ui-dist/assets/{chunk-JWPE2WC7-Bzqz4lCp.js → chunk-JWPE2WC7-DtdgLB7Y.js} +1 -1
  210. package/ui-dist/assets/{chunk-MOJQB5TN-B7JFd8bM.js → chunk-MOJQB5TN-UaG7L1QI.js} +1 -1
  211. package/ui-dist/assets/{chunk-RYQCIY6F-a5E8W5cO.js → chunk-RYQCIY6F-mkz9qbQF.js} +1 -1
  212. package/ui-dist/assets/{chunk-V7JOEXUC-lhKPx7D_.js → chunk-V7JOEXUC-FGET6Myl.js} +1 -1
  213. package/ui-dist/assets/{chunk-VR4S4FIN-bZBK3VoP.js → chunk-VR4S4FIN-BgfUmupS.js} +1 -1
  214. package/ui-dist/assets/{chunk-XXDRQBXY-Di3ho8vJ.js → chunk-XXDRQBXY-B6I-gBFN.js} +1 -1
  215. package/ui-dist/assets/classDiagram-OUVF2IWQ-CNsW5NoJ.js +1 -0
  216. package/ui-dist/assets/classDiagram-v2-EOCWNBFH-CNsW5NoJ.js +1 -0
  217. package/ui-dist/assets/{cose-bilkent-JH36ORCC-CGSlPnRr.js → cose-bilkent-JH36ORCC-DVGWBjbO.js} +1 -1
  218. package/ui-dist/assets/{cynefin-VYW2F7L2-BfELv7kL.js → cynefin-VYW2F7L2-CWjLXAiA.js} +1 -1
  219. package/ui-dist/assets/{cynefinDiagram-TSTJHNR4-iMVux7wr.js → cynefinDiagram-TSTJHNR4-DWY5Jowv.js} +1 -1
  220. package/ui-dist/assets/{dagre-VKFMJZFB-imUTNZ-g.js → dagre-VKFMJZFB-Bp0SVTqP.js} +1 -1
  221. package/ui-dist/assets/{diagram-FQU43EPY-i0bYfkK2.js → diagram-FQU43EPY-EhsLuQCs.js} +1 -1
  222. package/ui-dist/assets/{diagram-G47NLZAW-CN7P8lGu.js → diagram-G47NLZAW-C_ifHw4Q.js} +1 -1
  223. package/ui-dist/assets/{diagram-NH7WQ7WH-BJ4dmUnA.js → diagram-NH7WQ7WH-BCitqFNA.js} +1 -1
  224. package/ui-dist/assets/{diagram-OA4YK3LP-DDWgQGqt.js → diagram-OA4YK3LP-BRjomHnO.js} +1 -1
  225. package/ui-dist/assets/{diagram-WEI45ONY-3At0yiVq.js → diagram-WEI45ONY-Cr_E92JE.js} +1 -1
  226. package/ui-dist/assets/{ebnfDiagram-CCIWWBDH-Dk6Q1_n0.js → ebnfDiagram-CCIWWBDH-0WJQMwqt.js} +1 -1
  227. package/ui-dist/assets/{erDiagram-Q63AITRT-DIQXCD2C.js → erDiagram-Q63AITRT-B0EBivSu.js} +1 -1
  228. package/ui-dist/assets/{flowDiagram-23GEKE2U-D19_Ed2R.js → flowDiagram-23GEKE2U-BwdRtCsd.js} +1 -1
  229. package/ui-dist/assets/{ganttDiagram-NO4QXBWP-JdDX_faf.js → ganttDiagram-NO4QXBWP-KxlqXAqZ.js} +1 -1
  230. package/ui-dist/assets/{gitGraphDiagram-IHSO6WYX-D1H6mGeL.js → gitGraphDiagram-IHSO6WYX-DeTCa-SS.js} +1 -1
  231. package/ui-dist/assets/{graph-BG22o1KD.js → graph-rdRwl3us.js} +1 -1
  232. package/ui-dist/assets/{index-CVu9lnBy.js → index-7Mb8iY3g.js} +1 -1
  233. package/ui-dist/assets/{index-uHZfZjdL.js → index-B2jHUYti.js} +1 -1
  234. package/ui-dist/assets/{index-CqaANx_i.js → index-Bi7KPtJ3.js} +1 -1
  235. package/ui-dist/assets/{index-CwdDPdqf.js → index-BzLCEJCf.js} +1 -1
  236. package/ui-dist/assets/{index-D3lUbbsS.js → index-C2DKaTLo.js} +1 -1
  237. package/ui-dist/assets/{index-BRGW3KLv.js → index-CY1CWc3h.js} +1 -1
  238. package/ui-dist/assets/index-CYaeM_68.css +32 -0
  239. package/ui-dist/assets/{index-inavbYTa.js → index-CbEMZXO1.js} +1 -1
  240. package/ui-dist/assets/{index-BDNVVxYy.js → index-CcLF8pix.js} +1 -1
  241. package/ui-dist/assets/{index-KZiKwV4T.js → index-CtFA44ZZ.js} +1 -1
  242. package/ui-dist/assets/{index-C0wGrz8h.js → index-CuP2P51w.js} +1 -1
  243. package/ui-dist/assets/{index-DDIA_6o8.js → index-D3RtGD1i.js} +1 -1
  244. package/ui-dist/assets/{index-BxHKdZbS.js → index-D5pdKmHf.js} +1 -1
  245. package/ui-dist/assets/{index-DXA-HNO5.js → index-DBPJ49Cn.js} +1 -1
  246. package/ui-dist/assets/{index-MrGb7TRh.js → index-NxbW73mN.js} +1 -1
  247. package/ui-dist/assets/{index-DL6O5Ix-.js → index-s8ZAOPE2.js} +589 -579
  248. package/ui-dist/assets/{infoDiagram-FWYZ7A6U-CVUn5UCu.js → infoDiagram-FWYZ7A6U-Cun6yrS9.js} +1 -1
  249. package/ui-dist/assets/{ishikawaDiagram-FXEZZL3T-5BbuWr6T.js → ishikawaDiagram-FXEZZL3T-SHuCvm_3.js} +1 -1
  250. package/ui-dist/assets/{journeyDiagram-5HDEW3XC-DoCwetKy.js → journeyDiagram-5HDEW3XC-B2oa-ovF.js} +1 -1
  251. package/ui-dist/assets/{kanban-definition-HUTT4EX6-BNDYA9Vo.js → kanban-definition-HUTT4EX6-DtG3RFW0.js} +1 -1
  252. package/ui-dist/assets/{layout-DUhTcIiA.js → layout-DmSY_WKW.js} +1 -1
  253. package/ui-dist/assets/{linear-CCEHbSzg.js → linear-BiklTv-9.js} +1 -1
  254. package/ui-dist/assets/{map-C8V41jZb.js → map-B3RAMPoy.js} +1 -1
  255. package/ui-dist/assets/{mermaid.core-UAa_NJSl.js → mermaid.core-CQj0CvWy.js} +4 -4
  256. package/ui-dist/assets/{mindmap-definition-LN4V7U3C-C_ygOwPG.js → mindmap-definition-LN4V7U3C-BQrncLdk.js} +1 -1
  257. package/ui-dist/assets/{pegDiagram-2B236MQR-Dz0Nw1iK.js → pegDiagram-2B236MQR-BmkmBhyS.js} +1 -1
  258. package/ui-dist/assets/{pieDiagram-ENE6RG2P-DSn9W4hM.js → pieDiagram-ENE6RG2P-B0dWJser.js} +1 -1
  259. package/ui-dist/assets/{quadrantDiagram-ABIIQ3AL-D6cn2p2u.js → quadrantDiagram-ABIIQ3AL-RS2o06NX.js} +1 -1
  260. package/ui-dist/assets/{railroadDiagram-RFXS5EU6-DkQOZUbI.js → railroadDiagram-RFXS5EU6-B4dlWUnB.js} +1 -1
  261. package/ui-dist/assets/{requirementDiagram-TGXJPOKE-CVxaeOzG.js → requirementDiagram-TGXJPOKE-7M1vICZA.js} +1 -1
  262. package/ui-dist/assets/{sankeyDiagram-HTMAVEWB-DsCkJ9Sr.js → sankeyDiagram-HTMAVEWB-LUpZrugG.js} +1 -1
  263. package/ui-dist/assets/{sequenceDiagram-DBY2YBRQ-DSVgeeYC.js → sequenceDiagram-DBY2YBRQ-DB4ecUEg.js} +1 -1
  264. package/ui-dist/assets/{sizeCapture-X5ZJPWSS-jYNNSFFN.js → sizeCapture-X5ZJPWSS-CgLQGkEa.js} +1 -1
  265. package/ui-dist/assets/{stateDiagram-2N3HPSRC-HMmvTfZO.js → stateDiagram-2N3HPSRC-BxLcsZg0.js} +1 -1
  266. package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-DAlIlXqa.js +1 -0
  267. package/ui-dist/assets/{swimlanes-5IMT3BWC-B7lpTS-P.js → swimlanes-5IMT3BWC-CFoyzQNM.js} +2 -2
  268. package/ui-dist/assets/swimlanesDiagram-G3AALYLV-DXfnihCA.js +8 -0
  269. package/ui-dist/assets/{timeline-definition-FHXFAJF6-CfjkTbE1.js → timeline-definition-FHXFAJF6-C1vajCzY.js} +1 -1
  270. package/ui-dist/assets/{vennDiagram-L72KCM5P-gK5ZOhfi.js → vennDiagram-L72KCM5P-C42rETOq.js} +1 -1
  271. package/ui-dist/assets/{wardleyDiagram-EHGQE667-ClAgPp4O.js → wardleyDiagram-EHGQE667-BgzD6-QL.js} +1 -1
  272. package/ui-dist/assets/{xterm-CI3dnrG9.js → xterm-BeBaISmm.js} +1 -1
  273. package/ui-dist/assets/{xychartDiagram-FW5EYKEG-CMu8n5xR.js → xychartDiagram-FW5EYKEG-BdoJT_55.js} +1 -1
  274. package/ui-dist/index.html +2 -2
  275. package/ui-dist/assets/channel-DL45J6-6.js +0 -1
  276. package/ui-dist/assets/classDiagram-OUVF2IWQ-DuHN7Tz9.js +0 -1
  277. package/ui-dist/assets/classDiagram-v2-EOCWNBFH-DuHN7Tz9.js +0 -1
  278. package/ui-dist/assets/index-rHP5bnon.css +0 -32
  279. package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-Ij5NPf9Z.js +0 -1
  280. package/ui-dist/assets/swimlanesDiagram-G3AALYLV-VbzuYi16.js +0 -8
@@ -0,0 +1,373 @@
1
+ import { agentWakeupRequests, agents } from "@rudderhq/db";
2
+ import { describe, expect, it, vi } from "vitest";
3
+ import { DELEGATION_RUN_SCENE, DELEGATION_RUN_SOURCE, DELEGATION_RUN_TRIGGER_REASON, delegationRunService, } from "./delegation-runs.js";
4
+ const orgId = "11111111-1111-4111-8111-111111111111";
5
+ const sourceAgentId = "22222222-2222-4222-8222-222222222222";
6
+ const targetAgentId = "33333333-3333-4333-8333-333333333333";
7
+ const sourceRunId = "44444444-4444-4444-8444-444444444444";
8
+ const targetRunId = "55555555-5555-4555-8555-555555555555";
9
+ const wakeupRequestId = "66666666-6666-4666-8666-666666666666";
10
+ const otherSourceAgentId = "77777777-7777-4777-8777-777777777777";
11
+ const otherSourceRunId = "88888888-8888-4888-8888-888888888888";
12
+ const otherTargetAgentId = "99999999-9999-4999-8999-999999999999";
13
+ function sourceRun() {
14
+ return {
15
+ id: sourceRunId,
16
+ orgId,
17
+ agentId: sourceAgentId,
18
+ status: "running",
19
+ };
20
+ }
21
+ function targetRun(agentId = targetAgentId) {
22
+ return {
23
+ ...sourceRun(),
24
+ id: targetRunId,
25
+ agentId,
26
+ invocationSource: "delegation",
27
+ triggerDetail: "agent_run_created",
28
+ sourceRunId,
29
+ wakeupRequestId,
30
+ contextSnapshot: {
31
+ scene: DELEGATION_RUN_SCENE,
32
+ sourceRunId,
33
+ delegationTask: "Inspect the target independently",
34
+ },
35
+ };
36
+ }
37
+ function wakeupRequest(task, status = "queued", agentId = targetAgentId) {
38
+ return {
39
+ id: wakeupRequestId,
40
+ orgId,
41
+ agentId,
42
+ source: DELEGATION_RUN_SOURCE,
43
+ triggerDetail: "agent_run_created",
44
+ reason: DELEGATION_RUN_TRIGGER_REASON,
45
+ payload: {
46
+ delegationTask: task,
47
+ delegationTargetAgentId: targetAgentId,
48
+ sourceAgentId,
49
+ sourceRunId,
50
+ },
51
+ status,
52
+ coalescedCount: 0,
53
+ requestedByActorType: "agent",
54
+ requestedByActorId: sourceAgentId,
55
+ idempotencyKey: null,
56
+ delegationIdempotencyKey: "delegation-key-1",
57
+ runId: targetRunId,
58
+ };
59
+ }
60
+ function createDbStub(input) {
61
+ let agentLookups = 0;
62
+ let wakeupRequestLookups = 0;
63
+ const select = vi.fn(() => {
64
+ let table;
65
+ const builder = {
66
+ from(value) {
67
+ table = value;
68
+ return builder;
69
+ },
70
+ where() {
71
+ return builder;
72
+ },
73
+ orderBy() {
74
+ return builder;
75
+ },
76
+ limit() {
77
+ return builder;
78
+ },
79
+ then(resolve, reject) {
80
+ const rows = table === agents
81
+ ? (++agentLookups === 1
82
+ ? (input.sourceAgent === null ? [] : [input.sourceAgent ?? { id: sourceAgentId, orgId }])
83
+ : (input.targetAgent === null
84
+ ? []
85
+ : [input.targetAgent ?? { id: input.targetAgentId ?? sourceAgentId, orgId }]))
86
+ : table === agentWakeupRequests
87
+ ? (++wakeupRequestLookups === 1
88
+ ? (input.existingRequest ? [input.existingRequest] : [])
89
+ : (input.persistedRequest ? [input.persistedRequest] : []))
90
+ : [];
91
+ return Promise.resolve(rows).then(resolve, reject);
92
+ },
93
+ };
94
+ return builder;
95
+ });
96
+ return { select };
97
+ }
98
+ describe("delegationRunService", () => {
99
+ it("defaults to the current Agent and routes an isolated task through heartbeat wakeup", async () => {
100
+ const wakeup = vi.fn().mockResolvedValue(targetRun());
101
+ const db = createDbStub({
102
+ persistedRequest: wakeupRequest("Inspect the target independently", "queued", sourceAgentId),
103
+ });
104
+ const service = delegationRunService(db, {
105
+ heartbeat: {
106
+ getRun: vi.fn()
107
+ .mockResolvedValueOnce(sourceRun())
108
+ .mockResolvedValueOnce(targetRun(sourceAgentId)),
109
+ wakeup,
110
+ },
111
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
112
+ });
113
+ const result = await service.create({
114
+ sourceAgentId,
115
+ sourceRunId,
116
+ task: "Inspect the target independently",
117
+ idempotencyKey: "delegation-key-1",
118
+ });
119
+ expect(wakeup).toHaveBeenCalledWith(sourceAgentId, expect.objectContaining({
120
+ source: DELEGATION_RUN_SOURCE,
121
+ triggerDetail: "agent_run_created",
122
+ reason: DELEGATION_RUN_TRIGGER_REASON,
123
+ sourceRunId,
124
+ delegationIdempotencyKey: "delegation-key-1",
125
+ contextSnapshot: expect.objectContaining({
126
+ scene: DELEGATION_RUN_SCENE,
127
+ targetType: "wakeup_request",
128
+ sourceRunId,
129
+ forceFreshSession: true,
130
+ delegationTask: "Inspect the target independently",
131
+ }),
132
+ payload: expect.objectContaining({
133
+ delegationTask: "Inspect the target independently",
134
+ sourceRunId,
135
+ }),
136
+ }));
137
+ expect(wakeup.mock.calls[0]?.[1]).not.toHaveProperty("idempotencyKey");
138
+ expect(result).toMatchObject({
139
+ runId: targetRunId,
140
+ wakeupRequestId,
141
+ sourceRunId,
142
+ targetAgentId: sourceAgentId,
143
+ scene: DELEGATION_RUN_SCENE,
144
+ admissionStatus: "queued",
145
+ replayed: false,
146
+ });
147
+ });
148
+ it("replays the same admission without invoking heartbeat twice", async () => {
149
+ const existing = wakeupRequest("Inspect the target independently");
150
+ const wakeup = vi.fn();
151
+ const db = createDbStub({ existingRequest: existing, targetAgentId });
152
+ const service = delegationRunService(db, {
153
+ heartbeat: {
154
+ getRun: vi.fn()
155
+ .mockResolvedValueOnce(sourceRun())
156
+ .mockResolvedValueOnce(targetRun()),
157
+ wakeup,
158
+ },
159
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
160
+ });
161
+ const result = await service.create({
162
+ sourceAgentId,
163
+ sourceRunId,
164
+ task: "Inspect the target independently",
165
+ targetAgentId,
166
+ idempotencyKey: "delegation-key-1",
167
+ });
168
+ expect(wakeup).not.toHaveBeenCalled();
169
+ expect(result).toMatchObject({
170
+ runId: targetRunId,
171
+ wakeupRequestId,
172
+ admissionStatus: "replayed",
173
+ replayed: true,
174
+ });
175
+ });
176
+ it("rejects a conflicting task that wins the organization-wide admission race", async () => {
177
+ const racedRequest = wakeupRequest("different task");
178
+ const db = createDbStub({ persistedRequest: racedRequest, targetAgentId });
179
+ const service = delegationRunService(db, {
180
+ heartbeat: {
181
+ getRun: vi.fn().mockResolvedValue(sourceRun()),
182
+ wakeup: vi.fn().mockResolvedValue(targetRun()),
183
+ },
184
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
185
+ });
186
+ await expect(service.create({
187
+ sourceAgentId,
188
+ sourceRunId,
189
+ task: "Inspect the target independently",
190
+ targetAgentId,
191
+ idempotencyKey: "delegation-key-1",
192
+ })).rejects.toMatchObject({
193
+ message: "Delegation idempotency key conflicts with an existing task or target",
194
+ });
195
+ });
196
+ it("rejects reusing an organization-wide idempotency key for another target", async () => {
197
+ const existing = wakeupRequest("Inspect the target independently");
198
+ const wakeup = vi.fn();
199
+ const service = delegationRunService(createDbStub({
200
+ existingRequest: existing,
201
+ targetAgent: { id: otherTargetAgentId, orgId },
202
+ }), {
203
+ heartbeat: { getRun: vi.fn().mockResolvedValue(sourceRun()), wakeup },
204
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
205
+ });
206
+ await expect(service.create({
207
+ sourceAgentId,
208
+ sourceRunId,
209
+ task: "Inspect the target independently",
210
+ targetAgentId: otherTargetAgentId,
211
+ idempotencyKey: "delegation-key-1",
212
+ })).rejects.toMatchObject({
213
+ message: "Delegation idempotency key conflicts with an existing task or target",
214
+ });
215
+ expect(wakeup).not.toHaveBeenCalled();
216
+ });
217
+ it("replays another source Run's matching organization, target, key, and task with persisted provenance", async () => {
218
+ const existing = {
219
+ ...wakeupRequest("Inspect the target independently"),
220
+ requestedByActorId: otherSourceAgentId,
221
+ payload: {
222
+ ...wakeupRequest("Inspect the target independently").payload,
223
+ sourceAgentId: otherSourceAgentId,
224
+ sourceRunId: otherSourceRunId,
225
+ },
226
+ };
227
+ const wakeup = vi.fn();
228
+ const service = delegationRunService(createDbStub({ existingRequest: existing, targetAgentId }), {
229
+ heartbeat: {
230
+ getRun: vi.fn()
231
+ .mockResolvedValueOnce(sourceRun())
232
+ .mockResolvedValueOnce({ ...targetRun(), sourceRunId: otherSourceRunId }),
233
+ wakeup,
234
+ },
235
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
236
+ });
237
+ await expect(service.create({
238
+ sourceAgentId,
239
+ sourceRunId,
240
+ task: "Inspect the target independently",
241
+ targetAgentId,
242
+ idempotencyKey: "delegation-key-1",
243
+ })).resolves.toMatchObject({
244
+ sourceAgentId: otherSourceAgentId,
245
+ sourceRunId: otherSourceRunId,
246
+ admissionStatus: "replayed",
247
+ replayed: true,
248
+ });
249
+ expect(wakeup).not.toHaveBeenCalled();
250
+ });
251
+ it("rejects a source Run owned by another authenticated Agent", async () => {
252
+ const service = delegationRunService(createDbStub({}), {
253
+ heartbeat: {
254
+ getRun: vi.fn().mockResolvedValue({ ...sourceRun(), agentId: otherSourceAgentId }),
255
+ wakeup: vi.fn(),
256
+ },
257
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
258
+ });
259
+ await expect(service.create({
260
+ sourceAgentId,
261
+ sourceRunId,
262
+ task: "Inspect the target independently",
263
+ idempotencyKey: "source-owner-mismatch",
264
+ })).rejects.toMatchObject({ message: "Source Run does not belong to the authenticated Agent" });
265
+ });
266
+ it("rejects missing and cross-organization targets", async () => {
267
+ const missingTarget = delegationRunService(createDbStub({ targetAgent: null }), {
268
+ heartbeat: { getRun: vi.fn().mockResolvedValue(sourceRun()), wakeup: vi.fn() },
269
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
270
+ });
271
+ await expect(missingTarget.create({
272
+ sourceAgentId,
273
+ sourceRunId,
274
+ targetAgentId,
275
+ task: "Inspect the target independently",
276
+ idempotencyKey: "missing-target",
277
+ })).rejects.toMatchObject({ message: "Target Agent not found" });
278
+ const crossOrgTarget = delegationRunService(createDbStub({
279
+ targetAgent: { id: targetAgentId, orgId: "99999999-9999-4999-8999-999999999999" },
280
+ }), {
281
+ heartbeat: { getRun: vi.fn().mockResolvedValue(sourceRun()), wakeup: vi.fn() },
282
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
283
+ });
284
+ await expect(crossOrgTarget.create({
285
+ sourceAgentId,
286
+ sourceRunId,
287
+ targetAgentId,
288
+ task: "Inspect the target independently",
289
+ idempotencyKey: "cross-org-target",
290
+ })).rejects.toMatchObject({ message: "Target Agent must belong to the same organization" });
291
+ });
292
+ it.each([
293
+ ["deferred_agent_paused", "deferred"],
294
+ ["coalesced", "coalesced"],
295
+ ["skipped", "skipped"],
296
+ ])("projects %s admission through the Delegation response as %s", async (status, expected) => {
297
+ const persisted = {
298
+ ...wakeupRequest("Inspect the target independently", status, sourceAgentId),
299
+ runId: status === "skipped" ? null : targetRunId,
300
+ };
301
+ const service = delegationRunService(createDbStub({ persistedRequest: persisted }), {
302
+ heartbeat: {
303
+ getRun: vi.fn()
304
+ .mockResolvedValueOnce(sourceRun())
305
+ .mockResolvedValueOnce(targetRun(sourceAgentId)),
306
+ wakeup: vi.fn().mockResolvedValue(status === "skipped" ? null : targetRun(sourceAgentId)),
307
+ },
308
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
309
+ });
310
+ await expect(service.create({
311
+ sourceAgentId,
312
+ sourceRunId,
313
+ task: "Inspect the target independently",
314
+ idempotencyKey: `admission-${status}`,
315
+ })).resolves.toMatchObject({ admissionStatus: expected });
316
+ });
317
+ it("returns a traceable skipped admission when the target is unavailable", async () => {
318
+ const skippedRequest = {
319
+ ...wakeupRequest("Inspect the target independently", "skipped", sourceAgentId),
320
+ runId: null,
321
+ };
322
+ const service = delegationRunService(createDbStub({ persistedRequest: skippedRequest }), {
323
+ heartbeat: {
324
+ getRun: vi.fn().mockResolvedValue(sourceRun()),
325
+ wakeup: vi.fn().mockRejectedValue(new Error("Agent is not invokable in its current state")),
326
+ },
327
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
328
+ });
329
+ await expect(service.create({
330
+ sourceAgentId,
331
+ sourceRunId,
332
+ task: "Inspect the target independently",
333
+ idempotencyKey: "delegation-key-1",
334
+ })).resolves.toMatchObject({
335
+ runId: null,
336
+ wakeupRequestId,
337
+ admissionStatus: "skipped",
338
+ replayed: false,
339
+ });
340
+ });
341
+ it("enforces the Unicode character limit before admission", async () => {
342
+ const service = delegationRunService(createDbStub({}), {
343
+ heartbeat: { getRun: vi.fn(), wakeup: vi.fn() },
344
+ access: { hasPermission: vi.fn().mockResolvedValue(true) },
345
+ });
346
+ await expect(service.create({
347
+ sourceAgentId,
348
+ sourceRunId,
349
+ task: "🙂".repeat(20_001),
350
+ idempotencyKey: "delegation-oversize",
351
+ })).rejects.toMatchObject({ message: "Delegation task must be no more than 20,000 Unicode characters" });
352
+ });
353
+ it("requires tasks:assign only for cross-agent delegation", async () => {
354
+ const wakeup = vi.fn();
355
+ const db = createDbStub({
356
+ targetAgentId,
357
+ persistedRequest: wakeupRequest("cross-agent task"),
358
+ });
359
+ const service = delegationRunService(db, {
360
+ heartbeat: { getRun: vi.fn().mockResolvedValue(sourceRun()), wakeup },
361
+ access: { hasPermission: vi.fn().mockResolvedValue(false) },
362
+ });
363
+ await expect(service.create({
364
+ sourceAgentId,
365
+ sourceRunId,
366
+ task: "cross-agent task",
367
+ targetAgentId,
368
+ idempotencyKey: "delegation-key-cross-agent",
369
+ })).rejects.toMatchObject({ message: "Missing permission: tasks:assign" });
370
+ expect(wakeup).not.toHaveBeenCalled();
371
+ });
372
+ });
373
+ //# sourceMappingURL=delegation-runs.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delegation-runs.test.js","sourceRoot":"","sources":["../../src/services/delegation-runs.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/services/integrations/feishu/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/services/integrations/feishu/runtime.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { agentIntegrationOutboundMessages, agentIntegrations, chatMessages, } fr
3
3
  import { and, eq, inArray } from "drizzle-orm";
4
4
  import { logger } from "../../../middleware/logger.js";
5
5
  import { chatAgentRunService } from "../../chat-agent-runs.js";
6
- import { chatAssistantService, ChatAssistantStreamError } from "../../chat-assistant.js";
6
+ import { chatAssistantService, ChatAssistantStreamError, userVisiblePartialBodyFromError, } from "../../chat-assistant.js";
7
7
  import { claimChatGeneration, setActiveChatGenerationId, } from "../../chat-generation-locks.js";
8
8
  import { chatService } from "../../chats.js";
9
9
  import { secretService } from "../../secrets.js";
@@ -422,7 +422,7 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
422
422
  throw error;
423
423
  }
424
424
  }
425
- async function completeAcceptedReply(integration, credential, event, result, activeGeneration, resume) {
425
+ async function completeAcceptedReply(integration, credential, event, result, activeGeneration, replyState, resume) {
426
426
  const conversation = await chats.getById(result.conversationId);
427
427
  const userMessage = result.chatMessageId
428
428
  ? await chats
@@ -446,7 +446,6 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
446
446
  let waitingForNetwork = false;
447
447
  let assistantMessage = null;
448
448
  try {
449
- let activeRunId = null;
450
449
  const streamed = await assistant.streamChatAssistantReply({
451
450
  conversation,
452
451
  contextLinks: Array.isArray(conversation.contextLinks) ? conversation.contextLinks : [],
@@ -464,7 +463,7 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
464
463
  : {}),
465
464
  abortSignal: activeGeneration.abortController.signal,
466
465
  onRunCreated: (runId) => {
467
- activeRunId = runId;
466
+ replyState.activeRunId = runId;
468
467
  },
469
468
  onWaitingForNetwork: async (suspension) => {
470
469
  const marked = await chats.generationProtocol.markWaitingForNetwork({
@@ -501,9 +500,10 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
501
500
  kind: persistableAssistantKind(reply.kind),
502
501
  body: reply.body,
503
502
  structuredPayload: null,
504
- runId: activeRunId,
503
+ runId: replyState.activeRunId,
505
504
  replyingAgentId: reply.replyingAgentId ?? integration.agentId,
506
505
  });
506
+ replyState.assistantMessage = assistantMessage;
507
507
  if (await deleteAssistantMessageIfStopped(assistantMessage.id)) {
508
508
  generationTerminalStatus = "stopped";
509
509
  return;
@@ -519,7 +519,7 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
519
519
  text: reply.body,
520
520
  conversationId: conversation.id,
521
521
  chatMessageId: assistantMessage.id,
522
- runId: activeRunId ?? result.runId,
522
+ runId: replyState.activeRunId ?? result.runId,
523
523
  issueId: result.issueId,
524
524
  abortSignal: activeGeneration.abortController.signal,
525
525
  });
@@ -527,8 +527,8 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
527
527
  generationTerminalStatus = "stopped";
528
528
  return;
529
529
  }
530
- if (activeRunId) {
531
- await chatRuns.linkAssistantMessage(activeRunId, conversation.id, assistantMessage.id);
530
+ if (replyState.activeRunId) {
531
+ await chatRuns.linkAssistantMessage(replyState.activeRunId, conversation.id, assistantMessage.id);
532
532
  }
533
533
  if (await deleteAssistantMessageIfStopped(assistantMessage.id)) {
534
534
  generationTerminalStatus = "stopped";
@@ -558,6 +558,47 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
558
558
  activeGeneration.release();
559
559
  }
560
560
  }
561
+ async function persistAndSendFailedReply(integration, credential, event, result, replyState, error) {
562
+ const body = error instanceof ChatAssistantStreamError
563
+ ? userVisiblePartialBodyFromError(error)
564
+ : "Rudder accepted your message, but the agent reply failed before a final response was produced.";
565
+ const failurePayload = error instanceof ChatAssistantStreamError
566
+ ? {
567
+ recoverableFailure: {
568
+ recoverable: error.retryable !== false,
569
+ ...(error.retryable === false ? { retryable: false } : {}),
570
+ code: error.errorCode,
571
+ message: error.userMessage,
572
+ runId: replyState.activeRunId,
573
+ ...(error.failurePhase ? { phase: error.failurePhase } : {}),
574
+ ...(error.action ? { action: error.action } : {}),
575
+ },
576
+ }
577
+ : null;
578
+ const assistantMessage = replyState.assistantMessage ?? await chats.addMessage(result.conversationId, {
579
+ orgId: integration.orgId,
580
+ role: "assistant",
581
+ kind: "message",
582
+ status: "failed",
583
+ body,
584
+ structuredPayload: failurePayload,
585
+ runId: replyState.activeRunId,
586
+ replyingAgentId: integration.agentId,
587
+ });
588
+ await sendAndRecord({
589
+ integration,
590
+ credential,
591
+ chatId: event.chatId,
592
+ text: assistantMessage.body,
593
+ conversationId: result.conversationId,
594
+ chatMessageId: assistantMessage.id,
595
+ runId: replyState.activeRunId,
596
+ issueId: result.issueId,
597
+ });
598
+ if (replyState.activeRunId) {
599
+ await chatRuns.linkAssistantMessage(replyState.activeRunId, result.conversationId, assistantMessage.id);
600
+ }
601
+ }
561
602
  async function runAcceptedReplyInBackground(integration, credential, event, result, activeGeneration) {
562
603
  const leaseTimer = activeGeneration.ownerToken
563
604
  ? setInterval(() => {
@@ -570,26 +611,24 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
570
611
  : null;
571
612
  leaseTimer?.unref?.();
572
613
  let didEnterReplyCompletion = false;
614
+ const replyState = {
615
+ activeRunId: result.runId ?? null,
616
+ assistantMessage: null,
617
+ };
573
618
  try {
574
619
  await withWorkingReaction(sender, integration, credential, event, async () => {
575
620
  didEnterReplyCompletion = true;
576
621
  try {
577
- await completeAcceptedReply(integration, credential, event, result, activeGeneration);
622
+ await completeAcceptedReply(integration, credential, event, result, activeGeneration, replyState);
578
623
  }
579
624
  catch (error) {
580
- activeGeneration.release();
581
- const body = error instanceof ChatAssistantStreamError && error.partialBody
582
- ? error.partialBody
583
- : "Rudder accepted your message, but the agent reply failed before a final response was produced.";
584
- await sendAndRecord({
585
- integration,
586
- credential,
587
- chatId: event.chatId,
588
- text: body,
589
- conversationId: result.conversationId,
590
- chatMessageId: result.chatMessageId,
591
- runId: result.runId,
592
- issueId: result.issueId,
625
+ await persistAndSendFailedReply(integration, credential, event, result, replyState, error)
626
+ .catch((fallbackError) => {
627
+ logger.warn({
628
+ err: fallbackError,
629
+ integrationId: integration.id,
630
+ conversationId: result.conversationId,
631
+ }, "Feishu failed reply persistence or delivery failed");
593
632
  });
594
633
  throw error;
595
634
  }
@@ -694,6 +733,10 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
694
733
  text: "",
695
734
  },
696
735
  };
736
+ const replyState = {
737
+ activeRunId: run.id,
738
+ assistantMessage: null,
739
+ };
697
740
  try {
698
741
  await completeAcceptedReply(integration, credential, event, result, {
699
742
  abortController,
@@ -701,9 +744,12 @@ export function feishuIntegrationRuntimeService(db, options = {}) {
701
744
  attemptEpoch: resumed.attemptEpoch,
702
745
  ownerToken: resumed.controlOwnerToken,
703
746
  release,
704
- }, { runId: run.id, ownerToken });
747
+ }, replyState, { runId: run.id, ownerToken });
705
748
  }
706
749
  catch (error) {
750
+ await persistAndSendFailedReply(integration, credential, event, result, replyState, error).catch((fallbackError) => {
751
+ logger.warn({ err: fallbackError, runId: run.id }, "Feishu network-wait failure response delivery failed");
752
+ });
707
753
  logger.warn({ err: error, runId: run.id }, "Feishu network-wait recovery failed");
708
754
  release();
709
755
  }