crewly 1.8.5 → 1.8.7
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/config/roles/orchestrator/prompt.md +31 -4
- package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/chat/chat.controller.js +20 -0
- package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/slack/slack.controller.js +15 -0
- package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +40 -0
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.d.ts +142 -0
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.js +265 -0
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.js.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +30 -3
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +37 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js +61 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +37 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js +61 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orc-delivery-enforcer.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/orc-delivery-enforcer.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAgBH;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,cAAc,CAAC;IACpB,wFAAwF;IACxF,cAAc,EAAE,MAAM,CAAC;IACvB,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,2EAA2E;IAC3E,cAAc,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd,KAAK,IAAI,CAAC;AAEX,MAAM,WAAW,0BAA0B;IACzC,2EAA2E;IAC3E,YAAY,EAAE,oBAAoB,CAAC;IACnC,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2C;IAClE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuB;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,KAAK,CAA+B;IAC5C,wCAAwC;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;gBAElD,IAAI,EAAE,0BAA0B;IAM5C,MAAM,CAAC,WAAW,IAAI,0BAA0B,GAAG,IAAI;IAIvD,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,0BAA0B,GAAG,IAAI,GAAG,IAAI;IAKjE,2CAA2C;IAC3C,KAAK,IAAI,IAAI;IAUb,IAAI,IAAI,IAAI;IAQZ;;;;;OAKG;IACH,mBAAmB,CAAC,KAAK,EAAE;QACzB,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,IAAI;IAyBR;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI;IAY3E,sDAAsD;IACtD,YAAY,IAAI,eAAe,EAAE;IAIjC;;;OAGG;IACH,IAAI,CAAC,GAAG,GAAE,MAAmB,GAAG;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE;IA8CtD,OAAO,CAAC,cAAc;CAevB;AAMD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAI3D;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,cAAc,EAAE,MAAM,GACrB,cAAc,GAAG,IAAI,CAyBvB"}
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OrcDeliveryEnforcerService
|
|
3
|
+
*
|
|
4
|
+
* **Why this exists** (2026-05-23 incident, the "affiliate research" case):
|
|
5
|
+
*
|
|
6
|
+
* Steve asked the team to research affiliate programs at 12:59 PM. ORC
|
|
7
|
+
* acknowledged at 1:00 PM with "Atlas + Sage/Kai 派出去了, ETA 30-40min".
|
|
8
|
+
* Sage finished Phase 1 at 1:15, Kai finished Phase 2 at 1:28 — but
|
|
9
|
+
* Steve never saw the result. ORC's terminal logs claimed the pipeline
|
|
10
|
+
* was "closed" and the result "already routed to Steve at Slack thread
|
|
11
|
+
* ...", but there were zero `/api/slack/send` calls all day. ORC's
|
|
12
|
+
* internal mental model believed delivery happened; the actual skill
|
|
13
|
+
* call didn't.
|
|
14
|
+
*
|
|
15
|
+
* Root cause: ORC's prompt has a HARD pre-yield gate ("any `[CHAT:slack-…]`
|
|
16
|
+
* MUST have a `reply-slack` before yielding"). But for a long-running
|
|
17
|
+
* delegation, the user-visible deliverable comes from the *agent* via
|
|
18
|
+
* `[DONE]`-style status reports — long AFTER ORC's initial ack. ORC
|
|
19
|
+
* reads the agent's `[DONE]` as internal team chatter, narrates "pipeline
|
|
20
|
+
* closed", and yields without delivering to Steve. The prompt rule
|
|
21
|
+
* doesn't catch this case because the prompt looks for `[CHAT:slack-…]`
|
|
22
|
+
* (user-originating) not `[DONE]` (agent-originating).
|
|
23
|
+
*
|
|
24
|
+
* **What this service does:**
|
|
25
|
+
*
|
|
26
|
+
* 1. When a worker agent posts `[DONE]` / `[COMPLETED]` to a
|
|
27
|
+
* slack-prefixed conversation (chat.controller's "Agent status
|
|
28
|
+
* routed to orchestrator" path), call {@link markPendingDelivery}.
|
|
29
|
+
* The service records a pending delivery with `dueBy = now + 3 min`.
|
|
30
|
+
*
|
|
31
|
+
* 2. When ORC successfully posts via `/api/slack/send` to the same
|
|
32
|
+
* thread, call {@link markDelivered}. Pending delivery cleared.
|
|
33
|
+
*
|
|
34
|
+
* 3. A timer scans every 30 s. For any pending delivery whose `dueBy`
|
|
35
|
+
* has passed AND ORC hasn't replied, enqueue a `[DELIVER_REQUIRED]`
|
|
36
|
+
* system message to ORC via MessageQueueService. ORC's prompt
|
|
37
|
+
* treats `[DELIVER_REQUIRED]` exactly like `[CHAT:slack-…]` for
|
|
38
|
+
* the pre-yield gate.
|
|
39
|
+
*
|
|
40
|
+
* 4. Exponential backoff between reminders for the same thread, to
|
|
41
|
+
* avoid spamming ORC if it's genuinely stuck or rate-limited.
|
|
42
|
+
* First reminder at 3 min, then 10 min, then 30 min, then stop.
|
|
43
|
+
*
|
|
44
|
+
* Fire-and-forget on all writes — a fault in the enforcer MUST NOT
|
|
45
|
+
* block chat or slack flow.
|
|
46
|
+
*
|
|
47
|
+
* @module services/orc/orc-delivery-enforcer.service
|
|
48
|
+
*/
|
|
49
|
+
import { LoggerService } from '../core/logger.service.js';
|
|
50
|
+
/** Reminder cadence (ms): first reminder at 3 min, then 10 min, then 30 min, then stop. */
|
|
51
|
+
const REMINDER_CADENCE_MS = [
|
|
52
|
+
3 * 60 * 1000,
|
|
53
|
+
10 * 60 * 1000,
|
|
54
|
+
30 * 60 * 1000,
|
|
55
|
+
];
|
|
56
|
+
const DEFAULT_TICK_INTERVAL_MS = 30 * 1000;
|
|
57
|
+
/** Markers in agent output that indicate user-facing delivery is ready. */
|
|
58
|
+
const DELIVERY_MARKERS = ['[DONE]', '[COMPLETED]', '[DELIVERED]'];
|
|
59
|
+
/**
|
|
60
|
+
* Singleton scope — there's one ORC, one queue of pending deliveries.
|
|
61
|
+
*/
|
|
62
|
+
export class OrcDeliveryEnforcerService {
|
|
63
|
+
static instance = null;
|
|
64
|
+
logger;
|
|
65
|
+
reminderSink;
|
|
66
|
+
tickIntervalMs;
|
|
67
|
+
timer = null;
|
|
68
|
+
/** key = `${channelId}::${threadTs}` */
|
|
69
|
+
pending = new Map();
|
|
70
|
+
constructor(opts) {
|
|
71
|
+
this.logger = LoggerService.getInstance().createComponentLogger('OrcDeliveryEnforcer');
|
|
72
|
+
this.reminderSink = opts.reminderSink;
|
|
73
|
+
this.tickIntervalMs = opts.tickIntervalMs ?? DEFAULT_TICK_INTERVAL_MS;
|
|
74
|
+
}
|
|
75
|
+
static getInstance() {
|
|
76
|
+
return this.instance;
|
|
77
|
+
}
|
|
78
|
+
static setInstance(next) {
|
|
79
|
+
if (this.instance && this.instance !== next)
|
|
80
|
+
this.instance.stop();
|
|
81
|
+
this.instance = next;
|
|
82
|
+
}
|
|
83
|
+
/** Start the periodic scan. Idempotent. */
|
|
84
|
+
start() {
|
|
85
|
+
if (this.timer)
|
|
86
|
+
return;
|
|
87
|
+
this.timer = setInterval(() => this.tick(), this.tickIntervalMs);
|
|
88
|
+
this.timer.unref?.();
|
|
89
|
+
this.logger.info('OrcDeliveryEnforcer started', {
|
|
90
|
+
tickIntervalMs: this.tickIntervalMs,
|
|
91
|
+
cadenceMinutes: REMINDER_CADENCE_MS.map((n) => Math.round(n / 60000)),
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
stop() {
|
|
95
|
+
if (this.timer) {
|
|
96
|
+
clearInterval(this.timer);
|
|
97
|
+
this.timer = null;
|
|
98
|
+
this.logger.info('OrcDeliveryEnforcer stopped');
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Call this from `chat.controller` when an agent posts a `[DONE]`-style
|
|
103
|
+
* status to a slack-prefixed conversation. Safe to call multiple times
|
|
104
|
+
* for the same thread — the most recent agent message wins (we
|
|
105
|
+
* surface only the latest deliverable summary in the reminder).
|
|
106
|
+
*/
|
|
107
|
+
markPendingDelivery(input) {
|
|
108
|
+
if (!isAgentDeliveryMarker(input.text))
|
|
109
|
+
return;
|
|
110
|
+
const key = parseSlackConversationId(input.conversationId);
|
|
111
|
+
if (!key)
|
|
112
|
+
return; // not a slack thread — ignore
|
|
113
|
+
const k = serializeKey(key);
|
|
114
|
+
const now = Date.now();
|
|
115
|
+
const summary = input.text.slice(0, 200);
|
|
116
|
+
this.pending.set(k, {
|
|
117
|
+
key,
|
|
118
|
+
conversationId: input.conversationId,
|
|
119
|
+
agentSender: input.agentSender,
|
|
120
|
+
deliverableSummary: summary,
|
|
121
|
+
doneAt: now,
|
|
122
|
+
remindersFired: 0,
|
|
123
|
+
nextDueAt: now + REMINDER_CADENCE_MS[0],
|
|
124
|
+
});
|
|
125
|
+
this.logger.info('OrcDeliveryEnforcer pending delivery recorded', {
|
|
126
|
+
conversationId: input.conversationId,
|
|
127
|
+
agentSender: input.agentSender,
|
|
128
|
+
summaryPreview: summary.slice(0, 80),
|
|
129
|
+
firstReminderInSec: REMINDER_CADENCE_MS[0] / 1000,
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Call this from `slack.controller` after a successful `/api/slack/send`.
|
|
134
|
+
* Cleared regardless of which agent originated the underlying deliverable.
|
|
135
|
+
*/
|
|
136
|
+
markDelivered(input) {
|
|
137
|
+
if (!input.channelId || !input.threadTs)
|
|
138
|
+
return;
|
|
139
|
+
const k = serializeKey({ channelId: input.channelId, threadTs: input.threadTs });
|
|
140
|
+
const had = this.pending.delete(k);
|
|
141
|
+
if (had) {
|
|
142
|
+
this.logger.info('OrcDeliveryEnforcer delivery cleared by reply-slack', {
|
|
143
|
+
channelId: input.channelId,
|
|
144
|
+
threadTs: input.threadTs,
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
/** Test affordance — peek at the in-memory ledger. */
|
|
149
|
+
_peekPending() {
|
|
150
|
+
return [...this.pending.values()];
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Public for tests + the manual-trigger endpoint. Otherwise driven by
|
|
154
|
+
* the internal timer.
|
|
155
|
+
*/
|
|
156
|
+
tick(now = Date.now()) {
|
|
157
|
+
const firedFor = [];
|
|
158
|
+
for (const [k, item] of this.pending) {
|
|
159
|
+
if (now < item.nextDueAt)
|
|
160
|
+
continue;
|
|
161
|
+
if (item.remindersFired >= REMINDER_CADENCE_MS.length) {
|
|
162
|
+
// Out of reminder budget — drop the entry so we stop spamming.
|
|
163
|
+
this.pending.delete(k);
|
|
164
|
+
this.logger.warn('OrcDeliveryEnforcer reminder budget exhausted — giving up', {
|
|
165
|
+
conversationId: item.conversationId,
|
|
166
|
+
remindersFired: item.remindersFired,
|
|
167
|
+
});
|
|
168
|
+
continue;
|
|
169
|
+
}
|
|
170
|
+
const text = this.formatReminder(item);
|
|
171
|
+
try {
|
|
172
|
+
this.reminderSink({
|
|
173
|
+
conversationId: item.conversationId,
|
|
174
|
+
text,
|
|
175
|
+
});
|
|
176
|
+
firedFor.push(item.conversationId);
|
|
177
|
+
this.logger.info('OrcDeliveryEnforcer reminder fired', {
|
|
178
|
+
conversationId: item.conversationId,
|
|
179
|
+
agentSender: item.agentSender,
|
|
180
|
+
reminderIndex: item.remindersFired,
|
|
181
|
+
minutesSinceDone: Math.round((now - item.doneAt) / 60000),
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
catch (err) {
|
|
185
|
+
this.logger.warn('OrcDeliveryEnforcer reminderSink threw (swallowed)', {
|
|
186
|
+
error: err.message,
|
|
187
|
+
conversationId: item.conversationId,
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
item.remindersFired += 1;
|
|
191
|
+
const nextOffset = REMINDER_CADENCE_MS[item.remindersFired];
|
|
192
|
+
if (nextOffset === undefined) {
|
|
193
|
+
// Final reminder fired — drop the entry now so we don't keep
|
|
194
|
+
// re-evaluating it on every tick.
|
|
195
|
+
this.pending.delete(k);
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
item.nextDueAt = now + nextOffset;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
return { firedFor };
|
|
202
|
+
}
|
|
203
|
+
formatReminder(item) {
|
|
204
|
+
const minutes = Math.round((Date.now() - item.doneAt) / 60000);
|
|
205
|
+
return [
|
|
206
|
+
`[DELIVER_REQUIRED] Steve is waiting on a deliverable in Slack thread ${item.conversationId}.`,
|
|
207
|
+
``,
|
|
208
|
+
`Agent \`${item.agentSender}\` posted [DONE] ${minutes} min ago with this content (preview):`,
|
|
209
|
+
`> ${item.deliverableSummary.slice(0, 200)}${item.deliverableSummary.length > 200 ? '…' : ''}`,
|
|
210
|
+
``,
|
|
211
|
+
`Action required: call reply-slack now with the deliverable. Treat this`,
|
|
212
|
+
`the same as a [CHAT:slack-...] message — do NOT yield the turn until`,
|
|
213
|
+
`the reply lands on the thread. If the agent's output isn't the final`,
|
|
214
|
+
`deliverable yet (e.g. it's "Phase 1 done" out of 2), send Steve a status`,
|
|
215
|
+
`update via reply-slack saying so + revised ETA, then continue waiting.`,
|
|
216
|
+
].join('\n');
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
// =============================================================================
|
|
220
|
+
// Helpers (exported for testing)
|
|
221
|
+
// =============================================================================
|
|
222
|
+
export function isAgentDeliveryMarker(text) {
|
|
223
|
+
if (!text)
|
|
224
|
+
return false;
|
|
225
|
+
const upper = text.toUpperCase();
|
|
226
|
+
return DELIVERY_MARKERS.some((m) => upper.includes(m));
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Parse a chat-v2 conversation id of the form `slack-<channelId>-<ts>`
|
|
230
|
+
* into { channelId, threadTs }. Returns null for non-slack ids. Mirrors
|
|
231
|
+
* the regex in `request-sla.subscriber` so the enforcer agrees with the
|
|
232
|
+
* SLA layer on what "the same thread" means.
|
|
233
|
+
*/
|
|
234
|
+
export function parseSlackConversationId(conversationId) {
|
|
235
|
+
if (!conversationId || !conversationId.startsWith('slack-'))
|
|
236
|
+
return null;
|
|
237
|
+
// Strip any per-message suffix (`-msg-<ts>`) so we key on thread root.
|
|
238
|
+
const stripped = conversationId.replace(/-msg-\d+\.\d+$/, '');
|
|
239
|
+
const rest = stripped.slice('slack-'.length);
|
|
240
|
+
const lastDash = rest.lastIndexOf('-');
|
|
241
|
+
if (lastDash < 1)
|
|
242
|
+
return null;
|
|
243
|
+
const channelId = rest.slice(0, lastDash);
|
|
244
|
+
let threadTs = rest.slice(lastDash + 1);
|
|
245
|
+
// Some producers serialize ts as `1779555555-588569` (dash) or
|
|
246
|
+
// `1779555555.588569` (dot). Normalize to dotted form to match
|
|
247
|
+
// Slack-API ts shape.
|
|
248
|
+
if (/^\d+$/.test(threadTs)) {
|
|
249
|
+
// No fractional segment in URL form — try one more split.
|
|
250
|
+
const beforeRest = rest.slice(0, lastDash);
|
|
251
|
+
const prevDash = beforeRest.lastIndexOf('-');
|
|
252
|
+
if (prevDash > 0) {
|
|
253
|
+
const candidate = `${beforeRest.slice(prevDash + 1)}.${threadTs}`;
|
|
254
|
+
if (/^\d+\.\d+$/.test(candidate)) {
|
|
255
|
+
return { channelId: beforeRest.slice(0, prevDash), threadTs: candidate };
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
// If threadTs already contains a dot (dotted form), keep as-is.
|
|
260
|
+
return { channelId, threadTs };
|
|
261
|
+
}
|
|
262
|
+
function serializeKey(k) {
|
|
263
|
+
return `${k.channelId}::${k.threadTs}`;
|
|
264
|
+
}
|
|
265
|
+
//# sourceMappingURL=orc-delivery-enforcer.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orc-delivery-enforcer.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/orc/orc-delivery-enforcer.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile-rules.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"reconcile-rules.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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"}
|
|
@@ -599,13 +599,35 @@ export function detectUnclaimedTasks(workItems, agentHealthMap, unclaimedThresho
|
|
|
599
599
|
break;
|
|
600
600
|
}
|
|
601
601
|
}
|
|
602
|
-
//
|
|
602
|
+
// Set of agent session-names that can be woken right now (inactive +
|
|
603
|
+
// suspended). Used to exempt "explicit-target-is-dead" WIs from both
|
|
604
|
+
// the per-WI age threshold and the hasActiveAgent 5-min upgrade.
|
|
605
|
+
//
|
|
606
|
+
// Why exempt: the unclaimedThresholdMs default of 2 min — and the
|
|
607
|
+
// 5-min upgrade when *other* agents are alive — exists for untargeted
|
|
608
|
+
// (skill-match) wakes, so a freshly-queued WI isn't claimed by an
|
|
609
|
+
// active agent that would have picked it up in the next reconcile
|
|
610
|
+
// pass. That gating doesn't apply when the WI names an explicit
|
|
611
|
+
// target and that named target is provably dead — no active agent is
|
|
612
|
+
// going to come along and claim a WI targeted at someone else. Atlas
|
|
613
|
+
// case on 2026-05-23: 3 RESEARCH BRIEF WIs sat blocked for 30 min+
|
|
614
|
+
// because the immediate pre-claim by delegate-task pushed them to
|
|
615
|
+
// `running` before any spawn was attempted, and the wake-rule was
|
|
616
|
+
// gated by both thresholds.
|
|
617
|
+
const wakableSessionNames = new Set(wakableAgents.map((a) => a.sessionName));
|
|
618
|
+
// Find unclaimed queued WorkItems eligible for wake. Either:
|
|
619
|
+
// - The WI has aged past the unclaimed threshold (original behavior), or
|
|
620
|
+
// - The WI has an explicit `target` that is in wakableSessionNames —
|
|
621
|
+
// i.e. the named target is inactive or suspended. No reason to wait;
|
|
622
|
+
// no other agent is going to claim it.
|
|
603
623
|
const unclaimedItems = workItems
|
|
604
624
|
.filter(wi => {
|
|
605
625
|
if (wi.status !== 'queued')
|
|
606
626
|
return false;
|
|
607
627
|
const createdAt = new Date(wi.createdAt).getTime();
|
|
608
|
-
|
|
628
|
+
const pastThreshold = (now - createdAt) > unclaimedThresholdMs;
|
|
629
|
+
const targetIsWakable = !!wi.target && wakableSessionNames.has(wi.target);
|
|
630
|
+
return pastThreshold || targetIsWakable;
|
|
609
631
|
})
|
|
610
632
|
.sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime());
|
|
611
633
|
if (unclaimedItems.length === 0) {
|
|
@@ -623,7 +645,12 @@ export function detectUnclaimedTasks(workItems, agentHealthMap, unclaimedThresho
|
|
|
623
645
|
break;
|
|
624
646
|
const createdAt = new Date(wi.createdAt).getTime();
|
|
625
647
|
const waitTime = now - createdAt;
|
|
626
|
-
if
|
|
648
|
+
// Same exemption as the filter above: if the explicit target is in the
|
|
649
|
+
// wakable set, bypass the active-agent 5-min upgrade. The threshold
|
|
650
|
+
// was meant to give live skill-match candidates a chance; that's
|
|
651
|
+
// irrelevant when the target is named and dead.
|
|
652
|
+
const targetIsWakable = !!wi.target && wakableSessionNames.has(wi.target);
|
|
653
|
+
if (hasActiveAgent && waitTime < effectiveThreshold && !targetIsWakable)
|
|
627
654
|
continue;
|
|
628
655
|
// 2026-05-17 — never auto-wake for untargeted WIs. If a WorkItem
|
|
629
656
|
// doesn't name a `target`, the reconciler used to pick the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile-rules.js","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reconcile-rules.js","sourceRoot":"","sources":["../../../../../../backend/src/services/reconciler/reconcile-rules.ts"],"names":[],"mappings":"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"}
|
|
@@ -168,6 +168,32 @@ export declare class TaskPoolService {
|
|
|
168
168
|
* before RequestService exists; missing linker is a no-op debug log.
|
|
169
169
|
*/
|
|
170
170
|
private requestService;
|
|
171
|
+
/**
|
|
172
|
+
* Optional agent-liveness probe — wired via {@link setIsAgentActive} from
|
|
173
|
+
* the boot path. When set, {@link claimFromPool} and {@link claimSpecificItem}
|
|
174
|
+
* refuse to issue a claim if the requesting agent's PTY session is not alive.
|
|
175
|
+
*
|
|
176
|
+
* Why: the invariant is that a WI in `running` status is being executed by
|
|
177
|
+
* a live agent. The orchestrator's `delegate-task` skill pre-claims a fresh
|
|
178
|
+
* WI for its target before the target session is actually spawned (see
|
|
179
|
+
* `config/skills/orchestrator/delegate-task/execute.sh` "self-heal fix #1"
|
|
180
|
+
* 2026-04). That pushes the WI from `queued` to `running` while the target
|
|
181
|
+
* is still inactive. 5 s later the reconciler's `detectStuckWorkItems`
|
|
182
|
+
* rule sees `running` + dead agent and marks the WI `blocked` — and the
|
|
183
|
+
* reconciler's `detectUnclaimedTasks` wake-rule only handles `queued`
|
|
184
|
+
* items, so the agent never gets spawned and the WI is stuck forever.
|
|
185
|
+
*
|
|
186
|
+
* Rejecting the claim at the source keeps the WI in `queued`, letting the
|
|
187
|
+
* wake-rule do its job (start the agent → agent auto-claims when it boots).
|
|
188
|
+
* delegate-task's existing fallback path (line 277 of execute.sh — "if
|
|
189
|
+
* claim fails (race, target locked, etc.) the work proceeds via the
|
|
190
|
+
* async path") already handles a rejected pre-claim gracefully.
|
|
191
|
+
*
|
|
192
|
+
* Optional because singleton callers (tests, CLI) bring up the pool
|
|
193
|
+
* before any agent-registration plumbing exists; missing probe = "trust
|
|
194
|
+
* the caller" (current behavior preserved for those code paths).
|
|
195
|
+
*/
|
|
196
|
+
private isAgentActive;
|
|
171
197
|
/**
|
|
172
198
|
* Serializes claim operations to prevent the race where two concurrent
|
|
173
199
|
* claimFromPool / claimSpecificItem calls both select the same queued
|
|
@@ -200,6 +226,17 @@ export declare class TaskPoolService {
|
|
|
200
226
|
* {@link IRequestWorkItemLinker}), or null to clear.
|
|
201
227
|
*/
|
|
202
228
|
setRequestService(svc: IRequestWorkItemLinker | null): void;
|
|
229
|
+
/**
|
|
230
|
+
* Wire the agent-liveness probe used by {@link claimFromPool} and
|
|
231
|
+
* {@link claimSpecificItem} to refuse claims for dead/missing target
|
|
232
|
+
* sessions. Called from the backend boot path after the agent runtime
|
|
233
|
+
* exists. Idempotent and may be called with `null` to disable the gate
|
|
234
|
+
* (testing or single-process CLI).
|
|
235
|
+
*
|
|
236
|
+
* @param probe - Async function returning whether the named session is
|
|
237
|
+
* currently alive (PTY exists + child runtime running), or null to clear
|
|
238
|
+
*/
|
|
239
|
+
setIsAgentActive(probe: ((agentId: string) => Promise<boolean>) | null): void;
|
|
203
240
|
/**
|
|
204
241
|
* Chains the given critical section after any in-flight claim operation.
|
|
205
242
|
* Guarantees FIFO ordering even under concurrent invocation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-pool.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/task-pool/task-pool.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"task-pool.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/task-pool/task-pool.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -91,6 +91,32 @@ export class TaskPoolService {
|
|
|
91
91
|
* before RequestService exists; missing linker is a no-op debug log.
|
|
92
92
|
*/
|
|
93
93
|
requestService = null;
|
|
94
|
+
/**
|
|
95
|
+
* Optional agent-liveness probe — wired via {@link setIsAgentActive} from
|
|
96
|
+
* the boot path. When set, {@link claimFromPool} and {@link claimSpecificItem}
|
|
97
|
+
* refuse to issue a claim if the requesting agent's PTY session is not alive.
|
|
98
|
+
*
|
|
99
|
+
* Why: the invariant is that a WI in `running` status is being executed by
|
|
100
|
+
* a live agent. The orchestrator's `delegate-task` skill pre-claims a fresh
|
|
101
|
+
* WI for its target before the target session is actually spawned (see
|
|
102
|
+
* `config/skills/orchestrator/delegate-task/execute.sh` "self-heal fix #1"
|
|
103
|
+
* 2026-04). That pushes the WI from `queued` to `running` while the target
|
|
104
|
+
* is still inactive. 5 s later the reconciler's `detectStuckWorkItems`
|
|
105
|
+
* rule sees `running` + dead agent and marks the WI `blocked` — and the
|
|
106
|
+
* reconciler's `detectUnclaimedTasks` wake-rule only handles `queued`
|
|
107
|
+
* items, so the agent never gets spawned and the WI is stuck forever.
|
|
108
|
+
*
|
|
109
|
+
* Rejecting the claim at the source keeps the WI in `queued`, letting the
|
|
110
|
+
* wake-rule do its job (start the agent → agent auto-claims when it boots).
|
|
111
|
+
* delegate-task's existing fallback path (line 277 of execute.sh — "if
|
|
112
|
+
* claim fails (race, target locked, etc.) the work proceeds via the
|
|
113
|
+
* async path") already handles a rejected pre-claim gracefully.
|
|
114
|
+
*
|
|
115
|
+
* Optional because singleton callers (tests, CLI) bring up the pool
|
|
116
|
+
* before any agent-registration plumbing exists; missing probe = "trust
|
|
117
|
+
* the caller" (current behavior preserved for those code paths).
|
|
118
|
+
*/
|
|
119
|
+
isAgentActive = null;
|
|
94
120
|
/**
|
|
95
121
|
* Serializes claim operations to prevent the race where two concurrent
|
|
96
122
|
* claimFromPool / claimSpecificItem calls both select the same queued
|
|
@@ -131,6 +157,19 @@ export class TaskPoolService {
|
|
|
131
157
|
setRequestService(svc) {
|
|
132
158
|
this.requestService = svc;
|
|
133
159
|
}
|
|
160
|
+
/**
|
|
161
|
+
* Wire the agent-liveness probe used by {@link claimFromPool} and
|
|
162
|
+
* {@link claimSpecificItem} to refuse claims for dead/missing target
|
|
163
|
+
* sessions. Called from the backend boot path after the agent runtime
|
|
164
|
+
* exists. Idempotent and may be called with `null` to disable the gate
|
|
165
|
+
* (testing or single-process CLI).
|
|
166
|
+
*
|
|
167
|
+
* @param probe - Async function returning whether the named session is
|
|
168
|
+
* currently alive (PTY exists + child runtime running), or null to clear
|
|
169
|
+
*/
|
|
170
|
+
setIsAgentActive(probe) {
|
|
171
|
+
this.isAgentActive = probe;
|
|
172
|
+
}
|
|
134
173
|
/**
|
|
135
174
|
* Chains the given critical section after any in-flight claim operation.
|
|
136
175
|
* Guarantees FIFO ordering even under concurrent invocation.
|
|
@@ -491,6 +530,17 @@ export class TaskPoolService {
|
|
|
491
530
|
throw new Error('agentId is required and must be a non-empty string');
|
|
492
531
|
}
|
|
493
532
|
return this.withClaimLock(async () => {
|
|
533
|
+
// Agent-liveness gate — see {@link isAgentActive} field doc for full
|
|
534
|
+
// rationale. Reject before doing any pool work if the requesting
|
|
535
|
+
// agent's session isn't alive; the reconciler's wake-rule will
|
|
536
|
+
// spawn it and the agent will re-attempt the claim once registered.
|
|
537
|
+
if (this.isAgentActive) {
|
|
538
|
+
const alive = await this.isAgentActive(agentId).catch(() => false);
|
|
539
|
+
if (!alive) {
|
|
540
|
+
this.logger.info('claimFromPool refused — agent session not active', { agentId });
|
|
541
|
+
return null;
|
|
542
|
+
}
|
|
543
|
+
}
|
|
494
544
|
// Check if agent already has an active claim
|
|
495
545
|
const existingClaim = await this.storage.findActiveClaimByAgent(agentId);
|
|
496
546
|
if (existingClaim) {
|
|
@@ -605,6 +655,17 @@ export class TaskPoolService {
|
|
|
605
655
|
throw new Error('agentId is required and must be a non-empty string');
|
|
606
656
|
}
|
|
607
657
|
return this.withClaimLock(async () => {
|
|
658
|
+
// Agent-liveness gate — same rationale as claimFromPool.
|
|
659
|
+
if (this.isAgentActive) {
|
|
660
|
+
const alive = await this.isAgentActive(agentId).catch(() => false);
|
|
661
|
+
if (!alive) {
|
|
662
|
+
this.logger.info('claimSpecificItem refused — agent session not active', {
|
|
663
|
+
agentId,
|
|
664
|
+
workItemId,
|
|
665
|
+
});
|
|
666
|
+
return null;
|
|
667
|
+
}
|
|
668
|
+
}
|
|
608
669
|
const existingClaim = await this.storage.findActiveClaimByAgent(agentId);
|
|
609
670
|
if (existingClaim)
|
|
610
671
|
return null;
|