@rudderhq/server 0.2.10-canary.2 → 0.2.10-canary.21

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 (219) hide show
  1. package/dist/bootstrap/plugin-host-runtime.d.ts +38 -38
  2. package/dist/bundled-plugins/plugin-linear/dist/worker.js +311 -158
  3. package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +2 -2
  4. package/dist/home-paths.d.ts +23 -0
  5. package/dist/home-paths.d.ts.map +1 -1
  6. package/dist/home-paths.js +46 -1
  7. package/dist/home-paths.js.map +1 -1
  8. package/dist/onboarding-assets/ceo/HEARTBEAT.md +7 -6
  9. package/dist/onboarding-assets/ceo/SOUL.md +33 -47
  10. package/dist/routes/access.helpers.d.ts +8 -8
  11. package/dist/routes/agents.d.ts.map +1 -1
  12. package/dist/routes/agents.js +15 -1
  13. package/dist/routes/agents.js.map +1 -1
  14. package/dist/routes/approvals.d.ts.map +1 -1
  15. package/dist/routes/approvals.js +34 -2
  16. package/dist/routes/approvals.js.map +1 -1
  17. package/dist/routes/chat-issue-assignment-wakeup.d.ts +28 -0
  18. package/dist/routes/chat-issue-assignment-wakeup.d.ts.map +1 -0
  19. package/dist/routes/chat-issue-assignment-wakeup.js +54 -0
  20. package/dist/routes/chat-issue-assignment-wakeup.js.map +1 -0
  21. package/dist/routes/chats.d.ts.map +1 -1
  22. package/dist/routes/chats.js +73 -7
  23. package/dist/routes/chats.js.map +1 -1
  24. package/dist/routes/chats.stream-routes.d.ts.map +1 -1
  25. package/dist/routes/chats.stream-routes.js +14 -3
  26. package/dist/routes/chats.stream-routes.js.map +1 -1
  27. package/dist/routes/issues.d.ts.map +1 -1
  28. package/dist/routes/issues.js +3 -0
  29. package/dist/routes/issues.js.map +1 -1
  30. package/dist/routes/messenger.d.ts.map +1 -1
  31. package/dist/routes/messenger.js +10 -0
  32. package/dist/routes/messenger.js.map +1 -1
  33. package/dist/routes/orgs.d.ts.map +1 -1
  34. package/dist/routes/orgs.js +299 -3
  35. package/dist/routes/orgs.js.map +1 -1
  36. package/dist/routes/plugin-ui-static.d.ts +2 -1
  37. package/dist/routes/plugin-ui-static.d.ts.map +1 -1
  38. package/dist/routes/plugin-ui-static.js +8 -42
  39. package/dist/routes/plugin-ui-static.js.map +1 -1
  40. package/dist/routes/projects.d.ts.map +1 -1
  41. package/dist/routes/projects.js +6 -0
  42. package/dist/routes/projects.js.map +1 -1
  43. package/dist/services/access.d.ts +21 -21
  44. package/dist/services/activity.d.ts +19 -19
  45. package/dist/services/agent-run-context.d.ts.map +1 -1
  46. package/dist/services/agent-run-context.js +6 -1
  47. package/dist/services/agent-run-context.js.map +1 -1
  48. package/dist/services/agents.d.ts +171 -171
  49. package/dist/services/approvals.d.ts +29 -29
  50. package/dist/services/assets.d.ts +8 -8
  51. package/dist/services/automation-chat-output.d.ts +3 -3
  52. package/dist/services/automations.d.ts +24 -24
  53. package/dist/services/board-auth.d.ts +32 -32
  54. package/dist/services/calendar.d.ts +26 -26
  55. package/dist/services/chat-assistant.d.ts.map +1 -1
  56. package/dist/services/chat-assistant.helpers.d.ts +3 -2
  57. package/dist/services/chat-assistant.helpers.d.ts.map +1 -1
  58. package/dist/services/chat-assistant.helpers.js +3 -1
  59. package/dist/services/chat-assistant.helpers.js.map +1 -1
  60. package/dist/services/chat-assistant.js +11 -1
  61. package/dist/services/chat-assistant.js.map +1 -1
  62. package/dist/services/chats.d.ts +229 -161
  63. package/dist/services/chats.d.ts.map +1 -1
  64. package/dist/services/chats.helpers.d.ts +10 -5
  65. package/dist/services/chats.helpers.d.ts.map +1 -1
  66. package/dist/services/chats.helpers.js +25 -0
  67. package/dist/services/chats.helpers.js.map +1 -1
  68. package/dist/services/chats.js +183 -17
  69. package/dist/services/chats.js.map +1 -1
  70. package/dist/services/costs.d.ts +8 -8
  71. package/dist/services/documents.d.ts +126 -0
  72. package/dist/services/documents.d.ts.map +1 -1
  73. package/dist/services/documents.js +323 -1
  74. package/dist/services/documents.js.map +1 -1
  75. package/dist/services/finance.d.ts +18 -18
  76. package/dist/services/goals.d.ts +30 -30
  77. package/dist/services/heartbeat.d.ts +1 -1
  78. package/dist/services/heartbeat.d.ts.map +1 -1
  79. package/dist/services/heartbeat.js +1 -1
  80. package/dist/services/heartbeat.js.map +1 -1
  81. package/dist/services/issue-approvals.d.ts +4 -4
  82. package/dist/services/issue-goal-fallback.d.ts.map +1 -1
  83. package/dist/services/issue-goal-fallback.js +4 -1
  84. package/dist/services/issue-goal-fallback.js.map +1 -1
  85. package/dist/services/issue-review-wakeup.d.ts +3 -3
  86. package/dist/services/issues.comments-attachments.d.ts +6 -6
  87. package/dist/services/issues.d.ts +26 -26
  88. package/dist/services/issues.d.ts.map +1 -1
  89. package/dist/services/issues.js +20 -0
  90. package/dist/services/issues.js.map +1 -1
  91. package/dist/services/knowledge-portability/organization-portability.core.d.ts +1 -1
  92. package/dist/services/knowledge-portability/organization-skills.catalog.d.ts +1 -1
  93. package/dist/services/messenger.d.ts +8 -3
  94. package/dist/services/messenger.d.ts.map +1 -1
  95. package/dist/services/messenger.js +146 -16
  96. package/dist/services/messenger.js.map +1 -1
  97. package/dist/services/organization-workspace-browser.d.ts +10 -1
  98. package/dist/services/organization-workspace-browser.d.ts.map +1 -1
  99. package/dist/services/organization-workspace-browser.js +286 -8
  100. package/dist/services/organization-workspace-browser.js.map +1 -1
  101. package/dist/services/orgs.d.ts +9 -9
  102. package/dist/services/plugin-loader.worker-paths.d.ts +5 -1
  103. package/dist/services/plugin-loader.worker-paths.d.ts.map +1 -1
  104. package/dist/services/plugin-loader.worker-paths.js +27 -24
  105. package/dist/services/plugin-loader.worker-paths.js.map +1 -1
  106. package/dist/services/plugin-registry.d.ts +137 -137
  107. package/dist/services/projects.d.ts +8 -8
  108. package/dist/services/projects.d.ts.map +1 -1
  109. package/dist/services/projects.js +52 -6
  110. package/dist/services/projects.js.map +1 -1
  111. package/dist/services/resource-catalog.d.ts.map +1 -1
  112. package/dist/services/resource-catalog.js +92 -27
  113. package/dist/services/resource-catalog.js.map +1 -1
  114. package/dist/services/runtime-kernel/heartbeat.core.d.ts +5 -0
  115. package/dist/services/runtime-kernel/heartbeat.core.d.ts.map +1 -1
  116. package/dist/services/runtime-kernel/heartbeat.core.js +28 -0
  117. package/dist/services/runtime-kernel/heartbeat.core.js.map +1 -1
  118. package/dist/services/runtime-kernel/heartbeat.d.ts +33 -33
  119. package/dist/services/runtime-kernel/heartbeat.execute.js +1 -1
  120. package/dist/services/runtime-kernel/heartbeat.execute.js.map +1 -1
  121. package/dist/services/runtime-kernel/heartbeat.recovery.d.ts.map +1 -1
  122. package/dist/services/runtime-kernel/heartbeat.recovery.js +14 -63
  123. package/dist/services/runtime-kernel/heartbeat.recovery.js.map +1 -1
  124. package/dist/services/runtime-kernel/heartbeat.sessions.d.ts +1 -1
  125. package/dist/services/secrets.d.ts +25 -25
  126. package/dist/services/sidebar-badges.d.ts +0 -3
  127. package/dist/services/sidebar-badges.d.ts.map +1 -1
  128. package/dist/services/sidebar-badges.js +4 -54
  129. package/dist/services/sidebar-badges.js.map +1 -1
  130. package/dist/services/workspace-runtime.services.d.ts +13 -13
  131. package/package.json +13 -13
  132. package/resources/bundled-skills/rudder/SKILL.md +28 -11
  133. package/resources/bundled-skills/rudder/references/api-reference.md +17 -0
  134. package/resources/bundled-skills/rudder/references/cli-reference.md +8 -1
  135. package/skills/rudder/SKILL.md +28 -11
  136. package/skills/rudder/references/api-reference.md +17 -0
  137. package/skills/rudder/references/cli-reference.md +8 -1
  138. package/ui-dist/assets/_basePickBy-B84mG_C-.js +1 -0
  139. package/ui-dist/assets/_baseUniq-C1wQfJWU.js +1 -0
  140. package/ui-dist/assets/{arc-muUWLX91.js → arc-kUpBd_xW.js} +1 -1
  141. package/ui-dist/assets/{architectureDiagram-2XIMDMQ5-BouC2Fqt.js → architectureDiagram-2XIMDMQ5-DfZu-Jcn.js} +1 -1
  142. package/ui-dist/assets/{blockDiagram-WCTKOSBZ-mvmERYx2.js → blockDiagram-WCTKOSBZ-ZYrIA2K3.js} +1 -1
  143. package/ui-dist/assets/{c4Diagram-IC4MRINW-D7udaAyR.js → c4Diagram-IC4MRINW-BIFD9mx4.js} +1 -1
  144. package/ui-dist/assets/channel-BMg_oQ6z.js +1 -0
  145. package/ui-dist/assets/{chunk-4BX2VUAB-1rY8bTG6.js → chunk-4BX2VUAB-BviJ7Prt.js} +1 -1
  146. package/ui-dist/assets/{chunk-55IACEB6-B1rF152Q.js → chunk-55IACEB6-BZFEE6wA.js} +1 -1
  147. package/ui-dist/assets/{chunk-FMBD7UC4-BwtEPX8r.js → chunk-FMBD7UC4-BmJPRdR-.js} +1 -1
  148. package/ui-dist/assets/{chunk-JSJVCQXG-CcpnEC5H.js → chunk-JSJVCQXG-A1WByaW-.js} +1 -1
  149. package/ui-dist/assets/{chunk-KX2RTZJC-DKw956bG.js → chunk-KX2RTZJC-CIGYPhxY.js} +1 -1
  150. package/ui-dist/assets/{chunk-NQ4KR5QH-nKLqz7bZ.js → chunk-NQ4KR5QH-Cok5N0qO.js} +1 -1
  151. package/ui-dist/assets/{chunk-QZHKN3VN-BKUt9Y-x.js → chunk-QZHKN3VN-dDMpPYnn.js} +1 -1
  152. package/ui-dist/assets/{chunk-WL4C6EOR-yazm-9IF.js → chunk-WL4C6EOR-DNuPtZhH.js} +1 -1
  153. package/ui-dist/assets/classDiagram-VBA2DB6C-B46gbxWl.js +1 -0
  154. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-B46gbxWl.js +1 -0
  155. package/ui-dist/assets/clone-8p1TdYAS.js +1 -0
  156. package/ui-dist/assets/{cose-bilkent-S5V4N54A-CTgk_2V0.js → cose-bilkent-S5V4N54A-Dw_CJHOQ.js} +1 -1
  157. package/ui-dist/assets/{dagre-KLK3FWXG-B2b0BY-j.js → dagre-KLK3FWXG-Dooz_2G1.js} +1 -1
  158. package/ui-dist/assets/{diagram-E7M64L7V-B8obHkTT.js → diagram-E7M64L7V-BLKOVAhJ.js} +1 -1
  159. package/ui-dist/assets/{diagram-IFDJBPK2-CZ9r9xjC.js → diagram-IFDJBPK2-BF5WZ5g4.js} +1 -1
  160. package/ui-dist/assets/{diagram-P4PSJMXO-B40Tol6x.js → diagram-P4PSJMXO-BKrdMkXn.js} +1 -1
  161. package/ui-dist/assets/{erDiagram-INFDFZHY-Da2HbTV5.js → erDiagram-INFDFZHY-B__-ibvt.js} +1 -1
  162. package/ui-dist/assets/{flowDiagram-PKNHOUZH-BIRgGJJl.js → flowDiagram-PKNHOUZH-C-hjm_OT.js} +1 -1
  163. package/ui-dist/assets/{ganttDiagram-A5KZAMGK-BRBABq4S.js → ganttDiagram-A5KZAMGK-wxhez1p-.js} +1 -1
  164. package/ui-dist/assets/{gitGraphDiagram-K3NZZRJ6-BLGAUn7n.js → gitGraphDiagram-K3NZZRJ6-Cp8kbn7i.js} +1 -1
  165. package/ui-dist/assets/{graph-CwuTTksT.js → graph-DZiyJUXX.js} +1 -1
  166. package/ui-dist/assets/{index-Cko-pzd-.js → index-B9L9WlXc.js} +1 -1
  167. package/ui-dist/assets/{index-DYOYazns.js → index-BKgV1Wq7.js} +1 -1
  168. package/ui-dist/assets/{index-DoeV0SWN.js → index-BN8Y-wmy.js} +1 -1
  169. package/ui-dist/assets/{index-4zZf1QtZ.js → index-C3fAZIeC.js} +1 -1
  170. package/ui-dist/assets/{index-Bt4qZmf2.js → index-C8bqPhPM.js} +1 -1
  171. package/ui-dist/assets/{index-CVFGvcWE.js → index-CVUHbI_k.js} +1 -1
  172. package/ui-dist/assets/{index-CV3WaXXH.js → index-C_QG-WJb.js} +1 -1
  173. package/ui-dist/assets/{index-DERwo60Q.js → index-Ch8tmO6B.js} +1 -1
  174. package/ui-dist/assets/{index-8svLp8cS.js → index-ChDA38Dg.js} +1 -1
  175. package/ui-dist/assets/index-CybAI1SK.js +1568 -0
  176. package/ui-dist/assets/{index-3uFm-AEl.js → index-DEZd60Ta.js} +1 -1
  177. package/ui-dist/assets/{index-EL6bTGiI.js → index-DHQjaSv-.js} +1 -1
  178. package/ui-dist/assets/{index-CCL9_NDM.js → index-DH_L_PgP.js} +1 -1
  179. package/ui-dist/assets/{index-DDtf8KU5.js → index-DIYJRvXK.js} +1 -1
  180. package/ui-dist/assets/{index-mq3dqkhR.js → index-DTWZM5-L.js} +1 -1
  181. package/ui-dist/assets/index-DW8GcqZn.css +1 -0
  182. package/ui-dist/assets/{index-CTxFNX6G.js → index-DgGp5c8D.js} +1 -1
  183. package/ui-dist/assets/{index-BY5bTh9h.js → index-Do-fiFQL.js} +1 -1
  184. package/ui-dist/assets/{index-AmFx57dj.js → index-DyYghCWH.js} +1 -1
  185. package/ui-dist/assets/{index-CzLbS1Fq.js → index-Dz6brya1.js} +1 -1
  186. package/ui-dist/assets/{index-qzeaBbfS.js → index-FnV0E58J.js} +1 -1
  187. package/ui-dist/assets/{index-D1yidpUd.js → index-MQscBKNJ.js} +1 -1
  188. package/ui-dist/assets/{index-Ba107H6_.js → index-Nb4qkCNr.js} +1 -1
  189. package/ui-dist/assets/{index-CCXbP8bR.js → index-pL9dqAww.js} +1 -1
  190. package/ui-dist/assets/{infoDiagram-LFFYTUFH-Cw-pFXvz.js → infoDiagram-LFFYTUFH-DoMYSWm0.js} +1 -1
  191. package/ui-dist/assets/{ishikawaDiagram-PHBUUO56-DYBE89ch.js → ishikawaDiagram-PHBUUO56-CHNtw8iI.js} +1 -1
  192. package/ui-dist/assets/{journeyDiagram-4ABVD52K-BffUyqL3.js → journeyDiagram-4ABVD52K-DKQdzarJ.js} +1 -1
  193. package/ui-dist/assets/{kanban-definition-K7BYSVSG-DLm2JOTw.js → kanban-definition-K7BYSVSG-DBgiLRzL.js} +1 -1
  194. package/ui-dist/assets/layout-BRIMvAi6.js +1 -0
  195. package/ui-dist/assets/{linear-C1MJByFR.js → linear-D4eTWwgG.js} +1 -1
  196. package/ui-dist/assets/{mermaid.core-to6hGwLu.js → mermaid.core-CV74wx1T.js} +57 -57
  197. package/ui-dist/assets/{mindmap-definition-YRQLILUH-M5rIZLx4.js → mindmap-definition-YRQLILUH-BupnhMjU.js} +1 -1
  198. package/ui-dist/assets/{pieDiagram-SKSYHLDU-CWkhJOUA.js → pieDiagram-SKSYHLDU-BCBWun2O.js} +1 -1
  199. package/ui-dist/assets/{quadrantDiagram-337W2JSQ-BJArGhA1.js → quadrantDiagram-337W2JSQ-BpLw3VwI.js} +1 -1
  200. package/ui-dist/assets/{requirementDiagram-Z7DCOOCP-ClgtLP-6.js → requirementDiagram-Z7DCOOCP-DWbjrtUM.js} +1 -1
  201. package/ui-dist/assets/{sankeyDiagram-WA2Y5GQK-DURQUXKr.js → sankeyDiagram-WA2Y5GQK-Dbi8ppiF.js} +1 -1
  202. package/ui-dist/assets/{sequenceDiagram-2WXFIKYE-9NReo3EB.js → sequenceDiagram-2WXFIKYE-CMm2yoGY.js} +1 -1
  203. package/ui-dist/assets/{stateDiagram-RAJIS63D-CM8QxhYg.js → stateDiagram-RAJIS63D-L6YwWQ2H.js} +1 -1
  204. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-D3owTYsb.js +1 -0
  205. package/ui-dist/assets/{timeline-definition-YZTLITO2-CSzS4egL.js → timeline-definition-YZTLITO2-C6gUqn7X.js} +1 -1
  206. package/ui-dist/assets/{treemap-KZPCXAKY-DqwRUSvK.js → treemap-KZPCXAKY-BwJ0Tkq9.js} +4 -4
  207. package/ui-dist/assets/{vennDiagram-LZ73GAT5-ny0b2nXN.js → vennDiagram-LZ73GAT5-BFN1AzRi.js} +1 -1
  208. package/ui-dist/assets/{xychartDiagram-JWTSCODW-D1CHqiUl.js → xychartDiagram-JWTSCODW-Cj7hspvA.js} +1 -1
  209. package/ui-dist/index.html +2 -2
  210. package/ui-dist/assets/_basePickBy-ADNVqvyv.js +0 -1
  211. package/ui-dist/assets/_baseUniq-BC2K5rPi.js +0 -1
  212. package/ui-dist/assets/channel-C6wc7Z0r.js +0 -1
  213. package/ui-dist/assets/classDiagram-VBA2DB6C-DfnjPhAc.js +0 -1
  214. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-DfnjPhAc.js +0 -1
  215. package/ui-dist/assets/clone-COIuvM38.js +0 -1
  216. package/ui-dist/assets/index-BFUBUA_w.js +0 -1534
  217. package/ui-dist/assets/index-C4Z-ti7D.css +0 -1
  218. package/ui-dist/assets/layout-B0odtFVd.js +0 -1
  219. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-DUT46WZk.js +0 -1
@@ -9,6 +9,7 @@ import { accessService, approvalService, chatService, heartbeatService, issueApp
9
9
  import { assertBoard, assertCompanyAccess, getActorInfo } from "./authz.js";
10
10
  import { redactEventPayload } from "../redaction.js";
11
11
  import { forbidden, unprocessable } from "../errors.js";
12
+ import { wakeIssueAssigneeAfterChatConversion, } from "./chat-issue-assignment-wakeup.js";
12
13
  function redactApprovalPayload(approval) {
13
14
  return {
14
15
  ...approval,
@@ -39,6 +40,16 @@ function buildChatApprovalObservabilityContext(approval, input = {}) {
39
40
  },
40
41
  };
41
42
  }
43
+ function isChatConvertedIssue(value) {
44
+ return (typeof value === "object" &&
45
+ value !== null &&
46
+ typeof value.id === "string" &&
47
+ typeof value.orgId === "string" &&
48
+ typeof value.title === "string" &&
49
+ typeof value.status === "string" &&
50
+ (value.assigneeAgentId === null ||
51
+ typeof value.assigneeAgentId === "string"));
52
+ }
42
53
  async function withChatApprovalObservation(context, input, fn) {
43
54
  let executionError = null;
44
55
  try {
@@ -275,6 +286,7 @@ export function approvalRoutes(db) {
275
286
  }
276
287
  const { approval, applied } = await svc.approve(id, req.body.decidedByUserId ?? "board", req.body.decisionNote, payloadOverride);
277
288
  if (applied) {
289
+ let chatAppliedIssue = null;
278
290
  if (approval.type === "chat_issue_creation" || approval.type === "chat_operation") {
279
291
  const chatObservation = buildChatApprovalObservabilityContext(approval, {
280
292
  status: approval.status,
@@ -290,7 +302,7 @@ export function approvalRoutes(db) {
290
302
  approvalType: approval.type,
291
303
  },
292
304
  }, async () => {
293
- await chatsSvc.applyApprovedApproval(approval, req.actor.userId ?? "board");
305
+ chatAppliedIssue = await chatsSvc.applyApprovedApproval(approval, req.actor.userId ?? "board");
294
306
  await emitChatApprovalObservationEvent(chatObservation, {
295
307
  name: "chat.approval.applied",
296
308
  metadata: {
@@ -300,7 +312,27 @@ export function approvalRoutes(db) {
300
312
  });
301
313
  }
302
314
  else {
303
- await chatsSvc.applyApprovedApproval(approval, req.actor.userId ?? "board");
315
+ chatAppliedIssue = await chatsSvc.applyApprovedApproval(approval, req.actor.userId ?? "board");
316
+ }
317
+ if (approval.type === "chat_issue_creation" && isChatConvertedIssue(chatAppliedIssue)) {
318
+ await wakeIssueAssigneeAfterChatConversion({
319
+ db,
320
+ heartbeat,
321
+ issue: chatAppliedIssue,
322
+ reason: "issue_assigned",
323
+ mutation: "chat_approval_approved",
324
+ contextSource: "chat.approval_approved",
325
+ requestedByActorType: "user",
326
+ requestedByActorId: req.actor.userId ?? "board",
327
+ activityAction: "chat.issue_assignee_wakeup_queued",
328
+ activityEntityType: "chat",
329
+ activityEntityId: typeof approval.payload?.chatConversationId === "string" ? approval.payload.chatConversationId : approval.id,
330
+ activityDetails: {
331
+ approvalId: approval.id,
332
+ issueIdentifier: chatAppliedIssue.identifier ?? null,
333
+ },
334
+ logActivityFn: logActivity,
335
+ });
304
336
  }
305
337
  const linkedIssues = await issueApprovalsSvc.listIssuesForApproval(approval.id);
306
338
  const linkedIssueIds = linkedIssues.map((issue) => issue.id);
@@ -1 +1 @@
1
- {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/routes/approvals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/routes/approvals.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type { logActivity } from "../services/activity-log.js";
2
+ import { type IssueAssignmentWakeupDeps } from "../services/issue-assignment-wakeup.js";
3
+ import type { Db } from "@rudderhq/db";
4
+ export type ChatConvertedIssue = {
5
+ id: string;
6
+ orgId: string;
7
+ assigneeAgentId: string | null;
8
+ status: string;
9
+ title: string;
10
+ description?: string | null;
11
+ priority?: string | null;
12
+ };
13
+ export declare function wakeIssueAssigneeAfterChatConversion(input: {
14
+ db: Db;
15
+ heartbeat: IssueAssignmentWakeupDeps;
16
+ issue: ChatConvertedIssue;
17
+ reason: string;
18
+ mutation: string;
19
+ contextSource: string;
20
+ requestedByActorType: "user" | "agent" | "system";
21
+ requestedByActorId: string | null;
22
+ activityAction?: string;
23
+ activityEntityType?: string;
24
+ activityEntityId?: string;
25
+ activityDetails?: Record<string, unknown>;
26
+ logActivityFn?: typeof logActivity;
27
+ }): Promise<void>;
28
+ //# sourceMappingURL=chat-issue-assignment-wakeup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-issue-assignment-wakeup.d.ts","sourceRoot":"","sources":["../../src/routes/chat-issue-assignment-wakeup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAA8B,KAAK,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACpH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,wBAAsB,oCAAoC,CAAC,KAAK,EAAE;IAChE,EAAE,EAAE,EAAE,CAAC;IACP,SAAS,EAAE,yBAAyB,CAAC;IACrC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAClD,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,aAAa,CAAC,EAAE,OAAO,WAAW,CAAC;CACpC,iBAqDA"}
@@ -0,0 +1,54 @@
1
+ import { logger } from "../middleware/logger.js";
2
+ import { queueIssueAssignmentWakeup } from "../services/issue-assignment-wakeup.js";
3
+ export async function wakeIssueAssigneeAfterChatConversion(input) {
4
+ if (!input.issue.assigneeAgentId || input.issue.status === "backlog")
5
+ return;
6
+ try {
7
+ const wakeRun = await queueIssueAssignmentWakeup({
8
+ heartbeat: input.heartbeat,
9
+ issue: input.issue,
10
+ reason: input.reason,
11
+ mutation: input.mutation,
12
+ contextSource: input.contextSource,
13
+ requestedByActorType: input.requestedByActorType,
14
+ requestedByActorId: input.requestedByActorId,
15
+ rethrowOnError: true,
16
+ });
17
+ if (input.activityAction && input.activityEntityType && input.activityEntityId && input.logActivityFn) {
18
+ await input.logActivityFn(input.db, {
19
+ orgId: input.issue.orgId,
20
+ actorType: input.requestedByActorType,
21
+ actorId: input.requestedByActorId ?? "system",
22
+ action: input.activityAction,
23
+ entityType: input.activityEntityType,
24
+ entityId: input.activityEntityId,
25
+ details: {
26
+ issueId: input.issue.id,
27
+ assigneeAgentId: input.issue.assigneeAgentId,
28
+ wakeRunId: wakeRun && typeof wakeRun === "object" && "id" in wakeRun ? wakeRun.id : null,
29
+ ...(input.activityDetails ?? {}),
30
+ },
31
+ });
32
+ }
33
+ }
34
+ catch (err) {
35
+ logger.warn({ err, issueId: input.issue.id, assigneeAgentId: input.issue.assigneeAgentId }, "failed to wake assignee after chat issue conversion");
36
+ if (input.activityAction && input.activityEntityType && input.activityEntityId && input.logActivityFn) {
37
+ await input.logActivityFn(input.db, {
38
+ orgId: input.issue.orgId,
39
+ actorType: input.requestedByActorType,
40
+ actorId: input.requestedByActorId ?? "system",
41
+ action: input.activityAction.replace(/_queued$/, "_failed"),
42
+ entityType: input.activityEntityType,
43
+ entityId: input.activityEntityId,
44
+ details: {
45
+ issueId: input.issue.id,
46
+ assigneeAgentId: input.issue.assigneeAgentId,
47
+ error: err instanceof Error ? err.message : String(err),
48
+ ...(input.activityDetails ?? {}),
49
+ },
50
+ });
51
+ }
52
+ }
53
+ }
54
+ //# sourceMappingURL=chat-issue-assignment-wakeup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-issue-assignment-wakeup.js","sourceRoot":"","sources":["../../src/routes/chat-issue-assignment-wakeup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/routes/chats.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAmBvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAsC1D,wBAAgB,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,8CAqxCzD"}
1
+ {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/routes/chats.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAmBvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAyC1D,wBAAgB,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,8CA21CzD"}
@@ -3,19 +3,20 @@ import { Router } from "express";
3
3
  import multer from "multer";
4
4
  import { addChatMessageSchema, chatAutomationCreateFromStructuredPayload, createChatConversationSchema, updateChatConversationSchema, } from "@rudderhq/shared";
5
5
  import { isAllowedContentType, MAX_ATTACHMENT_BYTES } from "../attachment-types.js";
6
- import { forbidden, HttpError, unauthorized, unprocessable } from "../errors.js";
6
+ import { conflict, forbidden, HttpError, unauthorized, unprocessable } from "../errors.js";
7
7
  import { observeExecutionEvent, updateExecutionObservation, updateExecutionTraceIO, withExecutionObservation, } from "../langfuse.js";
8
8
  import { emitExecutionTranscriptTree } from "../langfuse-transcript.js";
9
9
  import { validate } from "../middleware/validate.js";
10
10
  import { logger } from "../middleware/logger.js";
11
- import { ChatAssistantStreamError, chatAssistantService, } from "../services/chat-assistant.js";
11
+ import { CHAT_ASSISTANT_USER_ERROR_MESSAGE, ChatAssistantStreamError, chatAssistantService, } from "../services/chat-assistant.js";
12
12
  import { claimChatGeneration, hasActiveChatGeneration } from "../services/chat-generation-locks.js";
13
- import { accessService, agentService, automationService, chatService, operatorProfileService, organizationService, goalService, issueService, logActivity, projectService, } from "../services/index.js";
13
+ import { accessService, agentService, automationService, chatService, heartbeatService, operatorProfileService, organizationService, goalService, issueService, logActivity, projectService, } from "../services/index.js";
14
14
  import { assertTimeZone } from "../services/automations.scheduler.js";
15
15
  import { validateCron } from "../services/cron.js";
16
16
  import { summarizeRuntimeSkillsForTrace } from "../services/runtime-trace-metadata.js";
17
17
  import { assertBoard, assertCompanyAccess, getActorInfo } from "./authz.js";
18
18
  import { registerChatStreamRoutes } from "./chats.stream-routes.js";
19
+ import { wakeIssueAssigneeAfterChatConversion } from "./chat-issue-assignment-wakeup.js";
19
20
  export function chatRoutes(db, storage) {
20
21
  const router = Router();
21
22
  const svc = chatService(db);
@@ -28,6 +29,7 @@ export function chatRoutes(db, storage) {
28
29
  const access = accessService(db);
29
30
  const assistantSvc = chatAssistantService(db, storage);
30
31
  const operatorProfiles = operatorProfileService(db);
32
+ const heartbeat = heartbeatService(db);
31
33
  const upload = multer({
32
34
  storage: multer.memoryStorage(),
33
35
  limits: { fileSize: MAX_ATTACHMENT_BYTES, files: 1 },
@@ -495,7 +497,6 @@ export function chatRoutes(db, storage) {
495
497
  throw unprocessable(scheduleError);
496
498
  const scheduleTrigger = {
497
499
  kind: "schedule",
498
- label: automationCreate.schedule.label ?? "chat-requested schedule",
499
500
  enabled: automationCreate.schedule.enabled,
500
501
  cronExpression: automationCreate.schedule.cronExpression,
501
502
  timezone: automationCreate.schedule.timezone,
@@ -623,6 +624,16 @@ export function chatRoutes(db, storage) {
623
624
  createdByAgentId: replyingAgentId,
624
625
  messageId: proposalMessage.id,
625
626
  });
627
+ await wakeIssueAssigneeAfterChatConversion({
628
+ db,
629
+ heartbeat,
630
+ issue,
631
+ reason: "issue_assigned",
632
+ mutation: "chat_auto_create",
633
+ contextSource: "chat.auto_create",
634
+ requestedByActorType: "system",
635
+ requestedByActorId: "chat-assistant",
636
+ });
626
637
  const systemMessage = await svc.addMessage(conversation.id, {
627
638
  orgId: conversation.orgId,
628
639
  role: "system",
@@ -757,7 +768,7 @@ export function chatRoutes(db, storage) {
757
768
  const trimmed = body.trim();
758
769
  const fallbackBody = status === "stopped"
759
770
  ? "Chat run stopped before a final reply. Continue the conversation to resume from the preserved context."
760
- : "Chat run failed before a final reply. Continue the conversation to resume from the preserved context.";
771
+ : CHAT_ASSISTANT_USER_ERROR_MESSAGE;
761
772
  const durableBody = trimmed || (transcript.length > 0 ? fallbackBody : "");
762
773
  if (!durableBody)
763
774
  return null;
@@ -907,6 +918,46 @@ export function chatRoutes(db, storage) {
907
918
  });
908
919
  res.json(updated ? await assistantSvc.enrichConversation(updated) : null);
909
920
  });
921
+ router.delete("/chats/:id", async (req, res) => {
922
+ assertBoard(req);
923
+ const existing = await assertConversationAccess(req, req.params.id);
924
+ if (!existing) {
925
+ res.status(404).json({ error: "Chat conversation not found" });
926
+ return;
927
+ }
928
+ if (hasActiveChatGeneration(existing.id)) {
929
+ throw conflict("Cannot delete a chat while a reply is in progress");
930
+ }
931
+ const attachments = await svc.listAttachmentsForConversation(existing.id);
932
+ const deleted = await svc.remove(existing.id);
933
+ if (!deleted) {
934
+ res.status(404).json({ error: "Chat conversation not found" });
935
+ return;
936
+ }
937
+ for (const attachment of attachments) {
938
+ try {
939
+ await storage.deleteObject(attachment.orgId, attachment.objectKey);
940
+ }
941
+ catch (err) {
942
+ logger.warn({ err, conversationId: existing.id, attachmentId: attachment.id }, "failed to delete chat attachment object during chat delete");
943
+ }
944
+ }
945
+ const actor = getActorInfo(req);
946
+ await logActivity(db, {
947
+ orgId: existing.orgId,
948
+ actorType: actor.actorType,
949
+ actorId: actor.actorId,
950
+ agentId: actor.agentId,
951
+ runId: actor.runId,
952
+ action: "chat.deleted",
953
+ entityType: "chat",
954
+ entityId: existing.id,
955
+ details: {
956
+ title: existing.title,
957
+ },
958
+ });
959
+ res.json(deleted);
960
+ });
910
961
  router.get("/chats/:id/messages", async (req, res) => {
911
962
  const conversation = await assertConversationAccess(req, req.params.id);
912
963
  if (!conversation) {
@@ -916,9 +967,23 @@ export function chatRoutes(db, storage) {
916
967
  if (!hasActiveChatGeneration(conversation.id)) {
917
968
  await svc.markInterruptedStreamingMessages(conversation.id);
918
969
  }
919
- const messages = await svc.listMessages(conversation.id);
970
+ const includeTranscript = req.query.includeTranscript === "true";
971
+ const messages = await svc.listMessages(conversation.id, { includeTranscript });
920
972
  res.json(messages);
921
973
  });
974
+ router.get("/chats/:id/messages/:messageId/transcript", async (req, res) => {
975
+ const conversation = await assertConversationAccess(req, req.params.id);
976
+ if (!conversation) {
977
+ res.status(404).json({ error: "Chat conversation not found" });
978
+ return;
979
+ }
980
+ const transcript = await svc.getMessageTranscript(conversation.id, req.params.messageId);
981
+ if (!transcript) {
982
+ res.status(404).json({ error: "Chat message not found" });
983
+ return;
984
+ }
985
+ res.json(transcript);
986
+ });
922
987
  router.post("/chats/:id/messages", validate(addChatMessageSchema), async (req, res) => {
923
988
  const conversation = await assertConversationAccess(req, req.params.id);
924
989
  if (!conversation) {
@@ -1073,7 +1138,7 @@ export function chatRoutes(db, storage) {
1073
1138
  throw err;
1074
1139
  }
1075
1140
  res.status(502).json({
1076
- error: err instanceof Error ? err.message : "Chat assistant failed to respond",
1141
+ error: CHAT_ASSISTANT_USER_ERROR_MESSAGE,
1077
1142
  });
1078
1143
  }
1079
1144
  finally {
@@ -1092,6 +1157,7 @@ export function chatRoutes(db, storage) {
1092
1157
  goalsSvc,
1093
1158
  access,
1094
1159
  operatorProfiles,
1160
+ heartbeat,
1095
1161
  assertConversationAccess,
1096
1162
  boardUserId,
1097
1163
  assertCanAssignTasks,