@rudderhq/server 0.3.5-canary.2 → 0.3.5-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.
- package/dist/agent-runtimes/codex-models.d.ts.map +1 -1
- package/dist/agent-runtimes/codex-models.js +2 -92
- package/dist/agent-runtimes/codex-models.js.map +1 -1
- package/dist/agent-runtimes/registry.d.ts.map +1 -1
- package/dist/agent-runtimes/registry.js +17 -2
- package/dist/agent-runtimes/registry.js.map +1 -1
- package/dist/bundled-plugins/plugin-linear/dist/worker.js +20 -1
- package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -1
- package/dist/routes/activity.d.ts.map +1 -1
- package/dist/routes/activity.js +86 -0
- package/dist/routes/activity.js.map +1 -1
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +9 -3
- package/dist/routes/agents.js.map +1 -1
- package/dist/routes/agents.management-routes.d.ts.map +1 -1
- package/dist/routes/agents.management-routes.js +17 -3
- package/dist/routes/agents.management-routes.js.map +1 -1
- package/dist/routes/chats.d.ts.map +1 -1
- package/dist/routes/chats.js +238 -5
- package/dist/routes/chats.js.map +1 -1
- package/dist/routes/chats.stream-routes.d.ts.map +1 -1
- package/dist/routes/chats.stream-routes.js +38 -7
- package/dist/routes/chats.stream-routes.js.map +1 -1
- package/dist/routes/issues.comments-attachments.d.ts.map +1 -1
- package/dist/routes/issues.comments-attachments.js +24 -8
- package/dist/routes/issues.comments-attachments.js.map +1 -1
- package/dist/routes/messenger.d.ts.map +1 -1
- package/dist/routes/messenger.js +49 -1
- package/dist/routes/messenger.js.map +1 -1
- package/dist/routes/orgs.d.ts.map +1 -1
- package/dist/routes/orgs.js +65 -2
- package/dist/routes/orgs.js.map +1 -1
- package/dist/services/activity.d.ts +37 -0
- package/dist/services/activity.d.ts.map +1 -1
- package/dist/services/activity.js +619 -27
- package/dist/services/activity.js.map +1 -1
- package/dist/services/agent-run-context.d.ts.map +1 -1
- package/dist/services/agent-run-context.js +100 -9
- package/dist/services/agent-run-context.js.map +1 -1
- package/dist/services/agents.d.ts +48 -13
- package/dist/services/agents.d.ts.map +1 -1
- package/dist/services/automation-chat-output.d.ts +1 -0
- package/dist/services/automation-chat-output.d.ts.map +1 -1
- package/dist/services/automations.d.ts.map +1 -1
- package/dist/services/automations.js +35 -5
- package/dist/services/automations.js.map +1 -1
- package/dist/services/board-auth.d.ts +2 -2
- package/dist/services/chat-agent-runs.d.ts +65 -0
- package/dist/services/chat-agent-runs.d.ts.map +1 -0
- package/dist/services/chat-agent-runs.js +267 -0
- package/dist/services/chat-agent-runs.js.map +1 -0
- package/dist/services/chat-assistant.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.d.ts +12 -0
- package/dist/services/chat-assistant.helpers.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.js +23 -1
- package/dist/services/chat-assistant.helpers.js.map +1 -1
- package/dist/services/chat-assistant.js +312 -177
- package/dist/services/chat-assistant.js.map +1 -1
- package/dist/services/chats.d.ts +89 -1
- package/dist/services/chats.d.ts.map +1 -1
- package/dist/services/chats.js +29 -17
- package/dist/services/chats.js.map +1 -1
- package/dist/services/issues.comments-attachments.d.ts +1 -0
- package/dist/services/issues.comments-attachments.d.ts.map +1 -1
- package/dist/services/issues.comments-attachments.js +25 -1
- package/dist/services/issues.comments-attachments.js.map +1 -1
- package/dist/services/issues.d.ts +1 -0
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.d.ts +1 -0
- package/dist/services/knowledge-portability/organization-skills.catalog.d.ts.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.catalog.js +18 -0
- package/dist/services/knowledge-portability/organization-skills.catalog.js.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.d.ts.map +1 -1
- package/dist/services/knowledge-portability/organization-skills.js +2 -9
- package/dist/services/knowledge-portability/organization-skills.js.map +1 -1
- package/dist/services/messenger.d.ts +56 -2
- package/dist/services/messenger.d.ts.map +1 -1
- package/dist/services/messenger.js +218 -3
- package/dist/services/messenger.js.map +1 -1
- package/dist/services/organization-intelligence-profiles.js +3 -3
- package/dist/services/organization-intelligence-profiles.js.map +1 -1
- package/dist/services/organization-skills.d.ts +1 -1
- package/dist/services/organization-skills.d.ts.map +1 -1
- package/dist/services/organization-skills.js +1 -1
- package/dist/services/organization-skills.js.map +1 -1
- package/dist/services/run-intelligence.d.ts.map +1 -1
- package/dist/services/run-intelligence.js +6 -2
- package/dist/services/run-intelligence.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.core.d.ts +17 -0
- package/dist/services/runtime-kernel/heartbeat.core.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.core.js +1 -0
- package/dist/services/runtime-kernel/heartbeat.core.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.d.ts +8 -1
- package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.js +13 -7
- package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.recovery.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.recovery.js +2 -0
- package/dist/services/runtime-kernel/heartbeat.recovery.js.map +1 -1
- package/dist/services/workspace-runtime.services.d.ts +1 -1
- package/package.json +13 -13
- package/resources/bundled-skills/rudder/SKILL.md +29 -32
- package/resources/bundled-skills/rudder/references/api-reference.md +12 -2
- package/resources/bundled-skills/rudder/references/cli-reference.md +13 -2
- package/skills/rudder/SKILL.md +29 -32
- package/skills/rudder/references/api-reference.md +12 -2
- package/skills/rudder/references/cli-reference.md +13 -2
- package/ui-dist/assets/{_basePickBy-pCn65kUg.js → _basePickBy-DQRD3jbd.js} +1 -1
- package/ui-dist/assets/{_baseUniq-D_Y907uk.js → _baseUniq-ChSV83Tl.js} +1 -1
- package/ui-dist/assets/{arc-D1FOXYxM.js → arc-BCwqsots.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-2XIMDMQ5-BqM99oWe.js → architectureDiagram-2XIMDMQ5-D59Qu6r3.js} +1 -1
- package/ui-dist/assets/{blockDiagram-WCTKOSBZ-B31x8PiB.js → blockDiagram-WCTKOSBZ-BLJNQhjF.js} +1 -1
- package/ui-dist/assets/{c4Diagram-IC4MRINW-BXxWTBO0.js → c4Diagram-IC4MRINW-CK3IxauE.js} +1 -1
- package/ui-dist/assets/channel-D0Hj27Hq.js +1 -0
- package/ui-dist/assets/{chunk-4BX2VUAB-A-mJSYhX.js → chunk-4BX2VUAB-By54H8_d.js} +1 -1
- package/ui-dist/assets/{chunk-55IACEB6-C_xHp5sT.js → chunk-55IACEB6-Ct4oxREP.js} +1 -1
- package/ui-dist/assets/{chunk-FMBD7UC4-hzewwsYy.js → chunk-FMBD7UC4-Bo5QQDeN.js} +1 -1
- package/ui-dist/assets/{chunk-JSJVCQXG-BOEtQsnL.js → chunk-JSJVCQXG-DRWD6spx.js} +1 -1
- package/ui-dist/assets/{chunk-KX2RTZJC-CoIlm_Hx.js → chunk-KX2RTZJC-CduFLzMt.js} +1 -1
- package/ui-dist/assets/{chunk-NQ4KR5QH-DmGxBmwd.js → chunk-NQ4KR5QH-Deady69Q.js} +1 -1
- package/ui-dist/assets/{chunk-QZHKN3VN-2Yp7ffIW.js → chunk-QZHKN3VN-CBCxkdH6.js} +1 -1
- package/ui-dist/assets/{chunk-WL4C6EOR-S0etjqNL.js → chunk-WL4C6EOR-isrINTKV.js} +1 -1
- package/ui-dist/assets/classDiagram-VBA2DB6C-Dtwo6gbt.js +1 -0
- package/ui-dist/assets/classDiagram-v2-RAHNMMFH-Dtwo6gbt.js +1 -0
- package/ui-dist/assets/clone-kRqsxkGl.js +1 -0
- package/ui-dist/assets/{cose-bilkent-S5V4N54A-Db8NTY-v.js → cose-bilkent-S5V4N54A-DEqI6MB2.js} +1 -1
- package/ui-dist/assets/{dagre-KLK3FWXG-KnB-W-rz.js → dagre-KLK3FWXG-htMxe3b1.js} +1 -1
- package/ui-dist/assets/{diagram-E7M64L7V-DZKhPUtZ.js → diagram-E7M64L7V-FoZTYbSd.js} +1 -1
- package/ui-dist/assets/{diagram-IFDJBPK2-N9A6mG2G.js → diagram-IFDJBPK2-Ba9PRO_-.js} +1 -1
- package/ui-dist/assets/{diagram-P4PSJMXO-O9bD_Xdl.js → diagram-P4PSJMXO-CtCxaSco.js} +1 -1
- package/ui-dist/assets/{erDiagram-INFDFZHY-DDZjMLSL.js → erDiagram-INFDFZHY-CSvCOhU9.js} +1 -1
- package/ui-dist/assets/{flowDiagram-PKNHOUZH-XvyruncW.js → flowDiagram-PKNHOUZH-BJ8wlqYl.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-A5KZAMGK-DyyT5dog.js → ganttDiagram-A5KZAMGK-CZnnlHd9.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-K3NZZRJ6-gADHznug.js → gitGraphDiagram-K3NZZRJ6-G9KG4OCz.js} +1 -1
- package/ui-dist/assets/{graph-7vIigZeu.js → graph-CmEOZML6.js} +1 -1
- package/ui-dist/assets/{index-D5KlAqB7.js → index-0jU9C9J5.js} +1 -1
- package/ui-dist/assets/{index-ClVYEFCG.js → index-2k06YsZ0.js} +1 -1
- package/ui-dist/assets/{index-DTSMhh6G.js → index-B1-HLXQ1.js} +1 -1
- package/ui-dist/assets/{index-9UhHaawM.js → index-B4drPtcc.js} +1 -1
- package/ui-dist/assets/{index-CyGieKZt.js → index-B76BV2-o.js} +1 -1
- package/ui-dist/assets/{index-CwtC_TfQ.js → index-BA75uuCE.js} +1 -1
- package/ui-dist/assets/{index-CDS-GPuQ.js → index-BJNHDHzx.js} +1 -1
- package/ui-dist/assets/{index-BNrlKXIp.js → index-Bf1iZPV6.js} +1 -1
- package/ui-dist/assets/{index-BCFtYRTF.js → index-BuyUdFsk.js} +1 -1
- package/ui-dist/assets/{index-CPbseJy6.js → index-Bz9EamK2.js} +1 -1
- package/ui-dist/assets/{index-CzAI6rBQ.js → index-CGE3v4f8.js} +1 -1
- package/ui-dist/assets/{index-DOFyevXp.js → index-CKQRI15h.js} +1 -1
- package/ui-dist/assets/{index-CaT6akeq.js → index-ChZln_1i.js} +1 -1
- package/ui-dist/assets/{index-CLcM1MHz.js → index-CmbpxZxI.js} +1 -1
- package/ui-dist/assets/{index-lPwz_ooR.js → index-CxjiCZ6r.js} +1 -1
- package/ui-dist/assets/{index-Cdg8kabT.js → index-D9SubOrM.js} +1 -1
- package/ui-dist/assets/{index-C5eIQEdO.js → index-D9cJ_mwP.js} +1 -1
- package/ui-dist/assets/{index-4KVTXANB.js → index-Dfu3lMcj.js} +1 -1
- package/ui-dist/assets/{index-D5JBYAir.js → index-DrRZfTTF.js} +1 -1
- package/ui-dist/assets/{index-DVz1zQD4.js → index-KkfX5W81.js} +1 -1
- package/ui-dist/assets/index-NnBHP7m8.js +1750 -0
- package/ui-dist/assets/{index-nWNmZVtb.js → index-OW_vF7mc.js} +1 -1
- package/ui-dist/assets/index-XCEW55-_.css +1 -0
- package/ui-dist/assets/{index-CATFiL_5.js → index-n3HgsyPM.js} +1 -1
- package/ui-dist/assets/{infoDiagram-LFFYTUFH-DZSE3bR9.js → infoDiagram-LFFYTUFH-CULxi1Pi.js} +1 -1
- package/ui-dist/assets/{ishikawaDiagram-PHBUUO56-IImK5aQu.js → ishikawaDiagram-PHBUUO56-De4H5SvP.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-4ABVD52K-acBx1Vxv.js → journeyDiagram-4ABVD52K-aQURd3zC.js} +1 -1
- package/ui-dist/assets/{kanban-definition-K7BYSVSG-CTFjpqbi.js → kanban-definition-K7BYSVSG-sxdgA8Mj.js} +1 -1
- package/ui-dist/assets/{layout-C82SEtWJ.js → layout-B0y-hpF1.js} +1 -1
- package/ui-dist/assets/{linear-CRoau0uq.js → linear-CcF3oPj1.js} +1 -1
- package/ui-dist/assets/{mermaid.core-Ci5CSmlH.js → mermaid.core-Ca_slkna.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-YRQLILUH-J7GvZpev.js → mindmap-definition-YRQLILUH-bqiHlPwE.js} +1 -1
- package/ui-dist/assets/{pieDiagram-SKSYHLDU-vNggbv_2.js → pieDiagram-SKSYHLDU-1aKBqhWX.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-337W2JSQ-Dw7kvy6Y.js → quadrantDiagram-337W2JSQ-Bca_TP9m.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-Z7DCOOCP-BvSEyElm.js → requirementDiagram-Z7DCOOCP-Co_pbTj0.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-WA2Y5GQK-DwCLD2LN.js → sankeyDiagram-WA2Y5GQK-FNWr9Qgb.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-2WXFIKYE-D_s9lUAn.js → sequenceDiagram-2WXFIKYE-Dy0_t8KK.js} +1 -1
- package/ui-dist/assets/{stateDiagram-RAJIS63D-B0jPEqLW.js → stateDiagram-RAJIS63D-DJWDtTEw.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-BzIR1BG8.js +1 -0
- package/ui-dist/assets/{timeline-definition-YZTLITO2-DdDstc8N.js → timeline-definition-YZTLITO2-BG2EEfkn.js} +1 -1
- package/ui-dist/assets/{treemap-KZPCXAKY-CYbOkWQq.js → treemap-KZPCXAKY-memeaR_f.js} +1 -1
- package/ui-dist/assets/{vennDiagram-LZ73GAT5-uxQlceJ0.js → vennDiagram-LZ73GAT5-CJ_ThALk.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-JWTSCODW-DbYD2ThH.js → xychartDiagram-JWTSCODW-BxKpwCJ-.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/ui-dist/assets/channel-CEHUUFG8.js +0 -1
- package/ui-dist/assets/classDiagram-VBA2DB6C-Bb_snefw.js +0 -1
- package/ui-dist/assets/classDiagram-v2-RAHNMMFH-Bb_snefw.js +0 -1
- package/ui-dist/assets/clone-B2KToI8w.js +0 -1
- package/ui-dist/assets/index-BMr_32cW.css +0 -1
- package/ui-dist/assets/index-CgZIlV_x.js +0 -1732
- package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-CdSwOHOx.js +0 -1
package/dist/services/chats.d.ts
CHANGED
|
@@ -119,6 +119,31 @@ export declare function chatService(db: Db): {
|
|
|
119
119
|
resolvedAt: Date | null;
|
|
120
120
|
lastMessageAt: Date | null;
|
|
121
121
|
}[]>;
|
|
122
|
+
listSummariesByIds: (orgId: string, conversationIds: string[], userId?: string | null) => Promise<{
|
|
123
|
+
latestReplyPreview: string | null;
|
|
124
|
+
latestUserMessagePreview: string | null;
|
|
125
|
+
userMessageCount: number;
|
|
126
|
+
lastReadAt: Date | null;
|
|
127
|
+
isPinned: boolean;
|
|
128
|
+
unreadCount: number;
|
|
129
|
+
isUnread: boolean;
|
|
130
|
+
needsAttention: boolean;
|
|
131
|
+
id: string;
|
|
132
|
+
orgId: string;
|
|
133
|
+
createdByUserId: string | null;
|
|
134
|
+
createdAt: Date;
|
|
135
|
+
updatedAt: Date;
|
|
136
|
+
status: string;
|
|
137
|
+
title: string;
|
|
138
|
+
summary: string | null;
|
|
139
|
+
preferredAgentId: string | null;
|
|
140
|
+
issueCreationMode: string;
|
|
141
|
+
planMode: boolean;
|
|
142
|
+
routedAgentId: string | null;
|
|
143
|
+
primaryIssueId: string | null;
|
|
144
|
+
resolvedAt: Date | null;
|
|
145
|
+
lastMessageAt: Date | null;
|
|
146
|
+
}[]>;
|
|
122
147
|
getById: (id: string, userId?: string | null) => Promise<{
|
|
123
148
|
primaryIssue: {
|
|
124
149
|
id: string;
|
|
@@ -290,6 +315,59 @@ export declare function chatService(db: Db): {
|
|
|
290
315
|
resolvedAt: Date | null;
|
|
291
316
|
lastMessageAt: Date | null;
|
|
292
317
|
} | null>;
|
|
318
|
+
updateDefaultTitle: (id: string, title: string) => Promise<{
|
|
319
|
+
primaryIssue: {
|
|
320
|
+
id: string;
|
|
321
|
+
identifier: string | null;
|
|
322
|
+
title: string;
|
|
323
|
+
status: string;
|
|
324
|
+
priority: string;
|
|
325
|
+
} | null;
|
|
326
|
+
latestReplyPreview: string | null;
|
|
327
|
+
latestUserMessagePreview: string | null;
|
|
328
|
+
userMessageCount: number;
|
|
329
|
+
contextLinks: {
|
|
330
|
+
entity: {
|
|
331
|
+
type: "issue" | "project" | "agent";
|
|
332
|
+
id: string;
|
|
333
|
+
label: string;
|
|
334
|
+
subtitle: string | null;
|
|
335
|
+
identifier: string | null;
|
|
336
|
+
status: string | null;
|
|
337
|
+
description?: string | null;
|
|
338
|
+
priority?: string | null;
|
|
339
|
+
href: string;
|
|
340
|
+
} | null;
|
|
341
|
+
id: string;
|
|
342
|
+
orgId: string;
|
|
343
|
+
createdAt: Date;
|
|
344
|
+
updatedAt: Date;
|
|
345
|
+
entityType: string;
|
|
346
|
+
entityId: string;
|
|
347
|
+
metadata: Record<string, unknown> | null;
|
|
348
|
+
conversationId: string;
|
|
349
|
+
}[];
|
|
350
|
+
lastReadAt: Date | null;
|
|
351
|
+
isPinned: boolean;
|
|
352
|
+
unreadCount: number;
|
|
353
|
+
isUnread: boolean;
|
|
354
|
+
needsAttention: boolean;
|
|
355
|
+
id: string;
|
|
356
|
+
orgId: string;
|
|
357
|
+
createdByUserId: string | null;
|
|
358
|
+
createdAt: Date;
|
|
359
|
+
updatedAt: Date;
|
|
360
|
+
status: string;
|
|
361
|
+
title: string;
|
|
362
|
+
summary: string | null;
|
|
363
|
+
preferredAgentId: string | null;
|
|
364
|
+
issueCreationMode: string;
|
|
365
|
+
planMode: boolean;
|
|
366
|
+
routedAgentId: string | null;
|
|
367
|
+
primaryIssueId: string | null;
|
|
368
|
+
resolvedAt: Date | null;
|
|
369
|
+
lastMessageAt: Date | null;
|
|
370
|
+
} | null>;
|
|
293
371
|
listAttachmentsForConversation: (conversationId: string) => Promise<{
|
|
294
372
|
id: string;
|
|
295
373
|
orgId: string;
|
|
@@ -427,6 +505,7 @@ export declare function chatService(db: Db): {
|
|
|
427
505
|
role: string;
|
|
428
506
|
approvalId: string | null;
|
|
429
507
|
conversationId: string;
|
|
508
|
+
runId: string | null;
|
|
430
509
|
replyingAgentId: string | null;
|
|
431
510
|
chatTurnId: string | null;
|
|
432
511
|
turnVariant: number;
|
|
@@ -445,6 +524,7 @@ export declare function chatService(db: Db): {
|
|
|
445
524
|
structuredPayload?: Record<string, unknown> | null;
|
|
446
525
|
transcript?: ChatStreamTranscriptEntry[];
|
|
447
526
|
approvalId?: string | null;
|
|
527
|
+
runId?: string | null;
|
|
448
528
|
replyingAgentId?: string | null;
|
|
449
529
|
chatTurnId?: string | null;
|
|
450
530
|
turnVariant?: number;
|
|
@@ -477,6 +557,7 @@ export declare function chatService(db: Db): {
|
|
|
477
557
|
role: string;
|
|
478
558
|
approvalId: string | null;
|
|
479
559
|
conversationId: string;
|
|
560
|
+
runId: string | null;
|
|
480
561
|
replyingAgentId: string | null;
|
|
481
562
|
chatTurnId: string | null;
|
|
482
563
|
turnVariant: number;
|
|
@@ -489,6 +570,7 @@ export declare function chatService(db: Db): {
|
|
|
489
570
|
structuredPayload?: Record<string, unknown> | null;
|
|
490
571
|
transcript?: ChatStreamTranscriptEntry[];
|
|
491
572
|
approvalId?: string | null;
|
|
573
|
+
runId?: string | null;
|
|
492
574
|
replyingAgentId?: string | null;
|
|
493
575
|
}) => Promise<{
|
|
494
576
|
structuredPayload: Record<string, unknown> | null;
|
|
@@ -519,6 +601,7 @@ export declare function chatService(db: Db): {
|
|
|
519
601
|
role: string;
|
|
520
602
|
approvalId: string | null;
|
|
521
603
|
conversationId: string;
|
|
604
|
+
runId: string | null;
|
|
522
605
|
replyingAgentId: string | null;
|
|
523
606
|
chatTurnId: string | null;
|
|
524
607
|
turnVariant: number;
|
|
@@ -553,6 +636,7 @@ export declare function chatService(db: Db): {
|
|
|
553
636
|
role: string;
|
|
554
637
|
approvalId: string | null;
|
|
555
638
|
conversationId: string;
|
|
639
|
+
runId: string | null;
|
|
556
640
|
replyingAgentId: string | null;
|
|
557
641
|
chatTurnId: string | null;
|
|
558
642
|
turnVariant: number;
|
|
@@ -589,6 +673,7 @@ export declare function chatService(db: Db): {
|
|
|
589
673
|
role: string;
|
|
590
674
|
approvalId: string | null;
|
|
591
675
|
conversationId: string;
|
|
676
|
+
runId: string | null;
|
|
592
677
|
replyingAgentId: string | null;
|
|
593
678
|
chatTurnId: string | null;
|
|
594
679
|
turnVariant: number;
|
|
@@ -737,6 +822,7 @@ export declare function chatService(db: Db): {
|
|
|
737
822
|
role: string;
|
|
738
823
|
approvalId: string | null;
|
|
739
824
|
conversationId: string;
|
|
825
|
+
runId: string | null;
|
|
740
826
|
replyingAgentId: string | null;
|
|
741
827
|
chatTurnId: string | null;
|
|
742
828
|
turnVariant: number;
|
|
@@ -753,9 +839,9 @@ export declare function chatService(db: Db): {
|
|
|
753
839
|
title: string | null;
|
|
754
840
|
agentRuntimeType: string;
|
|
755
841
|
metadata: Record<string, unknown> | null;
|
|
842
|
+
icon: string | null;
|
|
756
843
|
agentRuntimeConfig: Record<string, unknown>;
|
|
757
844
|
role: string;
|
|
758
|
-
icon: string | null;
|
|
759
845
|
capabilities: string | null;
|
|
760
846
|
runtimeConfig: Record<string, unknown>;
|
|
761
847
|
budgetMonthlyCents: number;
|
|
@@ -844,6 +930,7 @@ export declare function chatService(db: Db): {
|
|
|
844
930
|
role: string;
|
|
845
931
|
approvalId: string | null;
|
|
846
932
|
conversationId: string;
|
|
933
|
+
runId: string | null;
|
|
847
934
|
replyingAgentId: string | null;
|
|
848
935
|
chatTurnId: string | null;
|
|
849
936
|
turnVariant: number;
|
|
@@ -878,6 +965,7 @@ export declare function chatService(db: Db): {
|
|
|
878
965
|
role: string;
|
|
879
966
|
approvalId: string | null;
|
|
880
967
|
conversationId: string;
|
|
968
|
+
runId: string | null;
|
|
881
969
|
replyingAgentId: string | null;
|
|
882
970
|
chatTurnId: string | null;
|
|
883
971
|
turnVariant: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAEL,SAAS,EAIT,iBAAiB,EAIlB,MAAM,cAAc,CAAC;AACtB,OAAO,
|
|
1
|
+
{"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"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"}
|
package/dist/services/chats.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { approvals, assets, chatAttachments, chatContextLinks, chatConversations, chatConversationUserStates, chatMessages } from "@rudderhq/db";
|
|
2
|
-
import {
|
|
2
|
+
import { sanitizeChatStructuredPayload } from "@rudderhq/shared";
|
|
3
3
|
import { and, desc, eq, gt, gte, inArray, isNull, sql } from "drizzle-orm";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
5
5
|
import { notFound, unprocessable } from "../errors.js";
|
|
@@ -335,19 +335,6 @@ export function chatService(db) {
|
|
|
335
335
|
})
|
|
336
336
|
.where(eq(chatConversations.id, conversationId));
|
|
337
337
|
}
|
|
338
|
-
async function maybePromoteConversationTitle(conversationId, body) {
|
|
339
|
-
const conversation = await getConversationOrThrow(conversationId);
|
|
340
|
-
const title = conversation.title.trim();
|
|
341
|
-
if (title !== "New chat")
|
|
342
|
-
return;
|
|
343
|
-
const nextTitle = formatMessengerTitle(body, { max: 80 });
|
|
344
|
-
if (!nextTitle)
|
|
345
|
-
return;
|
|
346
|
-
await db
|
|
347
|
-
.update(chatConversations)
|
|
348
|
-
.set({ title: nextTitle, updatedAt: new Date() })
|
|
349
|
-
.where(eq(chatConversations.id, conversationId));
|
|
350
|
-
}
|
|
351
338
|
async function list(orgId, options, userId) {
|
|
352
339
|
const status = options?.status ?? "active";
|
|
353
340
|
const rawSearch = options?.q?.trim() ?? "";
|
|
@@ -447,6 +434,16 @@ export function chatService(db) {
|
|
|
447
434
|
.orderBy(desc(activityAtSql), chatConversations.title, chatConversations.id);
|
|
448
435
|
return hydrateConversationSummaries(rows, userId);
|
|
449
436
|
}
|
|
437
|
+
async function listSummariesByIds(orgId, conversationIds, userId) {
|
|
438
|
+
const uniqueConversationIds = [...new Set(conversationIds.filter((id) => id.trim().length > 0))];
|
|
439
|
+
if (uniqueConversationIds.length === 0)
|
|
440
|
+
return [];
|
|
441
|
+
const rows = await db
|
|
442
|
+
.select()
|
|
443
|
+
.from(chatConversations)
|
|
444
|
+
.where(and(eq(chatConversations.orgId, orgId), eq(chatConversations.status, "active"), inArray(chatConversations.id, uniqueConversationIds)));
|
|
445
|
+
return hydrateConversationSummaries(rows, userId);
|
|
446
|
+
}
|
|
450
447
|
async function getById(id, userId) {
|
|
451
448
|
const row = await db
|
|
452
449
|
.select()
|
|
@@ -504,6 +501,19 @@ export function chatService(db) {
|
|
|
504
501
|
return null;
|
|
505
502
|
return getById(id);
|
|
506
503
|
}
|
|
504
|
+
async function updateDefaultTitle(id, title) {
|
|
505
|
+
const [updated] = await db
|
|
506
|
+
.update(chatConversations)
|
|
507
|
+
.set({
|
|
508
|
+
title,
|
|
509
|
+
updatedAt: new Date(),
|
|
510
|
+
})
|
|
511
|
+
.where(and(eq(chatConversations.id, id), eq(chatConversations.title, "New chat")))
|
|
512
|
+
.returning();
|
|
513
|
+
if (!updated)
|
|
514
|
+
return null;
|
|
515
|
+
return getById(id);
|
|
516
|
+
}
|
|
507
517
|
async function listAttachmentsForConversation(conversationId) {
|
|
508
518
|
const rows = await db
|
|
509
519
|
.select({
|
|
@@ -667,6 +677,7 @@ export function chatService(db) {
|
|
|
667
677
|
body: chatMessages.body,
|
|
668
678
|
structuredPayload: structuredPayloadWithoutTranscriptSql(),
|
|
669
679
|
approvalId: chatMessages.approvalId,
|
|
680
|
+
runId: chatMessages.runId,
|
|
670
681
|
replyingAgentId: chatMessages.replyingAgentId,
|
|
671
682
|
chatTurnId: chatMessages.chatTurnId,
|
|
672
683
|
turnVariant: chatMessages.turnVariant,
|
|
@@ -819,6 +830,7 @@ export function chatService(db) {
|
|
|
819
830
|
body: durableBody,
|
|
820
831
|
structuredPayload: withPersistedTranscript(sanitizeChatStructuredPayload(input.structuredPayload ?? null), input.transcript ?? []),
|
|
821
832
|
approvalId: input.approvalId ?? null,
|
|
833
|
+
runId: input.runId ?? null,
|
|
822
834
|
replyingAgentId: input.replyingAgentId ?? null,
|
|
823
835
|
chatTurnId: input.chatTurnId ?? null,
|
|
824
836
|
turnVariant: input.turnVariant ?? 0,
|
|
@@ -829,9 +841,6 @@ export function chatService(db) {
|
|
|
829
841
|
if (input.role === "user" || isVisibleIncomingChatMessage(message)) {
|
|
830
842
|
await refreshConversationTouch(conversationId, message.createdAt);
|
|
831
843
|
}
|
|
832
|
-
if (input.role === "user") {
|
|
833
|
-
await maybePromoteConversationTitle(conversationId, input.body);
|
|
834
|
-
}
|
|
835
844
|
const [hydrated] = await hydrateMessages([message]);
|
|
836
845
|
return hydrated;
|
|
837
846
|
}
|
|
@@ -876,6 +885,7 @@ export function chatService(db) {
|
|
|
876
885
|
}
|
|
877
886
|
: {}),
|
|
878
887
|
...(input.approvalId !== undefined ? { approvalId: input.approvalId } : {}),
|
|
888
|
+
...(input.runId !== undefined ? { runId: input.runId } : {}),
|
|
879
889
|
...(input.replyingAgentId !== undefined ? { replyingAgentId: input.replyingAgentId } : {}),
|
|
880
890
|
updatedAt: now,
|
|
881
891
|
})
|
|
@@ -1426,9 +1436,11 @@ export function chatService(db) {
|
|
|
1426
1436
|
list,
|
|
1427
1437
|
listSummaries,
|
|
1428
1438
|
listPinnedSummaries,
|
|
1439
|
+
listSummariesByIds,
|
|
1429
1440
|
getById,
|
|
1430
1441
|
create,
|
|
1431
1442
|
update,
|
|
1443
|
+
updateDefaultTitle,
|
|
1432
1444
|
listAttachmentsForConversation,
|
|
1433
1445
|
remove,
|
|
1434
1446
|
resolve,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chats.js","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chats.js","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.comments-attachments.d.ts","sourceRoot":"","sources":["../../src/services/issues.comments-attachments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAiBvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAKjE,KAAK,mCAAmC,GAAG;IACzC,EAAE,EAAE,EAAE,CAAC;IACP,gBAAgB,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;IAC7D,kBAAkB,EAAE,CAAC,CAAC,SAAS;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,EAAE,CAAC,EAAE,oBAAoB,EAAE,OAAO,KAAK,CAAC,CAAC;CAClG,CAAC;AAEF,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,mCAAmC;
|
|
1
|
+
{"version":3,"file":"issues.comments-attachments.d.ts","sourceRoot":"","sources":["../../src/services/issues.comments-attachments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAiBvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAKjE,KAAK,mCAAmC,GAAG;IACzC,EAAE,EAAE,EAAE,CAAC;IACP,gBAAgB,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;IAC7D,kBAAkB,EAAE,CAAC,CAAC,SAAS;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,EAAE,CAAC,EAAE,oBAAoB,EAAE,OAAO,KAAK,CAAC,CAAC;CAClG,CAAC;AAEF,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,mCAAmC;iCA2ErD,MAAM,QAAQ,MAAM;uCAcd,MAAM;4BA6CpC,MAAM,SACR;QACL,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACvB;;;;;;;;;;;;gCAyD+B,MAAM;;;;;4BA4BhB,MAAM;;;;;;;;;;;;0BAWF,MAAM,QAAQ,MAAM,SAAS;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;6BAoC/D,MAAM,aAAa,MAAM,QAAQ,MAAM,SAAS;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;6BAkCtF,MAAM,aACJ,MAAM,SACV;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;;;;;;;;8BAgCzB;QAC9B,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACjC;;;;;;;;;;;;;;;;;;+BAoEgC,MAAM;;;;;;;;;;;;;;;;;;4BAyBT,MAAM;;;;;;;;;;;;;;;;;;2BAyBP,MAAM;;;;;;;;;;;;;;;;;;EAgCtC"}
|
|
@@ -35,6 +35,30 @@ export function createIssueCommentAttachmentMethods(ctx) {
|
|
|
35
35
|
}
|
|
36
36
|
return { issue, comment };
|
|
37
37
|
}
|
|
38
|
+
async function getDeletableComment(issueId, commentId, actor) {
|
|
39
|
+
const issue = await db
|
|
40
|
+
.select({ id: issues.id, orgId: issues.orgId })
|
|
41
|
+
.from(issues)
|
|
42
|
+
.where(eq(issues.id, issueId))
|
|
43
|
+
.then((rows) => rows[0] ?? null);
|
|
44
|
+
if (!issue)
|
|
45
|
+
throw notFound("Issue not found");
|
|
46
|
+
const comment = await db
|
|
47
|
+
.select()
|
|
48
|
+
.from(issueComments)
|
|
49
|
+
.where(and(eq(issueComments.id, commentId), eq(issueComments.issueId, issue.id), eq(issueComments.orgId, issue.orgId)))
|
|
50
|
+
.then((rows) => rows[0] ?? null);
|
|
51
|
+
if (!comment)
|
|
52
|
+
throw notFound("Comment not found");
|
|
53
|
+
if (comment.deletedAt)
|
|
54
|
+
throw forbidden("Deleted comments cannot be modified");
|
|
55
|
+
const ownsUserComment = !comment.authorAgentId && !!comment.authorUserId && comment.authorUserId === actor.userId;
|
|
56
|
+
const canDeleteAgentComment = actor.allowAgentAuthored === true && !!comment.authorAgentId;
|
|
57
|
+
if (!ownsUserComment && !canDeleteAgentComment) {
|
|
58
|
+
throw forbidden("Only the comment author or a board user deleting an agent comment can delete this comment");
|
|
59
|
+
}
|
|
60
|
+
return { issue, comment };
|
|
61
|
+
}
|
|
38
62
|
return {
|
|
39
63
|
findMentionedAgents: async (orgId, body) => {
|
|
40
64
|
const explicitAgentMentionIds = extractAgentWakeMentionIds(body).filter(isUuidLike);
|
|
@@ -218,7 +242,7 @@ export function createIssueCommentAttachmentMethods(ctx) {
|
|
|
218
242
|
return serializeCommentForResponse(comment, currentUserRedactionOptions.enabled);
|
|
219
243
|
},
|
|
220
244
|
deleteComment: async (issueId, commentId, actor) => {
|
|
221
|
-
const { issue } = await
|
|
245
|
+
const { issue } = await getDeletableComment(issueId, commentId, actor);
|
|
222
246
|
const now = new Date();
|
|
223
247
|
const [comment] = await db
|
|
224
248
|
.update(issueComments)
|