crewly 1.20.294 → 1.20.295
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/backend/backend/src/constants.d.ts +4 -2
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +4 -2
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.d.ts +1 -0
- package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.js +5 -1
- package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +14 -1
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts +1 -0
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode.service.js +4 -3
- package/dist/backend/backend/src/services/agent/resource-mode.service.js.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +52 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +101 -29
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.d.ts +45 -0
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.d.ts.map +1 -0
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.js +70 -0
- package/dist/backend/backend/src/services/messaging/deferred-start-retry.js.map +1 -0
- package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js +1 -1
- package/dist/backend/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +13 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts +3 -2
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js +8 -2
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +4 -2
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +4 -2
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts +1 -0
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/resource-mode.service.js +4 -3
- package/dist/cli/backend/src/services/agent/resource-mode.service.js.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +52 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +101 -29
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js +1 -1
- package/dist/cli/backend/src/services/slack/slack-agent-dm.service.js.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +13 -1
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts +3 -2
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js +8 -2
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-mode.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/resource-mode.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"resource-mode.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/resource-mode.service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,eAAO,MAAM,uBAAuB;;;IAGnC,8DAA8D;;IAE9D,4DAA4D;;IAE5D,gFAAgF;;;IAGhF,uFAAuF;;IAEvF;;;;;OAKG;;IAEH,uEAAuE;;IAEvE,6EAA6E;;IAE7E,sFAAsF;;CAE7E,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjD,MAAM,WAAW,aAAa;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAQ9D;AAED,sDAAsD;AACtD,MAAM,WAAW,YAAY;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,IAAI,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAChC,WAAW,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3C,SAAS,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;IAClD,MAAM,EAAE,MAAM,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1E;;;;;OAKG;IACH,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;IACnD;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAC9E,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,kFAAkF;IAClF,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAID,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoC;IAC3D,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,IAAI,CAA0B;IACtC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,QAAQ,CAA6B;IAC7C,yEAAyE;IACzE,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,OAAO,CAAS;IACxB,yFAAyF;IACzF,OAAO,CAAC,aAAa,CAA6B;IAClD,oHAAoH;IACpH,OAAO,CAAC,YAAY,CAAyD;IAC7E,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,OAAO,CAA8D;IAE7E,sCAAsC;IACtC,WAAW,EAAE,MAAM,aAAa,CAAkB;IAClD,OAAO,EAAE,MAAM,MAAM,CAAyB;IAC9C,QAAQ,EAAE,MAAM,MAAM,CAA+B;IAErD,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,mBAAmB;IAIzC,MAAM,CAAC,aAAa,IAAI,IAAI;IAK5B,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI;IAI5C,+BAA+B;IAC/B,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAQZ,OAAO,IAAI,YAAY;IAIvB,8CAA8C;IAC9C,OAAO,CAAC,WAAW;IAWnB;;;;;OAKG;IACG,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAgBrC;;;;;;OAMG;IACH,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM;IAKnF,4BAA4B;IAC5B,KAAK,IAAI;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7G;;;;;;;;;;OAUG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBlF;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAI5C,+DAA+D;IAC/D,OAAO,CAAC,YAAY;IAmBpB,iEAAiE;IAC3D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkE3B;;;;;;;;;;;;;OAaG;YACW,UAAU;IA4CxB,6EAA6E;IAC7E,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,YAAY;CAIpB"}
|
|
@@ -274,7 +274,7 @@ export class ResourceModeService {
|
|
|
274
274
|
if (rec)
|
|
275
275
|
rec.touched = now;
|
|
276
276
|
const waitedMs = rec ? now - rec.since : 0;
|
|
277
|
-
const { victim, skipped, relaxedBecause } = await this.pickVictim(pool, idleTimeoutMinutes, waitedMs >= RESOURCE_MODE_CONSTANTS.RELAX_AFTER_MS);
|
|
277
|
+
const { victim, skipped, relaxedBecause } = await this.pickVictim(pool, idleTimeoutMinutes, waitedMs >= RESOURCE_MODE_CONSTANTS.RELAX_AFTER_MS, head.owner);
|
|
278
278
|
if (victim && relaxedBecause !== undefined) {
|
|
279
279
|
this.logger.warn('A start has waited too long for a slot; relaxing the eviction rules', {
|
|
280
280
|
waiter: head.name,
|
|
@@ -331,11 +331,12 @@ export class ResourceModeService {
|
|
|
331
331
|
* @param running - Running agents
|
|
332
332
|
* @param idleTimeoutMinutes - Pressure idle timeout; a younger idle is never stopped
|
|
333
333
|
* @param relax - The first waiter has waited past RELAX_AFTER_MS: when no agent passes the rules, stop the best one anyway
|
|
334
|
+
* @param ownerWaiter - The first waiter carries an owner message: the idle timeout does not protect an agent (the longest-idle one goes at once); busy, owner-message, Drive-warm and pending-work/ticket/delegation protections still apply
|
|
334
335
|
* @returns The victim (if any), why each skipped agent was kept, and, when the rules were relaxed, why the victim had been kept
|
|
335
336
|
*/
|
|
336
|
-
async pickVictim(running, idleTimeoutMinutes, relax = false) {
|
|
337
|
+
async pickVictim(running, idleTimeoutMinutes, relax = false, ownerWaiter = false) {
|
|
337
338
|
const waiting = new Set(this.waiters.map((w) => w.name));
|
|
338
|
-
const minIdleMs = Math.max(0, idleTimeoutMinutes) * 60_000;
|
|
339
|
+
const minIdleMs = ownerWaiter ? 0 : Math.max(0, idleTimeoutMinutes) * 60_000;
|
|
339
340
|
const skipped = [];
|
|
340
341
|
const ordered = running
|
|
341
342
|
.filter((r) => !r.busy
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-mode.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/resource-mode.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resource-mode.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/resource-mode.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,8 @@ import type { ChatChannelDTO, ChatMessageDTO } from './types.js';
|
|
|
23
23
|
import type { ChatV2MentionResolver, MentionTarget } from './chat-v2.mention-resolver.js';
|
|
24
24
|
import { RoomContextBacklog } from './room-context-backlog.js';
|
|
25
25
|
import { type QueueMessageMeta } from '../messaging/queue-priority.js';
|
|
26
|
+
/** Pause before the one retry of a failed activate-on-send (a deferred start is not retried: it is queued) */
|
|
27
|
+
export declare const ACTIVATE_RETRY_DELAY_MS = 3000;
|
|
26
28
|
/**
|
|
27
29
|
* Minimal surface the dispatcher needs from the agent-registration service.
|
|
28
30
|
* Typed explicitly so tests can pass a stub without pulling in the full
|
|
@@ -40,6 +42,11 @@ export interface AgentMessageSink {
|
|
|
40
42
|
export interface DispatchResult {
|
|
41
43
|
/** True when the runtime accepted the message (or queued it for delivery). */
|
|
42
44
|
dispatched: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* The agent could not be started right now (running-agent cap) and the
|
|
47
|
+
* message waits on its queue for the start. Delivered, not failed.
|
|
48
|
+
*/
|
|
49
|
+
deferred?: boolean;
|
|
43
50
|
/** Filled when `dispatched === false`. */
|
|
44
51
|
error?: string;
|
|
45
52
|
}
|
|
@@ -71,6 +78,12 @@ export interface HuddleDispatchOutcome {
|
|
|
71
78
|
responseMode: 'required' | 'optional';
|
|
72
79
|
/** Whether the prompt was successfully queued for the member. */
|
|
73
80
|
dispatched: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* The member's start is deferred (running-agent cap): the prompt waits on
|
|
83
|
+
* its persisted queue and is delivered once the agent starts. Delivered,
|
|
84
|
+
* not failed — {@link dispatched} is true.
|
|
85
|
+
*/
|
|
86
|
+
deferred?: boolean;
|
|
74
87
|
/**
|
|
75
88
|
* The agent was busy: the prompt waits on its queue (`[AGENT_BUSY]` hold)
|
|
76
89
|
* and reaches it when it is idle. It holds the message — nobody else should
|
|
@@ -102,6 +115,8 @@ export interface DispatchMessageResult {
|
|
|
102
115
|
strategy: 'dm' | 'channel-mentions' | 'huddle-broadcast' | 'skip';
|
|
103
116
|
/** True when at least one underlying delivery succeeded. */
|
|
104
117
|
dispatched: boolean;
|
|
118
|
+
/** DM only: the agent's start is deferred and the message waits on its queue. */
|
|
119
|
+
deferred?: boolean;
|
|
105
120
|
/** Filled when `strategy === 'skip'`. */
|
|
106
121
|
reason?: string;
|
|
107
122
|
/** Populated for `strategy === 'dm'`. */
|
|
@@ -233,7 +248,19 @@ export interface ChatV2DispatcherOptions {
|
|
|
233
248
|
* active. User-initiated, so it bypasses the orchestrator wake-gate by
|
|
234
249
|
* design. When omitted, inactive sends just queue (legacy behavior).
|
|
235
250
|
*/
|
|
236
|
-
activateAgent?: (agentSession: string) => Promise<boolean>;
|
|
251
|
+
activateAgent?: (agentSession: string) => Promise<boolean | 'deferred'>;
|
|
252
|
+
/**
|
|
253
|
+
* Holds a prompt on the agent's persisted queue. Used when activate-on-send
|
|
254
|
+
* answers `'deferred'` (the start waits for a running-agent slot): the
|
|
255
|
+
* message is not lost and not failed, it is delivered when the agent starts.
|
|
256
|
+
* When omitted a deferred start is a failure, as before.
|
|
257
|
+
*/
|
|
258
|
+
holdForStart?: (agentSession: string, prompt: string) => void;
|
|
259
|
+
/**
|
|
260
|
+
* Pause before the one retry of a failed (not deferred) activation, ms.
|
|
261
|
+
* Defaults to {@link ACTIVATE_RETRY_DELAY_MS}.
|
|
262
|
+
*/
|
|
263
|
+
activateRetryDelayMs?: number;
|
|
237
264
|
/**
|
|
238
265
|
* The messages that came before this one, newest last.
|
|
239
266
|
*
|
|
@@ -546,6 +573,8 @@ export declare class ChatV2DispatcherService {
|
|
|
546
573
|
private readonly lastThreadSpeakerFor?;
|
|
547
574
|
private readonly huddleLeaderFor?;
|
|
548
575
|
private readonly activateAgent?;
|
|
576
|
+
private readonly holdForStart?;
|
|
577
|
+
private readonly activateRetryDelayMs;
|
|
549
578
|
private readonly recentTurnsFor?;
|
|
550
579
|
private readonly onDispatched?;
|
|
551
580
|
private readonly refuseDelivery?;
|
|
@@ -569,6 +598,28 @@ export declare class ChatV2DispatcherService {
|
|
|
569
598
|
* @returns The sink's result
|
|
570
599
|
*/
|
|
571
600
|
private sendToAgent;
|
|
601
|
+
/**
|
|
602
|
+
* Run a delivery (or a queue hold) with the queue metadata this message
|
|
603
|
+
* deserves: owner priority for the owner's message, staleness for a
|
|
604
|
+
* colleague's room message in a thread.
|
|
605
|
+
*/
|
|
606
|
+
private withDeliveryMeta;
|
|
607
|
+
/**
|
|
608
|
+
* Activate-on-send for an agent whose session is down. A start that is
|
|
609
|
+
* deferred (running-agent cap) is final for this attempt — the caller holds
|
|
610
|
+
* the message on the queue. Any other failure is retried once after a short
|
|
611
|
+
* pause before it counts.
|
|
612
|
+
*
|
|
613
|
+
* @param sessionName - Agent to start
|
|
614
|
+
* @returns `true` started, `'deferred'` waiting for a slot, `false` could not be started
|
|
615
|
+
*/
|
|
616
|
+
private activateWithRetry;
|
|
617
|
+
/**
|
|
618
|
+
* Put a prompt on the agent's queue for its deferred start.
|
|
619
|
+
*
|
|
620
|
+
* @returns True when the prompt is held
|
|
621
|
+
*/
|
|
622
|
+
private hold;
|
|
572
623
|
/**
|
|
573
624
|
* Whether this message gets the wider history window (top-level owner
|
|
574
625
|
* message in a room or channel).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-v2.dispatcher.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/chat-v2/chat-v2.dispatcher.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EACV,qBAAqB,EAErB,aAAa,EACd,MAAM,+BAA+B,CAAC;AAOvC,OAAO,EAAE,kBAAkB,EAA0B,MAAM,2BAA2B,CAAC;AAEvF,OAAO,EAAiB,KAAK,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-v2.dispatcher.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/chat-v2/chat-v2.dispatcher.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,6 +29,8 @@ import { formatSlackThreadKey, slackThreadOfMetadata, slackThreadTag, parseSlack
|
|
|
29
29
|
import { RoomContextBacklog, renderContextOnlyBlock } from './room-context-backlog.js';
|
|
30
30
|
import { redactOpenLinkTokens } from '../apps/app-open-link.js';
|
|
31
31
|
import { withQueueMeta } from '../messaging/queue-priority.js';
|
|
32
|
+
/** Pause before the one retry of a failed activate-on-send (a deferred start is not retried: it is queued) */
|
|
33
|
+
export const ACTIVATE_RETRY_DELAY_MS = 3_000;
|
|
32
34
|
// ---------------------------------------------------------------------------
|
|
33
35
|
// Prompt formatter
|
|
34
36
|
// ---------------------------------------------------------------------------
|
|
@@ -349,6 +351,8 @@ export class ChatV2DispatcherService {
|
|
|
349
351
|
lastThreadSpeakerFor;
|
|
350
352
|
huddleLeaderFor;
|
|
351
353
|
activateAgent;
|
|
354
|
+
holdForStart;
|
|
355
|
+
activateRetryDelayMs;
|
|
352
356
|
recentTurnsFor;
|
|
353
357
|
onDispatched;
|
|
354
358
|
refuseDelivery;
|
|
@@ -365,6 +369,8 @@ export class ChatV2DispatcherService {
|
|
|
365
369
|
this.lastThreadSpeakerFor = options.lastThreadSpeakerFor;
|
|
366
370
|
this.huddleLeaderFor = options.huddleLeaderFor;
|
|
367
371
|
this.activateAgent = options.activateAgent;
|
|
372
|
+
this.holdForStart = options.holdForStart;
|
|
373
|
+
this.activateRetryDelayMs = options.activateRetryDelayMs ?? ACTIVATE_RETRY_DELAY_MS;
|
|
368
374
|
this.recentTurnsFor = options.recentTurnsFor;
|
|
369
375
|
this.onDispatched = options.onDispatched;
|
|
370
376
|
this.refuseDelivery = options.refuseDelivery;
|
|
@@ -387,6 +393,14 @@ export class ChatV2DispatcherService {
|
|
|
387
393
|
* @returns The sink's result
|
|
388
394
|
*/
|
|
389
395
|
sendToAgent(channel, message, sessionName, prompt, chatThreadId) {
|
|
396
|
+
return this.withDeliveryMeta(channel, message, sessionName, prompt, chatThreadId, () => this.agentSink.sendMessageToAgent(sessionName, prompt));
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* Run a delivery (or a queue hold) with the queue metadata this message
|
|
400
|
+
* deserves: owner priority for the owner's message, staleness for a
|
|
401
|
+
* colleague's room message in a thread.
|
|
402
|
+
*/
|
|
403
|
+
withDeliveryMeta(channel, message, sessionName, prompt, chatThreadId, fn) {
|
|
390
404
|
let owner = false;
|
|
391
405
|
try {
|
|
392
406
|
owner = this.isOwnerMessage?.(message) === true;
|
|
@@ -394,15 +408,69 @@ export class ChatV2DispatcherService {
|
|
|
394
408
|
catch {
|
|
395
409
|
owner = false;
|
|
396
410
|
}
|
|
397
|
-
if (owner)
|
|
398
|
-
return withQueueMeta(sessionName, prompt, ownerQueueMeta(channel, message, chatThreadId),
|
|
399
|
-
}
|
|
411
|
+
if (owner)
|
|
412
|
+
return withQueueMeta(sessionName, prompt, ownerQueueMeta(channel, message, chatThreadId), fn);
|
|
400
413
|
// A colleague agent's room message in a thread: no priority, but stale
|
|
401
414
|
// once the recipient has answered in that thread.
|
|
402
415
|
if (agentAuthorOf(message) && chatThreadId) {
|
|
403
|
-
return withQueueMeta(sessionName, prompt, { where: { chatChannelId: channel.id, chatThreadId } },
|
|
416
|
+
return withQueueMeta(sessionName, prompt, { where: { chatChannelId: channel.id, chatThreadId } }, fn);
|
|
417
|
+
}
|
|
418
|
+
return fn();
|
|
419
|
+
}
|
|
420
|
+
/**
|
|
421
|
+
* Activate-on-send for an agent whose session is down. A start that is
|
|
422
|
+
* deferred (running-agent cap) is final for this attempt — the caller holds
|
|
423
|
+
* the message on the queue. Any other failure is retried once after a short
|
|
424
|
+
* pause before it counts.
|
|
425
|
+
*
|
|
426
|
+
* @param sessionName - Agent to start
|
|
427
|
+
* @returns `true` started, `'deferred'` waiting for a slot, `false` could not be started
|
|
428
|
+
*/
|
|
429
|
+
async activateWithRetry(sessionName) {
|
|
430
|
+
if (!this.activateAgent)
|
|
431
|
+
return false;
|
|
432
|
+
for (let attempt = 0; attempt < 2; attempt++) {
|
|
433
|
+
try {
|
|
434
|
+
const out = await this.activateAgent(sessionName);
|
|
435
|
+
if (out)
|
|
436
|
+
return out;
|
|
437
|
+
}
|
|
438
|
+
catch (err) {
|
|
439
|
+
this.logger.warn('chat-v2 activate-on-send failed', {
|
|
440
|
+
sessionName,
|
|
441
|
+
err: err instanceof Error ? err.message : String(err),
|
|
442
|
+
});
|
|
443
|
+
}
|
|
444
|
+
if (attempt === 0 && this.activateRetryDelayMs > 0) {
|
|
445
|
+
await new Promise((resolve) => setTimeout(resolve, this.activateRetryDelayMs));
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
return false;
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* Put a prompt on the agent's queue for its deferred start.
|
|
452
|
+
*
|
|
453
|
+
* @returns True when the prompt is held
|
|
454
|
+
*/
|
|
455
|
+
hold(channel, message, sessionName, prompt, chatThreadId) {
|
|
456
|
+
const holder = this.holdForStart;
|
|
457
|
+
if (!holder)
|
|
458
|
+
return false;
|
|
459
|
+
try {
|
|
460
|
+
this.withDeliveryMeta(channel, message, sessionName, prompt, chatThreadId, () => holder(sessionName, prompt));
|
|
461
|
+
this.logger.info('chat-v2: agent start deferred — message held on its queue until it starts', {
|
|
462
|
+
channelId: channel.id,
|
|
463
|
+
sessionName,
|
|
464
|
+
});
|
|
465
|
+
return true;
|
|
466
|
+
}
|
|
467
|
+
catch (err) {
|
|
468
|
+
this.logger.warn('chat-v2: could not hold a message for a deferred start', {
|
|
469
|
+
sessionName,
|
|
470
|
+
err: err instanceof Error ? err.message : String(err),
|
|
471
|
+
});
|
|
472
|
+
return false;
|
|
404
473
|
}
|
|
405
|
-
return this.agentSink.sendMessageToAgent(sessionName, prompt);
|
|
406
474
|
}
|
|
407
475
|
/**
|
|
408
476
|
* Whether this message gets the wider history window (top-level owner
|
|
@@ -582,6 +650,7 @@ export class ChatV2DispatcherService {
|
|
|
582
650
|
return {
|
|
583
651
|
strategy: 'dm',
|
|
584
652
|
dispatched: dmResult.dispatched,
|
|
653
|
+
...(dmResult.deferred ? { deferred: true } : {}),
|
|
585
654
|
dmResult,
|
|
586
655
|
};
|
|
587
656
|
}
|
|
@@ -949,16 +1018,18 @@ export class ChatV2DispatcherService {
|
|
|
949
1018
|
...(options.oneResponder ? { soleResponder: true } : {}),
|
|
950
1019
|
...(contextOnlyBlock ? { contextOnlyBlock } : {}),
|
|
951
1020
|
});
|
|
952
|
-
/** One delivery attempt; false when the sink refused (typically: no session). */
|
|
953
1021
|
const attempt = async (sessionName, responseMode) => {
|
|
954
1022
|
// What this agent only listened to in the room since its last prompt here.
|
|
955
1023
|
const heard = this.contextBacklog.take(sessionName, channel.id, message.id);
|
|
1024
|
+
const prompt = promptFor(sessionName, responseMode, renderContextOnlyBlock(heard));
|
|
956
1025
|
try {
|
|
957
1026
|
this.noteActingFor(sessionName, message);
|
|
958
|
-
const result = await this.sendToAgent(channel, message, sessionName,
|
|
1027
|
+
const result = await this.sendToAgent(channel, message, sessionName, prompt, options.threadId ?? message.threadId ?? message.id);
|
|
959
1028
|
if (!result.success)
|
|
960
1029
|
this.contextBacklog.restore(sessionName, channel.id, heard);
|
|
961
|
-
return result.success
|
|
1030
|
+
return result.success
|
|
1031
|
+
? { ok: true, ...(result.queued ? { queued: true } : {}) }
|
|
1032
|
+
: { ok: false, error: result.error ?? 'unknown sink failure', prompt };
|
|
962
1033
|
}
|
|
963
1034
|
catch (err) {
|
|
964
1035
|
this.contextBacklog.restore(sessionName, channel.id, heard);
|
|
@@ -976,22 +1047,24 @@ export class ChatV2DispatcherService {
|
|
|
976
1047
|
sessionName,
|
|
977
1048
|
responseMode,
|
|
978
1049
|
});
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
this.
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
1050
|
+
const activated = await this.activateWithRetry(sessionName);
|
|
1051
|
+
if (activated === 'deferred' && result.prompt !== undefined) {
|
|
1052
|
+
// The start waits for a running-agent slot. The message is held on
|
|
1053
|
+
// the agent's queue and delivered when it starts: not a failure.
|
|
1054
|
+
const threadId = options.threadId ?? message.threadId ?? message.id;
|
|
1055
|
+
if (this.hold(channel, message, sessionName, result.prompt, threadId)) {
|
|
1056
|
+
// The held prompt already carries what the agent overheard.
|
|
1057
|
+
this.contextBacklog.take(sessionName, channel.id, message.id);
|
|
1058
|
+
result = { ok: true, queued: true, deferred: true };
|
|
1059
|
+
}
|
|
988
1060
|
}
|
|
989
|
-
if (activated)
|
|
1061
|
+
else if (activated) {
|
|
990
1062
|
result = await attempt(sessionName, responseMode);
|
|
1063
|
+
}
|
|
991
1064
|
}
|
|
992
1065
|
if (result.ok) {
|
|
993
1066
|
const silent = isSilentByDefault(options.peopleAddressing, responseMode, namedExplicitly.has(sessionName));
|
|
994
|
-
outcomes.push({ sessionName, responseMode, dispatched: true, ...(silent ? { silentByDefault: true } : {}), ...(result.queued ? { queued: true } : {}) });
|
|
1067
|
+
outcomes.push({ sessionName, responseMode, dispatched: true, ...(silent ? { silentByDefault: true } : {}), ...(result.queued ? { queued: true } : {}), ...(result.deferred ? { deferred: true } : {}) });
|
|
995
1068
|
anyDispatched = true;
|
|
996
1069
|
this.noteOriginThread(sessionName, channel.id, options.threadId ?? message.threadId ?? message.id);
|
|
997
1070
|
}
|
|
@@ -1178,17 +1251,16 @@ export class ChatV2DispatcherService {
|
|
|
1178
1251
|
channelId: channel.id,
|
|
1179
1252
|
agentSession: channel.agentSession,
|
|
1180
1253
|
});
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
});
|
|
1254
|
+
const activated = await this.activateWithRetry(channel.agentSession);
|
|
1255
|
+
if (activated === 'deferred') {
|
|
1256
|
+
// The start waits for a running-agent slot: hold the message on the
|
|
1257
|
+
// agent's queue; it is delivered when the agent starts.
|
|
1258
|
+
if (this.hold(channel, message, channel.agentSession, prompt, message.threadId ?? undefined)) {
|
|
1259
|
+
this.noteOriginThread(channel.agentSession, channel.id, undefined);
|
|
1260
|
+
return { dispatched: true, deferred: true };
|
|
1261
|
+
}
|
|
1190
1262
|
}
|
|
1191
|
-
if (activated) {
|
|
1263
|
+
else if (activated) {
|
|
1192
1264
|
try {
|
|
1193
1265
|
result = await this.sendToAgent(channel, message, channel.agentSession, prompt, message.threadId ?? undefined);
|
|
1194
1266
|
}
|