@relaycast/engine 8.5.2-hotfix.3 → 8.5.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.
@@ -188,9 +188,6 @@ 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. */
194
191
  export declare function deliverPendingToNode(db: Db, registry: NodeConnectionRegistry, workspaceId: string, nodeId: string, scope?: NodeDeliveryReplayScope): Promise<number>;
195
192
  export {};
196
193
  //# sourceMappingURL=delivery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { eq, and, not, asc, isNull, inArray, notInArray, lte, gt, sql, getTableColumns } from 'drizzle-orm';
1
+ import { eq, and, not, asc, isNull, inArray, notInArray, lte, gt, sql } 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,9 +6,6 @@ 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)]));
12
9
  const ACTIVE_DELIVERY_STATUSES = ['queued', 'delivered'];
13
10
  const TERMINAL_SUCCESS_STATUS = 'acked';
14
11
  // Keep expiry work bounded per request and leave ample room under D1's
@@ -282,24 +279,18 @@ export async function ackDeliveriesUpToSeq(db, workspaceId, nodeId, providerName
282
279
  export async function markDeliveriesDelivered(db, workspaceId, deliveryIds) {
283
280
  if (deliveryIds.length === 0)
284
281
  return 0;
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;
282
+ const updated = await db
283
+ .update(deliveries)
284
+ .set({
285
+ status: 'delivered',
286
+ nextAttemptAt: null,
287
+ lastDispatchError: null,
288
+ deliveredAt: new Date(),
289
+ updatedAt: new Date(),
290
+ })
291
+ .where(and(eq(deliveries.workspaceId, workspaceId), inArray(deliveries.id, deliveryIds), eq(deliveries.status, 'queued')))
292
+ .returning();
293
+ return updated.length;
303
294
  }
304
295
  /**
305
296
  * Transition one D1-safe batch of due deliveries and report both the number of
@@ -632,151 +623,75 @@ export async function fetchQueuedWsBacklogEvents(db, workspaceId, agentId, opts
632
623
  };
633
624
  });
634
625
  }
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);
626
+ export async function deliverPendingToNode(db, registry, workspaceId, nodeId, scope = {}) {
627
+ const agentIds = scope.agentIds ? [...new Set(scope.agentIds)] : undefined;
628
+ if (agentIds?.length === 0)
629
+ return 0;
630
+ const nowSeconds = Math.floor(Date.now() / 1000);
631
+ const conditions = [
632
+ eq(deliveries.workspaceId, workspaceId),
633
+ eq(agents.locationType, 'via_node'),
634
+ eq(agents.locationNodeId, nodeId),
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));
644
641
  }
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;
642
+ if (agentIds) {
643
+ conditions.push(inArray(agents.id, agentIds));
659
644
  }
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,
645
+ const rows = await db
646
+ .select({
647
+ delivery: deliveries,
648
+ recipientAgentName: agents.name,
649
+ recipientProviderName: agents.providerName,
694
650
  ackSeq: agents.deliveryAckSeq,
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())
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)
651
+ body: messages.body,
652
+ blocks: messages.blocks,
653
+ metadata: messages.metadata,
654
+ hasAttachments: messages.hasAttachments,
655
+ threadId: messages.threadId,
656
+ createdAt: messages.createdAt,
657
+ channelId: messages.channelId,
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)) {
708
677
  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;
777
678
  }
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);
778
692
  }
779
- return delivered;
693
+ await markDeliveriesDelivered(db, workspaceId, deliveredIds);
694
+ return deliveredIds.length;
780
695
  }
781
696
  /**
782
697
  * 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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"}
@@ -2,7 +2,6 @@ import { type SQL } from 'drizzle-orm';
2
2
  import type { SQLiteColumn } from 'drizzle-orm/sqlite-core';
3
3
  import type { EffectiveMessageRetention } from '@relaycast/types';
4
4
  import type { getDb } from '../db/index.js';
5
- import { type RetentionCursorStore } from './rowidRetention.js';
6
5
  type Db = ReturnType<typeof getDb>;
7
6
  /** Settled deliveries are operational tracking rows, pruned after 90 days by default. */
8
7
  export declare const DEFAULT_DELIVERY_TTL_DAYS = 90;
@@ -25,36 +24,10 @@ export interface RetentionDefaults {
25
24
  workspaceEventTtlDays?: number | null;
26
25
  }
27
26
  export interface PruneOptions {
28
- /** Optional schema-free, candidate-bounded mode. Host must serialize callers and durably persist this cursor outside D1. */
29
- cursorStore?: RetentionCursorStore;
30
- /** Admission budget for cursor mode; does not cancel in-flight SQL. Default 10s, capped at 30s. */
31
- maxDurationMs?: number;
32
- /** Max rows deleted per table per batch (the SQL LIMIT). Default and hard cap 200 in cursor mode. */
27
+ /** Max rows deleted per table per batch (the SQL LIMIT). Default 200. */
33
28
  batchLimit?: number;
34
- /** Max batches per table per call, bounding total work per run. Default and hard cap 5 in cursor mode. */
29
+ /** Max batches per table per call, bounding total work per run. Default 5. */
35
30
  maxBatches?: number;
36
- /**
37
- * How long a `queued` / `delivered` delivery must have been past its
38
- * `expires_at` before retention may reap it. Independent of
39
- * `delivery_ttl_days`, which cannot express this class at any value.
40
- * Cursor mode only. Default 7 days.
41
- */
42
- expiredDeliveryGraceDays?: number;
43
- /**
44
- * Cursor mode only: after the grace window, recover active `queued`/
45
- * `delivered` rows with a set-based DELETE using
46
- * `idx_deliveries_active_expiry`. The default rowid scan remains
47
- * settled-only.
48
- *
49
- * Opt-in cleanup after the grace window skips `delivery.failed` notices.
50
- */
51
- activeExpiryRecovery?: boolean;
52
- /**
53
- * Cursor mode only: max set-based recovery batches for active `queued`/
54
- * `delivered` rows (capped at 4). Only used when `activeExpiryRecovery`
55
- * is enabled.
56
- */
57
- activeExpiryRecoveryMaxBatches?: number;
58
31
  /** Clock override for tests. */
59
32
  now?: Date;
60
33
  /** Deployment-wide TTL fallbacks; see {@link RetentionDefaults}. */
@@ -1 +1 @@
1
- {"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/engine/retention.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4D,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAW5C,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEjF,KAAK,EAAE,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAInC,yFAAyF;AACzF,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,kGAAkG;AAClG,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,6FAA6F;AAC7F,eAAO,MAAM,gCAAgC,KAAK,CAAC;AAenD;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,2GAA2G;IAC3G,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,wDAAwD;IACxD,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,YAAY;IAC3B,4HAA4H;IAC5H,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC,mGAAmG;IACnG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qGAAqG;IACrG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0GAA0G;IAC1G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;OAIG;IACH,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,gCAAgC;IAChC,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,oEAAoE;IACpE,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,4DAA4D;AAC5D,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,wBAAsB,gCAAgC,CACpD,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,wBAAwB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnD,GAAG,GAAE,IAAiB,GACrB,OAAO,CAAC,yBAAyB,CAAC,CA4DpC;AAgBD,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,GAAG,CAG9E;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,GAAG,CAExE;AAQD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CA0KxF"}
1
+ {"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/engine/retention.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4D,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAY5C,KAAK,EAAE,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AAInC,yFAAyF;AACzF,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,kGAAkG;AAClG,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,6FAA6F;AAC7F,eAAO,MAAM,gCAAgC,KAAK,CAAC;AAenD;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,2GAA2G;IAC3G,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,wDAAwD;IACxD,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,YAAY;IAC3B,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,oEAAoE;IACpE,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,4DAA4D;AAC5D,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,wBAAsB,gCAAgC,CACpD,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,wBAAwB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnD,GAAG,GAAE,IAAiB,GACrB,OAAO,CAAC,yBAAyB,CAAC,CA4DpC;AAgBD,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,GAAG,CAG9E;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,GAAG,CAExE;AAQD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CAyKxF"}
@@ -1,7 +1,6 @@
1
1
  import { and, eq, inArray, isNotNull, isNull, lt, notInArray, sql } from 'drizzle-orm';
2
2
  import { deliveries, messageLogs, messages, readReceipts, workspaceEvents, workspaces, } from '../db/schema.js';
3
3
  import { snowflakeIdLowerBound } from './snowflake.js';
4
- import { pruneRowidPages } from './rowidRetention.js';
5
4
  const DAY_MS = 24 * 60 * 60 * 1000;
6
5
  /** Settled deliveries are operational tracking rows, pruned after 90 days by default. */
7
6
  export const DEFAULT_DELIVERY_TTL_DAYS = 90;
@@ -135,8 +134,6 @@ export function afterSnowflake(column, cursor) {
135
134
  * successive runs.
136
135
  */
137
136
  export async function pruneExpired(db, opts = {}) {
138
- if (opts.cursorStore)
139
- return pruneRowidPages(db, { ...opts, cursorStore: opts.cursorStore });
140
137
  const now = opts.now ?? new Date();
141
138
  const batchLimit = Math.max(1, opts.batchLimit ?? DEFAULT_BATCH_LIMIT);
142
139
  const maxBatches = Math.max(1, opts.maxBatches ?? DEFAULT_MAX_BATCHES);
@@ -1 +1 @@
1
- {"version":3,"file":"retention.js","sourceRoot":"","sources":["../../src/engine/retention.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retention.js","sourceRoot":"","sources":["../../src/engine/retention.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -10,7 +10,6 @@ export type { Db } from './db/index.js';
10
10
  export * as schema from './db/schema.js';
11
11
  export { deliverEvent } from './engine/eventDelivery.js';
12
12
  export { runA2aHealthChecks } from './engine/a2a-health.js';
13
- export type { RetentionCursorStore, RowidRetentionState } from './engine/rowidRetention.js';
14
13
  export { sweepDueNodeDeliveries, sweepDueHttpPushDeliveries } from './routes/deliveryRouting.js';
15
14
  export { sweepExpiredDeliveries } from './routes/deliveryRouting.js';
16
15
  export { deliverPendingToNode } from './engine/delivery.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,EAAG,OAAgB,CAAC;AAG/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGpE,YAAY,EACV,UAAU,EACV,WAAW,EACX,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,WAAW,EACX,eAAe,EACf,WAAW,EACX,aAAa,EACb,UAAU,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,SAAS,EACT,KAAK,EACL,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,aAAa,EACb,cAAc,GACf,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE,OAAO,EAAE,KAAK,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,eAAe,CAAC;AACpE,YAAY,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAQ5D,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAClG,YAAY,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,4BAA4B,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAMrF,OAAO,EACL,YAAY,EACZ,cAAc,EACd,aAAa,EACb,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMvE,OAAO,EACL,YAAY,EACZ,gCAAgC,EAChC,yBAAyB,EACzB,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,YAAY,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAMjE,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EACL,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,kCAAkC,EAClC,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAG7F,OAAO,EACL,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,OAAgB,CAAC;AAE/C,2DAA2D;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiC3C,4DAA4D;AAC5D,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,yDAAyD;AACzD,OAAO,EAAE,KAAK,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,eAAe,CAAC;AAEpE,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAEzC,+EAA+E;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,wEAAwE;AACxE,4EAA4E;AAC5E,gFAAgF;AAChF,8EAA8E;AAC9E,gFAAgF;AAChF,yCAAyC;AACzC,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAElG,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAG5D,6EAA6E;AAC7E,4EAA4E;AAC5E,yEAAyE;AACzE,4CAA4C;AAC5C,OAAO,EACL,YAAY,EACZ,cAAc,EACd,aAAa,EACb,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAGhC,yEAAyE;AACzE,8EAA8E;AAC9E,4EAA4E;AAC5E,qBAAqB;AACrB,OAAO,EACL,YAAY,EACZ,gCAAgC,EAChC,yBAAyB,EACzB,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,uBAAuB,CAAC;AAI/B,yEAAyE;AACzE,8EAA8E;AAC9E,gFAAgF;AAChF,+EAA+E;AAC/E,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAE/B,2EAA2E;AAC3E,+EAA+E;AAC/E,8BAA8B;AAC9B,OAAO,EACL,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,kCAAkC,EAClC,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC;AAGrC,iBAAiB;AACjB,OAAO,EACL,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,OAAgB,CAAC;AAE/C,2DAA2D;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiC3C,4DAA4D;AAC5D,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,yDAAyD;AACzD,OAAO,EAAE,KAAK,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,eAAe,CAAC;AAEpE,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAEzC,+EAA+E;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,wEAAwE;AACxE,4EAA4E;AAC5E,gFAAgF;AAChF,8EAA8E;AAC9E,gFAAgF;AAChF,yCAAyC;AACzC,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAElG,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAG5D,6EAA6E;AAC7E,4EAA4E;AAC5E,yEAAyE;AACzE,4CAA4C;AAC5C,OAAO,EACL,YAAY,EACZ,cAAc,EACd,aAAa,EACb,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAGhC,yEAAyE;AACzE,8EAA8E;AAC9E,4EAA4E;AAC5E,qBAAqB;AACrB,OAAO,EACL,YAAY,EACZ,gCAAgC,EAChC,yBAAyB,EACzB,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,uBAAuB,CAAC;AAI/B,yEAAyE;AACzE,8EAA8E;AAC9E,gFAAgF;AAChF,+EAA+E;AAC/E,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,uBAAuB,CAAC;AAE/B,2EAA2E;AAC3E,+EAA+E;AAC/E,8BAA8B;AAC9B,OAAO,EACL,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,kCAAkC,EAClC,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC;AAGrC,iBAAiB;AACjB,OAAO,EACL,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
@@ -24,7 +24,6 @@ export declare function sweepDueNodeDeliveries(engine: EngineDeps, opts?: {
24
24
  workspaceId?: string;
25
25
  now?: Date;
26
26
  limit?: number;
27
- wsBacklogLimit?: number;
28
27
  }): Promise<number>;
29
28
  /**
30
29
  * @deprecated Renamed to {@link sweepDueNodeDeliveries}, which also sweeps queued
@@ -1 +1 @@
1
- {"version":3,"file":"deliveryRouting.d.ts","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,WAAW,CAAC;AAGvD,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAA+C,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGjG,KAAK,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAsBnC,eAAO,MAAM,2BAA2B,KAAK,CAAC;AA2b9C,wBAAsB,qBAAqB,CACzC,CAAC,EAAE,WAAW,EACd,UAAU,EAAE,oBAAoB,EAAE,EAClC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;AAkDD;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GACvF,OAAO,CAAC,MAAM,CAAC,CA2CjB;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,+BAAyB,CAAC;AAiCjE;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACnE,OAAO,CAAC,MAAM,CAAC,CAiBjB;AAED,wBAAsB,wBAAwB,CAC5C,CAAC,EAAE,WAAW,EACd,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,uBAAuB,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC,CAaf"}
1
+ {"version":3,"file":"deliveryRouting.d.ts","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,WAAW,CAAC;AAGvD,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAA+C,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGjG,KAAK,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAsBnC,eAAO,MAAM,2BAA2B,KAAK,CAAC;AA2b9C,wBAAsB,qBAAqB,CACzC,CAAC,EAAE,WAAW,EACd,UAAU,EAAE,oBAAoB,EAAE,EAClC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;AA4CD;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9D,OAAO,CAAC,MAAM,CAAC,CAsCjB;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,+BAAyB,CAAC;AAiCjE;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACnE,OAAO,CAAC,MAAM,CAAC,CAiBjB;AAED,wBAAsB,wBAAwB,CAC5C,CAAC,EAAE,WAAW,EACd,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,uBAAuB,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC,CAaf"}
@@ -372,8 +372,8 @@ export async function routeDeliveryOutcomes(c, deliveries, eventType, eventData,
372
372
  * `routeOneDeliveryOutcome` has already stamped it for the next retry) we stop,
373
373
  * so a later seq can never outrun an earlier undelivered one.
374
374
  */
375
- async function redriveWsBacklogForAgent(ctx, agentId, now, wsBacklogLimit) {
376
- const backlog = await deliveryEngine.fetchQueuedWsBacklogEvents(ctx.db, ctx.workspaceId, agentId, { now, limit: wsBacklogLimit });
375
+ async function redriveWsBacklogForAgent(ctx, agentId, now) {
376
+ const backlog = await deliveryEngine.fetchQueuedWsBacklogEvents(ctx.db, ctx.workspaceId, agentId, { now });
377
377
  if (backlog.length === 0)
378
378
  return;
379
379
  const backlogDeliveries = backlog.map((event) => event.delivery);
@@ -400,11 +400,7 @@ async function redriveWsBacklogForAgent(ctx, agentId, now, wsBacklogLimit) {
400
400
  */
401
401
  export async function sweepDueNodeDeliveries(engine, opts = {}) {
402
402
  const now = opts.now ?? new Date();
403
- const due = await deliveryEngine.fetchDueNodeDeliveryEvents(engine.db, {
404
- workspaceId: opts.workspaceId,
405
- limit: opts.limit,
406
- now,
407
- });
403
+ const due = await deliveryEngine.fetchDueNodeDeliveryEvents(engine.db, { ...opts, now });
408
404
  const httpPushEvents = [];
409
405
  const wsAgents = [];
410
406
  const seenWsAgents = new Set();
@@ -423,7 +419,7 @@ export async function sweepDueNodeDeliveries(engine, opts = {}) {
423
419
  }
424
420
  await Promise.allSettled([
425
421
  ...httpPushEvents.map((event) => (routeDeliveryOutcomesForContext({ db: engine.db, workspaceId: event.workspaceId, engine }, [event.delivery], event.eventType, event.eventData))),
426
- ...wsAgents.map((agent) => (redriveWsBacklogForAgent({ db: engine.db, workspaceId: agent.workspaceId, engine }, agent.agentId, now, opts.wsBacklogLimit))),
422
+ ...wsAgents.map((agent) => (redriveWsBacklogForAgent({ db: engine.db, workspaceId: agent.workspaceId, engine }, agent.agentId, now))),
427
423
  ]);
428
424
  return due.length;
429
425
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deliveryRouting.js","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deliveryRouting.js","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@relaycast/engine",
3
- "version": "8.5.2-hotfix.3",
3
+ "version": "8.5.2",
4
4
  "type": "module",
5
5
  "description": "Portable, platform-agnostic engine for Relaycast — channels, threads, DMs, presence, real-time events. Runs on Node + SQLite (self-host) or behind a Cloudflare Durable Object adapter (hosted).",
6
6
  "bin": {
@@ -1,43 +0,0 @@
1
- import { z } from 'zod';
2
- import type { EngineDb } from '../ports/database.js';
3
- import type { PruneOptions, PruneResult } from './retention.js';
4
- declare const stateSchema: z.ZodObject<{
5
- version: z.ZodLiteral<1>;
6
- next: z.ZodNumber;
7
- tables: z.ZodRecord<z.ZodString, z.ZodObject<{
8
- cursor: z.ZodOptional<z.ZodNumber>;
9
- high: z.ZodOptional<z.ZodNumber>;
10
- }, z.core.$strip>>;
11
- }, z.core.$strip>;
12
- export type RowidRetentionState = z.infer<typeof stateSchema>;
13
- /** Host-owned durable state; the host MUST serialize callers for this database.
14
- * save resolves only after persistence. No new engine table/index is required.
15
- */
16
- export interface RetentionCursorStore {
17
- load(): Promise<unknown>;
18
- save(state: RowidRetentionState): Promise<void>;
19
- }
20
- /** Hard D1 statement ceiling for one cursor-mode retention invocation.
21
- *
22
- * Per table: one high-water SELECT, then at most five page SELECTs and twenty
23
- * ten-row DELETEs per page. The opt-in active recovery adds at most four
24
- * indexed set-based DELETEs. cursorStore persistence is host-owned, not D1.
25
- */
26
- export declare const ROWID_RETENTION_D1_QUERY_CEILING: number;
27
- /**
28
- * Schema-free recovery mode. Rowid keyset pages bound candidate READS even when
29
- * no history is expired. TTLs/eligibility are applied AFTER the materialized
30
- * page, so LIMIT cannot hide a full-history scan. This deliberately trades scan
31
- * throughput for predictable candidate work while compact indexes are blocked.
32
- *
33
- * Rowid high-water makes each traversal finite under new writes. Retained rows
34
- * are revisited after wrap. Fairness is persisted before a page; its cursor only
35
- * moves after all admitted deletes settle. Failures replay a page, never skip
36
- * uncommitted rows. Message DELETE cascades may still be large; this is NOT a
37
- * bound on cascade writes or a replacement for per-tenant database isolation.
38
- */
39
- export declare function pruneRowidPages(db: EngineDb, opts: PruneOptions & {
40
- cursorStore: RetentionCursorStore;
41
- }): Promise<PruneResult>;
42
- export {};
43
- //# sourceMappingURL=rowidRetention.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rowidRetention.d.ts","sourceRoot":"","sources":["../../src/engine/rowidRetention.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,gBAAgB,CAAC;AAInF,QAAA,MAAM,WAAW;;;;;;;iBAIf,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD;AAqDD;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,QAMP,CAAC;AA6DvC;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG;IAAE,WAAW,EAAE,oBAAoB,CAAA;CAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAsGpI"}
@@ -1,225 +0,0 @@
1
- import { sql } from 'drizzle-orm';
2
- import { z } from 'zod';
3
- import { snowflakeIdLowerBound } from './snowflake.js';
4
- const safeRowid = z.number().int().min(Number.MIN_SAFE_INTEGER).max(Number.MAX_SAFE_INTEGER);
5
- const stateSchema = z.object({
6
- version: z.literal(1),
7
- next: z.number().int().min(0).max(4),
8
- tables: z.record(z.string(), z.object({ cursor: safeRowid.optional(), high: safeRowid.optional() })),
9
- });
10
- const settled = "deliveries.status IN ('acked', 'failed', 'dead_lettered')";
11
- // Table-qualified: `workspaces` also has an `expires_at`, and the outer page
12
- // query joins it, so a bare column is ambiguous there. The page builder rewrites
13
- // `deliveries.` to `page.` for the SELECT and leaves it intact for the DELETE.
14
- const DEFAULT_EXPIRED_DELIVERY_GRACE_DAYS = 7;
15
- // Deliveries deletion in cursor mode is settled-only by default. Active
16
- // queued/delivered cleanup is opt-in and handled exclusively by the indexed,
17
- // set-based recovery path below.
18
- const tables = [
19
- { name: 'messages', result: 'messages', columns: 'id, workspace_id',
20
- setting: 'message_ttl_days', fallback: 'messageTtlDays', snowflake: true,
21
- guard: 'NOT EXISTS (SELECT 1 FROM messages replies WHERE replies.thread_id = messages.id)' },
22
- { name: 'deliveries', result: 'deliveries', columns: 'id, workspace_id, created_at, status, expires_at',
23
- setting: 'delivery_ttl_days', fallback: 'deliveryTtlDays', guard: settled },
24
- { name: 'message_logs', result: 'messageLogs', columns: 'id, workspace_id',
25
- setting: 'message_log_ttl_days', fallback: 'messageLogTtlDays', snowflake: true, guard: '1' },
26
- { name: 'workspace_events', result: 'workspaceEvents', columns: 'workspace_id, seq, created_at',
27
- setting: 'workspace_event_ttl_days', fallback: 'workspaceEventTtlDays',
28
- guard: 'EXISTS (SELECT 1 FROM workspace_events hw WHERE hw.workspace_id = workspace_events.workspace_id AND hw.seq > workspace_events.seq LIMIT 1)' },
29
- { name: 'read_receipts', result: 'readReceipts', columns: 'message_id, agent_id',
30
- guard: 'NOT EXISTS (SELECT 1 FROM messages m WHERE m.id = read_receipts.message_id)' },
31
- ];
32
- const MAX_ACTIVE_EXPIRY_RECOVERY_BATCHES = 4;
33
- const ACTIVE_EXPIRY_RECOVERY_DELETE_LIMIT = 1000;
34
- const ROWID_PAGE_LIMIT = 200;
35
- const ROWID_MAX_BATCHES_PER_TABLE = 5;
36
- const ROWID_DELETE_CHUNK_SIZE = 10;
37
- /** Hard D1 statement ceiling for one cursor-mode retention invocation.
38
- *
39
- * Per table: one high-water SELECT, then at most five page SELECTs and twenty
40
- * ten-row DELETEs per page. The opt-in active recovery adds at most four
41
- * indexed set-based DELETEs. cursorStore persistence is host-owned, not D1.
42
- */
43
- export const ROWID_RETENTION_D1_QUERY_CEILING = tables.length * (1
44
- + ROWID_MAX_BATCHES_PER_TABLE
45
- + ROWID_MAX_BATCHES_PER_TABLE * Math.ceil(ROWID_PAGE_LIMIT / ROWID_DELETE_CHUNK_SIZE))
46
- + MAX_ACTIVE_EXPIRY_RECOVERY_BATCHES;
47
- async function recoverExpiredActiveDeliveriesSetBased(db, nowMs, graceDays, opts) {
48
- const graceMs = Math.max(0, Math.floor(graceDays * 86_400_000));
49
- const cutoffMs = nowMs - graceMs;
50
- const cutoffSeconds = Math.floor(cutoffMs / 1000);
51
- // Use the existing index that already narrows to only active (queued/delivered).
52
- // We still re-check queued/delivered + expires_at in the outer DELETE predicate
53
- // to avoid expiry-extension races between selecting candidate ids and deleting.
54
- const batches = Math.max(1, Math.min(Math.floor(opts.maxBatches), MAX_ACTIVE_EXPIRY_RECOVERY_BATCHES));
55
- let deleted = 0;
56
- for (let batch = 0; batch < batches; batch++) {
57
- const changed = await db.all(sql `
58
- DELETE FROM deliveries
59
- WHERE (
60
- status IN ('queued', 'delivered')
61
- AND expires_at IS NOT NULL
62
- AND expires_at < ${cutoffSeconds}
63
- )
64
- AND id IN (
65
- SELECT id
66
- FROM deliveries INDEXED BY idx_deliveries_active_expiry
67
- WHERE status IN ('queued', 'delivered')
68
- AND expires_at IS NOT NULL
69
- AND expires_at < ${cutoffSeconds}
70
- ORDER BY expires_at, id
71
- LIMIT ${ACTIVE_EXPIRY_RECOVERY_DELETE_LIMIT}
72
- )
73
- RETURNING id AS _id
74
- `);
75
- deleted += changed.length;
76
- if (changed.length < ACTIVE_EXPIRY_RECOVERY_DELETE_LIMIT)
77
- break;
78
- }
79
- return deleted;
80
- }
81
- function bounded(value, fallback, max) {
82
- return value !== undefined && Number.isFinite(value) ? Math.max(1, Math.min(max, Math.floor(value))) : fallback;
83
- }
84
- function expired(row, table, defaults, now) {
85
- if (!table.setting || !table.fallback)
86
- return true;
87
- const settings = row.retention ? JSON.parse(row.retention) : {};
88
- const override = settings?.[table.setting];
89
- const days = override === undefined ? defaults[table.fallback] : override;
90
- if (days == null || !Number.isFinite(days) || days <= 0)
91
- return false;
92
- const cutoff = now - days * 86_400_000;
93
- if (!Number.isFinite(cutoff))
94
- return false;
95
- if (!table.snowflake)
96
- return row.created_at * 1000 < cutoff;
97
- const bound = snowflakeIdLowerBound(cutoff);
98
- return row.id.length < bound.length || (row.id.length === bound.length && row.id < bound);
99
- }
100
- /**
101
- * Schema-free recovery mode. Rowid keyset pages bound candidate READS even when
102
- * no history is expired. TTLs/eligibility are applied AFTER the materialized
103
- * page, so LIMIT cannot hide a full-history scan. This deliberately trades scan
104
- * throughput for predictable candidate work while compact indexes are blocked.
105
- *
106
- * Rowid high-water makes each traversal finite under new writes. Retained rows
107
- * are revisited after wrap. Fairness is persisted before a page; its cursor only
108
- * moves after all admitted deletes settle. Failures replay a page, never skip
109
- * uncommitted rows. Message DELETE cascades may still be large; this is NOT a
110
- * bound on cascade writes or a replacement for per-tenant database isolation.
111
- */
112
- export async function pruneRowidPages(db, opts) {
113
- const now = (opts.now ?? new Date()).getTime();
114
- if (!Number.isFinite(now))
115
- throw new Error('Invalid retention clock');
116
- // Preserve existing cursor-mode ceilings exactly: 200 rows/page and 5
117
- // batches/table.
118
- const activeExpiryRecovery = opts.activeExpiryRecovery === true;
119
- const limit = bounded(opts.batchLimit, ROWID_PAGE_LIMIT, ROWID_PAGE_LIMIT);
120
- const pages = bounded(opts.maxBatches, ROWID_MAX_BATCHES_PER_TABLE, ROWID_MAX_BATCHES_PER_TABLE) * tables.length;
121
- const deadline = Date.now() + bounded(opts.maxDurationMs, 10_000, 30_000);
122
- const defaults = {
123
- messageTtlDays: null, deliveryTtlDays: 90, messageLogTtlDays: 90, workspaceEventTtlDays: 30,
124
- ...Object.fromEntries(Object.entries(opts.defaults ?? {}).filter(([, value]) => value !== undefined)),
125
- };
126
- const grace = opts.expiredDeliveryGraceDays ?? DEFAULT_EXPIRED_DELIVERY_GRACE_DAYS;
127
- const saved = await opts.cursorStore.load();
128
- // Corrupt state is an error, not permission to restart expensive work or
129
- // drop an unknown future cursor format during a rollback.
130
- const state = saved == null
131
- ? { version: 1, next: 0, tables: {} } : stateSchema.parse(saved);
132
- const save = () => opts.cursorStore.save(structuredClone(state));
133
- const result = { messages: 0, deliveries: 0, messageLogs: 0, readReceipts: 0, workspaceEvents: 0 };
134
- const finished = new Set();
135
- // Opt-in active expiry recovery BEFORE the rowid crawl so a slow scan
136
- // cannot starve active cleanup.
137
- if (activeExpiryRecovery) {
138
- const maxBatches = bounded(opts.activeExpiryRecoveryMaxBatches, MAX_ACTIVE_EXPIRY_RECOVERY_BATCHES, MAX_ACTIVE_EXPIRY_RECOVERY_BATCHES);
139
- result.deliveries += await recoverExpiredActiveDeliveriesSetBased(db, now, grace, { maxBatches });
140
- }
141
- for (let step = 0; step < pages && Date.now() < deadline; step++) {
142
- const index = state.next;
143
- state.next = (index + 1) % tables.length;
144
- if (finished.has(index))
145
- continue;
146
- const table = tables[index];
147
- await save();
148
- const position = state.tables[table.name] ??= {};
149
- if (Date.now() >= deadline)
150
- break;
151
- if (position.high === undefined) {
152
- const [last] = await db.all(sql `SELECT rowid AS _rowid FROM ${sql.raw(table.name)} NOT INDEXED ORDER BY rowid DESC LIMIT 1`);
153
- if (!last) {
154
- delete state.tables[table.name];
155
- finished.add(index);
156
- await save();
157
- continue;
158
- }
159
- position.high = safeRowid.parse(last._rowid);
160
- }
161
- if (Date.now() >= deadline)
162
- break;
163
- const page = await db.all(sql `
164
- WITH page AS MATERIALIZED (
165
- SELECT rowid AS _rowid, ${sql.raw(table.columns)} FROM ${sql.raw(table.name)} NOT INDEXED
166
- WHERE rowid <= ${position.high}
167
- ${position.cursor === undefined ? sql `` : sql `AND rowid > ${position.cursor}`}
168
- ORDER BY rowid LIMIT ${limit}
169
- ) SELECT page.*, ${sql.raw(table.guard.replaceAll(table.name + '.', 'page.'))} AS eligible,
170
- ${table.setting ? sql `w.retention` : sql `NULL`} AS retention FROM page
171
- ${table.setting ? sql `LEFT JOIN workspaces w ON w.id = page.workspace_id` : sql ``}
172
- ORDER BY page._rowid`);
173
- for (const row of page)
174
- safeRowid.parse(row._rowid);
175
- // Keep exact row identities alongside rowid: SQLite may reuse a deleted
176
- // rowid between the candidate read and a later DELETE.
177
- const removable = page.filter(row => row.eligible && expired(row, table, defaults, now));
178
- // At most seven bindings per row, kept below D1's 100-variable limit.
179
- // Small atomic chunks also avoid one subrequest per retained-history row.
180
- for (let offset = 0; offset < removable.length; offset += ROWID_DELETE_CHUNK_SIZE) {
181
- if (Date.now() >= deadline) {
182
- await save();
183
- return result;
184
- }
185
- const chunk = removable.slice(offset, offset + ROWID_DELETE_CHUNK_SIZE);
186
- const guarded = chunk.map(row => {
187
- const identity = table.result === 'workspaceEvents'
188
- ? sql `workspace_id = ${row.workspace_id} AND seq = ${row.seq}`
189
- : table.result === 'readReceipts'
190
- ? sql `message_id = ${row.message_id} AND agent_id = ${row.agent_id}`
191
- : sql `id = ${row.id} AND workspace_id = ${row.workspace_id}`;
192
- // A policy edit after the read must not authorize a stale deletion.
193
- // Exact raw-policy comparison is conservative (even whitespace edits
194
- // defer the row to the next traversal), and uses the workspace PK.
195
- // A missing workspace also has the default policy. workspace_events
196
- // intentionally has no workspace FK, so its orphan rows must age out.
197
- // The scalar PK lookup returns NULL for absence, but a newly installed
198
- // non-default policy still prevents deletion from the stale snapshot.
199
- const policyGuard = table.setting ? sql `AND (SELECT w.retention FROM workspaces w
200
- WHERE w.id = ${row.workspace_id}) IS ${row.retention}` : sql ``;
201
- const timeGuard = table.setting && !table.snowflake ? sql `AND created_at = ${row.created_at}` : sql ``;
202
- // The deliveries page is guarded as settled-only (default cursor mode),
203
- // but the opt-in active recovery path re-checks status/expiry again.
204
- // Always pin the exact status read so concurrent status changes
205
- // cannot authorize a stale deletion.
206
- const statusGuard = table.result === 'deliveries' ? sql `AND status = ${row.status}` : sql ``;
207
- return sql `(rowid = ${row._rowid} AND ${identity} ${policyGuard} ${timeGuard} ${statusGuard})`;
208
- });
209
- const deleted = await db.all(sql `DELETE FROM ${sql.raw(table.name)} NOT INDEXED
210
- WHERE (${sql.join(guarded, sql ` OR `)}) AND ${sql.raw(table.guard)} RETURNING 1`);
211
- result[table.result] += deleted.length;
212
- }
213
- if (page.length < limit || page.at(-1)?._rowid === position.high) {
214
- delete state.tables[table.name];
215
- finished.add(index);
216
- }
217
- else
218
- position.cursor = page.at(-1)._rowid;
219
- await save();
220
- if (finished.size === tables.length)
221
- break;
222
- }
223
- return result;
224
- }
225
- //# sourceMappingURL=rowidRetention.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rowidRetention.js","sourceRoot":"","sources":["../../src/engine/rowidRetention.ts"],"names":[],"mappings":"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"}