pipework 0.206.0 → 0.208.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 (66) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/async/jobs/listener.d.ts +2 -2
  3. package/dist/async/jobs/listener.d.ts.map +1 -1
  4. package/dist/async/jobs/listener.js +10 -10
  5. package/dist/async/jobs/listener.js.map +1 -1
  6. package/dist/async/jobs/queue.d.ts.map +1 -1
  7. package/dist/async/jobs/queue.js +67 -29
  8. package/dist/async/jobs/queue.js.map +1 -1
  9. package/dist/async/pipeline/define.d.ts.map +1 -1
  10. package/dist/async/pipeline/define.js +3 -2
  11. package/dist/async/pipeline/define.js.map +1 -1
  12. package/dist/async/steps/graph.d.ts.map +1 -1
  13. package/dist/async/steps/graph.js +11 -7
  14. package/dist/async/steps/graph.js.map +1 -1
  15. package/dist/auth/auth/email-links.d.ts.map +1 -1
  16. package/dist/auth/auth/email-links.js +3 -2
  17. package/dist/auth/auth/email-links.js.map +1 -1
  18. package/dist/auth/auth/multi-org.d.ts.map +1 -1
  19. package/dist/auth/auth/multi-org.js +3 -2
  20. package/dist/auth/auth/multi-org.js.map +1 -1
  21. package/dist/auth/auth/sessions.d.ts.map +1 -1
  22. package/dist/auth/auth/sessions.js +3 -2
  23. package/dist/auth/auth/sessions.js.map +1 -1
  24. package/dist/auth/tenant/scoped-db.d.ts +24 -0
  25. package/dist/auth/tenant/scoped-db.d.ts.map +1 -1
  26. package/dist/auth/tenant/scoped-db.js +64 -1
  27. package/dist/auth/tenant/scoped-db.js.map +1 -1
  28. package/dist/data/db/advisory-lock.d.ts.map +1 -1
  29. package/dist/data/db/advisory-lock.js +3 -2
  30. package/dist/data/db/advisory-lock.js.map +1 -1
  31. package/dist/data/db/bulk-set.d.ts +1 -1
  32. package/dist/data/db/bulk-set.d.ts.map +1 -1
  33. package/dist/data/db/bulk-set.js +7 -2
  34. package/dist/data/db/bulk-set.js.map +1 -1
  35. package/dist/data/db/timeouts.d.ts.map +1 -1
  36. package/dist/data/db/timeouts.js +2 -1
  37. package/dist/data/db/timeouts.js.map +1 -1
  38. package/dist/data/write/audit/audit-select.d.ts +11 -2
  39. package/dist/data/write/audit/audit-select.d.ts.map +1 -1
  40. package/dist/data/write/audit/audit-select.js +8 -1
  41. package/dist/data/write/audit/audit-select.js.map +1 -1
  42. package/dist/data/write/audit/verb-select.d.ts +16 -0
  43. package/dist/data/write/audit/verb-select.d.ts.map +1 -0
  44. package/dist/data/write/audit/verb-select.js +35 -0
  45. package/dist/data/write/audit/verb-select.js.map +1 -0
  46. package/dist/data/write/audit/verb-upsert.d.ts.map +1 -1
  47. package/dist/data/write/audit/verb-upsert.js +11 -1
  48. package/dist/data/write/audit/verb-upsert.js.map +1 -1
  49. package/dist/data/write/execute.d.ts.map +1 -1
  50. package/dist/data/write/execute.js +11 -4
  51. package/dist/data/write/execute.js.map +1 -1
  52. package/dist/infra/email/mail.d.ts.map +1 -1
  53. package/dist/infra/email/mail.js +6 -3
  54. package/dist/infra/email/mail.js.map +1 -1
  55. package/dist/infra/idempotency/store.d.ts.map +1 -1
  56. package/dist/infra/idempotency/store.js +13 -6
  57. package/dist/infra/idempotency/store.js.map +1 -1
  58. package/dist/infra/webhook/outbound.d.ts.map +1 -1
  59. package/dist/infra/webhook/outbound.js +15 -7
  60. package/dist/infra/webhook/outbound.js.map +1 -1
  61. package/dist/trace/runtime/flow-step.d.ts +1 -1
  62. package/dist/trace/runtime/flow-step.js +1 -1
  63. package/dist/trace/runtime/step-buffer.d.ts.map +1 -1
  64. package/dist/trace/runtime/step-buffer.js +9 -1
  65. package/dist/trace/runtime/step-buffer.js.map +1 -1
  66. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.208.0
4
+
5
+ - **Fixed: a write was audited once per `@touches` target on its entity, whatever the verb** (#788). A step declaring `X:create` and `X:update` wrote a `create` and an `update` row for each insert, and again for each update. Each row a write affects is now recorded under the step's touches whose verb is the row's verb: an insert is `create`, an update `update`, a delete `delete`, and an upsert row `create` when it was new and `update` when it existed. With no touch of that verb, the row is recorded under the step's custom-verb touches (any verb but `create`, `update`, `delete`, `read`), else under its touches other than `read` (so a step declaring only `X:update` still records an upsert's new row as `update`), else under its `read` touches. A write to an entity counts for every touch on that entity, so none of them also gets a read row at step end, and a nested step's write counts for each enclosing step that declares the same touch. **Behavior change:** a step whose touches include the write's verb no longer records the write under its other touches on that entity.
6
+
7
+ ## 0.207.0
8
+
9
+ - **Fixed: queue ops threw on a fitting's tenant-scoped handle** (#786). `enqueue`, `enqueueAndWait`, `cancel`, `retryNow`, `flowOf`, `waitFor`, `requeueDeadLetter` and `totals` now run on the handle a fitting gets from `.use('app')` or `pipe()` under a tenant, on the caller's transaction, confined to that tenant's jobs (`flow_tenant`): another tenant's job behaves as a missing one, and enqueuing for another tenant throws. The worker and schedule ops (`claim`, `heartbeat`, `complete`, `fail`, `failAttempt`, `later`, `handBack`, `reap`, `schedule`, `syncSchedules`, `fireSchedule`, `runDueSchedules`, `unschedule`, `listSchedules`, `startScheduler`) act across tenants and now refuse a scoped handle up front, naming the unscoped handle to pass. The same holds across APIs that take a `DB`: `pipe.advisoryLock`, `pipe.tryAdvisoryLock` and `pipe.withTimeouts` run on a scoped handle; `pipe.bulkSet`, webhook `send` / `registerEndpoint` / `listEndpoints` / `removeEndpoint`, idempotency `find` / `lock` / `complete` / `remove`, `mail.send` and step graphs run confined to its tenant; webhook `deliver` / `processPending`, idempotency `cleanup`, `mail.sentTo`, `sessions`, `emailLinks`, `multiOrg` and pipelines refuse it with that error instead of the generic `execute()` one. `.execute()` on a scoped handle still throws, and unscoped handles behave as before.
10
+
3
11
  ## 0.206.0
4
12
 
5
13
  - **Fixed: `insert(T).values(list)` on a DB handle or its `tx` failed past Postgres's parameter limit** (#783, #784). A handle from `tap()`, `pool.getOrCreate().drizzle` or the test fixture, and the `tx` of its `.transaction(...)` (nested too), now splits a list over the limit into several statements the way `pipe.insert` does, with `onConflictDoNothing`, `onConflictDoUpdate` and `returning` applied to each. They run on that handle, so they commit and roll back with the caller's transaction (a savepoint when it is already one). A list under the limit is drizzle's own builder, unchanged. `toSQL()`, `prepare()` and `$dynamic()` of an over-limit list throw. `pipe.insert` inside a `db.transaction` callback still does not join that `tx`; use the `tx`'s own `insert`.
@@ -27,9 +27,9 @@ export declare class JobListener {
27
27
  start(client: ListenClient): Promise<void>;
28
28
  stop(): Promise<void>;
29
29
  get isListening(): boolean;
30
- waitFor(db: DB, jobId: string, opts: WaitOptions): Promise<WaitResult>;
30
+ waitFor(db: DB, jobId: string, opts: WaitOptions, tenant?: string | null): Promise<WaitResult>;
31
31
  private dispatch;
32
- pollJob(db: DB, jobId: string): Promise<WaitResult | null>;
32
+ pollJob(db: DB, jobId: string, tenant?: string | null): Promise<WaitResult | null>;
33
33
  private pollUntil;
34
34
  }
35
35
  //# sourceMappingURL=listener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"listener.d.ts","sourceRoot":"","sources":["../../../src/async/jobs/listener.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG3C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,SAAS,CAAA;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,sEAAsE;IACtE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAA;CACtC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;CAC9E;AAQD,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,SAAS,CAAQ;gBAEb,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAKrC,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B,IAAI,WAAW,IAAI,OAAO,CAEzB;IAEK,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA0B5E,OAAO,CAAC,QAAQ;IAWV,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;YAiBlD,SAAS;CAUxB"}
1
+ {"version":3,"file":"listener.d.ts","sourceRoot":"","sources":["../../../src/async/jobs/listener.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG3C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,SAAS,CAAA;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,sEAAsE;IACtE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAA;CACtC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;CAC9E;AASD,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,SAAS,CAAQ;gBAEb,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAKrC,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B,IAAI,WAAW,IAAI,OAAO,CAEzB;IAEK,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IA0B1G,OAAO,CAAC,QAAQ;IAWV,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;YAiBhF,SAAS;CAUxB"}
@@ -33,21 +33,21 @@ export class JobListener {
33
33
  get isListening() {
34
34
  return this.listening;
35
35
  }
36
- async waitFor(db, jobId, opts) {
36
+ async waitFor(db, jobId, opts, tenant = null) {
37
37
  if (!this.listening) {
38
- const existing = await this.pollJob(db, jobId);
38
+ const existing = await this.pollJob(db, jobId, tenant);
39
39
  if (existing !== null)
40
40
  return existing;
41
- return this.pollUntil(db, jobId, opts.timeoutMs);
41
+ return this.pollUntil(db, jobId, opts.timeoutMs, tenant);
42
42
  }
43
43
  return new Promise((resolve) => {
44
44
  const timer = setTimeout(() => {
45
45
  this.waiters.delete(jobId);
46
46
  resolve({ jobId, status: 'timeout' });
47
47
  }, opts.timeoutMs);
48
- const waiter = { resolve, timer, db };
48
+ const waiter = { resolve, timer, db, tenant };
49
49
  this.waiters.set(jobId, waiter);
50
- void this.pollJob(db, jobId).then((result) => {
50
+ void this.pollJob(db, jobId, tenant).then((result) => {
51
51
  if (result !== null && this.waiters.has(jobId)) {
52
52
  this.waiters.delete(jobId);
53
53
  clearTimeout(timer);
@@ -62,12 +62,12 @@ export class JobListener {
62
62
  return;
63
63
  this.waiters.delete(jobId);
64
64
  clearTimeout(waiter.timer);
65
- void this.pollJob(waiter.db, jobId).then((result) => {
65
+ void this.pollJob(waiter.db, jobId, waiter.tenant).then((result) => {
66
66
  waiter.resolve(result ?? { jobId, status: 'completed' });
67
67
  });
68
68
  }
69
- async pollJob(db, jobId) {
70
- const rows = await db.execute(sql `SELECT status, output, error_payload, claims FROM ${sql.raw(this.tableQ)} WHERE id = ${jobId}::uuid`);
69
+ async pollJob(db, jobId, tenant = null) {
70
+ const rows = await db.execute(sql `SELECT status, output, error_payload, claims FROM ${sql.raw(this.tableQ)} WHERE id = ${jobId}::uuid${tenant === null ? sql `` : sql ` AND flow_tenant = ${tenant}::text`}`);
71
71
  if (rows.length === 0)
72
72
  return null;
73
73
  const row = rows[0];
@@ -82,11 +82,11 @@ export class JobListener {
82
82
  claims: parseClaims(row['claims']),
83
83
  };
84
84
  }
85
- async pollUntil(db, jobId, timeoutMs) {
85
+ async pollUntil(db, jobId, timeoutMs, tenant) {
86
86
  const deadline = Date.now() + timeoutMs;
87
87
  const interval = 500;
88
88
  while (Date.now() < deadline) {
89
- const result = await this.pollJob(db, jobId);
89
+ const result = await this.pollJob(db, jobId, tenant);
90
90
  if (result !== null)
91
91
  return result;
92
92
  await new Promise(r => setTimeout(r, Math.min(interval, deadline - Date.now())));
@@ -1 +1 @@
1
- {"version":3,"file":"listener.js","sourceRoot":"","sources":["../../../src/async/jobs/listener.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listener.js","sourceRoot":"","sources":["../../../src/async/jobs/listener.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/async/jobs/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/async/jobs/queue.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import { openClaim, closeClaim, parseClaims } from './claims.js';
9
9
  import { serializeError } from './serialize-error.js';
10
10
  import { queueDefinition, registerProgressColumn } from './table.js';
11
11
  import { queueDoorName } from './queue-door.js';
12
+ import { unscopedExecutor, requireUnscopedExecutor } from '../../auth/tenant/scoped-db.js';
12
13
  import { getContext } from '../../request/context/store.js';
13
14
  import { resolveActorId } from '../../data/write/audit/actor.js';
14
15
  import { getBaseLogger } from '../../core/logging/index.js';
@@ -71,13 +72,33 @@ export function createQueue(config = {}) {
71
72
  actor: opts.actor !== undefined ? opts.actor : opts.carryActor === true ? resolveActorId(flow) : null,
72
73
  };
73
74
  }
74
- async function enqueue(db, opts) {
75
+ /** `AND flow_tenant = T` for a tenant-scoped caller, nothing otherwise. */
76
+ function tenantAnd(tenant) {
77
+ return tenant === null ? sql `` : sql ` AND flow_tenant = ${tenant}::text`;
78
+ }
79
+ /** Worker and cross-tenant ops refuse a tenant-scoped handle up front and run on the handle they were given. */
80
+ function crossTenant(db, op) {
81
+ return requireUnscopedExecutor(db, `queue ${op}()`, `${op} acts across tenants on queue "${table}"`);
82
+ }
83
+ function foreignTenant(op, scoped, named, what) {
84
+ throw new Error(`[pipework] ${op}() on queue "${table}" was given a handle scoped to tenant "${scoped}" but ${what} "${named}".\n\n` +
85
+ ' A tenant-scoped connection enqueues only its own tenant\'s jobs. Enqueue for another tenant\n' +
86
+ ' from an unscoped handle (pipe.system(), or pool.getOrCreate(...).drizzle).\n');
87
+ }
88
+ async function enqueue(handle, opts) {
89
+ const { db, tenant: scopedTenant } = unscopedExecutor(handle);
75
90
  const priority = opts.priority ?? 0;
76
91
  const payload = JSON.stringify(opts.payload);
77
92
  const attempts = opts.maxAttempts ?? maxAttempts;
78
93
  const columns = ['job_type', 'priority', 'payload', 'max_attempts'];
79
94
  const values = [sql `${opts.type}`, sql `${priority}`, sql `${payload}::jsonb`, sql `${attempts}`];
80
- const flow = enqueuingFlow(opts);
95
+ const flow = { ...enqueuingFlow(opts) };
96
+ if (scopedTenant !== null) {
97
+ if (flow.tenant !== null && flow.tenant !== scopedTenant) {
98
+ foreignTenant('enqueue', scopedTenant, flow.tenant, opts.tenant !== undefined ? 'opts.tenant names' : 'the flow carries tenant');
99
+ }
100
+ flow.tenant = scopedTenant;
101
+ }
81
102
  columns.push('flow_trace_id', 'flow_root_id', 'flow_step_id', 'flow_tenant', 'flow_actor');
82
103
  values.push(sql `${flow.traceId}::uuid`, sql `${flow.rootId}::uuid`, sql `${flow.stepId}::uuid`, sql `${flow.tenant}::text`, sql `${flow.actor}::text`);
83
104
  if (exclusion === undefined) {
@@ -106,6 +127,9 @@ export function createQueue(config = {}) {
106
127
  throw new Error(`[pipework] enqueue() requires exclusion.tenant — queue "${table}" scopes exclusion by "${exclusion.tenantColumn}".\n\n` +
107
128
  ' Every job needs a tenant: enqueue(db, { ..., exclusion: { tenant: <id> } }).\n');
108
129
  }
130
+ if (scopedTenant !== null && given.tenant !== scopedTenant) {
131
+ foreignTenant('enqueue', scopedTenant, String(given.tenant), 'exclusion.tenant names');
132
+ }
109
133
  columns.push(quoteIdentifier(exclusion.tenantColumn, 'exclusion column'));
110
134
  values.push(sql `${given.tenant}::uuid`);
111
135
  }
@@ -196,7 +220,8 @@ export function createQueue(config = {}) {
196
220
  function conflictDelay(attempt) {
197
221
  return Math.random() * Math.min(1000, 50 * 2 ** attempt);
198
222
  }
199
- async function claim(db, workerId, signal, types, release) {
223
+ async function claim(handle, workerId, signal, types, release) {
224
+ const db = crossTenant(handle, 'claim');
200
225
  const query = buildClaimQuery(workerId, types, release);
201
226
  // Serialization failures (40001) carry Postgres's safe-retry guarantee:
202
227
  // the conflicting transaction committed, so every abort means another
@@ -234,11 +259,13 @@ export function createQueue(config = {}) {
234
259
  ? sql ``
235
260
  : sql ` AND claim_token = ${claimToken}::uuid AND status IN ('claimed', 'running')`;
236
261
  }
237
- async function heartbeat(db, jobId, claimToken) {
262
+ async function heartbeat(handle, jobId, claimToken) {
263
+ const db = crossTenant(handle, 'heartbeat');
238
264
  const rows = await db.execute(sql `UPDATE ${sql.raw(tableQ)} SET heartbeat_at = now() WHERE id = ${jobId}::uuid${claimScope(claimToken)} RETURNING id`);
239
265
  return rows.length > 0;
240
266
  }
241
- async function complete(db, jobId, output, claimToken) {
267
+ async function complete(handle, jobId, output, claimToken) {
268
+ const db = crossTenant(handle, 'complete');
242
269
  const outputJson = output !== undefined ? JSON.stringify(output) : null;
243
270
  const rows = await db.execute(sql `UPDATE ${sql.raw(tableQ)} SET ${closeClaim('completed', progressQ)}, status = 'completed', completed_at = now(), claim_token = NULL, output = ${outputJson !== null ? sql `${outputJson}::jsonb` : sql `NULL`}
244
271
  WHERE id = ${jobId}::uuid${claimScope(claimToken)} RETURNING id`);
@@ -304,9 +331,11 @@ export function createQueue(config = {}) {
304
331
  return 'dead_letter';
305
332
  }
306
333
  async function fail(db, jobId, error, claimToken, opts) {
334
+ crossTenant(db, 'fail');
307
335
  return (await failAttempt(db, jobId, error, claimToken, opts)) !== null;
308
336
  }
309
- async function failAttempt(db, jobId, error, claimToken, opts) {
337
+ async function failAttempt(handle, jobId, error, claimToken, opts) {
338
+ const db = crossTenant(handle, 'failAttempt');
310
339
  const errorJson = JSON.stringify(serializeError(error));
311
340
  return db.transaction(async (tx) => {
312
341
  const jobRows = await tx.execute(sql `SELECT job_type, payload, flow_tenant, attempt_count, max_attempts, flow_trace_id::text, flow_root_id::text,
@@ -329,7 +358,8 @@ export function createQueue(config = {}) {
329
358
  return { outcome, error: JSON.parse(errorJson) };
330
359
  });
331
360
  }
332
- async function handBack(db, jobId, claimToken) {
361
+ async function handBack(handle, jobId, claimToken) {
362
+ const db = crossTenant(handle, 'handBack');
333
363
  const rows = await db.execute(sql `UPDATE ${sql.raw(tableQ)} SET
334
364
  ${closeClaim('shutdown-returned', progressQ)},
335
365
  status = 'pending',
@@ -343,7 +373,8 @@ export function createQueue(config = {}) {
343
373
  RETURNING id`);
344
374
  return rows.length > 0;
345
375
  }
346
- async function later(db, jobId, error, claimToken) {
376
+ async function later(handle, jobId, error, claimToken) {
377
+ const db = crossTenant(handle, 'later');
347
378
  return db.transaction(async (tx) => {
348
379
  const found = await tx.execute(sql `SELECT attempt_count FROM ${sql.raw(tableQ)} WHERE id = ${jobId}::uuid${claimScope(claimToken)} FOR UPDATE`);
349
380
  const row = found[0];
@@ -365,28 +396,32 @@ export function createQueue(config = {}) {
365
396
  return true;
366
397
  });
367
398
  }
368
- async function cancel(db, jobId) {
399
+ async function cancel(handle, jobId) {
400
+ const { db, tenant } = unscopedExecutor(handle);
369
401
  await db.execute(sql `UPDATE ${sql.raw(tableQ)} SET ${closeClaim('cancelled', progressQ)}, status = 'cancelled', completed_at = now(), claim_token = NULL
370
- WHERE id = ${jobId}::uuid AND status IN ('pending', 'claimed')`);
402
+ WHERE id = ${jobId}::uuid AND status IN ('pending', 'claimed')${tenantAnd(tenant)}`);
371
403
  }
372
- async function retryNow(db, jobId) {
404
+ async function retryNow(handle, jobId) {
405
+ const { db, tenant } = unscopedExecutor(handle);
373
406
  const rows = await db.execute(sql `UPDATE ${sql.raw(tableQ)} SET next_retry_at = now()
374
- WHERE status = 'pending' AND next_retry_at > now()${jobId === undefined ? sql `` : sql ` AND id = ${jobId}::uuid`}
407
+ WHERE status = 'pending' AND next_retry_at > now()${jobId === undefined ? sql `` : sql ` AND id = ${jobId}::uuid`}${tenantAnd(tenant)}
375
408
  RETURNING id`);
376
409
  return rows.length;
377
410
  }
378
- async function flowOfJob(db, jobId) {
411
+ async function flowOfJob(handle, jobId) {
412
+ const { db, tenant } = unscopedExecutor(handle);
379
413
  const rows = await db.execute(sql `SELECT flow_trace_id::text, flow_root_id::text, flow_step_id::text, flow_tenant, flow_actor
380
- FROM ${sql.raw(tableQ)} WHERE id = ${jobId}::uuid`);
414
+ FROM ${sql.raw(tableQ)} WHERE id = ${jobId}::uuid${tenantAnd(tenant)}`);
381
415
  return rows.length === 0 ? null : flowOf(rows[0]);
382
416
  }
383
- async function totals(db) {
417
+ async function totals(handle) {
418
+ const { db, tenant } = unscopedExecutor(handle);
384
419
  const rows = await db.execute(sql `SELECT job_type,
385
420
  (count(*) FILTER (WHERE status = 'pending' AND (next_retry_at IS NULL OR next_retry_at <= clock_timestamp())))::int AS ready,
386
421
  (count(*) FILTER (WHERE status IN ('claimed', 'running')))::int AS running,
387
422
  (extract(epoch FROM clock_timestamp() - min(queued_at) FILTER (WHERE status = 'pending' AND (next_retry_at IS NULL OR next_retry_at <= clock_timestamp()))) * 1000)::bigint AS oldest_ms
388
423
  FROM ${sql.raw(tableQ)}
389
- WHERE status IN ('pending', 'claimed', 'running')
424
+ WHERE status IN ('pending', 'claimed', 'running')${tenantAnd(tenant)}
390
425
  GROUP BY GROUPING SETS ((job_type), ())`);
391
426
  let overall = { ready: 0, running: 0, oldestReadyWaitMs: null };
392
427
  const byType = {};
@@ -403,7 +438,8 @@ export function createQueue(config = {}) {
403
438
  }
404
439
  return { overall, byType };
405
440
  }
406
- async function reap(db) {
441
+ async function reap(handle) {
442
+ const db = crossTenant(handle, 'reap');
407
443
  const staleInterval = `${Math.floor(staleTimeoutMs / 1000)} seconds`;
408
444
  return db.transaction(async (tx) => {
409
445
  const stale = await tx.execute(sql `SELECT id::text, job_type, payload, attempt_count, max_attempts, worker_id, flow_trace_id::text, flow_root_id::text,
@@ -443,12 +479,13 @@ export function createQueue(config = {}) {
443
479
  return reaped;
444
480
  });
445
481
  }
446
- async function requeueDeadLetter(db, jobId) {
482
+ async function requeueDeadLetter(handle, jobId) {
483
+ const { db, tenant } = unscopedExecutor(handle);
447
484
  const rows = await db.execute(sql `UPDATE ${sql.raw(tableQ)} SET
448
485
  status = 'pending', attempt_count = 0, max_attempts = ${maxAttempts},
449
486
  completed_at = NULL, next_retry_at = NULL, claimed_at = NULL,
450
487
  heartbeat_at = NULL, worker_id = NULL, claim_token = NULL
451
- WHERE id = ${jobId}::uuid AND status = 'dead_letter'
488
+ WHERE id = ${jobId}::uuid AND status = 'dead_letter'${tenantAnd(tenant)}
452
489
  RETURNING id`);
453
490
  if (rows.length === 0) {
454
491
  throw new Error(`[pipework] Cannot requeue job "${jobId}" — job not found or not in dead_letter status.`);
@@ -460,12 +497,13 @@ export function createQueue(config = {}) {
460
497
  async function stopListener() {
461
498
  await listener.stop();
462
499
  }
463
- async function waitFor(db, jobId, opts) {
464
- return listener.waitFor(db, jobId, opts);
500
+ async function waitFor(handle, jobId, opts) {
501
+ const { db, tenant } = unscopedExecutor(handle);
502
+ return listener.waitFor(db, jobId, opts, tenant);
465
503
  }
466
504
  async function enqueueAndWait(db, opts, waitOpts) {
467
505
  const jobId = await enqueue(db, opts);
468
- return listener.waitFor(db, jobId, waitOpts);
506
+ return waitFor(db, jobId, waitOpts);
469
507
  }
470
508
  const sched = createScheduler({ enqueue }, tableQ);
471
509
  return {
@@ -477,13 +515,13 @@ export function createQueue(config = {}) {
477
515
  },
478
516
  enqueue, claim, heartbeat, complete, fail, failAttempt, later, handBack, cancel, retryNow, flowOf: flowOfJob, totals, reap, requeueDeadLetter,
479
517
  startListener, stopListener, waitFor, enqueueAndWait,
480
- schedule: (db, spec) => sched.schedule(db, spec),
481
- syncSchedules: (db, declared, owned) => sched.sync(db, declared, owned),
482
- fireSchedule: (db, name) => sched.fire(db, name),
483
- runDueSchedules: (db, names) => sched.tick(db, names),
484
- unschedule: (db, name) => sched.unschedule(db, name),
485
- listSchedules: (db) => sched.listSchedules(db),
486
- startScheduler: (db, opts) => sched.start(db, opts),
518
+ schedule: (db, spec) => sched.schedule(crossTenant(db, 'schedule'), spec),
519
+ syncSchedules: (db, declared, owned) => sched.sync(crossTenant(db, 'syncSchedules'), declared, owned),
520
+ fireSchedule: (db, name) => sched.fire(crossTenant(db, 'fireSchedule'), name),
521
+ runDueSchedules: (db, names) => sched.tick(crossTenant(db, 'runDueSchedules'), names),
522
+ unschedule: (db, name) => sched.unschedule(crossTenant(db, 'unschedule'), name),
523
+ listSchedules: (db) => sched.listSchedules(crossTenant(db, 'listSchedules')),
524
+ startScheduler: (db, opts) => sched.start(crossTenant(db, 'startScheduler'), opts),
487
525
  stopScheduler: () => sched.stop(),
488
526
  };
489
527
  }
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/async/jobs/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAE1C,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACrF,OAAO,EAAE,YAAY,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAA;AAEzF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAGvE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AA4MxE,2HAA2H;AAC3H,SAAS,cAAc,CAAC,MAAyB;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IACrF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;AACjC,CAAC;AAaD,SAAS,MAAM,CAAC,GAA4B;IAC1C,OAAO;QACL,OAAO,EAAG,GAAG,CAAC,eAAe,CAAmB,IAAI,IAAI;QACxD,MAAM,EAAG,GAAG,CAAC,cAAc,CAAmB,IAAI,IAAI;QACtD,MAAM,EAAG,GAAG,CAAC,cAAc,CAAmB,IAAI,IAAI;QACtD,MAAM,EAAG,GAAG,CAAC,aAAa,CAAmB,IAAI,IAAI;QACrD,KAAK,EAAG,GAAG,CAAC,YAAY,CAAmB,IAAI,IAAI;KACpD,CAAA;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,SAAsB,EAAE;IAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,eAAe,CAAA;IAC7C,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,OAAO,CAAA;IACvD,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,IAAI,uBAAuB,CAAA;IAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAA;IAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAE9B,qBAAqB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;IAC3C,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;IAChD,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS;QAAE,qBAAqB,CAAC,MAAM,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAA;IAC9G,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAA;IAC9H,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,CAAA;IAEpD,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;IACpD,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAEjD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAkD,CAAA;IAErF,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACpD,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAEpD,sGAAsG;IACtG,SAAS,aAAa,CAAC,IAAoB;QACzC,MAAM,IAAI,GAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;QAClG,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK;YAAE,OAAO,IAAI,CAAA;QAC5C,MAAM,IAAI,GAAG,UAAU,EAAE,CAAA;QACzB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;YAClC,OAAO;gBACL,GAAG,IAAI;gBACP,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,IAAI;gBAC3B,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI;gBAC9B,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI;gBAC9B,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;aAC1B,CAAA;QACH,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACrF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;QAC7D,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,CAAC;YAC/E,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC;YACtF,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC;YACjG,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;YAC7D,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;SACtG,CAAA;IACH,CAAC;IAED,KAAK,UAAU,OAAO,CAAC,EAAM,EAAE,IAAoB;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAA;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,CAAA;QAEhD,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,CAAC,CAAA;QACnE,MAAM,MAAM,GAAU,CAAC,GAAG,CAAA,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,CAAA,GAAG,QAAQ,EAAE,EAAE,GAAG,CAAA,GAAG,OAAO,SAAS,EAAE,GAAG,CAAA,GAAG,QAAQ,EAAE,CAAC,CAAA;QAErG,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;QAChC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,CAAC,CAAA;QAC1F,MAAM,CAAC,IAAI,CACT,GAAG,CAAA,GAAG,IAAI,CAAC,OAAO,QAAQ,EAAE,GAAG,CAAA,GAAG,IAAI,CAAC,MAAM,QAAQ,EAAE,GAAG,CAAA,GAAG,IAAI,CAAC,MAAM,QAAQ,EAChF,GAAG,CAAA,GAAG,IAAI,CAAC,MAAM,QAAQ,EAAE,GAAG,CAAA,GAAG,IAAI,CAAC,KAAK,QAAQ,CACpD,CAAA;QAED,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,8DAA8D,KAAK,gCAAgC;oBACnG,2EAA2E;oBAC3E,qHAAqH,CACtH,CAAA;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAA;YAClC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,SAAS,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC7F,MAAM,IAAI,KAAK,CACb,6DAA6D,KAAK,kCAAkC;oBACpG,uEAAuE,CACxE,CAAA;YACH,CAAC;YACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAC7E,MAAM,IAAI,KAAK,CACb,iEAAiE,KAAK,sCAAsC;oBAC5G,2EAA2E,CAC5E,CAAA;YACH,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CACb,8DAA8D,KAAK,mCAAmC;oBACtG,wEAAwE,CACzE,CAAA;YACH,CAAC;YACD,IAAI,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACzC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC/B,MAAM,IAAI,KAAK,CACb,2DAA2D,KAAK,0BAA0B,SAAS,CAAC,YAAY,QAAQ;wBACxH,kFAAkF,CACnF,CAAA;gBACH,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC,CAAA;gBACzE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAA,GAAG,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAA;YACzC,CAAC;YACD,IAAI,SAAS,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC7F,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAA;gBACxE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAA,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;YAC5F,CAAC;YACD,IAAI,SAAS,CAAC,eAAe,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC7E,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAA;gBAC5E,MAAM,CAAC,IAAI,CAAC,GAAG,CAAA,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA,eAAe,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBAC9C,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAA,IAAI,CAAC;kCAChB,CAC7B,CAAA;QACD,OAAO,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,CAAW,CAAA;IACjC,CAAC;IAED,SAAS,eAAe,CAAC,QAAgB,EAAE,KAAyB,EAAE,OAAuB;QAC3F,MAAM,UAAU,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAA,iCAAiC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAA,EAAE,CAAA;QACrH,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW;YAC1C,CAAC,CAAC,SAAS,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG;YAC7C,CAAC,CAAC,EAAE,CAAA;QACN,MAAM,eAAe,GAAG,SAAS,KAAK,SAAS;YAC7C,CAAC,CAAC,QAAQ,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;YACnD,CAAC,CAAC,EAAE,CAAA;QACN,MAAM,kBAAkB,GAAG,SAAS,KAAK,SAAS;YAChD,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,eAAe,CAAC;iBACzE,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;iBAC3C,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,eAAe,CAAC,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC;iBACvD,IAAI,CAAC,EAAE,CAAC;YACX,CAAC,CAAC,EAAE,CAAA;QAEN,OAAO,GAAG,CAAA;eACC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;UACpB,SAAS,CAAC,QAAQ,EAAE,OAAO,IAAI,IAAI,CAAC;;;;sBAIxB,QAAQ;2BACH,OAAO,IAAI,IAAI;;;mCAGP,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;sHACoE,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,UAAU;;;;;yXAKiM,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAA;IACpZ,CAAC;IAED,SAAS,UAAU,CAAC,GAA4B;QAC9C,MAAM,MAAM,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAA;QACrC,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,aAAa,IAAI,MAAM,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QACtF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAG,GAAG,CAAC,oBAAoB,CAA+B,IAAI,IAAI,EAAE,CAAA;IAC/F,CAAC;IAED,SAAS,aAAa,CAAC,GAA4B;QACjD,MAAM,IAAI,GAAG;YACX,EAAE,EAAE,GAAG,CAAC,IAAI,CAAW;YACvB,IAAI,EAAE,GAAG,CAAC,UAAU,CAAW;YAC/B,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAW;YACnC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC;YACvB,UAAU,EAAE,GAAG,CAAC,aAAa,CAAW;YACxC,UAAU,EAAE,GAAG,CAAC,aAAa,CAAW;YACxC,OAAO,EAAG,GAAG,CAAC,eAAe,CAAY,GAAG,CAAC;YAC7C,WAAW,EAAE,GAAG,CAAC,cAAc,CAAW;YAC1C,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC;YACzB,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACzC,IAAI,EAAE;gBACJ,OAAO,EAAG,GAAG,CAAC,eAAe,CAA+B,IAAI,IAAI;gBACpE,MAAM,EAAG,GAAG,CAAC,cAAc,CAA+B,IAAI,IAAI;gBAClE,MAAM,EAAG,GAAG,CAAC,cAAc,CAA+B,IAAI,IAAI;gBAClE,MAAM,EAAG,GAAG,CAAC,aAAa,CAA+B,IAAI,IAAI;gBACjE,KAAK,EAAG,GAAG,CAAC,YAAY,CAA+B,IAAI,IAAI;aAChE;SACF,CAAA;QACD,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QACxC,OAAO;YACL,GAAG,IAAI;YACP,SAAS,EAAE;gBACT,KAAK,EAAE,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAE,GAAG,CAAC,SAAS,CAAC,WAAW,CAAqB,CAAC,CAAC,CAAC,IAAI;gBACnG,SAAS,EAAE,SAAS,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAE,GAAG,CAAC,SAAS,CAAC,eAAe,CAAa,CAAC,CAAC,CAAC,KAAK;gBACxG,MAAM,EAAE,SAAS,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAE,GAAG,CAAC,SAAS,CAAC,YAAY,CAAY,CAAC,CAAC,CAAC,IAAI;aAC9F;SACF,CAAA;IACH,CAAC;IAED,wHAAwH;IACxH,SAAS,aAAa,CAAC,OAAe;QACpC,OAAO,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,UAAU,KAAK,CAAC,EAAM,EAAE,QAAgB,EAAE,MAAoB,EAAE,KAAyB,EAAE,OAAuB;QACrH,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QAEvD,wEAAwE;QACxE,sEAAsE;QACtE,oEAAoE;QACpE,uEAAuE;QACvE,uEAAuE;QACvE,qEAAqE;QACrE,yEAAyE;QACzE,yEAAyE;QACzE,yDAAyD;QACzD,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;YAClC,IAAI,MAAM,EAAE,OAAO,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAA;YACzC,IAAI,CAAC;gBACH,qEAAqE;gBACrE,qEAAqE;gBACrE,iEAAiE;gBACjE,MAAM,IAAI,GAAG,SAAS,KAAK,SAAS;oBAClC,CAAC,CAAC,MAAM,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;oBAC7E,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBAC3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAA;gBAClC,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAA;YAChC,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC;oBAAE,MAAM,GAAG,CAAA;gBAChD,MAAM,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;IACH,CAAC;IAED,6FAA6F;IAC7F,SAAS,UAAU,CAAC,UAA8B;QAChD,OAAO,UAAU,KAAK,SAAS;YAC7B,CAAC,CAAC,GAAG,CAAA,EAAE;YACP,CAAC,CAAC,GAAG,CAAA,sBAAsB,UAAU,6CAA6C,CAAA;IACtF,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,EAAM,EAAE,KAAa,EAAE,UAAmB;QACjE,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,wCAAwC,KAAK,SAAS,UAAU,CAAC,UAAU,CAAC,eAAe,CACxH,CAAA;QACD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,EAAM,EAAE,KAAa,EAAE,MAAgB,EAAE,UAAmB;QAClF,MAAM,UAAU,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACvE,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,8EAA8E,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAA,GAAG,UAAU,SAAS,CAAC,CAAC,CAAC,GAAG,CAAA,MAAM;4BACzL,KAAK,SAAS,UAAU,CAAC,UAAU,CAAC,eAAe,CAC1E,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QACnC,MAAM,EAAE,CAAC,OAAO,CACd,GAAG,CAAA,oBAAoB,OAAO,KAAK,KAAK,GAAG,CAC5C,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,SAAS,cAAc,CAAC,YAAoB;QAC1C,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,CAAA;QACtB,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,OAAO,CAAC,OAAO,CAAA;QACpD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;QACzD,OAAO,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACvF,CAAC;IAED;;;;OAIG;IACH,KAAK,UAAU,iBAAiB,CAC9B,EAAM,EAAE,GAAW,EAAE,SAAiB,EAAE,MAAiC,EAAE,SAAS,GAAG,KAAK;QAE5F,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,GAAG,CAAA;QAChE,MAAM,WAAW,GAAG,YAAY,GAAG,CAAC,CAAA;QAEpC,IAAI,CAAC,SAAS,IAAI,WAAW,GAAG,cAAc,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,cAAc,CAAC,YAAY,CAAC,CAAA;YAC5C,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAA;YAC3D,MAAM,EAAE,CAAC,OAAO,CACd,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;gBACpB,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC;;gCAEb,WAAW;gCACX,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA,WAAW,YAAY,YAAY,CAAC,CAAC,CAAC,GAAG,CAAA,MAAM;gCAChE,SAAS;;;;;yBAKhB,KAAK,QAAQ,CAC/B,CAAA;YACD,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,MAAM,EAAE,CAAC,OAAO,CACd,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;cACpB,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC;;8BAEb,WAAW;;;8BAGX,SAAS;uBAChB,KAAK,QAAQ,CAC/B,CAAA;QACD,MAAM,EAAE,CAAC,OAAO,CACd,GAAG,CAAA,oBAAoB,OAAO,KAAK,KAAK,GAAG,CAC5C,CAAA;QACD,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;oBACvC,MAAM,QAAQ,CAAC,SAAS,EAAE;wBACxB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAY,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI;qBAC7H,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,aAAa,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,6BAA6B,CAAC,CAAA;gBACvF,KAAK,WAAW,CAAC,gBAAgB,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;YACrF,CAAC;QACH,CAAC;QACD,OAAO,aAAa,CAAA;IACtB,CAAC;IAED,KAAK,UAAU,IAAI,CAAC,EAAM,EAAE,KAAa,EAAE,KAAc,EAAE,UAAmB,EAAE,IAA8B;QAC5G,OAAO,CAAC,MAAM,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,KAAK,IAAI,CAAA;IACzE,CAAC;IAED,KAAK,UAAU,WAAW,CACxB,EAAM,EAAE,KAAa,EAAE,KAAc,EAAE,UAAmB,EAAE,IAA8B;QAE1F,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAA;QAEvD,OAAO,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAC9B,GAAG,CAAA;sDAC2C,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,KAAK,SAAS,UAAU,CAAC,UAAU,CAAC,aAAa,CAC9H,CAAA;YACD,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACtB,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,IAAI,UAAU,KAAK,SAAS;oBAAE,OAAO,IAAI,CAAA;gBACzC,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,oBAAoB,CAAC,CAAA;YAC3E,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE;gBAC1C,KAAK;gBACL,IAAI,EAAE,GAAG,CAAC,UAAU,CAAW;gBAC/B,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC;gBACvB,MAAM,EAAG,GAAG,CAAC,aAAa,CAAmB,IAAI,IAAI;gBACrD,YAAY,EAAE,GAAG,CAAC,eAAe,CAAW;gBAC5C,WAAW,EAAE,GAAG,CAAC,cAAc,CAAW;gBAC1C,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;aAClB,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC,CAAA;YACjD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAY,EAAE,CAAA;QAC7D,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,EAAM,EAAE,KAAa,EAAE,UAAkB;QAC/D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;cACpB,UAAU,CAAC,mBAAmB,EAAE,SAAS,CAAC;;;;;;;;uBAQjC,KAAK,SAAS,UAAU,CAAC,UAAU,CAAC;uBACpC,CAClB,CAAA;QACD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,KAAK,UAAU,KAAK,CAAC,EAAM,EAAE,KAAa,EAAE,KAAoB,EAAE,UAAkB;QAClF,OAAO,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAC5B,GAAG,CAAA,6BAA6B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,KAAK,SAAS,UAAU,CAAC,UAAU,CAAC,aAAa,CAChH,CAAA;YACD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YACpB,IAAI,CAAC,GAAG;gBAAE,OAAO,KAAK,CAAA;YACtB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS;gBACzC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC;gBAC5B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,eAAe,CAAW,CAAC,CAAC,CAAA;YAClE,MAAM,EAAE,CAAC,OAAO,CACd,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;gBACpB,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;;8DAEgB,OAAO,GAAG,IAAI;;;;iFAIK,KAAK,CAAC,OAAO;;yBAErE,KAAK,QAAQ,CAC/B,CAAA;YACD,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,EAAM,EAAE,KAAa;QACzC,MAAM,EAAE,CAAC,OAAO,CACd,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC;4BAChD,KAAK,6CAA6C,CACzE,CAAA;IACH,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,EAAM,EAAE,KAAc;QAC5C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;+DAC6B,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAA,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA,aAAa,KAAK,QAAQ;wBAClG,CACnB,CAAA;QACD,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,EAAM,EAAE,KAAa;QAC5C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA;mBACU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,KAAK,QAAQ,CACzD,CAAA;QACD,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAA4B,CAAC,CAAA;IAC9E,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,EAAM;QAC1B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA;;;;mBAIU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;;mDAEiB,CAC9C,CAAA;QACD,IAAI,OAAO,GAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAA;QAChF,MAAM,MAAM,GAAoC,EAAE,CAAA;QAClD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,CAAC,GAAoB;gBACzB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACzB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC7B,iBAAiB,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;aAC3E,CAAA;YACD,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI;gBAAE,OAAO,GAAG,CAAC,CAAA;iBAClC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC;gBAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAC1E,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;IAC5B,CAAC;IAED,KAAK,UAAU,IAAI,CAAC,EAAM;QACxB,MAAM,aAAa,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAA;QACpE,OAAO,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAC5B,GAAG,CAAA;;qBAEU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;;4CAEQ,aAAa;oCACrB,CAC7B,CAAA;YACD,MAAM,MAAM,GAAgB,EAAE,CAAA;YAC9B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAW,CAAA;gBAC9B,MAAM,YAAY,GAAG,GAAG,CAAC,eAAe,CAAW,CAAA;gBACnD,MAAM,cAAc,GAAG,GAAG,CAAC,cAAc,CAAW,CAAA;gBACpD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC/B,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,gCAAgC;oBACzC,QAAQ,EAAG,GAAG,CAAC,WAAW,CAAmB,IAAI,IAAI;iBACtD,CAAC,CAAA;gBACF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE;oBAC1C,KAAK,EAAE,EAAE;oBACT,IAAI,EAAE,GAAG,CAAC,UAAU,CAAW;oBAC/B,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC;oBACvB,MAAM,EAAG,GAAG,CAAC,aAAa,CAAmB,IAAI,IAAI;oBACrD,YAAY;oBACZ,WAAW,EAAE,cAAc;oBAC3B,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;iBAClB,EAAE,SAAS,EAAE,cAAc,CAAC,CAAA;gBAC7B,MAAM,CAAC,IAAI,CAAC;oBACV,KAAK,EAAE,EAAE;oBACT,IAAI,EAAE,GAAG,CAAC,UAAU,CAAW;oBAC/B,OAAO,EAAE,YAAY,GAAG,CAAC;oBACzB,OAAO;oBACP,WAAW,EAAE,cAAc;oBAC3B,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;iBAClB,CAAC,CAAA;YACJ,CAAC;YACD,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,UAAU,iBAAiB,CAAC,EAAM,EAAE,KAAa;QACpD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;kEACgC,WAAW;;;qBAGxD,KAAK;qBACL,CAChB,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,iDAAiD,CAAC,CAAA;QAC3G,CAAC;IACH,CAAC;IAED,KAAK,UAAU,aAAa,CAAC,MAAoB;QAC/C,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC9B,CAAC;IAED,KAAK,UAAU,YAAY;QACzB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IACvB,CAAC;IAED,KAAK,UAAU,OAAO,CAAC,EAAM,EAAE,KAAa,EAAE,IAAiB;QAC7D,OAAO,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC;IAED,KAAK,UAAU,cAAc,CAAC,EAAM,EAAE,IAAoB,EAAE,QAAqB;QAC/E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QACrC,OAAO,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC9C,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,CAAC,CAAA;IAElD,OAAO;QACL,UAAU;QACV,IAAI,EAAE,SAAS,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QACzE,YAAY,CAAC,QAAQ;YACnB,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACjC,OAAO,GAAG,EAAE,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA,CAAC,CAAC,CAAA;QACvD,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB;QAC7I,aAAa,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc;QACpD,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;QAChD,aAAa,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC;QACvE,YAAY,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;QAChD,eAAe,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC;QACrD,UAAU,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC;QACpD,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9C,cAAc,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC;QACnD,aAAa,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE;KAClC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/async/jobs/queue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../../src/async/pipeline/define.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAuC,MAAM,YAAY,CAAA;AAI/F,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,QAAQ,CA6C/D"}
1
+ {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../../src/async/pipeline/define.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAuC,MAAM,YAAY,CAAA;AAK/F,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,QAAQ,CA6C/D"}
@@ -1,6 +1,7 @@
1
1
  import { sql } from '../../data/db/sql.js';
2
2
  import { executePipeline } from './execute.js';
3
3
  import { resumePipeline } from './resume.js';
4
+ import { refuseScopedHandle } from '../../auth/tenant/scoped-db.js';
4
5
  export function definePipeline(config) {
5
6
  if (config.steps.length === 0) {
6
7
  throw new Error(`[pipework] Pipeline "${config.name}" must have at least one step.`);
@@ -12,7 +13,7 @@ export function definePipeline(config) {
12
13
  }
13
14
  stepNames.add(step.name);
14
15
  }
15
- return {
16
+ return refuseScopedHandle({
16
17
  async execute(db, input, context) {
17
18
  return executePipeline(db, config, input, context);
18
19
  },
@@ -39,6 +40,6 @@ export function definePipeline(config) {
39
40
  };
40
41
  },
41
42
  definition: config,
42
- };
43
+ }, `pipeline "${config.name}"`, 'its step handlers receive the connection it runs on and would bypass the tenant filter');
43
44
  }
44
45
  //# sourceMappingURL=define.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","sourceRoot":"","sources":["../../../src/async/pipeline/define.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,MAAM,UAAU,cAAc,CAAC,MAAsB;IACnD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,IAAI,gCAAgC,CAAC,CAAA;IACtF,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IACnC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,IAAI,8BAA8B,IAAI,CAAC,IAAI,IAAI,CAAC,CAAA;QACjG,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,OAAO;QACL,KAAK,CAAC,OAAO,CAAC,EAAM,EAAE,KAAc,EAAE,OAA+B;YACnE,OAAO,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QACpD,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAM,EAAE,KAAa,EAAE,UAAmB;YACrD,OAAO,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QACtD,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,EAAM,EAAE,KAAa;YACnC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;;qBAGnB,KAAK;OACnB,CAAC,CAAA;YAEF,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAA;YAElC,OAAO;gBACL,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrB,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC1C,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAA0B;gBACtD,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBACxC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC;gBACnB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC9C,WAAW,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;gBACxF,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI;aAC5B,CAAA;QACH,CAAC;QAED,UAAU,EAAE,MAAM;KACnB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"define.js","sourceRoot":"","sources":["../../../src/async/pipeline/define.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAEnE,MAAM,UAAU,cAAc,CAAC,MAAsB;IACnD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,IAAI,gCAAgC,CAAC,CAAA;IACtF,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IACnC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,IAAI,8BAA8B,IAAI,CAAC,IAAI,IAAI,CAAC,CAAA;QACjG,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,OAAO,kBAAkB,CAAC;QACxB,KAAK,CAAC,OAAO,CAAC,EAAM,EAAE,KAAc,EAAE,OAA+B;YACnE,OAAO,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QACpD,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAM,EAAE,KAAa,EAAE,UAAmB;YACrD,OAAO,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QACtD,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,EAAM,EAAE,KAAa;YACnC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;;;qBAGnB,KAAK;OACnB,CAAC,CAAA;YAEF,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAA;YAElC,OAAO;gBACL,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrB,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC1C,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAA0B;gBACtD,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBACxC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC;gBACnB,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC9C,WAAW,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;gBACxF,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI;aAC5B,CAAA;QACH,CAAC;QAED,UAAU,EAAE,MAAM;KACnB,EAAE,aAAa,MAAM,CAAC,IAAI,GAAG,EAAE,wFAAwF,CAAC,CAAA;AAC3H,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/async/steps/graph.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EACiC,WAAW,EACuE,SAAS,EACvI,MAAM,YAAY,CAAA;AAwInB,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAk/B1D"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/async/steps/graph.ts"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EACiC,WAAW,EACuE,SAAS,EACvI,MAAM,YAAY,CAAA;AAwInB,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAs/B1D"}
@@ -10,6 +10,7 @@
10
10
  // take it before touching tasks), so steps finishing together serialize.
11
11
  import { randomUUID } from 'node:crypto';
12
12
  import { sql } from '../../data/db/sql.js';
13
+ import { scopedExecutor } from '../../auth/tenant/scoped-db.js';
13
14
  import { schema } from '../../data/schema/namespace.js';
14
15
  import { fitting } from '../../request/di/index.js';
15
16
  import { resolveActorId } from '../../data/write/audit/actor.js';
@@ -237,6 +238,8 @@ export function defineGraph(config) {
237
238
  }
238
239
  return tenant;
239
240
  }
241
+ /** The tenant of a tenant-scoped handle, which stands in when a call names none. */
242
+ const handleTenant = (db) => scopedExecutor(db, null, graph).tenant ?? undefined;
240
243
  let attached;
241
244
  /** The session variable the tenant policies read: the graph's own, else the active or attached Manifold's, else the default. */
242
245
  function sessionVarOf(instance) {
@@ -258,7 +261,8 @@ export function defineGraph(config) {
258
261
  await tx.execute(sql `SELECT set_config(${sessionVar}, ${before[0]?.['v'] ?? ''}, true)`);
259
262
  return result;
260
263
  }
261
- async function inTenantTx(db, tenant, fn) {
264
+ async function inTenantTx(handle, scope, fn) {
265
+ const { db, tenant } = scopedExecutor(handle, scope, `${graph} step graph`);
262
266
  return db.transaction(async (tx) => asTenant(tx, tenant, () => fn(tx)));
263
267
  }
264
268
  /** The tenant a call acts for: the one given, else the Flow's, else none (an owner connection needs none). */
@@ -644,7 +648,7 @@ export function defineGraph(config) {
644
648
  }
645
649
  async function request(db, opts) {
646
650
  const closure = checkRequest(opts, 'request');
647
- const tenant = tenantOf(opts.tenant, 'request');
651
+ const tenant = tenantOf(opts.tenant ?? handleTenant(db), 'request');
648
652
  const priority = opts.priority ?? config.priority ?? 0;
649
653
  const stepPriority = opts.stepPriority === undefined || Object.keys(opts.stepPriority).length === 0 ? null : opts.stepPriority;
650
654
  const parent = parentTraceRef();
@@ -668,7 +672,7 @@ export function defineGraph(config) {
668
672
  }
669
673
  async function plan(db, opts) {
670
674
  const closure = checkRequest(opts, 'plan');
671
- const tenant = tenantOf(opts.tenant, 'plan');
675
+ const tenant = tenantOf(opts.tenant ?? handleTenant(db), 'plan');
672
676
  const inputs = toJson(opts.inputs ?? {});
673
677
  const hashes = inputHashesOf(inputs);
674
678
  return inTenantTx(db, tenant, async (tx) => {
@@ -794,7 +798,7 @@ export function defineGraph(config) {
794
798
  };
795
799
  }
796
800
  async function ended(db, opts) {
797
- const tenant = scopeOf(opts?.tenant);
801
+ const tenant = scopedExecutor(db, scopeOf(opts?.tenant), `${graph}.ended`).tenant;
798
802
  const limit = opts?.limit ?? 1000;
799
803
  if (!Number.isInteger(limit) || limit < 1)
800
804
  throw new Error(`[pipework] ${graph}.ended: limit must be a positive integer.\n`);
@@ -889,7 +893,7 @@ export function defineGraph(config) {
889
893
  if (config.resultRetentionDays === undefined)
890
894
  return 0;
891
895
  const cutoff = new Date(Date.now() - config.resultRetentionDays * MS_PER_DAY).toISOString();
892
- const tenant = scopeOf(opts?.tenant);
896
+ const tenant = scopedExecutor(db, scopeOf(opts?.tenant), `${graph}.sweep`).tenant;
893
897
  const only = tenant === null ? sql `` : sql ` AND tenant_id = ${tenant}::uuid`;
894
898
  return inTenantTx(db, tenant, async (tx) => {
895
899
  const old = await tx.execute(sql `
@@ -926,7 +930,7 @@ export function defineGraph(config) {
926
930
  return tenant;
927
931
  }
928
932
  async function results(db, item, opts) {
929
- const tenant = itemScope('results', item, opts?.tenant);
933
+ const tenant = itemScope('results', item, opts?.tenant ?? handleTenant(db));
930
934
  return inTenantTx(db, tenant, async (tx) => {
931
935
  const rows = await tx.execute(sql `
932
936
  SELECT id::text, step, version, instance, value, created_at FROM ${sql.raw(RESULT)}
@@ -943,7 +947,7 @@ export function defineGraph(config) {
943
947
  });
944
948
  }
945
949
  async function removeItem(db, item, opts) {
946
- const tenant = itemScope('removeItem', item, opts?.tenant);
950
+ const tenant = itemScope('removeItem', item, opts?.tenant ?? handleTenant(db));
947
951
  return inTenantTx(db, tenant, async (tx) => {
948
952
  const runs = await tx.execute(sql `
949
953
  SELECT id::text, status FROM ${sql.raw(RUN)}