@adonis-agora/durable 0.6.0 → 0.7.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.
- package/CHANGELOG.md +14 -0
- package/dist/providers/durable_provider.d.ts.map +1 -1
- package/dist/providers/durable_provider.js +41 -4
- package/dist/providers/durable_provider.js.map +1 -1
- package/dist/src/dashboard/index.d.ts +1 -1
- package/dist/src/dashboard/index.js +1 -1
- package/dist/src/define_config.d.ts +8 -0
- package/dist/src/define_config.d.ts.map +1 -1
- package/dist/src/define_config.js.map +1 -1
- package/dist/src/engine.d.ts +40 -2
- package/dist/src/engine.d.ts.map +1 -1
- package/dist/src/engine.js +129 -28
- package/dist/src/engine.js.map +1 -1
- package/dist/src/entities.js +2 -2
- package/dist/src/entities.js.map +1 -1
- package/dist/src/hooks/steps.d.ts +43 -0
- package/dist/src/hooks/steps.d.ts.map +1 -0
- package/dist/src/hooks/steps.js +46 -0
- package/dist/src/hooks/steps.js.map +1 -0
- package/dist/src/index.d.ts +5 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +5 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/interfaces.d.ts +116 -42
- package/dist/src/interfaces.d.ts.map +1 -1
- package/dist/src/step-discovery.d.ts +42 -0
- package/dist/src/step-discovery.d.ts.map +1 -0
- package/dist/src/step-discovery.js +127 -0
- package/dist/src/step-discovery.js.map +1 -0
- package/dist/src/step-name-symbol.d.ts +63 -0
- package/dist/src/step-name-symbol.d.ts.map +1 -0
- package/dist/src/step-name-symbol.js +42 -0
- package/dist/src/step-name-symbol.js.map +1 -0
- package/dist/src/step-ref.d.ts +70 -0
- package/dist/src/step-ref.d.ts.map +1 -0
- package/dist/src/step-ref.js +93 -0
- package/dist/src/step-ref.js.map +1 -0
- package/dist/src/tenant-group.d.ts +18 -0
- package/dist/src/tenant-group.d.ts.map +1 -0
- package/dist/src/tenant-group.js +24 -0
- package/dist/src/tenant-group.js.map +1 -0
- package/dist/src/testing-kit/state-store-conformance.js +2 -2
- package/dist/src/testing-kit/state-store-conformance.js.map +1 -1
- package/dist/src/testing-kit/transport-conformance.d.ts.map +1 -1
- package/dist/src/testing-kit/transport-conformance.js +7 -12
- package/dist/src/testing-kit/transport-conformance.js.map +1 -1
- package/dist/src/transports/db-schema.d.ts.map +1 -1
- package/dist/src/transports/db-schema.js +24 -4
- package/dist/src/transports/db-schema.js.map +1 -1
- package/dist/src/transports/db.d.ts +34 -5
- package/dist/src/transports/db.d.ts.map +1 -1
- package/dist/src/transports/db.js +58 -15
- package/dist/src/transports/db.js.map +1 -1
- package/dist/src/transports/queue.d.ts +15 -5
- package/dist/src/transports/queue.d.ts.map +1 -1
- package/dist/src/transports/queue.js +19 -17
- package/dist/src/transports/queue.js.map +1 -1
- package/dist/src/workflow-ctx.d.ts +27 -8
- package/dist/src/workflow-ctx.d.ts.map +1 -1
- package/dist/src/workflow-ctx.js +101 -16
- package/dist/src/workflow-ctx.js.map +1 -1
- package/dist/stubs/database/migrations/create_durable_transport_tables.stub +8 -4
- package/dist/stubs/make/workflow/main.stub +1 -1
- package/package.json +6 -1
- package/dist/src/remote-step-factory.d.ts +0 -15
- package/dist/src/remote-step-factory.d.ts.map +0 -1
- package/dist/src/remote-step-factory.js +0 -12
- package/dist/src/remote-step-factory.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAKzD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAKzD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAsElE,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,EAAE,EAAE,QAAQ,CAAC;IACb;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mFAAmF;IACnF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qFAAqF;IACrF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4GAA4G;IAC5G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0GAA0G;IAC1G,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,WAAY,YAAW,SAAS,EAAE,YAAY;;gBAuB7C,OAAO,EAAE,kBAAkB;IAcvC,yEAAyE;IACzE,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IA6B/B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC/C;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI;IAQ3C,4EAA4E;IACtE,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA+D/C,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI9D,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAyCxD,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxD,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAwFvD;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,kEAAkE;IAC5D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,mFAAmF;IAC7E,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
2
|
import { Pollers } from '../pollers.js';
|
|
3
3
|
import { runStepHandler } from '../protocol.js';
|
|
4
|
+
import { sanitizeQueueToken, tenantGroup } from '../tenant-group.js';
|
|
4
5
|
import { TRANSPORT_TABLES, createDurableTransportTables } from './db-schema.js';
|
|
5
6
|
/**
|
|
6
7
|
* The wire payloads carried in the DB transport's table rows. Everything crossing the DB is plain
|
|
@@ -46,12 +47,26 @@ const DEFAULT_LOG = (err) => console.error('[DbTransport] poll failed', err);
|
|
|
46
47
|
* its group). Call {@link start} to begin the engine-side pollers; `handle()` auto-starts the task
|
|
47
48
|
* loop. The wire payloads are the documented `RemoteTask`/`StepResult` JSON.
|
|
48
49
|
*
|
|
50
|
+
* Partitions by {@link DbTransportOptions.namespace} like the broker transports do: every row is
|
|
51
|
+
* stamped with the instance's namespace and every claim is scoped to it, so several worker-pool
|
|
52
|
+
* partitions can share ONE table set without cross-processing each other's work. `"default"` (and
|
|
53
|
+
* absent) is byte-compatible with the pre-namespace scheme (all rows carry `'default'`).
|
|
54
|
+
*
|
|
49
55
|
* Usually you don't construct this directly: `config/durable.ts` selects it via
|
|
50
56
|
* `transports.db({ ... })` and the provider builds it for you.
|
|
51
57
|
*/
|
|
52
58
|
export class DbTransport {
|
|
53
59
|
#db;
|
|
54
|
-
#
|
|
60
|
+
#partition;
|
|
61
|
+
/** Routing tokens this worker serves — `tenantGroup(sanitizeQueueToken(name), partition)` for each
|
|
62
|
+
* registered handler name; the task loop claims rows whose `grp` is in this set. */
|
|
63
|
+
#servedTokens = new Set();
|
|
64
|
+
// Logical deployment namespace stamped on every write and required on every claim. Mutable so an
|
|
65
|
+
// engine can push its namespace via `useNamespace()` — but only when one wasn't passed explicitly to
|
|
66
|
+
// the constructor (`#explicitNamespace`), which always wins. Resolved to a concrete column value
|
|
67
|
+
// (`'default'` for absent/default) by `#namespaceValue()`.
|
|
68
|
+
#namespace;
|
|
69
|
+
#explicitNamespace;
|
|
55
70
|
#connectionName;
|
|
56
71
|
#pollIntervalMs;
|
|
57
72
|
#leaseMs;
|
|
@@ -64,7 +79,9 @@ export class DbTransport {
|
|
|
64
79
|
#taskLoop;
|
|
65
80
|
constructor(options) {
|
|
66
81
|
this.#db = options.db;
|
|
67
|
-
this.#
|
|
82
|
+
this.#partition = options.partition;
|
|
83
|
+
this.#namespace = options.namespace;
|
|
84
|
+
this.#explicitNamespace = options.namespace !== undefined;
|
|
68
85
|
this.#connectionName = options.connectionName;
|
|
69
86
|
this.#pollIntervalMs = options.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
|
|
70
87
|
this.#leaseMs = options.leaseMs ?? DEFAULT_LEASE_MS;
|
|
@@ -77,6 +94,21 @@ export class DbTransport {
|
|
|
77
94
|
get instanceId() {
|
|
78
95
|
return this.#instanceId;
|
|
79
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Adopt `namespace` (the engine's, typically), scoping every write/claim to it — but ONLY if a
|
|
99
|
+
* namespace wasn't passed explicitly to the constructor (an explicit one always wins). Idempotent.
|
|
100
|
+
* Satisfies the optional `Transport.useNamespace` hook the engine calls when wiring a transport.
|
|
101
|
+
*/
|
|
102
|
+
useNamespace(namespace) {
|
|
103
|
+
if (this.#explicitNamespace)
|
|
104
|
+
return;
|
|
105
|
+
this.#namespace = namespace;
|
|
106
|
+
}
|
|
107
|
+
/** The concrete `namespace` column value this instance stamps/claims: the set namespace, or
|
|
108
|
+
* `'default'` when absent — so the un-namespaced and `"default"` schemes claim the same rows. */
|
|
109
|
+
#namespaceValue() {
|
|
110
|
+
return this.#namespace ?? 'default';
|
|
111
|
+
}
|
|
80
112
|
#client() {
|
|
81
113
|
return this.#connectionName ? this.#db.connection(this.#connectionName) : this.#db.connection();
|
|
82
114
|
}
|
|
@@ -107,6 +139,7 @@ export class DbTransport {
|
|
|
107
139
|
seq: task.seq,
|
|
108
140
|
name: task.name,
|
|
109
141
|
grp: task.group,
|
|
142
|
+
namespace: this.#namespaceValue(),
|
|
110
143
|
input: toJson(task.input),
|
|
111
144
|
traceparent: task.traceparent ?? null,
|
|
112
145
|
context: toJson(task.context),
|
|
@@ -123,17 +156,16 @@ export class DbTransport {
|
|
|
123
156
|
// worker side — register a handler, claim + run tasks, write results
|
|
124
157
|
// ───────────────────────────────────────────────────────────────────────────
|
|
125
158
|
/**
|
|
126
|
-
* Register a step handler (worker side).
|
|
127
|
-
*
|
|
159
|
+
* Register a step handler (worker side). Records this name's routing token
|
|
160
|
+
* (`tenantGroup(sanitizeQueueToken(name), partition)`) as served and starts the shared task poll
|
|
161
|
+
* loop on the first call — it claims task rows for EVERY served token (matching the token the
|
|
162
|
+
* engine dispatches by), runs each through {@link runStepHandler}, and writes the result.
|
|
128
163
|
*/
|
|
129
164
|
handle(name, fn) {
|
|
130
|
-
if (!this.#group) {
|
|
131
|
-
throw new Error('DbTransport needs a `group` option to register handlers');
|
|
132
|
-
}
|
|
133
165
|
this.#handlers.set(name, fn);
|
|
166
|
+
this.#servedTokens.add(tenantGroup(sanitizeQueueToken(name), this.#partition));
|
|
134
167
|
if (!this.#taskLoop) {
|
|
135
|
-
|
|
136
|
-
this.#taskLoop = this.#pollers.start(async () => (await this.#drainTasks(group)) > 0);
|
|
168
|
+
this.#taskLoop = this.#pollers.start(async () => (await this.#drainTasks()) > 0);
|
|
137
169
|
}
|
|
138
170
|
}
|
|
139
171
|
/** Worker side: publish a liveness heartbeat for an in-flight long step. */
|
|
@@ -144,20 +176,23 @@ export class DbTransport {
|
|
|
144
176
|
seq: beat.seq,
|
|
145
177
|
step_id: beat.stepId,
|
|
146
178
|
grp: beat.group,
|
|
179
|
+
namespace: this.#namespaceValue(),
|
|
147
180
|
claimed_by: null,
|
|
148
181
|
claimed_at: null,
|
|
149
182
|
created_at: this.#now(),
|
|
150
183
|
});
|
|
151
184
|
}
|
|
152
|
-
async #drainTasks(
|
|
153
|
-
|
|
185
|
+
async #drainTasks() {
|
|
186
|
+
if (this.#servedTokens.size === 0)
|
|
187
|
+
return 0;
|
|
188
|
+
const rows = await this.#claim(TRANSPORT_TABLES.tasks, [...this.#servedTokens]);
|
|
154
189
|
for (const row of rows) {
|
|
155
190
|
const task = {
|
|
156
191
|
runId: row.run_id,
|
|
157
192
|
seq: Number(row.seq),
|
|
158
193
|
stepId: row.step_id,
|
|
159
194
|
name: row.name,
|
|
160
|
-
group,
|
|
195
|
+
group: row.grp,
|
|
161
196
|
input: fromJson(row.input),
|
|
162
197
|
attempt: Number(row.attempt),
|
|
163
198
|
...(row.traceparent != null ? { traceparent: row.traceparent } : {}),
|
|
@@ -179,6 +214,7 @@ export class DbTransport {
|
|
|
179
214
|
run_id: result.runId,
|
|
180
215
|
seq: result.seq,
|
|
181
216
|
status: result.status,
|
|
217
|
+
namespace: this.#namespaceValue(),
|
|
182
218
|
output: toJson(result.output),
|
|
183
219
|
error: toJson(result.error),
|
|
184
220
|
started_at: result.startedAt ?? null,
|
|
@@ -240,6 +276,7 @@ export class DbTransport {
|
|
|
240
276
|
.table(TRANSPORT_TABLES.control)
|
|
241
277
|
.insert({
|
|
242
278
|
payload: JSON.stringify(stamped),
|
|
279
|
+
namespace: this.#namespaceValue(),
|
|
243
280
|
claimed_by: null,
|
|
244
281
|
claimed_at: null,
|
|
245
282
|
created_at: this.#now(),
|
|
@@ -272,12 +309,16 @@ export class DbTransport {
|
|
|
272
309
|
* `claimed_at` is set to a unique, strictly-increasing-per-round value so the SELECT-back is exact
|
|
273
310
|
* even when the same instance claims several rounds in quick succession.
|
|
274
311
|
*/
|
|
275
|
-
async #claim(table,
|
|
312
|
+
async #claim(table, groups, idCol = 'step_id') {
|
|
276
313
|
await this.#ensureSchema();
|
|
277
314
|
// The raw Knex builder — `onConflict`, the `where(cb)` grouping and `whereIn` are cleaner there
|
|
278
315
|
// than through Lucid's stricter query-builder typings, and we only need plain SQL here.
|
|
279
316
|
const knex = this.#client().knexQuery();
|
|
280
317
|
const stale = this.#now() - this.#leaseMs;
|
|
318
|
+
// Every claim is namespace-scoped: this instance only ever sees rows stamped with its own
|
|
319
|
+
// namespace, so two engines/workers on different namespaces sharing one table set never
|
|
320
|
+
// cross-claim each other's tasks/results/heartbeats/control.
|
|
321
|
+
const namespace = this.#namespaceValue();
|
|
281
322
|
// Unique claim token for THIS round: instance id + a nanosecond stamp. Stored in `claimed_by` so
|
|
282
323
|
// the SELECT-back returns only the rows this exact round won (never another round's, even from
|
|
283
324
|
// the same instance).
|
|
@@ -287,9 +328,10 @@ export class DbTransport {
|
|
|
287
328
|
const candidates = (await knex
|
|
288
329
|
.from(table)
|
|
289
330
|
.select(idCol)
|
|
331
|
+
.where('namespace', namespace)
|
|
290
332
|
.modify((q) => {
|
|
291
|
-
if (
|
|
292
|
-
q.
|
|
333
|
+
if (groups !== undefined)
|
|
334
|
+
q.whereIn('grp', groups);
|
|
293
335
|
})
|
|
294
336
|
.where((q) => q.whereNull('claimed_at').orWhere('claimed_at', '<', stale))
|
|
295
337
|
.orderBy(idCol === 'id' ? 'id' : 'created_at', 'asc')
|
|
@@ -302,6 +344,7 @@ export class DbTransport {
|
|
|
302
344
|
await this.#client()
|
|
303
345
|
.knexQuery()
|
|
304
346
|
.from(table)
|
|
347
|
+
.where('namespace', namespace)
|
|
305
348
|
.whereIn(idCol, ids)
|
|
306
349
|
.where((q) => q.whereNull('claimed_at').orWhere('claimed_at', '<', stale))
|
|
307
350
|
.update({ claimed_by: token, claimed_at: at });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,11 +30,19 @@ export interface QueueTransportOptions {
|
|
|
30
30
|
*/
|
|
31
31
|
adapter: AdapterFactory;
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
33
|
+
* @deprecated Steps are now routed BY HANDLER NAME, so this instance serves whatever names it
|
|
34
|
+
* `handle()`s — no group to declare. Accepted for back-compat / parity with the pre-redesign API
|
|
35
|
+
* and otherwise ignored (a worker subscribes to one task queue PER registered handler name). Use
|
|
36
|
+
* {@link partition} for isolation.
|
|
36
37
|
*/
|
|
37
38
|
group?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Optional isolation partition suffixing every per-handler tasks queue this worker subscribes to
|
|
41
|
+
* (`<name>@<partition>`), matching the `partition` a dispatch carries — so the same backend can
|
|
42
|
+
* host several worker pools serving the same handler name without their tasks crossing. Unset (or
|
|
43
|
+
* `'default'`) subscribes to the bare (sanitized) handler-name queue.
|
|
44
|
+
*/
|
|
45
|
+
partition?: string;
|
|
38
46
|
/** Queue-name prefix so several apps can share one backend without colliding. Default `durable`. */
|
|
39
47
|
prefix?: string;
|
|
40
48
|
/**
|
|
@@ -82,8 +90,10 @@ export declare class QueueTransport implements Transport, ControlPlane {
|
|
|
82
90
|
useNamespace(namespace: string): void;
|
|
83
91
|
dispatch(task: RemoteTask): Promise<void>;
|
|
84
92
|
/**
|
|
85
|
-
* Register a step handler (worker side). Starts
|
|
86
|
-
*
|
|
93
|
+
* Register a step handler (worker side). Starts a DEDICATED task poll loop for `name` on its own
|
|
94
|
+
* routing-token queue (`tenantGroup(sanitizeQueueToken(name), partition)`) on first registration —
|
|
95
|
+
* one queue per handler name, never a single group queue — so it matches the token the engine
|
|
96
|
+
* dispatches by (see `engine.callRemote`). Re-registering a name just swaps the handler fn.
|
|
87
97
|
*/
|
|
88
98
|
handle(name: string, fn: StepHandler): void;
|
|
89
99
|
/** Worker side: publish a liveness heartbeat for an in-flight long step. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/transports/queue.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAwB,cAAc,EAAW,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/transports/queue.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAwB,cAAc,EAAW,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAGlE;;;;;;GAMG;AAEH,iGAAiG;AACjG,wBAAgB,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAErC;AAED,wEAAwE;AACxE,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,CAO7C;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC;AACrC,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC;AACvC,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC;AACzC,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC;AAc5C;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAItE;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,OAAO,EAAE,cAAc,CAAC;IACxB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oGAAoG;IACpG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,cAAe,YAAW,SAAS,EAAE,YAAY;;gBAiBhD,OAAO,EAAE,qBAAqB;IAa1C,0DAA0D;IAC1D,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAkD/B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/C;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI;IAc3C,4EAA4E;IACtE,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/C,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAM9D,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAUxD,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAsCvD,4EAA4E;IACtE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAK7B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
2
|
import { Pollers } from '../pollers.js';
|
|
3
3
|
import { runStepHandler } from '../protocol.js';
|
|
4
|
+
import { sanitizeQueueToken, tenantGroup } from '../tenant-group.js';
|
|
4
5
|
/**
|
|
5
6
|
* The wire payloads carried as a queue job's `payload`. Everything that crosses the queue is plain
|
|
6
7
|
* JSON — a `RemoteTask` (engine → worker), a `StepResult` / `Heartbeat` (worker → engine) and a
|
|
@@ -63,7 +64,7 @@ export function toBrokerPriority(priority) {
|
|
|
63
64
|
*/
|
|
64
65
|
export class QueueTransport {
|
|
65
66
|
#adapter;
|
|
66
|
-
#
|
|
67
|
+
#partition;
|
|
67
68
|
#prefix;
|
|
68
69
|
// Logical deployment namespace folded into every queue name via `#effectivePrefix()`. Mutable so an
|
|
69
70
|
// engine can push its namespace onto a transport via `useNamespace()` — but only when one wasn't
|
|
@@ -74,10 +75,12 @@ export class QueueTransport {
|
|
|
74
75
|
#instanceId;
|
|
75
76
|
#handlers = new Map();
|
|
76
77
|
#pollers;
|
|
77
|
-
|
|
78
|
+
/** One task poll loop per subscribed routing token (`tenantGroup(sanitizeQueueToken(name), partition)`)
|
|
79
|
+
* — a dedicated queue per handler name, never a single shared group queue. */
|
|
80
|
+
#taskLoops = new Map();
|
|
78
81
|
constructor(options) {
|
|
79
82
|
this.#adapter = options.adapter();
|
|
80
|
-
this.#
|
|
83
|
+
this.#partition = options.partition;
|
|
81
84
|
this.#prefix = options.prefix ?? 'durable';
|
|
82
85
|
this.#namespace = options.namespace;
|
|
83
86
|
this.#explicitNamespace = options.namespace !== undefined;
|
|
@@ -149,22 +152,21 @@ export class QueueTransport {
|
|
|
149
152
|
// worker side — register a step handler, run it, push the result back
|
|
150
153
|
// ---------------------------------------------------------------------------
|
|
151
154
|
/**
|
|
152
|
-
* Register a step handler (worker side). Starts
|
|
153
|
-
*
|
|
155
|
+
* Register a step handler (worker side). Starts a DEDICATED task poll loop for `name` on its own
|
|
156
|
+
* routing-token queue (`tenantGroup(sanitizeQueueToken(name), partition)`) on first registration —
|
|
157
|
+
* one queue per handler name, never a single group queue — so it matches the token the engine
|
|
158
|
+
* dispatches by (see `engine.callRemote`). Re-registering a name just swaps the handler fn.
|
|
154
159
|
*/
|
|
155
160
|
handle(name, fn) {
|
|
156
|
-
if (!this.#group) {
|
|
157
|
-
throw new Error('QueueTransport needs a `group` option to register handlers');
|
|
158
|
-
}
|
|
159
161
|
this.#handlers.set(name, fn);
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
}
|
|
162
|
+
const token = tenantGroup(sanitizeQueueToken(name), this.#partition);
|
|
163
|
+
if (this.#taskLoops.has(token))
|
|
164
|
+
return;
|
|
165
|
+
this.#taskLoops.set(token, this.#startLoop(this.#tasksQueue(token), async (job) => {
|
|
166
|
+
const task = fromJson(job.payload);
|
|
167
|
+
const result = await runStepHandler(task, this.#handlers.get(task.name));
|
|
168
|
+
await this.#adapter.pushOn(this.#resultsQueue(), this.#job('result', result));
|
|
169
|
+
}));
|
|
168
170
|
}
|
|
169
171
|
/** Worker side: publish a liveness heartbeat for an in-flight long step. */
|
|
170
172
|
async heartbeat(beat) {
|
|
@@ -231,7 +233,7 @@ export class QueueTransport {
|
|
|
231
233
|
/** Stop every poll loop and destroy the adapter so the process can exit. */
|
|
232
234
|
async close() {
|
|
233
235
|
this.#pollers.stopAll();
|
|
234
|
-
this.#
|
|
236
|
+
this.#taskLoops.clear();
|
|
235
237
|
await this.#adapter.destroy();
|
|
236
238
|
}
|
|
237
239
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/transports/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAUzC,OAAO,EAAiB,OAAO,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAoB,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/transports/queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,22 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
/**
|
|
3
|
-
|
|
1
|
+
import type { SearchAttributes, StateStore, StepCheckpoint, StepDef, StepError, StepEvent, StepInvocation, StepKind, StepUndo, WorkflowCtx } from './interfaces.js';
|
|
2
|
+
/**
|
|
3
|
+
* A saga undo registered by a completed step, kept with its step name for visibility on failure.
|
|
4
|
+
* Two shapes, pushed onto the SAME `compensations` stack so the engine unwinds them together in one
|
|
5
|
+
* strict reverse-completion order, regardless of which kind each one is:
|
|
6
|
+
* - `fn`: a LOCAL undo (`ctx.localStep`'s `compensate` closure) — run in-process at unwind time.
|
|
7
|
+
* - `dispatch`: a DISPATCHED undo (`ctx.step`'s `compensate` ref/string) — an ordinary step def the
|
|
8
|
+
* engine dispatches to a worker at unwind time, called with the {@link StepUndo} envelope (`args`).
|
|
9
|
+
*/
|
|
10
|
+
export type Compensation = {
|
|
4
11
|
name: string;
|
|
5
12
|
fn: () => Promise<void>;
|
|
6
|
-
}
|
|
13
|
+
} | {
|
|
14
|
+
name: string;
|
|
15
|
+
dispatch: {
|
|
16
|
+
def: StepDef<StepUndo<unknown, unknown>, unknown>;
|
|
17
|
+
args: StepUndo<unknown, unknown>;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
7
20
|
/** A finished local step the host should checkpoint and announce (completed or failed). */
|
|
8
21
|
export interface StepRecord {
|
|
9
22
|
runId: string;
|
|
@@ -43,7 +56,7 @@ export interface CtxHost {
|
|
|
43
56
|
failStep(step: StepRecord & {
|
|
44
57
|
error: StepError;
|
|
45
58
|
}): Promise<void>;
|
|
46
|
-
callRemote<TInput, TOutput>(runId: string, seq: number, step:
|
|
59
|
+
callRemote<TInput, TOutput>(runId: string, seq: number, step: StepDef<TInput, TOutput>, input: TInput, queue?: string, transport?: string, admission?: {
|
|
47
60
|
priority?: number | undefined;
|
|
48
61
|
fairnessKey?: string | undefined;
|
|
49
62
|
}): Promise<TOutput>;
|
|
@@ -56,11 +69,17 @@ export interface CtxHost {
|
|
|
56
69
|
/** Run a local step body through the registered step interceptors (identity if none). */
|
|
57
70
|
interceptStep?<T>(invocation: StepInvocation, body: () => Promise<T>): Promise<T>;
|
|
58
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* {@link WorkflowCtx} plus the in-process `localStep` primitive. `localStep` is public on
|
|
74
|
+
* `WorkflowCtx` too, so this is just a documentary alias for the library's own built-in workflows
|
|
75
|
+
* (the durable-entity runner) that lean on the in-process step directly.
|
|
76
|
+
*/
|
|
77
|
+
export type InternalWorkflowCtx = WorkflowCtx;
|
|
59
78
|
/**
|
|
60
79
|
* Build the {@link WorkflowCtx} handed to a workflow body. Every primitive is a closure over the
|
|
61
80
|
* position counter (the per-run logical position) and the saga `compensations` stack, so `task`/
|
|
62
|
-
* `child` compose `
|
|
63
|
-
* the workflow body stays deterministic.
|
|
81
|
+
* `child` compose `localStep`/`waitForSignal` directly. All durability goes through {@link CtxHost},
|
|
82
|
+
* so the workflow body stays deterministic.
|
|
64
83
|
*/
|
|
65
|
-
export declare function createWorkflowCtx(host: CtxHost, runId: string, compensations: Compensation[], workflow?: string):
|
|
84
|
+
export declare function createWorkflowCtx(host: CtxHost, runId: string, compensations: Compensation[], workflow?: string): InternalWorkflowCtx;
|
|
66
85
|
//# sourceMappingURL=workflow-ctx.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-ctx.d.ts","sourceRoot":"","sources":["../../src/workflow-ctx.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAGV,
|
|
1
|
+
{"version":3,"file":"workflow-ctx.d.ts","sourceRoot":"","sources":["../../src/workflow-ctx.ts"],"names":[],"mappings":"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"}
|