crewly 1.20.346 → 1.20.348

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 (71) hide show
  1. package/dist/backend/backend/src/constants.d.ts +30 -0
  2. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  3. package/dist/backend/backend/src/constants.js +30 -0
  4. package/dist/backend/backend/src/constants.js.map +1 -1
  5. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.d.ts.map +1 -1
  6. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js +25 -1
  7. package/dist/backend/backend/src/controllers/chat-v2/chat-v2.controller.js.map +1 -1
  8. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts +5 -2
  9. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  10. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +16 -1
  11. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  12. package/dist/backend/backend/src/index.d.ts +15 -0
  13. package/dist/backend/backend/src/index.d.ts.map +1 -1
  14. package/dist/backend/backend/src/index.js +73 -1
  15. package/dist/backend/backend/src/index.js.map +1 -1
  16. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts +5 -0
  17. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  18. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js +3 -2
  19. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  20. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.service.d.ts +165 -0
  21. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.service.d.ts.map +1 -0
  22. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.service.js +337 -0
  23. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.service.js.map +1 -0
  24. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.wiring.d.ts +45 -0
  25. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.wiring.d.ts.map +1 -0
  26. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.wiring.js +71 -0
  27. package/dist/backend/backend/src/services/messaging/agent-ask-ledger.wiring.js.map +1 -0
  28. package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts +49 -0
  29. package/dist/backend/backend/src/services/orc/reply-destination.wiring.d.ts.map +1 -1
  30. package/dist/backend/backend/src/services/orc/reply-destination.wiring.js +107 -2
  31. package/dist/backend/backend/src/services/orc/reply-destination.wiring.js.map +1 -1
  32. package/dist/backend/backend/src/services/orc/triggered-by.d.ts +62 -0
  33. package/dist/backend/backend/src/services/orc/triggered-by.d.ts.map +1 -0
  34. package/dist/backend/backend/src/services/orc/triggered-by.js +141 -0
  35. package/dist/backend/backend/src/services/orc/triggered-by.js.map +1 -0
  36. package/dist/backend/backend/src/services/trace/trace-context.service.d.ts.map +1 -1
  37. package/dist/backend/backend/src/services/trace/trace-context.service.js +31 -6
  38. package/dist/backend/backend/src/services/trace/trace-context.service.js.map +1 -1
  39. package/dist/backend/backend/src/services/trace/turn-trigger.d.ts +141 -0
  40. package/dist/backend/backend/src/services/trace/turn-trigger.d.ts.map +1 -0
  41. package/dist/backend/backend/src/services/trace/turn-trigger.js +258 -0
  42. package/dist/backend/backend/src/services/trace/turn-trigger.js.map +1 -0
  43. package/dist/backend/backend/src/services/v3/ticket-review.service.d.ts +21 -0
  44. package/dist/backend/backend/src/services/v3/ticket-review.service.d.ts.map +1 -1
  45. package/dist/backend/backend/src/services/v3/ticket-review.service.js +35 -0
  46. package/dist/backend/backend/src/services/v3/ticket-review.service.js.map +1 -1
  47. package/dist/backend/build-info.json +2 -2
  48. package/dist/cli/backend/src/constants.d.ts +30 -0
  49. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  50. package/dist/cli/backend/src/constants.js +30 -0
  51. package/dist/cli/backend/src/constants.js.map +1 -1
  52. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts +5 -0
  53. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  54. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js +3 -2
  55. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  56. package/dist/cli/backend/src/services/messaging/agent-ask-ledger.service.d.ts +165 -0
  57. package/dist/cli/backend/src/services/messaging/agent-ask-ledger.service.d.ts.map +1 -0
  58. package/dist/cli/backend/src/services/messaging/agent-ask-ledger.service.js +337 -0
  59. package/dist/cli/backend/src/services/messaging/agent-ask-ledger.service.js.map +1 -0
  60. package/dist/cli/backend/src/services/trace/trace-context.service.d.ts.map +1 -1
  61. package/dist/cli/backend/src/services/trace/trace-context.service.js +31 -6
  62. package/dist/cli/backend/src/services/trace/trace-context.service.js.map +1 -1
  63. package/dist/cli/backend/src/services/trace/turn-trigger.d.ts +141 -0
  64. package/dist/cli/backend/src/services/trace/turn-trigger.d.ts.map +1 -0
  65. package/dist/cli/backend/src/services/trace/turn-trigger.js +258 -0
  66. package/dist/cli/backend/src/services/trace/turn-trigger.js.map +1 -0
  67. package/dist/cli/backend/src/services/v3/ticket-review.service.d.ts +21 -0
  68. package/dist/cli/backend/src/services/v3/ticket-review.service.d.ts.map +1 -1
  69. package/dist/cli/backend/src/services/v3/ticket-review.service.js +35 -0
  70. package/dist/cli/backend/src/services/v3/ticket-review.service.js.map +1 -1
  71. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"trace-context.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/trace/trace-context.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trace-context.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/trace/trace-context.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * What started an agent's turn — the "trigger" of everything it posts from
3
+ * that turn (agent-provenance audit 2026-10-14).
4
+ *
5
+ * The harness writes every prompt into a turn (terminal `/write` and
6
+ * `/deliver`, `sendMessageToAgent`). Each delivery is classified here into a
7
+ * finer kind than {@link classifyDelivery} (which lumps restarts, reminders,
8
+ * app changes and agent-to-agent messages into `system`), with the sending
9
+ * agent when another agent wrote it. The last trigger of each session is kept
10
+ * in memory, so a reply posted from that turn can say why it exists.
11
+ *
12
+ * Agent-to-agent sends are noted when the sender's request arrives
13
+ * ({@link TurnTriggerTracker.noteSender}) and matched to the delivery by text,
14
+ * so a message queued while the target was busy keeps its sender.
15
+ *
16
+ * @module services/trace/turn-trigger
17
+ */
18
+ /** Fine-grained kinds of what started a turn. */
19
+ export declare const TURN_TRIGGER_KINDS: readonly ["owner_message", "agent_message", "dispatch", "redelivery", "follow_up", "owner_report_due", "follow_through", "stale_item", "decision", "restart", "scheduled", "app_change", "status", "system"];
20
+ /** What started a turn. */
21
+ export type TurnTriggerKind = (typeof TURN_TRIGGER_KINDS)[number];
22
+ /** A classified delivery. */
23
+ export interface ClassifiedTrigger {
24
+ triggerKind: TurnTriggerKind;
25
+ /** Work item the prompt names (`[CREWLY-DISPATCH] WorkItem <id>`, task recovery) */
26
+ workItemId?: string;
27
+ /** Ticket or decision label the prompt names (`TKT-12`, `D-4`) */
28
+ ticket?: string;
29
+ /** Chat conversation of an owner message (`[CHAT:<id>]`) */
30
+ conversationId?: string;
31
+ }
32
+ /** The trigger of a session's current turn. */
33
+ export interface TurnTrigger extends ClassifiedTrigger {
34
+ /** Agent session that sent it, for `agent_message` */
35
+ sender?: string;
36
+ /** Run trace the delivery joined, if any */
37
+ traceId?: string;
38
+ /**
39
+ * What started the chain: the trigger kind of the first hop. For an
40
+ * agent message, the sender's own trigger kind (and so on up the chain).
41
+ */
42
+ rootKind: TurnTriggerKind;
43
+ /** The root's reference: conversation, work item or ticket id */
44
+ rootRef?: string;
45
+ /** Agents the request passed through before this one, oldest first */
46
+ viaAgents: string[];
47
+ /** When it was delivered (epoch ms) */
48
+ at: number;
49
+ }
50
+ /** Provenance record stored on a chat row (`metadata.triggeredBy`). */
51
+ export interface TriggeredByMetadata {
52
+ traceId?: string;
53
+ rootKind: TurnTriggerKind;
54
+ rootRef?: string;
55
+ triggerKind: TurnTriggerKind;
56
+ viaAgents: string[];
57
+ /** The rendered line, without the markdown wrapper (empty when not shown) */
58
+ label?: string;
59
+ }
60
+ /**
61
+ * Classify a delivered prompt.
62
+ *
63
+ * @param text - Exactly what was written into the turn
64
+ * @returns The trigger kind and the ids the prompt names
65
+ */
66
+ export declare function classifyTurnTrigger(text: string): ClassifiedTrigger;
67
+ /**
68
+ * Last trigger of each session. Singleton (see {@link getTurnTriggerTracker}).
69
+ */
70
+ export declare class TurnTriggerTracker {
71
+ private readonly current;
72
+ private readonly sends;
73
+ /** Per session: conversation id → when the owner last wrote to it there */
74
+ private readonly ownerAsks;
75
+ /**
76
+ * Note that `sender` asked to write `text` to `target` (the terminal write
77
+ * route, before delivery or queueing).
78
+ *
79
+ * @param target - Receiving session
80
+ * @param text - Message text
81
+ * @param sender - Sending agent session
82
+ * @param now - Clock (epoch ms)
83
+ */
84
+ noteSender(target: string, text: string, sender: string, now?: number): void;
85
+ /**
86
+ * Record what started `session`'s turn.
87
+ *
88
+ * @param session - Agent session written to
89
+ * @param text - Exactly what was delivered
90
+ * @param opts - Trace the delivery joined; sender when the caller knows it
91
+ * @param now - Clock (epoch ms)
92
+ * @returns The recorded trigger
93
+ */
94
+ noteDelivery(session: string, text: string, opts?: {
95
+ traceId?: string | null;
96
+ sender?: string | null;
97
+ }, now?: number): TurnTrigger;
98
+ /**
99
+ * Whether the owner wrote to `session` in `conversationId` recently — a
100
+ * post there is then an answer to the owner, whatever came in since (a
101
+ * reminder delivered mid-turn must not relabel it).
102
+ *
103
+ * @param session - Agent session
104
+ * @param conversationId - Conversation posted to
105
+ * @param now - Clock (epoch ms)
106
+ * @returns True within {@link TURN_TRIGGER_CONSTANTS.OWNER_ANSWER_WINDOW_MS}
107
+ */
108
+ ownerAskedRecently(session: string, conversationId: string, now?: number): boolean;
109
+ /**
110
+ * The trigger of `session`'s current turn, while fresh.
111
+ *
112
+ * @param session - Agent session
113
+ * @param now - Clock (epoch ms)
114
+ * @returns The trigger, or null
115
+ */
116
+ trigger(session: string, now?: number): TurnTrigger | null;
117
+ /** Forget everything (tests). */
118
+ reset(): void;
119
+ /**
120
+ * The sender of a noted send whose text the delivery contains (consumed).
121
+ *
122
+ * @param target - Receiving session
123
+ * @param text - Delivered text
124
+ * @param now - Clock
125
+ * @returns Sender session, or undefined
126
+ */
127
+ private takeSender;
128
+ }
129
+ /**
130
+ * The process-wide tracker.
131
+ *
132
+ * @returns The singleton
133
+ */
134
+ export declare function getTurnTriggerTracker(): TurnTriggerTracker;
135
+ /**
136
+ * Replace the singleton (tests).
137
+ *
138
+ * @param tracker - Replacement, or null to drop it
139
+ */
140
+ export declare function setTurnTriggerTrackerForTesting(tracker: TurnTriggerTracker | null): void;
141
+ //# sourceMappingURL=turn-trigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn-trigger.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/trace/turn-trigger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,iDAAiD;AACjD,eAAO,MAAM,kBAAkB,8MAerB,CAAC;AAEX,2BAA2B;AAC3B,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,6BAA6B;AAC7B,MAAM,WAAW,iBAAiB;IACjC,WAAW,EAAE,eAAe,CAAC;IAC7B,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,+CAA+C;AAC/C,MAAM,WAAW,WAAY,SAAQ,iBAAiB;IACrD,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,QAAQ,EAAE,eAAe,CAAC;IAC1B,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;CACX;AAED,uEAAuE;AACvE,MAAM,WAAW,mBAAmB;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,eAAe,CAAC;IAC7B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAOD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CA6BnE;AAyBD;;GAEG;AACH,qBAAa,kBAAkB;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAC1D,2EAA2E;IAC3E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0C;IAEpE;;;;;;;;OAQG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,IAAI;IAUxF;;;;;;;;OAQG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAO,EAAE,GAAG,GAAE,MAAmB,GAAG,WAAW;IAgClJ;;;;;;;;;OASG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO;IAK9F;;;;;;OAMG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,WAAW,GAAG,IAAI;IAUtE,iCAAiC;IACjC,KAAK,IAAI,IAAI;IAMb;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;CAclB;AAID;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,kBAAkB,CAG1D;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,GAAG,IAAI,CAExF"}
@@ -0,0 +1,258 @@
1
+ /**
2
+ * What started an agent's turn — the "trigger" of everything it posts from
3
+ * that turn (agent-provenance audit 2026-10-14).
4
+ *
5
+ * The harness writes every prompt into a turn (terminal `/write` and
6
+ * `/deliver`, `sendMessageToAgent`). Each delivery is classified here into a
7
+ * finer kind than {@link classifyDelivery} (which lumps restarts, reminders,
8
+ * app changes and agent-to-agent messages into `system`), with the sending
9
+ * agent when another agent wrote it. The last trigger of each session is kept
10
+ * in memory, so a reply posted from that turn can say why it exists.
11
+ *
12
+ * Agent-to-agent sends are noted when the sender's request arrives
13
+ * ({@link TurnTriggerTracker.noteSender}) and matched to the delivery by text,
14
+ * so a message queued while the target was busy keeps its sender.
15
+ *
16
+ * @module services/trace/turn-trigger
17
+ */
18
+ import { TURN_TRIGGER_CONSTANTS } from '../../constants.js';
19
+ import { parseInboundOrigin } from '../orc/orc-reply-route.service.js';
20
+ const C = TURN_TRIGGER_CONSTANTS;
21
+ /** Fine-grained kinds of what started a turn. */
22
+ export const TURN_TRIGGER_KINDS = [
23
+ 'owner_message',
24
+ 'agent_message',
25
+ 'dispatch',
26
+ 'redelivery',
27
+ 'follow_up',
28
+ 'owner_report_due',
29
+ 'follow_through',
30
+ 'stale_item',
31
+ 'decision',
32
+ 'restart',
33
+ 'scheduled',
34
+ 'app_change',
35
+ 'status',
36
+ 'system',
37
+ ];
38
+ /** Restart notice that wraps the interrupted message (SAFE_RESTART constants). */
39
+ const RESTART_RE = /^\s*Crewly restarted while you were working on\b/;
40
+ /** Header in a restart notice before the original message. */
41
+ const RESTART_ORIGINAL_RE = /\nThe message you were handling:\n([\s\S]*)$/;
42
+ /**
43
+ * Classify a delivered prompt.
44
+ *
45
+ * @param text - Exactly what was written into the turn
46
+ * @returns The trigger kind and the ids the prompt names
47
+ */
48
+ export function classifyTurnTrigger(text) {
49
+ const t = typeof text === 'string' ? text : '';
50
+ if (RESTART_RE.test(t) || /^\s*\[SYSTEM — TASK RECOVERY\]|\[RESTART_DRAIN\]|^\s*\[CHAT_RESUME\]/.test(t)) {
51
+ // A restart that re-delivers an owner message is still that message.
52
+ const original = RESTART_ORIGINAL_RE.exec(t)?.[1];
53
+ if (original) {
54
+ const inner = classifyTurnTrigger(original);
55
+ if (inner.triggerKind === 'owner_message' || inner.triggerKind === 'agent_message')
56
+ return inner;
57
+ }
58
+ return { triggerKind: 'restart', ...workItemOf(t) };
59
+ }
60
+ // An owner's chat message opens with its routing prefix; checked before
61
+ // the harness tags, which the owner's own text may quote.
62
+ const chat = parseInboundOrigin(t);
63
+ if (chat)
64
+ return { triggerKind: 'owner_message', conversationId: chat.conversationId };
65
+ if (/^\s*\[(?:OWNER MESSAGE\]|SLACK[A-Z_-]*[:\]]|REMOTE:)/.test(t))
66
+ return { triggerKind: 'owner_message' };
67
+ if (/\[TASK RE-DELIVERY\]|\[CREWLY-DISPATCH\] \d+ WorkItems? (?:is|are) still queued/.test(t))
68
+ return { triggerKind: 'redelivery', ...workItemOf(t) };
69
+ if (/\[TRIGGER WAKE\]|\[SCHEDULED\]|\[SCHEDULED CHECK-IN/.test(t))
70
+ return { triggerKind: 'scheduled', ...workItemOf(t) };
71
+ if (/\[CREWLY-DISPATCH\]|\[TASK ASSIGNMENT\]|^\s*\[TASK\]/.test(t))
72
+ return { triggerKind: 'dispatch', ...workItemOf(t) };
73
+ const followUp = /\[FOLLOW-UP\s+([A-Z][A-Z0-9]*-\d+)?/.exec(t);
74
+ if (followUp)
75
+ return { triggerKind: 'follow_up', ...(followUp[1] ? { ticket: followUp[1] } : {}) };
76
+ if (/\[OWNER REPORT DUE\b/.test(t))
77
+ return { triggerKind: 'owner_report_due', ...workItemOf(t) };
78
+ if (/\[FOLLOW-THROUGH\b/.test(t))
79
+ return { triggerKind: 'follow_through' };
80
+ if (/\[STALE ITEM\]/.test(t))
81
+ return { triggerKind: 'stale_item' };
82
+ const decision = /\[DECISIONS?\s*(D-\d+)?/.exec(t);
83
+ if (decision)
84
+ return { triggerKind: 'decision', ...(decision[1] ? { ticket: decision[1] } : {}) };
85
+ if (/\[APP CHANGES\]/.test(t))
86
+ return { triggerKind: 'app_change' };
87
+ if (/Agent status:|Status from \S+ \(reports to you\)|\[STATUS DIGEST\]|\[STATUS REPORT\]/.test(t))
88
+ return { triggerKind: 'status' };
89
+ return { triggerKind: 'system' };
90
+ }
91
+ /**
92
+ * The work item a prompt names.
93
+ *
94
+ * @param text - Prompt text
95
+ * @returns `{ workItemId }` or nothing
96
+ */
97
+ function workItemOf(text) {
98
+ const m = /WorkItem(?: ID)?:?\s+([A-Za-z0-9_-]{6,})/.exec(text);
99
+ return m ? { workItemId: m[1] } : {};
100
+ }
101
+ /** Recognisable start of a text (whitespace collapsed). */
102
+ function fingerprint(text) {
103
+ return text.replace(/\s+/g, ' ').trim().slice(0, C.SENDER_MATCH_CHARS);
104
+ }
105
+ /**
106
+ * Last trigger of each session. Singleton (see {@link getTurnTriggerTracker}).
107
+ */
108
+ export class TurnTriggerTracker {
109
+ current = new Map();
110
+ sends = new Map();
111
+ /** Per session: conversation id → when the owner last wrote to it there */
112
+ ownerAsks = new Map();
113
+ /**
114
+ * Note that `sender` asked to write `text` to `target` (the terminal write
115
+ * route, before delivery or queueing).
116
+ *
117
+ * @param target - Receiving session
118
+ * @param text - Message text
119
+ * @param sender - Sending agent session
120
+ * @param now - Clock (epoch ms)
121
+ */
122
+ noteSender(target, text, sender, now = Date.now()) {
123
+ if (!target || !sender || sender === target || typeof text !== 'string')
124
+ return;
125
+ if (!C.AGENT_SESSION_PATTERN.test(sender))
126
+ return;
127
+ const key = fingerprint(text);
128
+ if (!key)
129
+ return;
130
+ const list = (this.sends.get(target) ?? []).filter((s) => now - s.at < C.SENDER_MATCH_MS);
131
+ list.push({ sender, key, at: now });
132
+ this.sends.set(target, list.slice(-C.MAX_SENDERS_PER_TARGET));
133
+ }
134
+ /**
135
+ * Record what started `session`'s turn.
136
+ *
137
+ * @param session - Agent session written to
138
+ * @param text - Exactly what was delivered
139
+ * @param opts - Trace the delivery joined; sender when the caller knows it
140
+ * @param now - Clock (epoch ms)
141
+ * @returns The recorded trigger
142
+ */
143
+ noteDelivery(session, text, opts = {}, now = Date.now()) {
144
+ const classified = classifyTurnTrigger(text);
145
+ const sender = opts.sender || this.takeSender(session, text, now);
146
+ const base = sender && (classified.triggerKind === 'system' || classified.triggerKind === 'status')
147
+ ? { triggerKind: 'agent_message' }
148
+ : classified;
149
+ let trigger;
150
+ if (base.triggerKind === 'agent_message' && sender) {
151
+ const up = this.trigger(sender, now);
152
+ const via = [...(up?.viaAgents ?? []), sender].filter((s, i, a) => a.indexOf(s) === i).slice(-C.MAX_VIA_AGENTS);
153
+ trigger = {
154
+ ...base,
155
+ sender,
156
+ rootKind: up ? up.rootKind : 'agent_message',
157
+ ...(up?.rootRef ? { rootRef: up.rootRef } : {}),
158
+ viaAgents: via,
159
+ at: now,
160
+ };
161
+ }
162
+ else {
163
+ const rootRef = base.conversationId ?? base.workItemId ?? base.ticket;
164
+ trigger = { ...base, rootKind: base.triggerKind, ...(rootRef ? { rootRef } : {}), viaAgents: [], at: now };
165
+ }
166
+ if (opts.traceId)
167
+ trigger.traceId = opts.traceId;
168
+ if (session)
169
+ this.current.set(session, trigger);
170
+ if (session && trigger.triggerKind === 'owner_message' && trigger.conversationId) {
171
+ const asks = this.ownerAsks.get(session) ?? new Map();
172
+ asks.set(trigger.conversationId, now);
173
+ this.ownerAsks.set(session, asks);
174
+ }
175
+ return trigger;
176
+ }
177
+ /**
178
+ * Whether the owner wrote to `session` in `conversationId` recently — a
179
+ * post there is then an answer to the owner, whatever came in since (a
180
+ * reminder delivered mid-turn must not relabel it).
181
+ *
182
+ * @param session - Agent session
183
+ * @param conversationId - Conversation posted to
184
+ * @param now - Clock (epoch ms)
185
+ * @returns True within {@link TURN_TRIGGER_CONSTANTS.OWNER_ANSWER_WINDOW_MS}
186
+ */
187
+ ownerAskedRecently(session, conversationId, now = Date.now()) {
188
+ const at = this.ownerAsks.get(session)?.get(conversationId);
189
+ return at !== undefined && now - at <= C.OWNER_ANSWER_WINDOW_MS;
190
+ }
191
+ /**
192
+ * The trigger of `session`'s current turn, while fresh.
193
+ *
194
+ * @param session - Agent session
195
+ * @param now - Clock (epoch ms)
196
+ * @returns The trigger, or null
197
+ */
198
+ trigger(session, now = Date.now()) {
199
+ const t = session ? this.current.get(session) : undefined;
200
+ if (!t)
201
+ return null;
202
+ if (now - t.at > C.FRESH_MS) {
203
+ this.current.delete(session);
204
+ return null;
205
+ }
206
+ return t;
207
+ }
208
+ /** Forget everything (tests). */
209
+ reset() {
210
+ this.current.clear();
211
+ this.sends.clear();
212
+ this.ownerAsks.clear();
213
+ }
214
+ /**
215
+ * The sender of a noted send whose text the delivery contains (consumed).
216
+ *
217
+ * @param target - Receiving session
218
+ * @param text - Delivered text
219
+ * @param now - Clock
220
+ * @returns Sender session, or undefined
221
+ */
222
+ takeSender(target, text, now) {
223
+ const list = this.sends.get(target);
224
+ if (!list?.length)
225
+ return undefined;
226
+ const whole = text.replace(/\s+/g, ' ');
227
+ for (let i = list.length - 1; i >= 0; i--) {
228
+ const s = list[i];
229
+ if (now - s.at >= C.SENDER_MATCH_MS)
230
+ continue;
231
+ if (whole.includes(s.key)) {
232
+ list.splice(i, 1);
233
+ return s.sender;
234
+ }
235
+ }
236
+ return undefined;
237
+ }
238
+ }
239
+ let instance = null;
240
+ /**
241
+ * The process-wide tracker.
242
+ *
243
+ * @returns The singleton
244
+ */
245
+ export function getTurnTriggerTracker() {
246
+ if (!instance)
247
+ instance = new TurnTriggerTracker();
248
+ return instance;
249
+ }
250
+ /**
251
+ * Replace the singleton (tests).
252
+ *
253
+ * @param tracker - Replacement, or null to drop it
254
+ */
255
+ export function setTurnTriggerTrackerForTesting(tracker) {
256
+ instance = tracker;
257
+ }
258
+ //# sourceMappingURL=turn-trigger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn-trigger.js","sourceRoot":"","sources":["../../../../../../backend/src/services/trace/turn-trigger.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,13 @@ export interface TicketReviewServiceDeps {
76
76
  nudgeAgent?: (agentSession: string, text: string) => Promise<void>;
77
77
  /** Session the rework goes to when nobody answered (the orchestrator) */
78
78
  fallbackAgent: string;
79
+ /**
80
+ * Agent messages this agent sent that are still unanswered: an agent that
81
+ * handed the work on has not answered the ticket yet. Absent → 0.
82
+ */
83
+ openAsksBy?: (session: string) => number;
84
+ /** Names of the agents (display names), to tell a hand-off from an answer. Absent → no hand-off check. */
85
+ agentNames?: () => Promise<string[]>;
79
86
  now?: () => Date;
80
87
  }
81
88
  /** Result of an owner action. */
@@ -96,6 +103,20 @@ export interface TicketPatch {
96
103
  kind?: TicketKind;
97
104
  assignee?: string | null;
98
105
  }
106
+ /**
107
+ * Whether an agent message passes the work to a colleague: it @-mentions
108
+ * another agent by name ("@Pia please take this"). The sender's own name
109
+ * and anyone who is not an agent (the owner) do not count.
110
+ *
111
+ * @param content - Message text
112
+ * @param agentNames - Display names of the agents
113
+ * @param senderId - The posting agent's session (its own name is ignored)
114
+ * @returns True when another agent is addressed
115
+ *
116
+ * @example
117
+ * handsWorkOn('@Pia 请你接这件', ['Pia', 'Ella'], 'crewly-marketing-ella-e6a6b8ea') // true
118
+ */
119
+ export declare function handsWorkOn(content: string, agentNames: readonly string[], senderId: string): boolean;
99
120
  /**
100
121
  * Review lifecycle of tickets. See module docs.
101
122
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ticket-review.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/ticket-review.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ticket-review.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/ticket-review.service.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,32 @@ import { ACTIVE_OPEN_ITEM_STATUSES } from '../../types/v2/open-item.types.js';
47
47
  function hasActiveOpenItem(t) {
48
48
  return (t.openItems ?? []).some((i) => ACTIVE_OPEN_ITEM_STATUSES.has(i.status));
49
49
  }
50
+ /**
51
+ * Whether an agent message passes the work to a colleague: it @-mentions
52
+ * another agent by name ("@Pia please take this"). The sender's own name
53
+ * and anyone who is not an agent (the owner) do not count.
54
+ *
55
+ * @param content - Message text
56
+ * @param agentNames - Display names of the agents
57
+ * @param senderId - The posting agent's session (its own name is ignored)
58
+ * @returns True when another agent is addressed
59
+ *
60
+ * @example
61
+ * handsWorkOn('@Pia 请你接这件', ['Pia', 'Ella'], 'crewly-marketing-ella-e6a6b8ea') // true
62
+ */
63
+ export function handsWorkOn(content, agentNames, senderId) {
64
+ if (!content.includes('@') || agentNames.length === 0)
65
+ return false;
66
+ const sender = senderId.toLowerCase();
67
+ const names = agentNames
68
+ .map((n) => n.trim())
69
+ .filter((n) => n.length > 0 && !sender.includes(`-${n.toLowerCase()}-`) && sender !== n.toLowerCase());
70
+ return names.some((n) => new RegExp(`@${escapeRegExp(n)}(?![A-Za-z0-9_])`, 'i').test(content));
71
+ }
72
+ /** Escape a string for use inside a RegExp. */
73
+ function escapeRegExp(text) {
74
+ return text.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
75
+ }
50
76
  /** Statuses in which an agent answer can submit a ticket. */
51
77
  const SUBMITTABLE = new Set(['open', 'ready', 'running']);
52
78
  // ---------------------------------------------------------------------------
@@ -117,6 +143,12 @@ export class TicketReviewService {
117
143
  if (detectStatedIntent(message.content))
118
144
  return null;
119
145
  return this.serial(async () => {
146
+ // "@Pia please take this" passes the work on: the answer is still to
147
+ // come (TKT-524, 2026-10-14: closed two minutes after it was asked).
148
+ if (this.deps.agentNames && handsWorkOn(message.content, await this.deps.agentNames().catch(() => []), message.senderId)) {
149
+ this.logger.debug('Agent message hands the work on; not an answer', { by: message.senderId });
150
+ return null;
151
+ }
120
152
  const all = await this.deps.requests.listAll();
121
153
  const inChannel = all.filter((r) => typeof r.ticketNumber === 'number' &&
122
154
  r.chatRef?.channelId === message.channelId &&
@@ -264,6 +296,9 @@ export class TicketReviewService {
264
296
  continue;
265
297
  if (this.deps.openWorkItemCount && (await this.deps.openWorkItemCount(t.id)) > 0)
266
298
  continue;
299
+ // It asked a colleague and is still waiting: not answered yet.
300
+ if ((this.deps.openAsksBy?.(t.reply.by) ?? 0) > 0)
301
+ continue;
267
302
  try {
268
303
  // `done` without `accepted`: the RequestService gate turns it into
269
304
  // 待验收 when the ticket needs review. A plain answer (nothing for the