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

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 (70) 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 +8 -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 +768 -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 +19 -24
  21. package/dist/src/export.js.map +1 -1
  22. package/dist/src/external_storage.d.ts +23 -0
  23. package/dist/src/external_storage.d.ts.map +1 -0
  24. package/dist/src/external_storage.js +278 -0
  25. package/dist/src/external_storage.js.map +1 -0
  26. package/dist/src/external_stores.d.ts +36 -0
  27. package/dist/src/external_stores.d.ts.map +1 -0
  28. package/dist/src/external_stores.js +177 -0
  29. package/dist/src/external_stores.js.map +1 -0
  30. package/dist/src/fork.d.ts +7 -0
  31. package/dist/src/fork.d.ts.map +1 -1
  32. package/dist/src/fork.js +11 -3
  33. package/dist/src/fork.js.map +1 -1
  34. package/dist/src/index.d.ts +11 -0
  35. package/dist/src/index.d.ts.map +1 -1
  36. package/dist/src/index.js +17 -1
  37. package/dist/src/index.js.map +1 -1
  38. package/dist/src/locks.d.ts +20 -0
  39. package/dist/src/locks.d.ts.map +1 -0
  40. package/dist/src/locks.js +47 -0
  41. package/dist/src/locks.js.map +1 -0
  42. package/dist/src/observability.d.ts +8 -0
  43. package/dist/src/observability.d.ts.map +1 -1
  44. package/dist/src/observability.js +69 -44
  45. package/dist/src/observability.js.map +1 -1
  46. package/dist/src/retention.d.ts +18 -34
  47. package/dist/src/retention.d.ts.map +1 -1
  48. package/dist/src/retention.js +159 -177
  49. package/dist/src/retention.js.map +1 -1
  50. package/dist/src/sharding/index.d.ts +9 -0
  51. package/dist/src/sharding/index.d.ts.map +1 -0
  52. package/dist/src/sharding/index.js +13 -0
  53. package/dist/src/sharding/index.js.map +1 -0
  54. package/dist/src/sharding/migrations.d.ts +20 -0
  55. package/dist/src/sharding/migrations.d.ts.map +1 -0
  56. package/dist/src/sharding/migrations.js +544 -0
  57. package/dist/src/sharding/migrations.js.map +1 -0
  58. package/dist/src/sharding/schema.d.ts +9 -0
  59. package/dist/src/sharding/schema.d.ts.map +1 -0
  60. package/dist/src/sharding/schema.js +12 -0
  61. package/dist/src/sharding/schema.js.map +1 -0
  62. package/dist/src/sharding/sys_db.d.ts +104 -0
  63. package/dist/src/sharding/sys_db.d.ts.map +1 -0
  64. package/dist/src/sharding/sys_db.js +776 -0
  65. package/dist/src/sharding/sys_db.js.map +1 -0
  66. package/dist/src/suspend.d.ts +24 -0
  67. package/dist/src/suspend.d.ts.map +1 -0
  68. package/dist/src/suspend.js +110 -0
  69. package/dist/src/suspend.js.map +1 -0
  70. package/package.json +17 -4
@@ -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)'],
@@ -129,7 +162,12 @@ async function getWorkflowAggregates(sysdb, input) {
129
162
  params.push(...values);
130
163
  paramIdx += values.length;
131
164
  };
132
- addFilter('status', input.status);
165
+ if (input.status?.length && input.status.every((status) => status === workflow_1.StatusString.SUSPENDED)) {
166
+ whereClauses.push(`status = '${workflow_1.StatusString.SUSPENDED}'`);
167
+ }
168
+ else {
169
+ addFilter('status', input.status);
170
+ }
133
171
  addFilter('name', input.name);
134
172
  addFilter('application_version', input.appVersion);
135
173
  addFilter('executor_id', input.executorId);
@@ -146,7 +184,6 @@ async function getWorkflowAggregates(sysdb, input) {
146
184
  addFilter('forked_from', input.forkedFrom);
147
185
  addFilter('parent_workflow_id', input.parentWorkflowID);
148
186
  addFilter('schedule_name', input.scheduleName);
149
- // Unset scopes to this application, as on every other observability query.
150
187
  whereClauses.push(sysdb.observabilityFilter('application_name', input.applicationName, params));
151
188
  paramIdx = params.length + 1;
152
189
  if (input.wasForkedFrom !== undefined) {
@@ -154,14 +191,12 @@ async function getWorkflowAggregates(sysdb, input) {
154
191
  params.push(input.wasForkedFrom);
155
192
  paramIdx++;
156
193
  }
157
- // Matches the forks themselves, as opposed to wasForkedFrom, which matches the workflows they were forked from.
158
194
  if (input.isFork !== undefined) {
159
195
  whereClauses.push(input.isFork ? `forked_from IS NOT NULL` : `forked_from IS NULL`);
160
196
  }
161
197
  if (input.hasParent !== undefined) {
162
198
  whereClauses.push(input.hasParent ? `parent_workflow_id IS NOT NULL` : `parent_workflow_id IS NULL`);
163
199
  }
164
- // Match workflows whose attributes JSONB contains all the given key-value pairs.
165
200
  if (input.attributes && Object.keys(input.attributes).length > 0) {
166
201
  whereClauses.push(`attributes @> $${paramIdx}::jsonb`);
167
202
  params.push(JSON.stringify(input.attributes));
@@ -187,8 +222,6 @@ async function getWorkflowAggregates(sysdb, input) {
187
222
  params.push(new Date(input.completedBefore).getTime());
188
223
  paramIdx++;
189
224
  }
190
- // dequeuedAfter/Before filter on started_at_epoch_ms: that column is
191
- // populated on dequeue and surfaced as WorkflowStatus.dequeuedAt.
192
225
  if (input.dequeuedAfter) {
193
226
  whereClauses.push(`started_at_epoch_ms >= $${paramIdx}`);
194
227
  params.push(new Date(input.dequeuedAfter).getTime());
@@ -210,7 +243,7 @@ async function getWorkflowAggregates(sysdb, input) {
210
243
  `;
211
244
  const result = await sysdb.observabilityQuery((client) => client.query(query, params));
212
245
  const toIntOrNull = (v) => (v === null || v === undefined ? null : Number(v));
213
- return result.rows.map((row) => {
246
+ const rows = result.rows.map((row) => {
214
247
  const group = {};
215
248
  for (const name of groupNames) {
216
249
  const v = row[name];
@@ -224,14 +257,13 @@ async function getWorkflowAggregates(sysdb, input) {
224
257
  maxTotalLatencyMs: selectNames.includes('max_total_latency_ms') ? toIntOrNull(row.max_total_latency_ms) : null,
225
258
  };
226
259
  });
260
+ return mergeGroups(rows, combineWorkflowRows);
227
261
  }
228
262
  exports.getWorkflowAggregates = getWorkflowAggregates;
229
263
  async function getStepAggregates(sysdb, input) {
230
264
  if (input.timeBucketSizeMs !== undefined && input.timeBucketSizeMs <= 0) {
231
265
  throw new Error('time_bucket_size_ms must be > 0');
232
266
  }
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
267
  const statusExpr = `CASE WHEN error IS NULL THEN 'SUCCESS' ELSE 'ERROR' END`;
236
268
  const groupByFlags = [
237
269
  ['function_name', input.groupByFunctionName ?? false, 'function_name'],
@@ -249,8 +281,6 @@ async function getStepAggregates(sysdb, input) {
249
281
  }
250
282
  const params = [];
251
283
  if (input.timeBucketSizeMs !== undefined) {
252
- // Bucket on completed_at_epoch_ms — it's the indexed timestamp on
253
- // this table.
254
284
  params.push(input.timeBucketSizeMs);
255
285
  const bucket = `$${params.length}::bigint`;
256
286
  const bucketExpr = `(CAST(FLOOR(completed_at_epoch_ms / ${bucket}) AS BIGINT) * ${bucket})`;
@@ -261,9 +291,6 @@ async function getStepAggregates(sysdb, input) {
261
291
  if (groupColumns.length === 0) {
262
292
  throw new Error('At least one group_by flag must be set to True');
263
293
  }
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
294
  const selectFlags = [
268
295
  ['count', input.selectCount ?? false, 'COUNT(*)'],
269
296
  ['max_duration_ms', input.selectMaxDurationMs ?? false, 'MAX(completed_at_epoch_ms - started_at_epoch_ms)'],
@@ -310,7 +337,6 @@ async function getStepAggregates(sysdb, input) {
310
337
  params.push(new Date(input.completedBefore).getTime());
311
338
  paramIdx++;
312
339
  }
313
- // Unset scopes to this application, as on every other observability query.
314
340
  whereClauses.push(sysdb.observabilityFilter('application_name', input.applicationName, params));
315
341
  paramIdx = params.length + 1;
316
342
  const whereClause = whereClauses.length > 0 ? `WHERE ${whereClauses.join(' AND ')}` : '';
@@ -324,7 +350,7 @@ async function getStepAggregates(sysdb, input) {
324
350
  `;
325
351
  const result = await sysdb.observabilityQuery((client) => client.query(query, params));
326
352
  const toIntOrNull = (v) => (v === null || v === undefined ? null : Number(v));
327
- return result.rows.map((row) => {
353
+ const rows = result.rows.map((row) => {
328
354
  const group = {};
329
355
  for (const name of groupNames) {
330
356
  const v = row[name];
@@ -336,6 +362,7 @@ async function getStepAggregates(sysdb, input) {
336
362
  maxDurationMs: selectNames.includes('max_duration_ms') ? toIntOrNull(row.max_duration_ms) : null,
337
363
  };
338
364
  });
365
+ return mergeGroups(rows, combineStepRows);
339
366
  }
340
367
  exports.getStepAggregates = getStepAggregates;
341
368
  async function getMetrics(sysdb, startTime, endTime, applicationName) {
@@ -357,19 +384,17 @@ async function getMetrics(sysdb, startTime, endTime, applicationName) {
357
384
  GROUP BY function_name`, stepParams),
358
385
  ]);
359
386
  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
- });
387
+ for (const [metricType, rows] of [
388
+ ['workflow_count', workflowResult.rows.map((row) => [row.name, row.count])],
389
+ ['step_count', stepResult.rows.map((row) => [row.function_name, row.count])],
390
+ ]) {
391
+ const counts = new Map();
392
+ for (const [name, count] of rows) {
393
+ counts.set(name, (counts.get(name) ?? 0) + Number(count));
394
+ }
395
+ for (const [metricName, value] of counts) {
396
+ metrics.push({ metricType, metricName, value });
397
+ }
373
398
  }
374
399
  return metrics;
375
400
  });
@@ -1 +1 @@
1
- {"version":3,"file":"observability.js","sourceRoot":"","sources":["../../src/observability.ts"],"names":[],"mappings":";AAAA,8GAA8G;;;AAG9G,6EAAsE;AACtE,iFAAuH;AACvH,mEAAoE;AA8E7D,KAAK,UAAU,mBAAmB,CACvC,KAAqB,EACrB,UAAkB,EAClB,UAAkB;IAElB,MAAM,MAAM,GAAc,CAAC,uBAAY,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACzE,uEAAuE;IACvE,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,kBAAkB,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CACzC;aACS,KAAK,CAAC,UAAU;yEAC4C,KAAK,EAAE,EAC5E,MAAM,CACP,CAAC;IACF,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,CAC1B,CAAC,CAAC,EAAE,EAAE,CACJ,CAA2B;QACzB,YAAY,EAAE,CAAC,CAAC,aAAa;KAC9B,CAAA,CACJ,CAAC;AACJ,CAAC;AApBD,kDAoBC;AAEM,KAAK,UAAU,YAAY,CAAC,KAAqB,EAAE,UAAkB;IAC1E,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE,EAAE,CACzD,MAAM,CAAC,KAAK,CACV,0CAA0C,KAAK,CAAC,UAAU;gCAChC,EAC1B,CAAC,UAAU,CAAC,CACb,CACF,CAAC;IACF,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,yBAAS,EAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAbD,oCAaC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAqB,EACrB,UAAkB;IAElB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE,EAAE,CACzD,MAAM,CAAC,KAAK,CAOV;eACS,KAAK,CAAC,UAAU;;oCAEK,EAC9B,CAAC,UAAU,CAAC,CACb,CACF,CAAC;IACF,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACvB,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK;QACvD,OAAO,EAAE,MAAM,IAAA,yBAAS,EAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC;QAC1E,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACjD,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC;AA3BD,kDA2BC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAqB,EACrB,UAAkB;IAElB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE,EAAE,CACzD,MAAM,CAAC,KAAK,CACV,0CAA0C,KAAK,CAAC,UAAU;;8BAElC,EACxB,CAAC,UAAU,CAAC,CACb,CACF,CAAC;IACF,MAAM,OAAO,GAA8B,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,SAAS;QACX,CAAC;QACD,4FAA4F;QAC5F,MAAM,KAAK,GAAG,MAAM,IAAA,yBAAS,EAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QAC9E,IAAI,IAAA,wCAAsB,EAAC,KAAK,CAAC,EAAE,CAAC;YAClC,mEAAmE;YACnE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACxB,SAAS;QACX,CAAC;QACD,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AA7BD,kDA6BC;AAEM,KAAK,UAAU,qBAAqB,CACzC,KAAqB,EACrB,KAAiC;IAEjC,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,YAAY,GAAgC;QAChD,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,IAAI,KAAK,EAAE,QAAQ,CAAC;QAClD,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,EAAE,MAAM,CAAC;QAC5C,CAAC,YAAY,EAAE,KAAK,CAAC,gBAAgB,IAAI,KAAK,EAAE,YAAY,CAAC;QAC7D,CAAC,aAAa,EAAE,KAAK,CAAC,iBAAiB,IAAI,KAAK,EAAE,aAAa,CAAC;QAChE,CAAC,qBAAqB,EAAE,KAAK,CAAC,yBAAyB,IAAI,KAAK,EAAE,qBAAqB,CAAC;QACxF,CAAC,kBAAkB,EAAE,KAAK,CAAC,sBAAsB,IAAI,KAAK,EAAE,kBAAkB,CAAC;KAChF,CAAC;IAEF,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,YAAY,EAAE,CAAC;QACnD,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACzC,8EAA8E;QAC9E,oGAAoG;QACpG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,UAAU,CAAC;QAC3C,MAAM,UAAU,GAAG,4BAA4B,MAAM,kBAAkB,MAAM,GAAG,CAAC;QACjF,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,kBAAkB,CAAC,IAAI,CAAC,GAAG,UAAU,iBAAiB,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,sEAAsE;IACtE,wEAAwE;IACxE,iBAAiB;IACjB,MAAM,WAAW,GAAgC;QAC/C,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,EAAE,UAAU,CAAC;QACjD,CAAC,gBAAgB,EAAE,KAAK,CAAC,kBAAkB,IAAI,KAAK,EAAE,iBAAiB,CAAC;QACxE,CAAC,mBAAmB,EAAE,KAAK,CAAC,oBAAoB,IAAI,KAAK,EAAE,uCAAuC,CAAC;QACnG,CAAC,sBAAsB,EAAE,KAAK,CAAC,uBAAuB,IAAI,KAAK,EAAE,gCAAgC,CAAC;KACnG,CAAC;IACF,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,WAAW,EAAE,CAAC;QAChD,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAEjC,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,MAA4B,EAAE,EAAE;QACjE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzE,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,QAAQ,YAAY,GAAG,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;QACvB,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC,CAAC;IAEF,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9B,SAAS,CAAC,qBAAqB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACnD,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3C,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAEzC,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,WAAW,GAAG,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACnD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,uBAAuB,QAAQ,EAAE,EAAE,CAAC;QAC7C,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,SAAS,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC9C,SAAS,CAAC,oBAAoB,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACzD,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3C,SAAS,CAAC,oBAAoB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACxD,SAAS,CAAC,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAE/C,2EAA2E;IAC3E,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;IAChG,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7B,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACtC,YAAY,CAAC,IAAI,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACjC,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,gHAAgH;IAChH,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;IACtF,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAClC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC;IACvG,CAAC;IAED,iFAAiF;IACjF,IAAI,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjE,YAAY,CAAC,IAAI,CAAC,kBAAkB,QAAQ,SAAS,CAAC,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAC9C,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,YAAY,CAAC,IAAI,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACjD,QAAQ,EAAE,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,YAAY,CAAC,IAAI,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/C,QAAQ,EAAE,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,YAAY,CAAC,IAAI,CAAC,oBAAoB,QAAQ,EAAE,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,QAAQ,EAAE,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,YAAY,CAAC,IAAI,CAAC,oBAAoB,QAAQ,EAAE,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,QAAQ,EAAE,CAAC;IACb,CAAC;IACD,qEAAqE;IACrE,kEAAkE;IAClE,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,YAAY,CAAC,IAAI,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,QAAQ,EAAE,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,YAAY,CAAC,IAAI,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,CAAC,GAAG,kBAAkB,EAAE,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE1E,MAAM,KAAK,GAAG;aACH,YAAY;YACb,KAAK,CAAC,UAAU;MACtB,WAAW;eACF,aAAa;GACzB,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAA0B,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhH,MAAM,WAAW,GAAG,CAAC,CAAU,EAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtG,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAkC,EAAE,CAAC;QAChD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAA6B,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO;YACL,KAAK;YACL,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;YACpE,YAAY,EAAE,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;YAC7F,cAAc,EAAE,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI;YACrG,iBAAiB,EAAE,WAAW,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,IAAI;SAC/G,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAzLD,sDAyLC;AAEM,KAAK,UAAU,iBAAiB,CACrC,KAAqB,EACrB,KAA6B;IAE7B,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IAED,gGAAgG;IAChG,4GAA4G;IAC5G,MAAM,UAAU,GAAG,yDAAyD,CAAC;IAE7E,MAAM,YAAY,GAAgC;QAChD,CAAC,eAAe,EAAE,KAAK,CAAC,mBAAmB,IAAI,KAAK,EAAE,eAAe,CAAC;QACtE,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,IAAI,KAAK,EAAE,UAAU,CAAC;KACrD,CAAC;IAEF,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;QACpD,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,kBAAkB,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,OAAO,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACzC,kEAAkE;QAClE,cAAc;QACd,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,UAAU,CAAC;QAC3C,MAAM,UAAU,GAAG,uCAAuC,MAAM,kBAAkB,MAAM,GAAG,CAAC;QAC5F,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,kBAAkB,CAAC,IAAI,CAAC,GAAG,UAAU,iBAAiB,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,wFAAwF;IACxF,4FAA4F;IAC5F,kEAAkE;IAClE,MAAM,WAAW,GAAgC;QAC/C,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,EAAE,UAAU,CAAC;QACjD,CAAC,iBAAiB,EAAE,KAAK,CAAC,mBAAmB,IAAI,KAAK,EAAE,kDAAkD,CAAC;KAC5G,CAAC;IACF,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,WAAW,EAAE,CAAC;QAChD,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAEjC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,YAAY,CAAC,IAAI,CAAC,IAAI,UAAU,SAAS,YAAY,GAAG,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;IAClC,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrF,YAAY,CAAC,IAAI,CAAC,qBAAqB,YAAY,GAAG,CAAC,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,QAAQ,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC;IACxC,CAAC;IACD,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,WAAW,GAAG,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACnD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,uBAAuB,QAAQ,EAAE,EAAE,CAAC;QAC7C,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,YAAY,CAAC,IAAI,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,QAAQ,EAAE,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,YAAY,CAAC,IAAI,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,QAAQ,EAAE,CAAC;IACb,CAAC;IACD,2EAA2E;IAC3E,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;IAChG,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7B,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,CAAC,GAAG,kBAAkB,EAAE,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE1E,MAAM,KAAK,GAAG;aACH,YAAY;YACb,KAAK,CAAC,UAAU;MACtB,WAAW;eACF,aAAa;GACzB,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAA0B,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhH,MAAM,WAAW,GAAG,CAAC,CAAU,EAAiB,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtG,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAkC,EAAE,CAAC;QAChD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAA6B,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO;YACL,KAAK;YACL,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;YACpE,aAAa,EAAE,WAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI;SACjG,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AA/HD,8CA+HC;AAEM,KAAK,UAAU,UAAU,CAC9B,KAAqB,EACrB,SAAiB,EACjB,OAAe,EACf,eAA0B;IAE1B,OAAO,IAAA,6BAAW,EAAC,KAAK,IAAI,EAAE;QAC5B,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;QAE/C,MAAM,cAAc,GAAc,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAC7D,MAAM,aAAa,GAAG,KAAK,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;QACrG,MAAM,UAAU,GAAc,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;QAE7F,MAAM,CAAC,cAAc,EAAE,UAAU,CAAC,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;YACpF,MAAM,MAAM,CAAC,KAAK,CAChB;iBACS,KAAK,CAAC,UAAU;0DACyB,aAAa;uBAChD,EACf,cAAc,CACf;YACD,MAAM,MAAM,CAAC,KAAK,CAChB;iBACS,KAAK,CAAC,UAAU;gFAC+C,SAAS;gCACzD,EACxB,UAAU,CACX;SACF,CAAC,CAAC;QAEH,MAAM,OAAO,GAAiB,EAAE,CAAC;QACjC,KAAK,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC;gBACX,UAAU,EAAE,gBAAgB;gBAC5B,UAAU,EAAE,GAAG,CAAC,IAAI;gBACpB,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;aACzB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC;gBACX,UAAU,EAAE,YAAY;gBACxB,UAAU,EAAE,GAAG,CAAC,aAAa;gBAC7B,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;aACzB,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAjDD,gCAiDC"}
1
+ {"version":3,"file":"observability.js","sourceRoot":"","sources":["../../src/observability.ts"],"names":[],"mappings":"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"}
@@ -1,49 +1,33 @@
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';
9
+ import type { ExternalStore } from '@dbos-inc/dbos-sdk/internal/external_storage';
1
10
  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
- */
11
+ export declare function retryOnSerializationError<T>(operation: () => Promise<T>, sysdb: SystemDatabase): Promise<T>;
13
12
  export declare function retentionLockKey(schemaName: string): bigint;
14
13
  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
- */
14
+ export declare class WindowBatches {
15
+ readonly batchSize: number;
16
+ width: number;
17
+ constructor(batchSize: number);
18
+ bound(client: ClientBase | Pool, column: string, from: string, eligible: (params: unknown[]) => string, watermark: number, cutoff: number): Promise<number | undefined>;
19
+ }
21
20
  export declare function acquireRetentionLock(sysdb: SystemDatabase): Promise<{
22
21
  release: () => Promise<void>;
23
22
  } | 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
23
  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
24
  export declare function collectStatuses(sysdb: SystemDatabase, cutoffEpochTimestampMs?: number | null, rowsThreshold?: number | null, options?: {
37
25
  batchSize?: number | null;
38
26
  }): 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. */
27
+ export declare function listTimedOutWorkflowIds(sysdb: SystemDatabase, cutoffEpochTimestampMs: number): Promise<[string, string | undefined][]>;
45
28
  export declare function garbageCollect(sysdb: SystemDatabase, cutoffEpochTimestampMs?: number | null, rowsThreshold?: number | null, options?: {
46
29
  batchSize?: number | null;
30
+ externalStores?: ExternalStore[];
47
31
  }): Promise<void>;
48
32
  export declare function globalTimeout(sysdb: SystemDatabase, cutoffEpochTimestampMs: number): Promise<void>;
49
33
  //# sourceMappingURL=retention.d.ts.map
@@ -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;AAIvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAClF,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,CAqBzC;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,CAAC;IAAC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAA;CAAO,GAC5E,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG"}