@rudderhq/server 0.2.0-canary.9 → 0.2.1

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 (196) hide show
  1. package/dist/bootstrap/register-api-routes.d.ts.map +1 -1
  2. package/dist/bootstrap/register-api-routes.js +2 -0
  3. package/dist/bootstrap/register-api-routes.js.map +1 -1
  4. package/dist/bundled-plugins/plugin-linear/dist/ui/index.js +8 -1
  5. package/dist/bundled-plugins/plugin-linear/dist/ui/index.js.map +2 -2
  6. package/dist/bundled-plugins/plugin-linear/dist/worker.js +20 -5
  7. package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +2 -2
  8. package/dist/home-paths.d.ts +2 -0
  9. package/dist/home-paths.d.ts.map +1 -1
  10. package/dist/home-paths.js +6 -1
  11. package/dist/home-paths.js.map +1 -1
  12. package/dist/index.d.ts +11 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +55 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/langfuse-transcript.d.ts.map +1 -1
  17. package/dist/langfuse-transcript.js +16 -2
  18. package/dist/langfuse-transcript.js.map +1 -1
  19. package/dist/middleware/auth.d.ts.map +1 -1
  20. package/dist/middleware/auth.js +54 -1
  21. package/dist/middleware/auth.js.map +1 -1
  22. package/dist/onboarding-assets/ceo/HEARTBEAT.md +8 -4
  23. package/dist/onboarding-assets/default/HEARTBEAT.md +7 -4
  24. package/dist/routes/agents.d.ts.map +1 -1
  25. package/dist/routes/agents.js +79 -4
  26. package/dist/routes/agents.js.map +1 -1
  27. package/dist/routes/approvals.d.ts.map +1 -1
  28. package/dist/routes/approvals.js +47 -2
  29. package/dist/routes/approvals.js.map +1 -1
  30. package/dist/routes/chats.d.ts.map +1 -1
  31. package/dist/routes/chats.js +300 -92
  32. package/dist/routes/chats.js.map +1 -1
  33. package/dist/routes/costs.d.ts.map +1 -1
  34. package/dist/routes/costs.js +20 -0
  35. package/dist/routes/costs.js.map +1 -1
  36. package/dist/routes/issues.d.ts.map +1 -1
  37. package/dist/routes/issues.js +236 -22
  38. package/dist/routes/issues.js.map +1 -1
  39. package/dist/routes/onboarding.d.ts +3 -0
  40. package/dist/routes/onboarding.d.ts.map +1 -0
  41. package/dist/routes/onboarding.js +545 -0
  42. package/dist/routes/onboarding.js.map +1 -0
  43. package/dist/routes/orgs.d.ts.map +1 -1
  44. package/dist/routes/orgs.js +22 -0
  45. package/dist/routes/orgs.js.map +1 -1
  46. package/dist/services/activity.d.ts.map +1 -1
  47. package/dist/services/activity.js +32 -1
  48. package/dist/services/activity.js.map +1 -1
  49. package/dist/services/agent-run-context.d.ts +1 -0
  50. package/dist/services/agent-run-context.d.ts.map +1 -1
  51. package/dist/services/agent-run-context.js +1 -0
  52. package/dist/services/agent-run-context.js.map +1 -1
  53. package/dist/services/agents.d.ts +13 -13
  54. package/dist/services/automations.d.ts +2 -2
  55. package/dist/services/calendar.d.ts +4 -4
  56. package/dist/services/chat-assistant.d.ts +11 -2
  57. package/dist/services/chat-assistant.d.ts.map +1 -1
  58. package/dist/services/chat-assistant.js +143 -8
  59. package/dist/services/chat-assistant.js.map +1 -1
  60. package/dist/services/chats.d.ts +112 -13
  61. package/dist/services/chats.d.ts.map +1 -1
  62. package/dist/services/chats.js +218 -38
  63. package/dist/services/chats.js.map +1 -1
  64. package/dist/services/costs.d.ts +21 -0
  65. package/dist/services/costs.d.ts.map +1 -1
  66. package/dist/services/costs.js +102 -2
  67. package/dist/services/costs.js.map +1 -1
  68. package/dist/services/finance.d.ts +2 -2
  69. package/dist/services/goals.d.ts +12 -12
  70. package/dist/services/instance-settings.d.ts.map +1 -1
  71. package/dist/services/instance-settings.js +27 -16
  72. package/dist/services/instance-settings.js.map +1 -1
  73. package/dist/services/issue-approvals.d.ts +16 -2
  74. package/dist/services/issue-approvals.d.ts.map +1 -1
  75. package/dist/services/issue-approvals.js +27 -4
  76. package/dist/services/issue-approvals.js.map +1 -1
  77. package/dist/services/issue-review-wakeup.d.ts +49 -1
  78. package/dist/services/issue-review-wakeup.d.ts.map +1 -1
  79. package/dist/services/issue-review-wakeup.js +39 -2
  80. package/dist/services/issue-review-wakeup.js.map +1 -1
  81. package/dist/services/issues.d.ts +2 -1
  82. package/dist/services/issues.d.ts.map +1 -1
  83. package/dist/services/issues.js +126 -5
  84. package/dist/services/issues.js.map +1 -1
  85. package/dist/services/knowledge-portability/organization-skills.d.ts +1 -0
  86. package/dist/services/knowledge-portability/organization-skills.d.ts.map +1 -1
  87. package/dist/services/knowledge-portability/organization-skills.js +3 -2
  88. package/dist/services/knowledge-portability/organization-skills.js.map +1 -1
  89. package/dist/services/messenger.d.ts +5 -0
  90. package/dist/services/messenger.d.ts.map +1 -1
  91. package/dist/services/messenger.js +154 -15
  92. package/dist/services/messenger.js.map +1 -1
  93. package/dist/services/organization-workspace-browser.d.ts.map +1 -1
  94. package/dist/services/organization-workspace-browser.js +64 -9
  95. package/dist/services/organization-workspace-browser.js.map +1 -1
  96. package/dist/services/orgs.d.ts +1 -1
  97. package/dist/services/plugin-registry.d.ts +4 -4
  98. package/dist/services/projects.d.ts +1 -1
  99. package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -1
  100. package/dist/services/runtime-kernel/heartbeat.js +571 -31
  101. package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
  102. package/dist/services/secrets.d.ts +5 -5
  103. package/dist/services/workspace-backups.d.ts.map +1 -1
  104. package/dist/services/workspace-backups.js +6 -0
  105. package/dist/services/workspace-backups.js.map +1 -1
  106. package/dist/services/workspace-runtime.d.ts.map +1 -1
  107. package/dist/services/workspace-runtime.js +2 -0
  108. package/dist/services/workspace-runtime.js.map +1 -1
  109. package/package.json +13 -13
  110. package/resources/bundled-skills/rudder/SKILL.md +72 -7
  111. package/resources/bundled-skills/rudder/references/cli-reference.md +34 -9
  112. package/resources/bundled-skills/rudder/references/organization-skills.md +12 -7
  113. package/resources/bundled-skills/rudder-create-agent/references/cli-reference.md +1 -0
  114. package/skills/rudder/SKILL.md +72 -7
  115. package/skills/rudder/references/cli-reference.md +34 -9
  116. package/skills/rudder/references/organization-skills.md +12 -7
  117. package/skills/rudder-create-agent/references/cli-reference.md +1 -0
  118. package/ui-dist/assets/{_basePickBy-aX2f6dVl.js → _basePickBy-EvWeCTRb.js} +1 -1
  119. package/ui-dist/assets/{_baseUniq-BYwL7heN.js → _baseUniq-C_DXAETg.js} +1 -1
  120. package/ui-dist/assets/{arc-BG9f5pwY.js → arc-BWTkVM-u.js} +1 -1
  121. package/ui-dist/assets/{architectureDiagram-2XIMDMQ5-BFFQoJJ1.js → architectureDiagram-2XIMDMQ5-yyX54Dgl.js} +1 -1
  122. package/ui-dist/assets/{blockDiagram-WCTKOSBZ-Bvx1IB1z.js → blockDiagram-WCTKOSBZ-DleWvS8P.js} +1 -1
  123. package/ui-dist/assets/{c4Diagram-IC4MRINW-DJbCE4sh.js → c4Diagram-IC4MRINW-CltWqWC_.js} +1 -1
  124. package/ui-dist/assets/channel-Gdzxe2a1.js +1 -0
  125. package/ui-dist/assets/{chunk-4BX2VUAB-BOVbLFsN.js → chunk-4BX2VUAB-CA6RvGN7.js} +1 -1
  126. package/ui-dist/assets/{chunk-55IACEB6-D5pKj6S9.js → chunk-55IACEB6-D_EpF39w.js} +1 -1
  127. package/ui-dist/assets/{chunk-FMBD7UC4-OY5xuJeR.js → chunk-FMBD7UC4-CYMkBnLy.js} +1 -1
  128. package/ui-dist/assets/{chunk-JSJVCQXG-C5X67KZg.js → chunk-JSJVCQXG-CIY2Cb1T.js} +1 -1
  129. package/ui-dist/assets/{chunk-KX2RTZJC-C-4PZ9Q_.js → chunk-KX2RTZJC-BUyGoIKj.js} +1 -1
  130. package/ui-dist/assets/{chunk-NQ4KR5QH-XysPlqPj.js → chunk-NQ4KR5QH-DkntSLtY.js} +1 -1
  131. package/ui-dist/assets/{chunk-QZHKN3VN-B5wEbFHo.js → chunk-QZHKN3VN-DeEs3yL0.js} +1 -1
  132. package/ui-dist/assets/{chunk-WL4C6EOR-BanwYFa2.js → chunk-WL4C6EOR-Va8TkdTb.js} +1 -1
  133. package/ui-dist/assets/classDiagram-VBA2DB6C-BN6WyuN3.js +1 -0
  134. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-BN6WyuN3.js +1 -0
  135. package/ui-dist/assets/clone-DL9OCUyP.js +1 -0
  136. package/ui-dist/assets/{cose-bilkent-S5V4N54A-Cd4q2swD.js → cose-bilkent-S5V4N54A-Bb6NLaVm.js} +1 -1
  137. package/ui-dist/assets/{dagre-KLK3FWXG-B_VyOhf3.js → dagre-KLK3FWXG-DpqLnZ3A.js} +1 -1
  138. package/ui-dist/assets/{diagram-E7M64L7V-BRoG4Mz6.js → diagram-E7M64L7V-D7J8NbEW.js} +1 -1
  139. package/ui-dist/assets/{diagram-IFDJBPK2-CRU_A9p9.js → diagram-IFDJBPK2-Ds2u81Zi.js} +1 -1
  140. package/ui-dist/assets/{diagram-P4PSJMXO-BYSQDbfb.js → diagram-P4PSJMXO-BwBplO7L.js} +1 -1
  141. package/ui-dist/assets/{erDiagram-INFDFZHY-v5j1kyWr.js → erDiagram-INFDFZHY-Ba-Ynr8U.js} +1 -1
  142. package/ui-dist/assets/{flowDiagram-PKNHOUZH-C06ZQgTj.js → flowDiagram-PKNHOUZH-FnOXpXb_.js} +1 -1
  143. package/ui-dist/assets/{ganttDiagram-A5KZAMGK-Dw9p5nQ1.js → ganttDiagram-A5KZAMGK-B8-MpUjy.js} +1 -1
  144. package/ui-dist/assets/{gitGraphDiagram-K3NZZRJ6-CrpXRIaP.js → gitGraphDiagram-K3NZZRJ6-DvyBGQTF.js} +1 -1
  145. package/ui-dist/assets/{graph-ClTUmULf.js → graph-BdpIVR-I.js} +1 -1
  146. package/ui-dist/assets/{index-DK13xhRv.js → index-3CPMGfu4.js} +1 -1
  147. package/ui-dist/assets/index-44A3IjSd.css +1 -0
  148. package/ui-dist/assets/{index-L6M3nVxh.js → index-B4seykMn.js} +1 -1
  149. package/ui-dist/assets/{index-Bpc2gRVo.js → index-B5Lq7qho.js} +1 -1
  150. package/ui-dist/assets/{index-DkDkjZ-D.js → index-BKWZYXO6.js} +1 -1
  151. package/ui-dist/assets/{index-DxzAgTWd.js → index-BO-P9C91.js} +1 -1
  152. package/ui-dist/assets/{index-BvGogi9q.js → index-BO9KiNr0.js} +1 -1
  153. package/ui-dist/assets/{index-Btwy7Cp-.js → index-Bd_GitJ7.js} +1 -1
  154. package/ui-dist/assets/{index-DNlWBtHa.js → index-BeyQP4jc.js} +1 -1
  155. package/ui-dist/assets/{index-4uxadHo5.js → index-Bp3rYm9R.js} +1 -1
  156. package/ui-dist/assets/{index-DWFMs9uk.js → index-CBAKsDOH.js} +1 -1
  157. package/ui-dist/assets/{index-T81awgzh.js → index-CWPEuLky.js} +1 -1
  158. package/ui-dist/assets/{index-DAhPD1Ss.js → index-Ce0xbQ5p.js} +1 -1
  159. package/ui-dist/assets/{index-_x9smX4T.js → index-ChyWxMPa.js} +1 -1
  160. package/ui-dist/assets/{index-CIr7H9OI.js → index-CkEo4bIl.js} +1 -1
  161. package/ui-dist/assets/{index-sLGLHxIu.js → index-CvzsgQH3.js} +1 -1
  162. package/ui-dist/assets/{index-D-6z8wxx.js → index-DF0X3XZi.js} +1 -1
  163. package/ui-dist/assets/{index-BVfM9ax8.js → index-DNFqhIup.js} +1 -1
  164. package/ui-dist/assets/index-Dfi8PbGx.js +1484 -0
  165. package/ui-dist/assets/{index-C_BTFRTX.js → index-Dys_qAzR.js} +1 -1
  166. package/ui-dist/assets/{index-Cr7n11UG.js → index-DzKALBsQ.js} +1 -1
  167. package/ui-dist/assets/{index-CqYInp-c.js → index-Qe9bMaYk.js} +1 -1
  168. package/ui-dist/assets/{index-CQWmziMF.js → index-baeevrWz.js} +1 -1
  169. package/ui-dist/assets/{index-BYC_xlrx.js → index-bs5pLhnN.js} +1 -1
  170. package/ui-dist/assets/{infoDiagram-LFFYTUFH-BA3VxOIU.js → infoDiagram-LFFYTUFH-51Iz4iFI.js} +1 -1
  171. package/ui-dist/assets/{ishikawaDiagram-PHBUUO56-DGrizi0S.js → ishikawaDiagram-PHBUUO56-XMkPw0tW.js} +1 -1
  172. package/ui-dist/assets/{journeyDiagram-4ABVD52K-6ey34a7e.js → journeyDiagram-4ABVD52K-DAX0bTCG.js} +1 -1
  173. package/ui-dist/assets/{kanban-definition-K7BYSVSG-CwNnmsam.js → kanban-definition-K7BYSVSG-DndcgBkd.js} +1 -1
  174. package/ui-dist/assets/{layout-buNxvllr.js → layout-DE8DhR5g.js} +1 -1
  175. package/ui-dist/assets/{linear-BPWhxaRl.js → linear-B6lAW9Wb.js} +1 -1
  176. package/ui-dist/assets/{mermaid.core-Cajx0s-z.js → mermaid.core-BG--kYhA.js} +4 -4
  177. package/ui-dist/assets/{mindmap-definition-YRQLILUH-Bf5InEp-.js → mindmap-definition-YRQLILUH-DkjV0oE3.js} +1 -1
  178. package/ui-dist/assets/{pieDiagram-SKSYHLDU-CZFz7NWC.js → pieDiagram-SKSYHLDU-D03TjqYu.js} +1 -1
  179. package/ui-dist/assets/{quadrantDiagram-337W2JSQ-XBmKVoc9.js → quadrantDiagram-337W2JSQ-C0oqv-xU.js} +1 -1
  180. package/ui-dist/assets/{requirementDiagram-Z7DCOOCP-BkgdDv0H.js → requirementDiagram-Z7DCOOCP-okIS8feM.js} +1 -1
  181. package/ui-dist/assets/{sankeyDiagram-WA2Y5GQK-CASFR28i.js → sankeyDiagram-WA2Y5GQK-WOnxUdkO.js} +1 -1
  182. package/ui-dist/assets/{sequenceDiagram-2WXFIKYE-BzY7LMRv.js → sequenceDiagram-2WXFIKYE-RVCXfMRR.js} +1 -1
  183. package/ui-dist/assets/{stateDiagram-RAJIS63D-C9UMSk36.js → stateDiagram-RAJIS63D-CZFHvVtT.js} +1 -1
  184. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-DgYYudAJ.js +1 -0
  185. package/ui-dist/assets/{timeline-definition-YZTLITO2-D6m4R4xe.js → timeline-definition-YZTLITO2-S0uy5mlJ.js} +1 -1
  186. package/ui-dist/assets/{treemap-KZPCXAKY-7V9mnT8T.js → treemap-KZPCXAKY-Bhyg_yHs.js} +1 -1
  187. package/ui-dist/assets/{vennDiagram-LZ73GAT5-Ci-sfAyq.js → vennDiagram-LZ73GAT5-EnVupOQz.js} +1 -1
  188. package/ui-dist/assets/{xychartDiagram-JWTSCODW-BayXhRSu.js → xychartDiagram-JWTSCODW-BYpdJxGK.js} +1 -1
  189. package/ui-dist/index.html +2 -2
  190. package/ui-dist/assets/channel-ClX7n84B.js +0 -1
  191. package/ui-dist/assets/classDiagram-VBA2DB6C-DvWbsnVz.js +0 -1
  192. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-DvWbsnVz.js +0 -1
  193. package/ui-dist/assets/clone-Dla3A8ZA.js +0 -1
  194. package/ui-dist/assets/index-CSANx6ee.css +0 -1
  195. package/ui-dist/assets/index-DCa9-Sy-.js +0 -1439
  196. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-DWVhbAdj.js +0 -1
@@ -8,10 +8,12 @@ const CHAT_UNSUPPORTED_ADAPTER_TYPES = new Set(["process", "http"]);
8
8
  const CHAT_RESULT_SENTINEL_PREFIX = "__RUDDER_RESULT_";
9
9
  export class ChatAssistantStreamError extends Error {
10
10
  partialBody;
11
- constructor(message, partialBody) {
11
+ generatedAttachments;
12
+ constructor(message, partialBody, generatedAttachments = []) {
12
13
  super(message);
13
14
  this.name = "ChatAssistantStreamError";
14
15
  this.partialBody = partialBody;
16
+ this.generatedAttachments = generatedAttachments;
15
17
  }
16
18
  }
17
19
  function safeTrim(value) {
@@ -58,6 +60,8 @@ function buildPrompt(input) {
58
60
  label: link.entity?.label ?? null,
59
61
  identifier: link.entity?.identifier ?? null,
60
62
  status: link.entity?.status ?? null,
63
+ description: link.entity?.description ?? null,
64
+ priority: link.entity?.priority ?? null,
61
65
  }));
62
66
  const history = input.messages.slice(-12).map((message) => ({
63
67
  role: message.role,
@@ -144,6 +148,42 @@ function buildSelectedProjectPromptSection(contextLinks) {
144
148
  lines.push("Use this as the default project for issue proposals and project-scoped reasoning unless the user explicitly chooses another project.");
145
149
  return lines.join("\n");
146
150
  }
151
+ function buildSelectedIssuePromptSection(conversation, contextLinks) {
152
+ const issueLink = contextLinks.find((link) => link.entityType === "issue");
153
+ const primaryIssue = conversation.primaryIssue;
154
+ if (!issueLink && !primaryIssue)
155
+ return null;
156
+ const lines = ["Selected issue context:"];
157
+ if (issueLink) {
158
+ lines.push(`- Issue ID: ${issueLink.entityId}`);
159
+ if (issueLink.entity?.identifier) {
160
+ lines.push(`- Identifier: ${issueLink.entity.identifier}`);
161
+ }
162
+ if (issueLink.entity?.label) {
163
+ lines.push(`- Title: ${issueLink.entity.label}`);
164
+ }
165
+ if (issueLink.entity?.status) {
166
+ lines.push(`- Status: ${issueLink.entity.status}`);
167
+ }
168
+ if (issueLink.entity?.priority) {
169
+ lines.push(`- Priority: ${issueLink.entity.priority}`);
170
+ }
171
+ if (issueLink.entity?.description?.trim()) {
172
+ lines.push(`- Description: ${issueLink.entity.description.trim()}`);
173
+ }
174
+ }
175
+ else if (primaryIssue) {
176
+ lines.push(`- Issue ID: ${primaryIssue.id}`);
177
+ if (primaryIssue.identifier) {
178
+ lines.push(`- Identifier: ${primaryIssue.identifier}`);
179
+ }
180
+ lines.push(`- Title: ${primaryIssue.title}`);
181
+ lines.push(`- Status: ${primaryIssue.status}`);
182
+ lines.push(`- Priority: ${primaryIssue.priority}`);
183
+ }
184
+ lines.push("Use this as the default issue context for this chat unless the user explicitly switches topics.");
185
+ return lines.join("\n");
186
+ }
147
187
  function buildChatSpeakerPromptSection(runtimeSource) {
148
188
  const name = runtimeSource.descriptor.sourceLabel;
149
189
  if (runtimeSource.descriptor.sourceType === "agent") {
@@ -166,7 +206,6 @@ function buildBaseSystemPromptSections(runtimeSource, resultSentinel) {
166
206
  "Attachment URLs in the conversation input are relative to $RUDDER_API_URL and require Authorization: Bearer $RUDDER_API_KEY when fetched from tools.",
167
207
  "Use result kind 'message' for clarification, summaries, and small requests that can stay in chat.",
168
208
  "Use result kind 'issue_proposal' for larger work that should become an issue.",
169
- "Use result kind 'routing_suggestion' only when recommending an agent or role to handle work.",
170
209
  "Reply in two phases.",
171
210
  "Phase 1: while you work, write concise progress updates in Markdown with no JSON fences. These are process transcript entries, not the final answer.",
172
211
  `Phase 2: on a new line, emit exactly ${resultSentinel} followed immediately by one JSON object. The JSON body is the final user-visible answer.`,
@@ -195,6 +234,9 @@ function buildResponseSchemaPromptSection(planMode) {
195
234
  description: "required for issue_proposal",
196
235
  priority: "critical|high|medium|low",
197
236
  assigneeAgentId: "optional uuid",
237
+ assigneeUserId: "optional user id",
238
+ reviewerAgentId: "optional uuid",
239
+ reviewerUserId: "optional user id",
198
240
  projectId: "optional uuid",
199
241
  goalId: "optional uuid",
200
242
  parentId: "optional uuid",
@@ -249,6 +291,84 @@ function extractJsonObject(text) {
249
291
  }
250
292
  return null;
251
293
  }
294
+ function asRecord(value) {
295
+ return value && typeof value === "object" && !Array.isArray(value)
296
+ ? value
297
+ : null;
298
+ }
299
+ function extractImageGenerationItem(event) {
300
+ const direct = event.type === "image_generation_call" ? event : null;
301
+ const item = asRecord(event.item);
302
+ const payload = asRecord(event.payload);
303
+ const candidate = direct ?? item ?? payload;
304
+ if (candidate?.type !== "image_generation_call")
305
+ return null;
306
+ return candidate;
307
+ }
308
+ function base64PngToBuffer(value) {
309
+ if (typeof value !== "string")
310
+ return null;
311
+ const trimmed = value.trim();
312
+ if (!trimmed)
313
+ return null;
314
+ const base64 = trimmed.includes(",") ? trimmed.slice(trimmed.indexOf(",") + 1) : trimmed;
315
+ if (!/^[a-zA-Z0-9+/=\s]+$/.test(base64))
316
+ return null;
317
+ try {
318
+ const buffer = Buffer.from(base64.replace(/\s+/g, ""), "base64");
319
+ if (buffer.length <= 0)
320
+ return null;
321
+ return buffer;
322
+ }
323
+ catch {
324
+ return null;
325
+ }
326
+ }
327
+ function extractGeneratedAttachments(result) {
328
+ const raw = result.resultJson && typeof result.resultJson === "object" && !Array.isArray(result.resultJson)
329
+ ? result.resultJson
330
+ : null;
331
+ const stdout = typeof raw?.stdout === "string" ? raw.stdout : "";
332
+ if (!stdout)
333
+ return [];
334
+ const attachments = [];
335
+ const seen = new Set();
336
+ for (const rawLine of stdout.split(/\r?\n/)) {
337
+ const line = rawLine.trim();
338
+ if (!line || !line.includes("image_generation_call"))
339
+ continue;
340
+ let parsed;
341
+ try {
342
+ parsed = JSON.parse(line);
343
+ }
344
+ catch {
345
+ continue;
346
+ }
347
+ const event = asRecord(parsed);
348
+ if (!event)
349
+ continue;
350
+ const item = extractImageGenerationItem(event);
351
+ if (!item)
352
+ continue;
353
+ const buffer = base64PngToBuffer(item.result);
354
+ if (!buffer)
355
+ continue;
356
+ const toolCallId = typeof item.id === "string" && item.id.trim() ? item.id.trim() : null;
357
+ const key = toolCallId ?? `${buffer.length}:${buffer.subarray(0, 32).toString("base64")}`;
358
+ if (seen.has(key))
359
+ continue;
360
+ seen.add(key);
361
+ const filenameStem = toolCallId?.replace(/[^a-zA-Z0-9._-]+/g, "_") || `generated-image-${attachments.length + 1}`;
362
+ attachments.push({
363
+ source: "codex_image_generation",
364
+ originalFilename: `${filenameStem}.png`,
365
+ contentType: "image/png",
366
+ body: buffer,
367
+ toolCallId,
368
+ });
369
+ }
370
+ return attachments;
371
+ }
252
372
  function validateAssistantResult(payload, options = {}) {
253
373
  const kind = typeof payload.kind === "string" ? payload.kind : "message";
254
374
  const payloadBody = typeof payload.body === "string" ? payload.body.trim() : "";
@@ -259,10 +379,7 @@ function validateAssistantResult(payload, options = {}) {
259
379
  if (!body) {
260
380
  throw new Error("Assistant response body was empty");
261
381
  }
262
- if (kind !== "message" &&
263
- kind !== "issue_proposal" &&
264
- kind !== "operation_proposal" &&
265
- kind !== "routing_suggestion") {
382
+ if (kind !== "message" && kind !== "issue_proposal" && kind !== "operation_proposal") {
266
383
  throw new Error(`Unsupported assistant result kind: ${kind}`);
267
384
  }
268
385
  return {
@@ -274,6 +391,7 @@ function validateAssistantResult(payload, options = {}) {
274
391
  function buildConversationPrompt(input, runtimeSource, resultSentinel, orgResourcesPrompt) {
275
392
  const operatorProfileSection = buildOperatorProfilePromptSection(input.operatorProfile);
276
393
  const selectedProjectSection = buildSelectedProjectPromptSection(input.contextLinks);
394
+ const selectedIssueSection = buildSelectedIssuePromptSection(input.conversation, input.contextLinks);
277
395
  const currentUserAttachmentSection = buildCurrentUserAttachmentPromptSection(input.messages.slice(-12));
278
396
  /**
279
397
  * Chat prompt assembly stays compositional on purpose.
@@ -289,6 +407,7 @@ function buildConversationPrompt(input, runtimeSource, resultSentinel, orgResour
289
407
  */
290
408
  return [
291
409
  systemPrompt(runtimeSource, input.conversation, resultSentinel),
410
+ ...(selectedIssueSection ? [selectedIssueSection] : []),
292
411
  ...(selectedProjectSection ? [selectedProjectSection] : []),
293
412
  ...(orgResourcesPrompt ? [orgResourcesPrompt] : []),
294
413
  ...(operatorProfileSection ? [operatorProfileSection] : []),
@@ -531,8 +650,14 @@ function parseAssistantEnvelope(rawText, resultSentinel) {
531
650
  usedSentinel: true,
532
651
  };
533
652
  }
534
- function parseCompletedAssistantReply(rawText, resultSentinel) {
653
+ function parseCompletedAssistantReply(rawText, resultSentinel, options = {}) {
535
654
  const enveloped = parseAssistantEnvelope(rawText, resultSentinel);
655
+ if (options.requireSentinel && !enveloped.usedSentinel) {
656
+ throw new Error("Chat adapter completed without the required Rudder result sentinel");
657
+ }
658
+ if (options.requireSentinel && enveloped.usedSentinel && !enveloped.jsonPayload) {
659
+ throw new Error("Chat adapter emitted the Rudder result sentinel without a valid JSON payload");
660
+ }
536
661
  if (enveloped.jsonPayload) {
537
662
  return validateAssistantResult(enveloped.jsonPayload, {
538
663
  bodyFallback: enveloped.usedSentinel ? enveloped.visibleBody : null,
@@ -907,9 +1032,19 @@ export function chatAssistantService(db) {
907
1032
  }
908
1033
  await maybeEmitAssistantState(input.onAssistantState, "finalizing");
909
1034
  const raw = resultText(result) || assistantTextAccumulator.fullText;
910
- const reply = parseCompletedAssistantReply(raw, resultSentinel);
1035
+ const generatedAttachments = extractGeneratedAttachments(result);
1036
+ let reply;
1037
+ try {
1038
+ reply = parseCompletedAssistantReply(raw, resultSentinel, { requireSentinel: true });
1039
+ }
1040
+ catch (error) {
1041
+ throw new ChatAssistantStreamError(error instanceof Error ? error.message : "Chat adapter returned an invalid final reply", partialBody, generatedAttachments);
1042
+ }
911
1043
  const finalBody = reply.body;
912
1044
  reply.replyingAgentId = runtimeAgentId;
1045
+ if (generatedAttachments.length > 0) {
1046
+ reply.generatedAttachments = generatedAttachments;
1047
+ }
913
1048
  const streamedBody = safeTrim(sentinelStream.visibleText) ?? "";
914
1049
  if (finalBody && finalBody !== streamedBody) {
915
1050
  await maybeEmitAssistantDelta(input.onAssistantDelta, finalBody);
@@ -1 +1 @@
1
- {"version":3,"file":"chat-assistant.js","sourceRoot":"","sources":["../../src/services/chat-assistant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-assistant.js","sourceRoot":"","sources":["../../src/services/chat-assistant.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ type ApprovalRow = typeof approvals.$inferSelect;
5
5
  export declare function chatService(db: Db): {
6
6
  list: (orgId: string, options?: {
7
7
  status?: "active" | "resolved" | "archived" | "all";
8
+ q?: string;
8
9
  }, userId?: string | null) => Promise<{
9
10
  primaryIssue: {
10
11
  id: string;
@@ -22,6 +23,8 @@ export declare function chatService(db: Db): {
22
23
  subtitle: string | null;
23
24
  identifier: string | null;
24
25
  status: string | null;
26
+ description?: string | null;
27
+ priority?: string | null;
25
28
  href: string;
26
29
  } | null;
27
30
  id: string;
@@ -38,8 +41,8 @@ export declare function chatService(db: Db): {
38
41
  unreadCount: number;
39
42
  isUnread: boolean;
40
43
  needsAttention: boolean;
41
- id: string;
42
44
  title: string;
45
+ id: string;
43
46
  status: string;
44
47
  createdByUserId: string | null;
45
48
  updatedAt: Date;
@@ -71,6 +74,8 @@ export declare function chatService(db: Db): {
71
74
  subtitle: string | null;
72
75
  identifier: string | null;
73
76
  status: string | null;
77
+ description?: string | null;
78
+ priority?: string | null;
74
79
  href: string;
75
80
  } | null;
76
81
  id: string;
@@ -87,8 +92,8 @@ export declare function chatService(db: Db): {
87
92
  unreadCount: number;
88
93
  isUnread: boolean;
89
94
  needsAttention: boolean;
90
- id: string;
91
95
  title: string;
96
+ id: string;
92
97
  status: string;
93
98
  createdByUserId: string | null;
94
99
  updatedAt: Date;
@@ -132,6 +137,8 @@ export declare function chatService(db: Db): {
132
137
  subtitle: string | null;
133
138
  identifier: string | null;
134
139
  status: string | null;
140
+ description?: string | null;
141
+ priority?: string | null;
135
142
  href: string;
136
143
  } | null;
137
144
  id: string;
@@ -148,8 +155,8 @@ export declare function chatService(db: Db): {
148
155
  unreadCount: number;
149
156
  isUnread: boolean;
150
157
  needsAttention: boolean;
151
- id: string;
152
158
  title: string;
159
+ id: string;
153
160
  status: string;
154
161
  createdByUserId: string | null;
155
162
  updatedAt: Date;
@@ -181,6 +188,8 @@ export declare function chatService(db: Db): {
181
188
  subtitle: string | null;
182
189
  identifier: string | null;
183
190
  status: string | null;
191
+ description?: string | null;
192
+ priority?: string | null;
184
193
  href: string;
185
194
  } | null;
186
195
  id: string;
@@ -197,8 +206,8 @@ export declare function chatService(db: Db): {
197
206
  unreadCount: number;
198
207
  isUnread: boolean;
199
208
  needsAttention: boolean;
200
- id: string;
201
209
  title: string;
210
+ id: string;
202
211
  status: string;
203
212
  createdByUserId: string | null;
204
213
  updatedAt: Date;
@@ -230,6 +239,8 @@ export declare function chatService(db: Db): {
230
239
  subtitle: string | null;
231
240
  identifier: string | null;
232
241
  status: string | null;
242
+ description?: string | null;
243
+ priority?: string | null;
233
244
  href: string;
234
245
  } | null;
235
246
  id: string;
@@ -246,8 +257,8 @@ export declare function chatService(db: Db): {
246
257
  unreadCount: number;
247
258
  isUnread: boolean;
248
259
  needsAttention: boolean;
249
- id: string;
250
260
  title: string;
261
+ id: string;
251
262
  status: string;
252
263
  createdByUserId: string | null;
253
264
  updatedAt: Date;
@@ -272,6 +283,16 @@ export declare function chatService(db: Db): {
272
283
  lastReadAt: Date;
273
284
  pinnedAt: Date | null;
274
285
  }>;
286
+ markUnread: (conversationId: string, orgId: string, userId: string) => Promise<{
287
+ id: string;
288
+ updatedAt: Date;
289
+ orgId: string;
290
+ createdAt: Date;
291
+ userId: string;
292
+ conversationId: string;
293
+ lastReadAt: Date;
294
+ pinnedAt: Date | null;
295
+ }>;
275
296
  setPinned: (conversationId: string, orgId: string, userId: string, pinned: boolean) => Promise<{
276
297
  id: string;
277
298
  updatedAt: Date;
@@ -318,8 +339,8 @@ export declare function chatService(db: Db): {
318
339
  addMessage: (conversationId: string, input: {
319
340
  orgId: string;
320
341
  role: "user" | "assistant" | "system";
321
- kind: "message" | "issue_proposal" | "operation_proposal" | "routing_suggestion" | "system_event";
322
- status?: "completed" | "stopped" | "failed";
342
+ kind: "message" | "issue_proposal" | "operation_proposal" | "system_event";
343
+ status?: "streaming" | "completed" | "stopped" | "failed" | "interrupted";
323
344
  body: string;
324
345
  structuredPayload?: Record<string, unknown> | null;
325
346
  transcript?: ChatStreamTranscriptEntry[];
@@ -360,6 +381,80 @@ export declare function chatService(db: Db): {
360
381
  turnVariant: number;
361
382
  supersededAt: Date | null;
362
383
  }>;
384
+ updateMessage: (conversationId: string, messageId: string, input: {
385
+ kind?: "message" | "issue_proposal" | "operation_proposal" | "system_event";
386
+ status?: "streaming" | "completed" | "stopped" | "failed" | "interrupted";
387
+ body?: string;
388
+ structuredPayload?: Record<string, unknown> | null;
389
+ transcript?: ChatStreamTranscriptEntry[];
390
+ approvalId?: string | null;
391
+ replyingAgentId?: string | null;
392
+ }) => Promise<{
393
+ structuredPayload: Record<string, unknown> | null;
394
+ transcript: ChatStreamTranscriptEntry[];
395
+ approval: {
396
+ id: string;
397
+ status: string;
398
+ updatedAt: Date;
399
+ orgId: string;
400
+ createdAt: Date;
401
+ type: string;
402
+ decisionNote: string | null;
403
+ payload: Record<string, unknown>;
404
+ requestedByAgentId: string | null;
405
+ decidedByUserId: string | null;
406
+ requestedByUserId: string | null;
407
+ decidedAt: Date | null;
408
+ } | null;
409
+ attachments: any[];
410
+ kind: string;
411
+ id: string;
412
+ status: string;
413
+ updatedAt: Date;
414
+ orgId: string;
415
+ createdAt: Date;
416
+ role: string;
417
+ body: string;
418
+ approvalId: string | null;
419
+ conversationId: string;
420
+ replyingAgentId: string | null;
421
+ chatTurnId: string | null;
422
+ turnVariant: number;
423
+ supersededAt: Date | null;
424
+ } | null>;
425
+ markInterruptedStreamingMessages: (conversationId: string) => Promise<{
426
+ structuredPayload: Record<string, unknown> | null;
427
+ transcript: ChatStreamTranscriptEntry[];
428
+ approval: {
429
+ id: string;
430
+ status: string;
431
+ updatedAt: Date;
432
+ orgId: string;
433
+ createdAt: Date;
434
+ type: string;
435
+ decisionNote: string | null;
436
+ payload: Record<string, unknown>;
437
+ requestedByAgentId: string | null;
438
+ decidedByUserId: string | null;
439
+ requestedByUserId: string | null;
440
+ decidedAt: Date | null;
441
+ } | null;
442
+ attachments: any[];
443
+ kind: string;
444
+ id: string;
445
+ status: string;
446
+ updatedAt: Date;
447
+ orgId: string;
448
+ createdAt: Date;
449
+ role: string;
450
+ body: string;
451
+ approvalId: string | null;
452
+ conversationId: string;
453
+ replyingAgentId: string | null;
454
+ chatTurnId: string | null;
455
+ turnVariant: number;
456
+ supersededAt: Date | null;
457
+ }[]>;
363
458
  addUserChatMessage: (conversationId: string, orgId: string, body: string, editUserMessageId?: string | null) => Promise<{
364
459
  structuredPayload: Record<string, unknown> | null;
365
460
  transcript: ChatStreamTranscriptEntry[];
@@ -405,6 +500,8 @@ export declare function chatService(db: Db): {
405
500
  subtitle: string | null;
406
501
  identifier: string | null;
407
502
  status: string | null;
503
+ description?: string | null;
504
+ priority?: string | null;
408
505
  href: string;
409
506
  } | null;
410
507
  id: string;
@@ -433,6 +530,8 @@ export declare function chatService(db: Db): {
433
530
  subtitle: string | null;
434
531
  identifier: string | null;
435
532
  status: string | null;
533
+ description?: string | null;
534
+ priority?: string | null;
436
535
  href: string;
437
536
  } | null;
438
537
  id: string;
@@ -449,8 +548,8 @@ export declare function chatService(db: Db): {
449
548
  unreadCount: number;
450
549
  isUnread: boolean;
451
550
  needsAttention: boolean;
452
- id: string;
453
551
  title: string;
552
+ id: string;
454
553
  status: string;
455
554
  createdByUserId: string | null;
456
555
  updatedAt: Date;
@@ -500,9 +599,10 @@ export declare function chatService(db: Db): {
500
599
  messageId?: string | null;
501
600
  proposal?: Record<string, unknown> | null;
502
601
  }) => Promise<{
503
- id: string;
504
602
  identifier: string | null;
505
603
  title: string;
604
+ description: string | null;
605
+ id: string;
506
606
  status: string;
507
607
  priority: string;
508
608
  assigneeAgentId: string | null;
@@ -515,7 +615,6 @@ export declare function chatService(db: Db): {
515
615
  projectWorkspaceId: string | null;
516
616
  goalId: string | null;
517
617
  parentId: string | null;
518
- description: string | null;
519
618
  boardOrder: number;
520
619
  reviewerAgentId: string | null;
521
620
  checkoutRunId: string | null;
@@ -584,8 +683,8 @@ export declare function chatService(db: Db): {
584
683
  } | null>;
585
684
  applyApprovedApproval: (approval: ApprovalRow, actorUserId: string | null) => Promise<Omit<{
586
685
  permissions: import("./agent-permissions.js").NormalizedAgentPermissions;
587
- id: string;
588
686
  title: string | null;
687
+ id: string;
589
688
  status: string;
590
689
  updatedAt: Date;
591
690
  orgId: string;
@@ -632,9 +731,10 @@ export declare function chatService(db: Db): {
632
731
  workspace: null;
633
732
  logoUrl: string | null;
634
733
  }) | ({
635
- id: string;
636
734
  identifier: string | null;
637
735
  title: string;
736
+ description: string | null;
737
+ id: string;
638
738
  status: string;
639
739
  priority: string;
640
740
  assigneeAgentId: string | null;
@@ -647,7 +747,6 @@ export declare function chatService(db: Db): {
647
747
  projectWorkspaceId: string | null;
648
748
  goalId: string | null;
649
749
  parentId: string | null;
650
- description: string | null;
651
750
  boardOrder: number;
652
751
  reviewerAgentId: string | null;
653
752
  checkoutRunId: string | null;