@dbos-inc/dbos-enterprise 5.4.1-preview → 5.4.2-preview

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/README.md +0 -2
  2. package/dist/src/auto_upgrade.d.ts +7 -20
  3. package/dist/src/auto_upgrade.d.ts.map +1 -1
  4. package/dist/src/auto_upgrade.js +7 -51
  5. package/dist/src/auto_upgrade.js.map +1 -1
  6. package/dist/src/cockroach.d.ts +7 -1
  7. package/dist/src/cockroach.d.ts.map +1 -1
  8. package/dist/src/cockroach.js +7 -1
  9. package/dist/src/cockroach.js.map +1 -1
  10. package/dist/src/conductor/conductor.d.ts +8 -5
  11. package/dist/src/conductor/conductor.d.ts.map +1 -1
  12. package/dist/src/conductor/conductor.js +765 -735
  13. package/dist/src/conductor/conductor.js.map +1 -1
  14. package/dist/src/conductor/protocol.d.ts +31 -7
  15. package/dist/src/conductor/protocol.d.ts.map +1 -1
  16. package/dist/src/conductor/protocol.js +84 -17
  17. package/dist/src/conductor/protocol.js.map +1 -1
  18. package/dist/src/export.d.ts +7 -0
  19. package/dist/src/export.d.ts.map +1 -1
  20. package/dist/src/export.js +15 -21
  21. package/dist/src/export.js.map +1 -1
  22. package/dist/src/fork.d.ts +7 -0
  23. package/dist/src/fork.d.ts.map +1 -1
  24. package/dist/src/fork.js +11 -3
  25. package/dist/src/fork.js.map +1 -1
  26. package/dist/src/index.d.ts +8 -0
  27. package/dist/src/index.d.ts.map +1 -1
  28. package/dist/src/index.js +10 -1
  29. package/dist/src/index.js.map +1 -1
  30. package/dist/src/locks.d.ts +20 -0
  31. package/dist/src/locks.d.ts.map +1 -0
  32. package/dist/src/locks.js +47 -0
  33. package/dist/src/locks.js.map +1 -0
  34. package/dist/src/observability.d.ts +8 -0
  35. package/dist/src/observability.d.ts.map +1 -1
  36. package/dist/src/observability.js +63 -43
  37. package/dist/src/observability.js.map +1 -1
  38. package/dist/src/retention.d.ts +16 -34
  39. package/dist/src/retention.d.ts.map +1 -1
  40. package/dist/src/retention.js +148 -176
  41. package/dist/src/retention.js.map +1 -1
  42. package/dist/src/sharding/index.d.ts +9 -0
  43. package/dist/src/sharding/index.d.ts.map +1 -0
  44. package/dist/src/sharding/index.js +13 -0
  45. package/dist/src/sharding/index.js.map +1 -0
  46. package/dist/src/sharding/migrations.d.ts +20 -0
  47. package/dist/src/sharding/migrations.d.ts.map +1 -0
  48. package/dist/src/sharding/migrations.js +486 -0
  49. package/dist/src/sharding/migrations.js.map +1 -0
  50. package/dist/src/sharding/schema.d.ts +9 -0
  51. package/dist/src/sharding/schema.d.ts.map +1 -0
  52. package/dist/src/sharding/schema.js +12 -0
  53. package/dist/src/sharding/schema.js.map +1 -0
  54. package/dist/src/sharding/sys_db.d.ts +101 -0
  55. package/dist/src/sharding/sys_db.d.ts.map +1 -0
  56. package/dist/src/sharding/sys_db.js +717 -0
  57. package/dist/src/sharding/sys_db.js.map +1 -0
  58. package/package.json +3 -3
@@ -1,25 +1,61 @@
1
+ // Copyright (c) 2026 DBOS, Inc. All rights reserved.
2
+ //
3
+ // This file is part of Transact Enterprise, proprietary software licensed under the
4
+ // DBOS Conductor Software License: https://www.dbos.dev/conductor-license
5
+ // You may not use, copy, modify, or distribute this file except as that license permits.
6
+ // Disabling or circumventing the entitlement checks in @dbos-inc/dbos-sdk's src/enterprise.ts
7
+ // that gate it is a material breach of that license.
1
8
  "use strict";
2
- // Dashboard queries over the system database: aggregates, metrics, and the bulk reads behind a workflow page.
3
9
  Object.defineProperty(exports, "__esModule", { value: true });
4
10
  exports.getMetrics = exports.getStepAggregates = exports.getWorkflowAggregates = exports.getAllStreamEntries = exports.getAllNotifications = exports.getAllEvents = exports.getPendingWorkflows = void 0;
5
11
  const serialization_1 = require("@dbos-inc/dbos-sdk/internal/serialization");
6
12
  const system_database_1 = require("@dbos-inc/dbos-sdk/internal/system_database");
7
13
  const workflow_1 = require("@dbos-inc/dbos-sdk/internal/workflow");
14
+ function combine(a, b, pick) {
15
+ return a === null ? b : b === null ? a : pick(a, b);
16
+ }
17
+ function mergeGroups(rows, combineRows) {
18
+ const merged = new Map();
19
+ for (const row of rows) {
20
+ const key = JSON.stringify(Object.entries(row.group).sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0)));
21
+ const existing = merged.get(key);
22
+ if (existing !== undefined) {
23
+ combineRows(existing, row);
24
+ }
25
+ else {
26
+ merged.set(key, row);
27
+ }
28
+ }
29
+ return Array.from(merged.values());
30
+ }
31
+ function combineWorkflowRows(into, row) {
32
+ into.count = combine(into.count, row.count, (a, b) => a + b);
33
+ into.minCreatedAt = combine(into.minCreatedAt, row.minCreatedAt, Math.min);
34
+ into.maxQueueWaitMs = combine(into.maxQueueWaitMs, row.maxQueueWaitMs, Math.max);
35
+ into.maxTotalLatencyMs = combine(into.maxTotalLatencyMs, row.maxTotalLatencyMs, Math.max);
36
+ }
37
+ function combineStepRows(into, row) {
38
+ into.count = combine(into.count, row.count, (a, b) => a + b);
39
+ into.maxDurationMs = combine(into.maxDurationMs, row.maxDurationMs, Math.max);
40
+ }
8
41
  async function getPendingWorkflows(sysdb, executorID, appVersion) {
9
42
  const params = [workflow_1.StatusString.PENDING, executorID, appVersion];
10
- // executor_id defaults to "local", so it collides across applications.
11
43
  const scope = sysdb.appNameFilter('application_name', sysdb.appName, params);
12
- const getWorkflows = await sysdb.pool.query(`SELECT workflow_uuid
44
+ const key = sysdb.keyColumn(undefined);
45
+ const getWorkflows = await sysdb.pool.query(`SELECT workflow_uuid${key !== undefined ? `, ${key} AS shard_key` : ''}
13
46
  FROM "${sysdb.schemaName}".workflow_status
14
47
  WHERE status=$1 AND executor_id=$2 AND application_version=$3 AND ${scope}`, params);
15
48
  return getWorkflows.rows.map((i) => ({
16
49
  workflowUUID: i.workflow_uuid,
50
+ shardKey: i.shard_key ?? undefined,
17
51
  }));
18
52
  }
19
53
  exports.getPendingWorkflows = getPendingWorkflows;
20
54
  async function getAllEvents(sysdb, workflowID) {
55
+ const params = [];
56
+ const target = sysdb.wf(undefined, workflowID, params);
21
57
  const { rows } = await sysdb.observabilityQuery((client) => client.query(`SELECT key, value, serialization FROM "${sysdb.schemaName}".workflow_events
22
- WHERE workflow_uuid = $1`, [workflowID]));
58
+ WHERE ${target}`, params));
23
59
  const events = {};
24
60
  for (const row of rows) {
25
61
  events[row.key] = await (0, serialization_1.safeParse)(sysdb.serializer, row.value, row.serialization);
@@ -28,10 +64,12 @@ async function getAllEvents(sysdb, workflowID) {
28
64
  }
29
65
  exports.getAllEvents = getAllEvents;
30
66
  async function getAllNotifications(sysdb, workflowID) {
67
+ const params = [];
68
+ const target = sysdb.wf(undefined, workflowID, params, 'destination_uuid');
31
69
  const { rows } = await sysdb.observabilityQuery((client) => client.query(`SELECT topic, message, serialization, created_at_epoch_ms, consumed
32
70
  FROM "${sysdb.schemaName}".notifications
33
- WHERE destination_uuid = $1
34
- ORDER BY created_at_epoch_ms`, [workflowID]));
71
+ WHERE ${target}
72
+ ORDER BY created_at_epoch_ms`, params));
35
73
  return await Promise.all(rows.map(async (row) => ({
36
74
  topic: row.topic === sysdb.nullTopic ? null : row.topic,
37
75
  message: await (0, serialization_1.safeParse)(sysdb.serializer, row.message, row.serialization),
@@ -41,19 +79,19 @@ async function getAllNotifications(sysdb, workflowID) {
41
79
  }
42
80
  exports.getAllNotifications = getAllNotifications;
43
81
  async function getAllStreamEntries(sysdb, workflowID) {
82
+ const params = [];
83
+ const target = sysdb.wf(undefined, workflowID, params);
44
84
  const { rows } = await sysdb.observabilityQuery((client) => client.query(`SELECT key, value, serialization FROM "${sysdb.schemaName}".streams
45
- WHERE workflow_uuid = $1
46
- ORDER BY key, "offset"`, [workflowID]));
85
+ WHERE ${target}
86
+ ORDER BY key, "offset"`, params));
47
87
  const streams = {};
48
88
  const closed = new Set();
49
89
  for (const row of rows) {
50
90
  if (closed.has(row.key)) {
51
91
  continue;
52
92
  }
53
- // safeParse yields the raw string for the legacy unserialized marker, which does not parse.
54
93
  const value = await (0, serialization_1.safeParse)(sysdb.serializer, row.value, row.serialization);
55
94
  if ((0, system_database_1.isStreamClosedSentinel)(value)) {
56
- // End the stream where readStream does, so the two never disagree.
57
95
  closed.add(row.key);
58
96
  streams[row.key] ??= [];
59
97
  continue;
@@ -87,8 +125,6 @@ async function getWorkflowAggregates(sysdb, input) {
87
125
  }
88
126
  const params = [];
89
127
  if (input.timeBucketSizeMs !== undefined) {
90
- // Bucket on created_at — the indexed wall-clock timestamp on workflow_status.
91
- // One placeholder shared by SELECT and GROUP BY, so Postgres sees the two expressions as identical.
92
128
  params.push(input.timeBucketSizeMs);
93
129
  const bucket = `$${params.length}::bigint`;
94
130
  const bucketExpr = `(CAST(FLOOR(created_at / ${bucket}) AS BIGINT) * ${bucket})`;
@@ -99,9 +135,6 @@ async function getWorkflowAggregates(sysdb, input) {
99
135
  if (groupColumns.length === 0) {
100
136
  throw new Error('At least one group_by flag must be set to True');
101
137
  }
102
- // Build select columns from boolean flags. MAX ignores NULLs, so rows
103
- // missing started_at_epoch_ms or completed_at naturally drop out of the
104
- // latency maxes.
105
138
  const selectFlags = [
106
139
  ['count', input.selectCount ?? false, 'COUNT(*)'],
107
140
  ['min_created_at', input.selectMinCreatedAt ?? false, 'MIN(created_at)'],
@@ -146,7 +179,6 @@ async function getWorkflowAggregates(sysdb, input) {
146
179
  addFilter('forked_from', input.forkedFrom);
147
180
  addFilter('parent_workflow_id', input.parentWorkflowID);
148
181
  addFilter('schedule_name', input.scheduleName);
149
- // Unset scopes to this application, as on every other observability query.
150
182
  whereClauses.push(sysdb.observabilityFilter('application_name', input.applicationName, params));
151
183
  paramIdx = params.length + 1;
152
184
  if (input.wasForkedFrom !== undefined) {
@@ -154,14 +186,12 @@ async function getWorkflowAggregates(sysdb, input) {
154
186
  params.push(input.wasForkedFrom);
155
187
  paramIdx++;
156
188
  }
157
- // Matches the forks themselves, as opposed to wasForkedFrom, which matches the workflows they were forked from.
158
189
  if (input.isFork !== undefined) {
159
190
  whereClauses.push(input.isFork ? `forked_from IS NOT NULL` : `forked_from IS NULL`);
160
191
  }
161
192
  if (input.hasParent !== undefined) {
162
193
  whereClauses.push(input.hasParent ? `parent_workflow_id IS NOT NULL` : `parent_workflow_id IS NULL`);
163
194
  }
164
- // Match workflows whose attributes JSONB contains all the given key-value pairs.
165
195
  if (input.attributes && Object.keys(input.attributes).length > 0) {
166
196
  whereClauses.push(`attributes @> $${paramIdx}::jsonb`);
167
197
  params.push(JSON.stringify(input.attributes));
@@ -187,8 +217,6 @@ async function getWorkflowAggregates(sysdb, input) {
187
217
  params.push(new Date(input.completedBefore).getTime());
188
218
  paramIdx++;
189
219
  }
190
- // dequeuedAfter/Before filter on started_at_epoch_ms: that column is
191
- // populated on dequeue and surfaced as WorkflowStatus.dequeuedAt.
192
220
  if (input.dequeuedAfter) {
193
221
  whereClauses.push(`started_at_epoch_ms >= $${paramIdx}`);
194
222
  params.push(new Date(input.dequeuedAfter).getTime());
@@ -210,7 +238,7 @@ async function getWorkflowAggregates(sysdb, input) {
210
238
  `;
211
239
  const result = await sysdb.observabilityQuery((client) => client.query(query, params));
212
240
  const toIntOrNull = (v) => (v === null || v === undefined ? null : Number(v));
213
- return result.rows.map((row) => {
241
+ const rows = result.rows.map((row) => {
214
242
  const group = {};
215
243
  for (const name of groupNames) {
216
244
  const v = row[name];
@@ -224,14 +252,13 @@ async function getWorkflowAggregates(sysdb, input) {
224
252
  maxTotalLatencyMs: selectNames.includes('max_total_latency_ms') ? toIntOrNull(row.max_total_latency_ms) : null,
225
253
  };
226
254
  });
255
+ return mergeGroups(rows, combineWorkflowRows);
227
256
  }
228
257
  exports.getWorkflowAggregates = getWorkflowAggregates;
229
258
  async function getStepAggregates(sysdb, input) {
230
259
  if (input.timeBucketSizeMs !== undefined && input.timeBucketSizeMs <= 0) {
231
260
  throw new Error('time_bucket_size_ms must be > 0');
232
261
  }
233
- // operation_outputs has no explicit status column; derive it from whether `error` is populated.
234
- // Child-workflow mapping rows have NULL error, so they appear as SUCCESS — callers filter by function_name.
235
262
  const statusExpr = `CASE WHEN error IS NULL THEN 'SUCCESS' ELSE 'ERROR' END`;
236
263
  const groupByFlags = [
237
264
  ['function_name', input.groupByFunctionName ?? false, 'function_name'],
@@ -249,8 +276,6 @@ async function getStepAggregates(sysdb, input) {
249
276
  }
250
277
  const params = [];
251
278
  if (input.timeBucketSizeMs !== undefined) {
252
- // Bucket on completed_at_epoch_ms — it's the indexed timestamp on
253
- // this table.
254
279
  params.push(input.timeBucketSizeMs);
255
280
  const bucket = `$${params.length}::bigint`;
256
281
  const bucketExpr = `(CAST(FLOOR(completed_at_epoch_ms / ${bucket}) AS BIGINT) * ${bucket})`;
@@ -261,9 +286,6 @@ async function getStepAggregates(sysdb, input) {
261
286
  if (groupColumns.length === 0) {
262
287
  throw new Error('At least one group_by flag must be set to True');
263
288
  }
264
- // Build select columns from boolean flags. Child-workflow mapping rows record start and
265
- // complete at nearly the same instant, so they contribute ~0; DBOS.getResult and DBOS.sleep
266
- // rows span their whole wait, so those dominate the duration max.
267
289
  const selectFlags = [
268
290
  ['count', input.selectCount ?? false, 'COUNT(*)'],
269
291
  ['max_duration_ms', input.selectMaxDurationMs ?? false, 'MAX(completed_at_epoch_ms - started_at_epoch_ms)'],
@@ -310,7 +332,6 @@ async function getStepAggregates(sysdb, input) {
310
332
  params.push(new Date(input.completedBefore).getTime());
311
333
  paramIdx++;
312
334
  }
313
- // Unset scopes to this application, as on every other observability query.
314
335
  whereClauses.push(sysdb.observabilityFilter('application_name', input.applicationName, params));
315
336
  paramIdx = params.length + 1;
316
337
  const whereClause = whereClauses.length > 0 ? `WHERE ${whereClauses.join(' AND ')}` : '';
@@ -324,7 +345,7 @@ async function getStepAggregates(sysdb, input) {
324
345
  `;
325
346
  const result = await sysdb.observabilityQuery((client) => client.query(query, params));
326
347
  const toIntOrNull = (v) => (v === null || v === undefined ? null : Number(v));
327
- return result.rows.map((row) => {
348
+ const rows = result.rows.map((row) => {
328
349
  const group = {};
329
350
  for (const name of groupNames) {
330
351
  const v = row[name];
@@ -336,6 +357,7 @@ async function getStepAggregates(sysdb, input) {
336
357
  maxDurationMs: selectNames.includes('max_duration_ms') ? toIntOrNull(row.max_duration_ms) : null,
337
358
  };
338
359
  });
360
+ return mergeGroups(rows, combineStepRows);
339
361
  }
340
362
  exports.getStepAggregates = getStepAggregates;
341
363
  async function getMetrics(sysdb, startTime, endTime, applicationName) {
@@ -357,19 +379,17 @@ async function getMetrics(sysdb, startTime, endTime, applicationName) {
357
379
  GROUP BY function_name`, stepParams),
358
380
  ]);
359
381
  const metrics = [];
360
- for (const row of workflowResult.rows) {
361
- metrics.push({
362
- metricType: 'workflow_count',
363
- metricName: row.name,
364
- value: Number(row.count),
365
- });
366
- }
367
- for (const row of stepResult.rows) {
368
- metrics.push({
369
- metricType: 'step_count',
370
- metricName: row.function_name,
371
- value: Number(row.count),
372
- });
382
+ for (const [metricType, rows] of [
383
+ ['workflow_count', workflowResult.rows.map((row) => [row.name, row.count])],
384
+ ['step_count', stepResult.rows.map((row) => [row.function_name, row.count])],
385
+ ]) {
386
+ const counts = new Map();
387
+ for (const [name, count] of rows) {
388
+ counts.set(name, (counts.get(name) ?? 0) + Number(count));
389
+ }
390
+ for (const [metricName, value] of counts) {
391
+ metrics.push({ metricType, metricName, value });
392
+ }
373
393
  }
374
394
  return metrics;
375
395
  });
@@ -1 +1 @@
1
- {"version":3,"file":"observability.js","sourceRoot":"","sources":["../../src/observability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observability.js","sourceRoot":"","sources":["../../src/observability.ts"],"names":[],"mappings":"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"}
@@ -1,47 +1,29 @@
1
+ // Copyright (c) 2026 DBOS, Inc. All rights reserved.
2
+ //
3
+ // This file is part of Transact Enterprise, proprietary software licensed under the
4
+ // DBOS Conductor Software License: https://www.dbos.dev/conductor-license
5
+ // You may not use, copy, modify, or distribute this file except as that license permits.
6
+ // Disabling or circumventing the entitlement checks in @dbos-inc/dbos-sdk's src/enterprise.ts
7
+ // that gate it is a material breach of that license.
8
+ import type { ClientBase, Pool } from 'pg';
1
9
  import { type SystemDatabase } from '@dbos-inc/dbos-sdk/internal/system_database';
2
- /**
3
- * Re-run a batch that lost a deadlock or serialization race. The database already rolled it
4
- * back, so replaying it is safe.
5
- */
6
- export declare function retryOnSerializationError<T>(operation: () => Promise<T>): Promise<T>;
7
- /**
8
- * The pg_try_advisory_lock argument for one schema's retention round: the leading 8 bytes of
9
- * SHA-256 over a fixed string, read as a signed big-endian 64-bit integer. Separate locks for
10
- * separate schemas. Every DBOS SDK derives the key this way, so rounds in different languages
11
- * against one system database contend for the same lock; changing it here changes it everywhere.
12
- */
10
+ export declare function retryOnSerializationError<T>(operation: () => Promise<T>, sysdb: SystemDatabase): Promise<T>;
13
11
  export declare function retentionLockKey(schemaName: string): bigint;
14
12
  export declare const DEFAULT_GC_BATCH_SIZE = 50000;
15
- /**
16
- * Take a database-wide lock for one retention round, returning how to release it, or
17
- * undefined when another round already holds it. The lock is session-scoped, so a round
18
- * that crashes releases it. CockroachDB has no advisory locks and always takes it, so it
19
- * collects unprotected rather than not at all.
20
- */
13
+ export declare class WindowBatches {
14
+ readonly batchSize: number;
15
+ width: number;
16
+ constructor(batchSize: number);
17
+ bound(client: ClientBase | Pool, column: string, from: string, eligible: (params: unknown[]) => string, watermark: number, cutoff: number): Promise<number | undefined>;
18
+ }
21
19
  export declare function acquireRetentionLock(sysdb: SystemDatabase): Promise<{
22
20
  release: () => Promise<void>;
23
21
  } | undefined>;
24
- /**
25
- * Delete payload and step rows below the cutoff whose workflow is gone, returning the count
26
- * removed from each table. Runs after the status sweep, whose orphans all fall in range:
27
- * every payload is stamped no later than the completion that made the row collectable.
28
- */
29
22
  export declare function collectPayloads(sysdb: SystemDatabase, cutoff: number, batchSize?: number): Promise<number[]>;
30
- /**
31
- * Delete old terminal workflows throughout the system database, returning the cutoff
32
- * actually used, or undefined when there is nothing to collect.
33
- *
34
- * Conductor sends cleared retention thresholds as JSON null, so every param is nullish.
35
- */
36
23
  export declare function collectStatuses(sysdb: SystemDatabase, cutoffEpochTimestampMs?: number | null, rowsThreshold?: number | null, options?: {
37
24
  batchSize?: number | null;
38
25
  }): Promise<number | undefined>;
39
- /**
40
- * IDs of this application's in-flight workflows created at or before the cutoff.
41
- * Claiming-scoped, so an upgrade still times out its own unclaimed workflows.
42
- */
43
- export declare function listTimedOutWorkflowIds(sysdb: SystemDatabase, cutoffEpochTimestampMs: number): Promise<string[]>;
44
- /** Enforce retention across the entire system database. */
26
+ export declare function listTimedOutWorkflowIds(sysdb: SystemDatabase, cutoffEpochTimestampMs: number): Promise<[string, string | undefined][]>;
45
27
  export declare function garbageCollect(sysdb: SystemDatabase, cutoffEpochTimestampMs?: number | null, rowsThreshold?: number | null, options?: {
46
28
  batchSize?: number | null;
47
29
  }): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/retention.ts"],"names":[],"mappings":"AAMA,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,6CAA6C,CAAC;AAwCrD;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA0B1F;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE3D;AAGD,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAG5C;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,GAAG,SAAS,CAAC,CA8CvD;AA2GD;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAA8B,GACxC,OAAO,CAAC,MAAM,EAAE,CAAC,CA0CnB;AA2DD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA+D7B;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,cAAc,EACrB,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,MAAM,EAAE,CAAC,CAmBnB;AAED,2DAA2D;AAC3D,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG"}
1
+ {"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/retention.ts"],"names":[],"mappings":";;;;;;;AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AAGvD,OAAO,EAML,KAAK,cAAc,EACpB,MAAM,6CAA6C,CAAC;AAgDrD,wBAAsB,yBAAyB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BjH;AAQD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE3D;AAGD,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAsC5C,qBAAa,aAAa;IAGZ,QAAQ,CAAC,SAAS,EAAE,MAAM;IAFtC,KAAK,SAA2B;gBAEX,SAAS,EAAE,MAAM;IAGhC,KAAK,CACT,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,MAAM,EACvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CA+D/B;AAQD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,GAAG,SAAS,CAAC,CA+BvD;AAoHD,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAA8B,GACxC,OAAO,CAAC,MAAM,EAAE,CAAC,CA0CnB;AA8ED,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA+D7B;AAMD,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,cAAc,EACrB,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC,CAoBzC;AAGD,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG"}