@relaycast/engine 8.5.1 → 8.5.2-hotfix.2
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/engine/delivery.d.ts +3 -0
- package/dist/engine/delivery.d.ts.map +1 -1
- package/dist/engine/delivery.js +161 -76
- package/dist/engine/delivery.js.map +1 -1
- package/dist/engine/node.d.ts +1 -0
- package/dist/engine/node.d.ts.map +1 -1
- package/dist/engine/node.js +49 -14
- package/dist/engine/node.js.map +1 -1
- package/dist/engine/retention.d.ts +5 -0
- package/dist/engine/retention.d.ts.map +1 -1
- package/dist/engine/retention.js +3 -0
- package/dist/engine/retention.js.map +1 -1
- package/dist/engine/rowidRetention.d.ts +36 -0
- package/dist/engine/rowidRetention.d.ts.map +1 -0
- package/dist/engine/rowidRetention.js +154 -0
- package/dist/engine/rowidRetention.js.map +1 -0
- package/dist/engine/workspaceEvents.d.ts +1 -1
- package/dist/engine/workspaceEvents.d.ts.map +1 -1
- package/dist/engine/workspaceEvents.js +13 -5
- package/dist/engine/workspaceEvents.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -188,6 +188,9 @@ export interface NodeDeliveryReplayScope {
|
|
|
188
188
|
/** Limit replay to identities whose broker-side cursor is ready. */
|
|
189
189
|
agentIds?: readonly string[];
|
|
190
190
|
}
|
|
191
|
+
/** Serialize overlapping scopes at the socket owner, including a trailing replay
|
|
192
|
+
* when readiness/cursors changed during an outstanding drain. This is local
|
|
193
|
+
* replay coordination, not a global database admission semaphore. */
|
|
191
194
|
export declare function deliverPendingToNode(db: Db, registry: NodeConnectionRegistry, workspaceId: string, nodeId: string, scope?: NodeDeliveryReplayScope): Promise<number>;
|
|
192
195
|
export {};
|
|
193
196
|
//# sourceMappingURL=delivery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAA6E,MAAM,iBAAiB,CAAC;AACxH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAMnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,KAAK,EAAE,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAEnC,KAAK,WAAW,GAAG,OAAO,UAAU,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/delivery.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { eq, and, not, asc, isNull, inArray, notInArray, lte, gt, sql } from 'drizzle-orm';
|
|
1
|
+
import { eq, and, not, asc, isNull, inArray, notInArray, lte, gt, sql, getTableColumns } from 'drizzle-orm';
|
|
2
2
|
import { deliveries, messages, agents, readReceipts, channelMembers, channels, dmConversations } from '../db/schema.js';
|
|
3
3
|
import { runAtomic } from '../ports/database.js';
|
|
4
4
|
import { isProviderAgentDeliveryReady } from '../ports/realtime.js';
|
|
@@ -6,6 +6,9 @@ import { buildDeliverFrame, buildDeliverPayload, buildMessageCreatedEventData, b
|
|
|
6
6
|
import { publicMessageMetadata } from './messageMetadata.js';
|
|
7
7
|
import { toIso } from '../lib/serialize.js';
|
|
8
8
|
import { fetchAttachmentsBatch } from './attachments.js';
|
|
9
|
+
// SQL-wrapped columns retain Drizzle's timestamp/boolean decoders when FROM
|
|
10
|
+
// includes an explicit SQLite INDEXED BY clause rather than a table object.
|
|
11
|
+
const indexedDeliveryColumns = Object.fromEntries(Object.entries(getTableColumns(deliveries)).map(([name, column]) => [name, sql `${column}`.mapWith(column)]));
|
|
9
12
|
const ACTIVE_DELIVERY_STATUSES = ['queued', 'delivered'];
|
|
10
13
|
const TERMINAL_SUCCESS_STATUS = 'acked';
|
|
11
14
|
// Keep expiry work bounded per request and leave ample room under D1's
|
|
@@ -279,18 +282,24 @@ export async function ackDeliveriesUpToSeq(db, workspaceId, nodeId, providerName
|
|
|
279
282
|
export async function markDeliveriesDelivered(db, workspaceId, deliveryIds) {
|
|
280
283
|
if (deliveryIds.length === 0)
|
|
281
284
|
return 0;
|
|
282
|
-
const
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
285
|
+
const now = Math.floor(Date.now() / 1000);
|
|
286
|
+
let count = 0;
|
|
287
|
+
for (let offset = 0; offset < deliveryIds.length; offset += 50) {
|
|
288
|
+
const ids = deliveryIds.slice(offset, offset + 50);
|
|
289
|
+
// Multiple IDs plus workspace/status predicates can make SQLite choose a
|
|
290
|
+
// history index. Force the existing ID primary key and stay below D1's
|
|
291
|
+
// bind limit, including callers with more than one replay page of IDs.
|
|
292
|
+
const updated = await db.all(sql `
|
|
293
|
+
UPDATE deliveries INDEXED BY sqlite_autoindex_deliveries_1
|
|
294
|
+
SET status = 'delivered', next_attempt_at = NULL, last_dispatch_error = NULL,
|
|
295
|
+
delivered_at = ${now}, updated_at = ${now}
|
|
296
|
+
WHERE workspace_id = ${workspaceId} AND status = 'queued'
|
|
297
|
+
AND id IN (${sql.join(ids.map(id => sql `${id}`), sql `, `)})
|
|
298
|
+
RETURNING id
|
|
299
|
+
`);
|
|
300
|
+
count += updated.length;
|
|
301
|
+
}
|
|
302
|
+
return count;
|
|
294
303
|
}
|
|
295
304
|
/**
|
|
296
305
|
* Transition one D1-safe batch of due deliveries and report both the number of
|
|
@@ -623,75 +632,151 @@ export async function fetchQueuedWsBacklogEvents(db, workspaceId, agentId, opts
|
|
|
623
632
|
};
|
|
624
633
|
});
|
|
625
634
|
}
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
inArray(deliveries.status, [...ACTIVE_DELIVERY_STATUSES]),
|
|
636
|
-
gt(deliveries.seq, agents.deliveryAckSeq),
|
|
637
|
-
sql `(${deliveries.expiresAt} IS NULL OR ${deliveries.expiresAt} > ${nowSeconds})`,
|
|
638
|
-
];
|
|
639
|
-
if (scope.providerName !== undefined) {
|
|
640
|
-
conditions.push(eq(agents.providerName, scope.providerName));
|
|
635
|
+
const replayFlights = new WeakMap();
|
|
636
|
+
/** Serialize overlapping scopes at the socket owner, including a trailing replay
|
|
637
|
+
* when readiness/cursors changed during an outstanding drain. This is local
|
|
638
|
+
* replay coordination, not a global database admission semaphore. */
|
|
639
|
+
export function deliverPendingToNode(db, registry, workspaceId, nodeId, scope = {}) {
|
|
640
|
+
let flights = replayFlights.get(registry);
|
|
641
|
+
if (!flights) {
|
|
642
|
+
flights = new Map();
|
|
643
|
+
replayFlights.set(registry, flights);
|
|
641
644
|
}
|
|
642
|
-
|
|
643
|
-
|
|
645
|
+
const key = JSON.stringify([workspaceId, nodeId]);
|
|
646
|
+
const snapshot = { ...scope, agentIds: scope.agentIds ? [...new Set(scope.agentIds)].sort() : undefined };
|
|
647
|
+
const scopeKey = JSON.stringify([snapshot.providerName, snapshot.agentIds]);
|
|
648
|
+
let flight = flights.get(key);
|
|
649
|
+
const existing = flight?.pending.get(scopeKey);
|
|
650
|
+
if (existing)
|
|
651
|
+
return existing.promise;
|
|
652
|
+
let resolve;
|
|
653
|
+
let reject;
|
|
654
|
+
const promise = new Promise((done, fail) => { resolve = done; reject = fail; });
|
|
655
|
+
const job = { scope: snapshot, promise, resolve, reject };
|
|
656
|
+
if (flight) {
|
|
657
|
+
flight.pending.set(scopeKey, job);
|
|
658
|
+
return promise;
|
|
644
659
|
}
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
660
|
+
flight = { pending: new Map([[scopeKey, job]]) };
|
|
661
|
+
const activeFlight = flight;
|
|
662
|
+
flights.set(key, activeFlight);
|
|
663
|
+
void Promise.resolve().then(async () => {
|
|
664
|
+
try {
|
|
665
|
+
while (activeFlight.pending.size) {
|
|
666
|
+
const [pendingKey, pendingJob] = activeFlight.pending.entries().next().value;
|
|
667
|
+
// A trigger during this pass queues a new trailing job. Identical
|
|
668
|
+
// not-yet-started jobs coalesce, but each scope owns its own result.
|
|
669
|
+
activeFlight.pending.delete(pendingKey);
|
|
670
|
+
try {
|
|
671
|
+
pendingJob.resolve(await replayPendingToNode(db, registry, workspaceId, nodeId, pendingJob.scope));
|
|
672
|
+
}
|
|
673
|
+
catch (error) {
|
|
674
|
+
pendingJob.reject(error);
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
finally {
|
|
679
|
+
if (flights.get(key) === activeFlight)
|
|
680
|
+
flights.delete(key);
|
|
681
|
+
}
|
|
682
|
+
});
|
|
683
|
+
return promise;
|
|
684
|
+
}
|
|
685
|
+
/** Drain a finite per-agent high-water mark in ordered, readiness-checked pages. */
|
|
686
|
+
async function replayPendingToNode(db, registry, workspaceId, nodeId, scope = {}) {
|
|
687
|
+
const wantedIds = scope.agentIds ? new Set(scope.agentIds) : undefined;
|
|
688
|
+
if (wantedIds?.size === 0)
|
|
689
|
+
return 0;
|
|
690
|
+
// Resolve the small node roster first. A delivery-first join lets SQLite
|
|
691
|
+
// choose the workspace/status index and scan millions of retained rows.
|
|
692
|
+
const recipients = await db.select({
|
|
693
|
+
id: agents.id, name: agents.name, providerName: agents.providerName,
|
|
650
694
|
ackSeq: agents.deliveryAckSeq,
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
channelName: channels.name,
|
|
659
|
-
conversationId: dmConversations.id,
|
|
660
|
-
dmType: dmConversations.dmType,
|
|
661
|
-
senderAgentId: messages.agentId,
|
|
662
|
-
senderAgentName: sql `(
|
|
663
|
-
SELECT a.name FROM agents a WHERE a.id = ${messages.agentId}
|
|
664
|
-
)`,
|
|
665
|
-
})
|
|
666
|
-
.from(deliveries)
|
|
667
|
-
.innerJoin(agents, eq(deliveries.agentId, agents.id))
|
|
668
|
-
.innerJoin(messages, eq(deliveries.messageId, messages.id))
|
|
669
|
-
.innerJoin(channels, eq(messages.channelId, channels.id))
|
|
670
|
-
.leftJoin(dmConversations, eq(dmConversations.channelId, messages.channelId))
|
|
671
|
-
.where(and(...conditions))
|
|
672
|
-
.orderBy(asc(agents.name), asc(deliveries.seq));
|
|
673
|
-
const attachmentsByMessageId = await fetchAttachmentsBatch(db, workspaceId, [...new Set(rows.map((row) => row.delivery.messageId))]);
|
|
674
|
-
const deliveredIds = [];
|
|
675
|
-
for (const row of rows) {
|
|
676
|
-
if (!isProviderAgentDeliveryReady(registry, workspaceId, nodeId, row.recipientProviderName, row.delivery.agentId)) {
|
|
695
|
+
}).from(agents).where(and(eq(agents.workspaceId, workspaceId), eq(agents.locationType, 'via_node'), eq(agents.locationNodeId, nodeId), scope.providerName === undefined ? undefined : eq(agents.providerName, scope.providerName))).orderBy(asc(agents.name));
|
|
696
|
+
let delivered = 0;
|
|
697
|
+
for (const recipient of recipients) {
|
|
698
|
+
if (wantedIds && !wantedIds.has(recipient.id))
|
|
699
|
+
continue;
|
|
700
|
+
const ready = () => isProviderAgentDeliveryReady(registry, workspaceId, nodeId, recipient.providerName, recipient.id);
|
|
701
|
+
if (!ready())
|
|
677
702
|
continue;
|
|
703
|
+
// Capture a finite high-water mark: arrivals during replay are handled by
|
|
704
|
+
// live dispatch/the next reconnect, not an indefinitely growing drain.
|
|
705
|
+
const [highWater] = await db.select({ seq: sql `${deliveries.seq}` })
|
|
706
|
+
.from(sql `${deliveries} INDEXED BY deliveries_agent_seq_unique`).where(and(eq(deliveries.workspaceId, workspaceId), eq(deliveries.agentId, recipient.id))).orderBy(sql `${deliveries.seq} DESC`).limit(1);
|
|
707
|
+
if (!highWater)
|
|
708
|
+
continue;
|
|
709
|
+
let cursor = recipient.ackSeq;
|
|
710
|
+
while (cursor < highWater.seq && ready()) {
|
|
711
|
+
// Existing sequence index: bound candidate metadata before status/expiry
|
|
712
|
+
// filtering, and advance across settled rows without new schema.
|
|
713
|
+
const page = await db.select({ id: sql `${deliveries.id}`, seq: sql `${deliveries.seq}` })
|
|
714
|
+
.from(sql `${deliveries} INDEXED BY deliveries_agent_seq_unique`)
|
|
715
|
+
.where(and(eq(deliveries.workspaceId, workspaceId), eq(deliveries.agentId, recipient.id), gt(deliveries.seq, cursor), lte(deliveries.seq, highWater.seq))).orderBy(asc(deliveries.seq)).limit(50);
|
|
716
|
+
if (!page.length)
|
|
717
|
+
break;
|
|
718
|
+
cursor = page[page.length - 1].seq;
|
|
719
|
+
// Hydrate only this bounded ID page. Re-check ownership, ACK, expiry and
|
|
720
|
+
// status here because each await can race a handoff or cumulative ACK.
|
|
721
|
+
const rows = await db.select({
|
|
722
|
+
delivery: indexedDeliveryColumns,
|
|
723
|
+
recipientAgentName: agents.name,
|
|
724
|
+
recipientProviderName: agents.providerName,
|
|
725
|
+
ackSeq: agents.deliveryAckSeq,
|
|
726
|
+
body: messages.body, blocks: messages.blocks, metadata: messages.metadata,
|
|
727
|
+
hasAttachments: messages.hasAttachments, threadId: messages.threadId,
|
|
728
|
+
createdAt: messages.createdAt, channelId: messages.channelId,
|
|
729
|
+
channelName: channels.name, conversationId: dmConversations.id,
|
|
730
|
+
dmType: dmConversations.dmType, senderAgentId: messages.agentId,
|
|
731
|
+
senderAgentName: sql `(
|
|
732
|
+
SELECT a.name FROM agents a WHERE a.id = ${messages.agentId}
|
|
733
|
+
)`,
|
|
734
|
+
}).from(sql `${deliveries} INDEXED BY sqlite_autoindex_deliveries_1`)
|
|
735
|
+
.innerJoin(agents, eq(deliveries.agentId, agents.id))
|
|
736
|
+
.innerJoin(messages, eq(deliveries.messageId, messages.id))
|
|
737
|
+
.innerJoin(channels, eq(messages.channelId, channels.id))
|
|
738
|
+
.leftJoin(dmConversations, eq(dmConversations.channelId, messages.channelId))
|
|
739
|
+
.where(and(inArray(deliveries.id, page.map(row => row.id)), eq(deliveries.workspaceId, workspaceId), eq(agents.locationType, 'via_node'), eq(agents.locationNodeId, nodeId), eq(agents.id, recipient.id), recipient.providerName === null
|
|
740
|
+
? isNull(agents.providerName) : eq(agents.providerName, recipient.providerName), inArray(deliveries.status, [...ACTIVE_DELIVERY_STATUSES]), gt(deliveries.seq, agents.deliveryAckSeq), sql `(${deliveries.expiresAt} IS NULL OR ${deliveries.expiresAt} > ${Math.floor(Date.now() / 1000)})`)).orderBy(asc(deliveries.seq));
|
|
741
|
+
const attachments = await fetchAttachmentsBatch(db, workspaceId, [...new Set(rows.map(row => row.delivery.messageId))]);
|
|
742
|
+
const deliveredIds = [];
|
|
743
|
+
let interrupted = false;
|
|
744
|
+
for (const row of rows) {
|
|
745
|
+
// Attachment loading and earlier sends can yield to ACKs, terminal
|
|
746
|
+
// transitions or handoffs. Revalidate this exact ID, not mailbox history.
|
|
747
|
+
const [current] = await db.select({ id: sql `${deliveries.id}` })
|
|
748
|
+
.from(sql `${deliveries} INDEXED BY sqlite_autoindex_deliveries_1`)
|
|
749
|
+
.innerJoin(agents, eq(deliveries.agentId, agents.id))
|
|
750
|
+
.where(and(eq(deliveries.id, row.delivery.id), eq(deliveries.workspaceId, workspaceId), eq(agents.id, recipient.id), eq(agents.locationType, 'via_node'), eq(agents.locationNodeId, nodeId), recipient.providerName === null
|
|
751
|
+
? isNull(agents.providerName) : eq(agents.providerName, recipient.providerName), gt(deliveries.seq, agents.deliveryAckSeq), inArray(deliveries.status, [...ACTIVE_DELIVERY_STATUSES]), sql `(${deliveries.expiresAt} IS NULL OR ${deliveries.expiresAt} > ${Math.floor(Date.now() / 1000)})`)).limit(1);
|
|
752
|
+
if (!current)
|
|
753
|
+
continue;
|
|
754
|
+
if (!ready()) {
|
|
755
|
+
interrupted = true;
|
|
756
|
+
break;
|
|
757
|
+
}
|
|
758
|
+
const { eventType, eventData } = buildRoutableDeliveryEvent(row, attachments.get(row.delivery.messageId) ?? []);
|
|
759
|
+
const sent = await registry.sendToProvider(workspaceId, nodeId, recipient.providerName, buildDeliverFrame({
|
|
760
|
+
delivery_id: row.delivery.id, agent_id: recipient.id,
|
|
761
|
+
agent: row.recipientAgentName, msg_id: row.delivery.messageId,
|
|
762
|
+
seq: row.delivery.seq, mode: wireMode(row.delivery.mode),
|
|
763
|
+
payload: buildDeliverPayload(eventType, eventData),
|
|
764
|
+
}));
|
|
765
|
+
// Never send a higher sequence past a failed lower one: a cumulative
|
|
766
|
+
// ACK for it would make the unsent lower delivery replay-invisible.
|
|
767
|
+
if (!sent) {
|
|
768
|
+
interrupted = true;
|
|
769
|
+
break;
|
|
770
|
+
}
|
|
771
|
+
deliveredIds.push(row.delivery.id);
|
|
772
|
+
}
|
|
773
|
+
await markDeliveriesDelivered(db, workspaceId, deliveredIds);
|
|
774
|
+
delivered += deliveredIds.length;
|
|
775
|
+
if (interrupted)
|
|
776
|
+
break;
|
|
678
777
|
}
|
|
679
|
-
const attachments = attachmentsByMessageId.get(row.delivery.messageId) ?? [];
|
|
680
|
-
const { eventType, eventData } = buildRoutableDeliveryEvent(row, attachments);
|
|
681
|
-
const sent = await registry.sendToProvider(workspaceId, nodeId, row.recipientProviderName, buildDeliverFrame({
|
|
682
|
-
delivery_id: row.delivery.id,
|
|
683
|
-
agent_id: row.delivery.agentId,
|
|
684
|
-
agent: row.recipientAgentName,
|
|
685
|
-
msg_id: row.delivery.messageId,
|
|
686
|
-
seq: row.delivery.seq,
|
|
687
|
-
mode: wireMode(row.delivery.mode),
|
|
688
|
-
payload: buildDeliverPayload(eventType, eventData),
|
|
689
|
-
}));
|
|
690
|
-
if (sent)
|
|
691
|
-
deliveredIds.push(row.delivery.id);
|
|
692
778
|
}
|
|
693
|
-
|
|
694
|
-
return deliveredIds.length;
|
|
779
|
+
return delivered;
|
|
695
780
|
}
|
|
696
781
|
/**
|
|
697
782
|
* Resolve the result of a status-guarded transition: when the write landed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/node.d.ts
CHANGED
|
@@ -461,6 +461,7 @@ export declare function deregisterAgentViaNode(db: Db, workspaceId: string, node
|
|
|
461
461
|
export declare function reconcileInventory(db: Db, registry: NodeConnectionRegistry, workspaceId: string, nodeId: string, providerName: string, inventoryAgents: FleetInventoryAgent[], completionDeps?: InvocationCompletionDeps): Promise<{
|
|
462
462
|
reply: {
|
|
463
463
|
rebound_agents: number;
|
|
464
|
+
rejected_agents: number;
|
|
464
465
|
open_invocations: number;
|
|
465
466
|
completed_invocations: number;
|
|
466
467
|
rescheduled_invocations: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/engine/node.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAEzB,yBAAyB,EACzB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACvB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAqB,MAAM,EAA8D,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAI/H,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAgC,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAwBjG,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAG7F,KAAK,EAAE,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACnC,KAAK,OAAO,GAAG,OAAO,KAAK,CAAC,YAAY,CAAC;AACzC,KAAK,QAAQ,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC;AAC3C,KAAK,QAAQ,GAAG,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC;AAC5C,KAAK,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEpC,oFAAoF;AACpF,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,QAAQ,CAAC;IACb,QAAQ,EAAE,sBAAsB,CAAC;IACjC,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;CACb;AAUD,KAAK,cAAc,GAAG,MAAM,GAAG,eAAe,CAAC;AAE/C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE5D;AA+CD,iBAAS,UAAU,CAAC,GAAG,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;EAsB/B;AAyDD,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;IACJ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1C,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;;;;;;;;;;;;;;;;;;;;;;;;;;GAqGF;AAED,wBAAsB,kBAAkB,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAGjE;AAED,wBAAsB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAO5E;AAED,wBAAsB,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAM5E;AASD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,wBAAwB,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAqC5F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,QAAQ,CAMzG;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAWnH;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IACpC,UAAU,EAAE,yBAAyB,EAAE,CAAC;IACxC,QAAQ,EAAE,qBAAqB,CAAC;CACjC;AAED,wBAAsB,YAAY,CAChC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,MAAM,EAC3B,OAAO,EAAE,wBAAwB,EACjC,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAwF7B;AAED,wBAAsB,aAAa,CACjC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;UA4FnC;AAED,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,sBAAsB,EAChC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,wBAAwB,CAAC;IAAC,MAAM,CAAC,EAAE,iBAAiB,CAAA;CAAE,iBAiD1E;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,sBAAsB,EAChC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,uBAAuB,EAAE,OAAO,EAChC,IAAI,CAAC,EAAE,wBAAwB,iBAsBhC;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,sBAAsB,EAChC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE,wBAAwB,iBAgDhC;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,sBAAsB,EAChC,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC,MAAM,CAAC,CAmBjB;AAqND,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,gBAAgB,CAAC,EACvD,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO;;;;;;;;;;;;;;;;;;;;;;;;;UAG7E;AA+ID,wBAAsB,6BAA6B,CACjD,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,iBAahB;AAgCD,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO;;;;;;;;;;;;;GA0D9D;AAED,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,oBA6BzG;AAED,wBAAsB,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;;;;;;;;;;YA2BjF;AAED,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,yBAAyB,EAClC,OAAO,GAAE;IAAE,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAAO,GAClD,OAAO,CAAC,sBAAsB,CAAC,CAmHjC;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,wBAAwB,EACjC,OAAO,GAAE;IAAE,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAAO,GAClD,OAAO,CAAC,sBAAsB,CAAC,CAkIjC;AAED,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,EAC7C,IAAI,CAAC,EAAE,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;UAmDhC;AAED,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,sBAAsB,EAChC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,mBAAmB,EAAE,EACtC,cAAc,CAAC,EAAE,wBAAwB
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/engine/node.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/node.js
CHANGED
|
@@ -1305,8 +1305,6 @@ export async function deregisterAgentViaNode(db, workspaceId, nodeId, message, d
|
|
|
1305
1305
|
return updated ?? null;
|
|
1306
1306
|
}
|
|
1307
1307
|
export async function reconcileInventory(db, registry, workspaceId, nodeId, providerName, inventoryAgents, completionDeps) {
|
|
1308
|
-
const names = new Set(inventoryAgents.map((agent) => agent.name));
|
|
1309
|
-
const liveInvocationIds = new Set(inventoryAgents.flatMap((agent) => (agent.invocation_id ? [agent.invocation_id] : [])));
|
|
1310
1308
|
let completedInvocations = 0;
|
|
1311
1309
|
const [node] = await db
|
|
1312
1310
|
.select()
|
|
@@ -1314,22 +1312,28 @@ export async function reconcileInventory(db, registry, workspaceId, nodeId, prov
|
|
|
1314
1312
|
.where(and(eq(nodes.workspaceId, workspaceId), eq(nodes.id, nodeId)));
|
|
1315
1313
|
if (!node)
|
|
1316
1314
|
throw codedError(`Node "${nodeId}" not found`, 'node_not_found', 404);
|
|
1317
|
-
//
|
|
1318
|
-
//
|
|
1319
|
-
//
|
|
1320
|
-
// rows are cached for
|
|
1315
|
+
// Validate the whole snapshot before applying it, but isolate rejected
|
|
1316
|
+
// members from valid siblings. A single stale/conflicting identity must stay
|
|
1317
|
+
// fail-closed without preventing every other live worker on the node from
|
|
1318
|
+
// renewing its presence lease. Existing rows are cached for the apply pass.
|
|
1321
1319
|
const existingByName = new Map();
|
|
1320
|
+
const acceptedInventoryAgents = [];
|
|
1321
|
+
const rejectedInventoryErrors = [];
|
|
1322
|
+
let acceptedExistingAgentCount = 0;
|
|
1322
1323
|
for (const item of inventoryAgents) {
|
|
1323
1324
|
const [existing] = await db
|
|
1324
1325
|
.select()
|
|
1325
1326
|
.from(agents)
|
|
1326
1327
|
.where(and(eq(agents.workspaceId, workspaceId), eq(agents.name, item.name)));
|
|
1327
|
-
if (!existing)
|
|
1328
|
+
if (!existing) {
|
|
1329
|
+
acceptedInventoryAgents.push(item);
|
|
1328
1330
|
continue;
|
|
1331
|
+
}
|
|
1332
|
+
let rejection;
|
|
1329
1333
|
if (existing.providerName !== providerName) {
|
|
1330
|
-
|
|
1334
|
+
rejection = codedError(`Agent "${item.name}" belongs to provider "${existing.providerName}"`, 'agent_provider_conflict', 409);
|
|
1331
1335
|
}
|
|
1332
|
-
if (existing.status === 'active') {
|
|
1336
|
+
else if (existing.status === 'active') {
|
|
1333
1337
|
const [boundNode] = await db
|
|
1334
1338
|
.select()
|
|
1335
1339
|
.from(nodes)
|
|
@@ -1348,14 +1352,44 @@ export async function reconcileInventory(db, registry, workspaceId, nodeId, prov
|
|
|
1348
1352
|
existing_location_type: existing.locationType,
|
|
1349
1353
|
existing_location_node_id: existing.locationNodeId,
|
|
1350
1354
|
});
|
|
1351
|
-
|
|
1355
|
+
rejection = codedError(`Agent "${item.name}" is already active on another live location`, 'agent_location_conflict', 409);
|
|
1352
1356
|
}
|
|
1353
1357
|
}
|
|
1354
|
-
if (existing.id !== item.agent_id) {
|
|
1355
|
-
|
|
1358
|
+
if (!rejection && existing.id !== item.agent_id) {
|
|
1359
|
+
rejection = codedError(`Inventory identity for agent "${item.name}" does not match its registered agent_id`, 'agent_identity_mismatch', 409);
|
|
1356
1360
|
}
|
|
1361
|
+
if (rejection) {
|
|
1362
|
+
console.warn('[node.inventory] isolated rejected member', {
|
|
1363
|
+
workspace_id: workspaceId,
|
|
1364
|
+
node_id: nodeId,
|
|
1365
|
+
provider_name: providerName,
|
|
1366
|
+
agent_id: item.agent_id,
|
|
1367
|
+
agent_name: item.name,
|
|
1368
|
+
code: rejection.code,
|
|
1369
|
+
});
|
|
1370
|
+
rejectedInventoryErrors.push(rejection);
|
|
1371
|
+
continue;
|
|
1372
|
+
}
|
|
1373
|
+
acceptedInventoryAgents.push(item);
|
|
1374
|
+
acceptedExistingAgentCount++;
|
|
1357
1375
|
existingByName.set(item.name, existing);
|
|
1358
1376
|
}
|
|
1377
|
+
// Preserve the existing all-or-nothing error contract when the snapshot has
|
|
1378
|
+
// no trustworthy member to apply. Mixed snapshots instead renew the valid
|
|
1379
|
+
// subset and report how many members were rejected.
|
|
1380
|
+
if (acceptedExistingAgentCount === 0 && rejectedInventoryErrors.length > 0) {
|
|
1381
|
+
throw rejectedInventoryErrors[0];
|
|
1382
|
+
}
|
|
1383
|
+
// A rejected member is still PRESENT on the node — its process reported the
|
|
1384
|
+
// inventory; only its identity claim is stale or conflicting. The missing
|
|
1385
|
+
// sweep below must therefore run against every REPORTED name, not the
|
|
1386
|
+
// accepted subset: excluding a rejected-but-present member there would take
|
|
1387
|
+
// its real live row offline and emit a false `agent.exited`, exactly the
|
|
1388
|
+
// outage shape the isolation change was meant to prevent. Rejected members
|
|
1389
|
+
// stay excluded from reconciliation and delivery readiness via
|
|
1390
|
+
// `acceptedInventoryAgents` / `liveInvocationIds`.
|
|
1391
|
+
const reportedNames = new Set(inventoryAgents.map((agent) => agent.name));
|
|
1392
|
+
const liveInvocationIds = new Set(acceptedInventoryAgents.flatMap((agent) => (agent.invocation_id ? [agent.invocation_id] : [])));
|
|
1359
1393
|
const openInvocations = await db
|
|
1360
1394
|
.select({
|
|
1361
1395
|
id: actionInvocations.id,
|
|
@@ -1378,7 +1412,7 @@ export async function reconcileInventory(db, registry, workspaceId, nodeId, prov
|
|
|
1378
1412
|
const providerInvocationIds = new Set(openInvocations.map((invocation) => invocation.id));
|
|
1379
1413
|
const reconciledAgentIds = [];
|
|
1380
1414
|
const newlyRoutedAgentIds = [];
|
|
1381
|
-
for (const item of
|
|
1415
|
+
for (const item of acceptedInventoryAgents) {
|
|
1382
1416
|
const existing = existingByName.get(item.name);
|
|
1383
1417
|
if (existing) {
|
|
1384
1418
|
const activeNodeIds = await activeBindingNodeIdsForAgent(db, workspaceId, existing.id);
|
|
@@ -1444,7 +1478,7 @@ export async function reconcileInventory(db, registry, workspaceId, nodeId, prov
|
|
|
1444
1478
|
.select({ id: agents.id, name: agents.name, metadata: agents.metadata })
|
|
1445
1479
|
.from(agents)
|
|
1446
1480
|
.where(and(eq(agents.workspaceId, workspaceId), eq(agents.locationType, 'via_node'), eq(agents.locationNodeId, nodeId), eq(agents.providerName, providerName), eq(agents.status, 'active')));
|
|
1447
|
-
const missingAgents = nodeAgents.filter((agent) => !
|
|
1481
|
+
const missingAgents = nodeAgents.filter((agent) => !reportedNames.has(agent.name));
|
|
1448
1482
|
const missing = missingAgents.map((agent) => agent.id);
|
|
1449
1483
|
if (missing.length > 0) {
|
|
1450
1484
|
await db
|
|
@@ -1488,6 +1522,7 @@ export async function reconcileInventory(db, registry, workspaceId, nodeId, prov
|
|
|
1488
1522
|
return {
|
|
1489
1523
|
reply: {
|
|
1490
1524
|
rebound_agents: reconciledAgentIds.length,
|
|
1525
|
+
rejected_agents: rejectedInventoryErrors.length,
|
|
1491
1526
|
open_invocations: openInvocations.length,
|
|
1492
1527
|
completed_invocations: completedInvocations,
|
|
1493
1528
|
rescheduled_invocations: rescheduledInvocations,
|