@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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-name-symbol.js","sourceRoot":"","sources":["../../src/step-name-symbol.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAkB,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAEvF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAkB,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AAyB3F,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAgBD;;uEAEuE;AACvE,MAAM,UAAU,UAAU,CAAC,GAAY;IACrC,IAAI,OAAO,GAAG,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAI,GAAyC,CAAC,iBAAiB,CAAC,CAAC;IAC9E,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED;;0EAE0E;AAC1E,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,IAAI,OAAO,GAAG,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAI,GAA2C,CAAC,mBAAmB,CAAC,CAAC;IAClF,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
import type { BackoffStrategy } from './interfaces.js';
|
|
3
|
+
import { type StepRef } from './step-name-symbol.js';
|
|
4
|
+
/**
|
|
5
|
+
* The full metadata a `@Step` / {@link defineStep} stamps on a step handler for discovery: its
|
|
6
|
+
* resolved routing `name` plus the opt-in runtime zod schemas an authoring layer attached. Stamped
|
|
7
|
+
* under {@link DURABLE_STEP_META} on the handler function so step discovery can wrap it with
|
|
8
|
+
* validation at the serve boundary. A global-registry symbol so it survives duplicate copies.
|
|
9
|
+
*/
|
|
10
|
+
export declare const DURABLE_STEP_META: unique symbol;
|
|
11
|
+
/** Discovery metadata a decorated/`defineStep` handler carries: routing name + optional zod schemas. */
|
|
12
|
+
export interface DurableStepMeta {
|
|
13
|
+
/** The resolved routing name — derived (`Class.method`) or explicit, always present. */
|
|
14
|
+
name: string;
|
|
15
|
+
/** Opt-in runtime input schema, validated when the handler is served. Absent on a bare `@Step()`. */
|
|
16
|
+
input?: z.ZodType | undefined;
|
|
17
|
+
/** Opt-in runtime output schema, validated before the handler's result is handed back. */
|
|
18
|
+
output?: z.ZodType | undefined;
|
|
19
|
+
}
|
|
20
|
+
/** Options for the object call form of {@link Step} / {@link defineStep}. */
|
|
21
|
+
export interface StepDecoratorOptions {
|
|
22
|
+
/** Explicit routing name, overriding the derived `Class.method`. */
|
|
23
|
+
name?: string;
|
|
24
|
+
/** Runtime input schema, validated at the serve boundary (opt-in — a bare `@Step()` skips it). */
|
|
25
|
+
input?: z.ZodType;
|
|
26
|
+
/** Runtime output schema, validated before the result is returned (opt-in). */
|
|
27
|
+
output?: z.ZodType;
|
|
28
|
+
/** Def-level policy: max attempts before the step (and run) fails. Read by `ctx.step` via `stepConfigOf`. */
|
|
29
|
+
retries?: number;
|
|
30
|
+
/** How the delay between retries grows: `fixed` (constant) or `exp` (doubles each attempt). */
|
|
31
|
+
backoff?: BackoffStrategy;
|
|
32
|
+
/** Base delay in ms between retries. Omit (or 0) to retry with no delay. */
|
|
33
|
+
backoffMs?: number;
|
|
34
|
+
/** Upper bound on the (exponential) backoff delay. */
|
|
35
|
+
backoffMaxMs?: number;
|
|
36
|
+
/** Add random jitter (50–100% of the computed delay) to avoid thundering-herd retries. */
|
|
37
|
+
jitter?: boolean;
|
|
38
|
+
/** Liveness window for the dispatched step (ms): presume the worker dead and re-dispatch on timeout. */
|
|
39
|
+
timeoutMs?: number;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Marks a class method as a durable **step handler**. A dispatched task is routed to it BY NAME —
|
|
43
|
+
* `ctx.step(this.svc.method, input)` reads that same name off the method reference (the shared
|
|
44
|
+
* `DURABLE_STEP_NAME` stamp), so there is no separately-declared def linking a call site to a
|
|
45
|
+
* handler. The method's single argument is the step input (plus an optional `StepLogger` 2nd arg);
|
|
46
|
+
* its return is the step output.
|
|
47
|
+
*
|
|
48
|
+
* Three call forms:
|
|
49
|
+
* - `@Step()` — bare: the routing name is DERIVED as `` `${ClassName}.${method}` `` — refactor-safe.
|
|
50
|
+
* - `@Step('custom:name')` — explicit name override (a stable cross-runtime contract).
|
|
51
|
+
* - `@Step({ name?, input?, output?, retries?, backoff?, backoffMs?, backoffMaxMs?, jitter?,
|
|
52
|
+
* timeoutMs? })` — optional name override, opt-in RUNTIME zod schemas (validated at the serve
|
|
53
|
+
* boundary by step discovery), and a def-level durable-retry/liveness policy `ctx.step` reads via
|
|
54
|
+
* `stepConfigOf` (a per-call `opts` overrides it field-by-field).
|
|
55
|
+
*/
|
|
56
|
+
export declare function Step(nameOrOptions?: string | StepDecoratorOptions): MethodDecorator;
|
|
57
|
+
/**
|
|
58
|
+
* Build a durable step handler WITHOUT a class/decorator: stamps `fn` with the routing `name` (and
|
|
59
|
+
* optional zod schemas + dispatch policy) so it works as a typed {@link StepRef} for
|
|
60
|
+
* `ctx.step(fn, input)` AND is discoverable/registerable by name. The cross-runtime baseline — pass
|
|
61
|
+
* the returned ref to `ctx.step`, or register it on a transport via `registerStep`.
|
|
62
|
+
*
|
|
63
|
+
* ```ts
|
|
64
|
+
* export const charge = defineStep('billing:charge', async (input: ChargeInput) => { ... })
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function defineStep<TInput, TOutput>(name: string, fn: (input: TInput) => TOutput | Promise<TOutput>, config?: Omit<StepDecoratorOptions, 'name'>): StepRef<TInput, TOutput>;
|
|
68
|
+
/** Read the {@link DurableStepMeta} a `@Step`/`defineStep` stamped on a handler, or `undefined`. */
|
|
69
|
+
export declare function stepMetaOf(ref: unknown): DurableStepMeta | undefined;
|
|
70
|
+
//# sourceMappingURL=step-ref.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-ref.d.ts","sourceRoot":"","sources":["../../src/step-ref.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAIL,KAAK,OAAO,EACb,MAAM,uBAAuB,CAAC;AAE/B;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,MAA+C,CAAC;AAEvF,wGAAwG;AACxG,MAAM,WAAW,eAAe;IAC9B,wFAAwF;IACxF,IAAI,EAAE,MAAM,CAAC;IACb,qGAAqG;IACrG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC;IAC9B,0FAA0F;IAC1F,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC;CAChC;AAED,6EAA6E;AAC7E,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kGAAkG;IAClG,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC;IAClB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC;IACnB,6GAA6G;IAC7G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+FAA+F;IAC/F,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0FAA0F;IAC1F,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,wGAAwG;IACxG,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAyBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,IAAI,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,oBAAoB,GAAG,eAAe,CAiBnF;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,EACxC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EACjD,MAAM,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,GAC1C,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAQ1B;AAED,oGAAoG;AACpG,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,GAAG,SAAS,CAGpE"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { DURABLE_STEP_CONFIG, DURABLE_STEP_NAME, } from './step-name-symbol.js';
|
|
2
|
+
/**
|
|
3
|
+
* The full metadata a `@Step` / {@link defineStep} stamps on a step handler for discovery: its
|
|
4
|
+
* resolved routing `name` plus the opt-in runtime zod schemas an authoring layer attached. Stamped
|
|
5
|
+
* under {@link DURABLE_STEP_META} on the handler function so step discovery can wrap it with
|
|
6
|
+
* validation at the serve boundary. A global-registry symbol so it survives duplicate copies.
|
|
7
|
+
*/
|
|
8
|
+
export const DURABLE_STEP_META = Symbol.for('@agora/durable:step-meta');
|
|
9
|
+
/** Build the {@link StepConfig} to stamp from options — omitting every unset field, so a bare
|
|
10
|
+
* `@Step()` (or one with only `name`/`input`/`output`) stamps nothing and leaves `ctx.step` reading
|
|
11
|
+
* only a per-call `opts` override. */
|
|
12
|
+
function stepConfigFrom(options) {
|
|
13
|
+
const config = {};
|
|
14
|
+
if (options.retries !== undefined)
|
|
15
|
+
config.retries = options.retries;
|
|
16
|
+
if (options.backoff !== undefined)
|
|
17
|
+
config.backoff = options.backoff;
|
|
18
|
+
if (options.backoffMs !== undefined)
|
|
19
|
+
config.backoffMs = options.backoffMs;
|
|
20
|
+
if (options.backoffMaxMs !== undefined)
|
|
21
|
+
config.backoffMaxMs = options.backoffMaxMs;
|
|
22
|
+
if (options.jitter !== undefined)
|
|
23
|
+
config.jitter = options.jitter;
|
|
24
|
+
if (options.timeoutMs !== undefined)
|
|
25
|
+
config.timeoutMs = options.timeoutMs;
|
|
26
|
+
return Object.keys(config).length > 0 ? config : undefined;
|
|
27
|
+
}
|
|
28
|
+
/** Stamp the shared cross-package name/config/meta keys onto a step handler function. */
|
|
29
|
+
function stamp(fn, meta, config) {
|
|
30
|
+
fn[DURABLE_STEP_NAME] = meta.name;
|
|
31
|
+
fn[DURABLE_STEP_META] = meta;
|
|
32
|
+
if (config !== undefined) {
|
|
33
|
+
fn[DURABLE_STEP_CONFIG] = config;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Marks a class method as a durable **step handler**. A dispatched task is routed to it BY NAME —
|
|
38
|
+
* `ctx.step(this.svc.method, input)` reads that same name off the method reference (the shared
|
|
39
|
+
* `DURABLE_STEP_NAME` stamp), so there is no separately-declared def linking a call site to a
|
|
40
|
+
* handler. The method's single argument is the step input (plus an optional `StepLogger` 2nd arg);
|
|
41
|
+
* its return is the step output.
|
|
42
|
+
*
|
|
43
|
+
* Three call forms:
|
|
44
|
+
* - `@Step()` — bare: the routing name is DERIVED as `` `${ClassName}.${method}` `` — refactor-safe.
|
|
45
|
+
* - `@Step('custom:name')` — explicit name override (a stable cross-runtime contract).
|
|
46
|
+
* - `@Step({ name?, input?, output?, retries?, backoff?, backoffMs?, backoffMaxMs?, jitter?,
|
|
47
|
+
* timeoutMs? })` — optional name override, opt-in RUNTIME zod schemas (validated at the serve
|
|
48
|
+
* boundary by step discovery), and a def-level durable-retry/liveness policy `ctx.step` reads via
|
|
49
|
+
* `stepConfigOf` (a per-call `opts` overrides it field-by-field).
|
|
50
|
+
*/
|
|
51
|
+
export function Step(nameOrOptions) {
|
|
52
|
+
return ((target, propertyKey, descriptor) => {
|
|
53
|
+
const options = typeof nameOrOptions === 'string' ? { name: nameOrOptions } : (nameOrOptions ?? {});
|
|
54
|
+
const ctorName = target?.constructor?.name ?? 'Step';
|
|
55
|
+
const name = options.name ?? `${ctorName}.${String(propertyKey)}`;
|
|
56
|
+
const value = descriptor.value;
|
|
57
|
+
if (typeof value !== 'function') {
|
|
58
|
+
throw new Error(`@Step can only decorate a method (${ctorName}.${String(propertyKey)})`);
|
|
59
|
+
}
|
|
60
|
+
const meta = {
|
|
61
|
+
name,
|
|
62
|
+
...(options.input ? { input: options.input } : {}),
|
|
63
|
+
...(options.output ? { output: options.output } : {}),
|
|
64
|
+
};
|
|
65
|
+
stamp(value, meta, stepConfigFrom(options));
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Build a durable step handler WITHOUT a class/decorator: stamps `fn` with the routing `name` (and
|
|
70
|
+
* optional zod schemas + dispatch policy) so it works as a typed {@link StepRef} for
|
|
71
|
+
* `ctx.step(fn, input)` AND is discoverable/registerable by name. The cross-runtime baseline — pass
|
|
72
|
+
* the returned ref to `ctx.step`, or register it on a transport via `registerStep`.
|
|
73
|
+
*
|
|
74
|
+
* ```ts
|
|
75
|
+
* export const charge = defineStep('billing:charge', async (input: ChargeInput) => { ... })
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
export function defineStep(name, fn, config) {
|
|
79
|
+
const meta = {
|
|
80
|
+
name,
|
|
81
|
+
...(config?.input ? { input: config.input } : {}),
|
|
82
|
+
...(config?.output ? { output: config.output } : {}),
|
|
83
|
+
};
|
|
84
|
+
stamp(fn, meta, stepConfigFrom({ ...config, name }));
|
|
85
|
+
return fn;
|
|
86
|
+
}
|
|
87
|
+
/** Read the {@link DurableStepMeta} a `@Step`/`defineStep` stamped on a handler, or `undefined`. */
|
|
88
|
+
export function stepMetaOf(ref) {
|
|
89
|
+
if (typeof ref !== 'function' && typeof ref !== 'object')
|
|
90
|
+
return undefined;
|
|
91
|
+
return ref?.[DURABLE_STEP_META];
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=step-ref.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-ref.js","sourceRoot":"","sources":["../../src/step-ref.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compute the worker group a partitioned step dispatches to. Mirrors the transport's
|
|
3
|
+
* default-is-bare rule: a `partition` of `undefined`, `''`, or `'default'` is the bare `baseGroup`,
|
|
4
|
+
* so a single-pool deployment (or the `'default'` partition of a multi-pool one) stays
|
|
5
|
+
* byte-identical to today. Any other partition suffixes the group as `<baseGroup>@<partition>`, so a
|
|
6
|
+
* step can be isolated onto its own worker pool without changing its routing identity (the `name`).
|
|
7
|
+
*/
|
|
8
|
+
export declare function tenantGroup(baseGroup: string, partition: string | undefined): string;
|
|
9
|
+
/**
|
|
10
|
+
* Sanitize a handler/workflow name for use as a broker queue token: some brokers (BullMQ) forbid `:`
|
|
11
|
+
* in queue names (it is used internally as a key separator), so every `:` is replaced with `-`. `.`
|
|
12
|
+
* is legal in a queue name and is left as-is — step/workflow names commonly use it as a namespacing
|
|
13
|
+
* separator (e.g. `payments.charge-card`). Apply this IDENTICALLY at every dispatch site AND every
|
|
14
|
+
* subscribe/queue site, or a step whose name contains a `:` would be dispatched to one token and
|
|
15
|
+
* served from another — and silently never run.
|
|
16
|
+
*/
|
|
17
|
+
export declare function sanitizeQueueToken(name: string): string;
|
|
18
|
+
//# sourceMappingURL=tenant-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tenant-group.d.ts","sourceRoot":"","sources":["../../src/tenant-group.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAIpF;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compute the worker group a partitioned step dispatches to. Mirrors the transport's
|
|
3
|
+
* default-is-bare rule: a `partition` of `undefined`, `''`, or `'default'` is the bare `baseGroup`,
|
|
4
|
+
* so a single-pool deployment (or the `'default'` partition of a multi-pool one) stays
|
|
5
|
+
* byte-identical to today. Any other partition suffixes the group as `<baseGroup>@<partition>`, so a
|
|
6
|
+
* step can be isolated onto its own worker pool without changing its routing identity (the `name`).
|
|
7
|
+
*/
|
|
8
|
+
export function tenantGroup(baseGroup, partition) {
|
|
9
|
+
return partition !== undefined && partition !== '' && partition !== 'default'
|
|
10
|
+
? `${baseGroup}@${partition}`
|
|
11
|
+
: baseGroup;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Sanitize a handler/workflow name for use as a broker queue token: some brokers (BullMQ) forbid `:`
|
|
15
|
+
* in queue names (it is used internally as a key separator), so every `:` is replaced with `-`. `.`
|
|
16
|
+
* is legal in a queue name and is left as-is — step/workflow names commonly use it as a namespacing
|
|
17
|
+
* separator (e.g. `payments.charge-card`). Apply this IDENTICALLY at every dispatch site AND every
|
|
18
|
+
* subscribe/queue site, or a step whose name contains a `:` would be dispatched to one token and
|
|
19
|
+
* served from another — and silently never run.
|
|
20
|
+
*/
|
|
21
|
+
export function sanitizeQueueToken(name) {
|
|
22
|
+
return name.replace(/:/g, '-');
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=tenant-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tenant-group.js","sourceRoot":"","sources":["../../src/tenant-group.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB,EAAE,SAA6B;IAC1E,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE,IAAI,SAAS,KAAK,SAAS;QAC3E,CAAC,CAAC,GAAG,SAAS,IAAI,SAAS,EAAE;QAC7B,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC"}
|
|
@@ -450,11 +450,11 @@ export function runStateStoreContract(name, makeStore) {
|
|
|
450
450
|
let aRuns = 0;
|
|
451
451
|
let failOnce = true;
|
|
452
452
|
engine.register('wf', '1', async (ctx) => {
|
|
453
|
-
const a = await ctx.
|
|
453
|
+
const a = await ctx.localStep('a', async () => {
|
|
454
454
|
aRuns += 1;
|
|
455
455
|
return 10;
|
|
456
456
|
});
|
|
457
|
-
const b = await ctx.
|
|
457
|
+
const b = await ctx.localStep('b', async () => {
|
|
458
458
|
if (failOnce) {
|
|
459
459
|
failOnce = false;
|
|
460
460
|
throw new Error('boom');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-store-conformance.js","sourceRoot":"","sources":["../../../src/testing-kit/state-store-conformance.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"state-store-conformance.js","sourceRoot":"","sources":["../../../src/testing-kit/state-store-conformance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport-conformance.d.ts","sourceRoot":"","sources":["../../../src/testing-kit/transport-conformance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transport-conformance.d.ts","sourceRoot":"","sources":["../../../src/testing-kit/transport-conformance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,SAAS,EAAkB,MAAM,aAAa,CAAC;AAEjF,oFAAoF;AACpF,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG;IAC5C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACrE,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB,CAAC;AAsBF;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAC9C,SAAS,EAAE,mBAAmB,EAC9B,QAAQ,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CAmCf"}
|
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
group: 'conformance',
|
|
6
|
-
input: z.object({ n: z.number() }),
|
|
7
|
-
output: z.object({ doubled: z.number() }),
|
|
8
|
-
__remote: true,
|
|
9
|
-
};
|
|
1
|
+
import { InMemoryStateStore, WorkflowEngine } from '../index.js';
|
|
2
|
+
/** The cross-runtime routing name the conformance worker serves — a plain string `ctx.step` call
|
|
3
|
+
* (no def factory needed). */
|
|
4
|
+
const ECHO = 'conformance.echo';
|
|
10
5
|
/**
|
|
11
|
-
* A durable `ctx.
|
|
6
|
+
* A durable `ctx.step` suspends the run; the worker result resumes it asynchronously (on whatever
|
|
12
7
|
* tick/poll the transport delivers on). Poll the store until the run reaches a terminal state —
|
|
13
8
|
* with a generous budget so a poll-based transport (DB/SQS) has time to round-trip.
|
|
14
9
|
*/
|
|
@@ -36,8 +31,8 @@ export async function assertTransportConformance(transport, idPrefix = 'conf') {
|
|
|
36
31
|
// which resumes the run. (Two engines on one transport would fight over the result stream.)
|
|
37
32
|
const store = new InMemoryStateStore();
|
|
38
33
|
const engine = new WorkflowEngine({ store, transport });
|
|
39
|
-
engine.register('conf-ok', '1', async (ctx) => (await ctx.
|
|
40
|
-
engine.register('conf-fail', '1', async (ctx) => ctx.
|
|
34
|
+
engine.register('conf-ok', '1', async (ctx) => (await ctx.step(ECHO, { n: 21 })).doubled);
|
|
35
|
+
engine.register('conf-fail', '1', async (ctx) => ctx.step(ECHO, { n: 1 }));
|
|
41
36
|
// success: the worker doubles the input
|
|
42
37
|
transport.handle('conformance.echo', async (input) => ({
|
|
43
38
|
doubled: input.n * 2,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport-conformance.js","sourceRoot":"","sources":["../../../src/testing-kit/transport-conformance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"transport-conformance.js","sourceRoot":"","sources":["../../../src/testing-kit/transport-conformance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-schema.d.ts","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"db-schema.d.ts","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAkF9E;AAcD,0EAA0E;AAC1E,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAM5E"}
|
|
@@ -33,6 +33,7 @@ export async function createDurableTransportTables(db) {
|
|
|
33
33
|
table.integer('seq').notNullable();
|
|
34
34
|
table.string('name').notNullable();
|
|
35
35
|
table.string('grp').notNullable();
|
|
36
|
+
table.string('namespace').notNullable().defaultTo('default');
|
|
36
37
|
table.text('input');
|
|
37
38
|
table.string('traceparent');
|
|
38
39
|
table.text('context');
|
|
@@ -41,7 +42,7 @@ export async function createDurableTransportTables(db) {
|
|
|
41
42
|
table.string('claimed_by');
|
|
42
43
|
table.bigInteger('claimed_at');
|
|
43
44
|
table.bigInteger('created_at').notNullable();
|
|
44
|
-
table.index(['grp', 'claimed_at', 'created_at'], 'durable_transport_tasks_grp_idx');
|
|
45
|
+
table.index(['namespace', 'grp', 'claimed_at', 'created_at'], 'durable_transport_tasks_grp_idx');
|
|
45
46
|
});
|
|
46
47
|
}
|
|
47
48
|
// ── results: worker → engine (a StepResult) ────────────────────────────────
|
|
@@ -51,6 +52,7 @@ export async function createDurableTransportTables(db) {
|
|
|
51
52
|
table.string('run_id').notNullable();
|
|
52
53
|
table.integer('seq').notNullable();
|
|
53
54
|
table.string('status').notNullable();
|
|
55
|
+
table.string('namespace').notNullable().defaultTo('default');
|
|
54
56
|
table.text('output');
|
|
55
57
|
table.text('error');
|
|
56
58
|
table.bigInteger('started_at');
|
|
@@ -58,7 +60,7 @@ export async function createDurableTransportTables(db) {
|
|
|
58
60
|
table.string('claimed_by');
|
|
59
61
|
table.bigInteger('claimed_at');
|
|
60
62
|
table.bigInteger('created_at').notNullable();
|
|
61
|
-
table.index(['claimed_at', 'created_at'], 'durable_transport_results_idx');
|
|
63
|
+
table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_results_idx');
|
|
62
64
|
});
|
|
63
65
|
}
|
|
64
66
|
// ── heartbeats: worker → engine (liveness for a long step) ─────────────────
|
|
@@ -69,10 +71,11 @@ export async function createDurableTransportTables(db) {
|
|
|
69
71
|
table.integer('seq').notNullable();
|
|
70
72
|
table.string('step_id').notNullable();
|
|
71
73
|
table.string('grp').notNullable();
|
|
74
|
+
table.string('namespace').notNullable().defaultTo('default');
|
|
72
75
|
table.string('claimed_by');
|
|
73
76
|
table.bigInteger('claimed_at');
|
|
74
77
|
table.bigInteger('created_at').notNullable();
|
|
75
|
-
table.index(['claimed_at', 'created_at'], 'durable_transport_heartbeats_idx');
|
|
78
|
+
table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_heartbeats_idx');
|
|
76
79
|
});
|
|
77
80
|
}
|
|
78
81
|
// ── control: best-effort control-plane messages (single-consumer) ──────────
|
|
@@ -80,12 +83,29 @@ export async function createDurableTransportTables(db) {
|
|
|
80
83
|
await conn().createTable(TRANSPORT_TABLES.control, (table) => {
|
|
81
84
|
table.increments('id').primary();
|
|
82
85
|
table.text('payload').notNullable();
|
|
86
|
+
table.string('namespace').notNullable().defaultTo('default');
|
|
83
87
|
table.string('claimed_by');
|
|
84
88
|
table.bigInteger('claimed_at');
|
|
85
89
|
table.bigInteger('created_at').notNullable();
|
|
86
|
-
table.index(['claimed_at', 'created_at'], 'durable_transport_control_idx');
|
|
90
|
+
table.index(['namespace', 'claimed_at', 'created_at'], 'durable_transport_control_idx');
|
|
87
91
|
});
|
|
88
92
|
}
|
|
93
|
+
// Upgrade path: a deployment created before namespaces existed already has these tables (so the
|
|
94
|
+
// guards above skipped them) but lacks the `namespace` column. Back-fill it — `notNullable` +
|
|
95
|
+
// `defaultTo('default')` stamps every legacy in-flight row `'default'`, so a default engine's
|
|
96
|
+
// `WHERE namespace='default'` claims exactly the rows it did before. Idempotent via `hasColumn`.
|
|
97
|
+
await ensureNamespaceColumn(db);
|
|
98
|
+
}
|
|
99
|
+
/** Add the `namespace` column (default `'default'`) to any transport table created before namespaces. */
|
|
100
|
+
async function ensureNamespaceColumn(db) {
|
|
101
|
+
for (const table of Object.values(TRANSPORT_TABLES)) {
|
|
102
|
+
const schema = db.connection().schema;
|
|
103
|
+
if (!(await schema.hasColumn(table, 'namespace'))) {
|
|
104
|
+
await db.connection().schema.alterTable(table, (t) => {
|
|
105
|
+
t.string('namespace').notNullable().defaultTo('default');
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
}
|
|
89
109
|
}
|
|
90
110
|
/** Drop every transport table. Used by tests and the migration `down`. */
|
|
91
111
|
export async function dropDurableTransportTables(db) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-schema.js","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,yBAAyB;IAChC,OAAO,EAAE,2BAA2B;IACpC,UAAU,EAAE,8BAA8B;IAC1C,OAAO,EAAE,2BAA2B;CAC5B,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,EAAY;IAC7D,qGAAqG;IACrG,+CAA+C;IAC/C,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC;IAE1C,8EAA8E;IAC9E,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;YACzD,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;YACrC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YACnC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YACnC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtB,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1B,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;YACvC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3B,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAC/B,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;YAC7C,KAAK,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"db-schema.js","sourceRoot":"","sources":["../../../src/transports/db-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,11 +8,27 @@ export interface DbTransportOptions {
|
|
|
8
8
|
*/
|
|
9
9
|
db: Database;
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
* —
|
|
13
|
-
*
|
|
11
|
+
* @deprecated Steps are now routed BY HANDLER NAME, so this instance serves whatever names it
|
|
12
|
+
* `handle()`s — no group to declare. Accepted for back-compat / parity and otherwise ignored (the
|
|
13
|
+
* task poll loop claims rows for every registered handler name's routing token). Use
|
|
14
|
+
* {@link partition} for isolation.
|
|
14
15
|
*/
|
|
15
16
|
group?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Optional isolation partition suffixing every per-handler routing token this worker claims
|
|
19
|
+
* (`<name>@<partition>`), matching the `partition` a dispatch carries. Unset (or `'default'`)
|
|
20
|
+
* claims the bare (sanitized) handler-name tokens.
|
|
21
|
+
*/
|
|
22
|
+
partition?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Logical deployment namespace, stamped on every row this instance writes and required on every row
|
|
25
|
+
* it claims, so the same backend tables can host several worker-pool partitions without their
|
|
26
|
+
* tasks/results/heartbeats/control crossing. `"default"` (and absent) stamps/claims `'default'` —
|
|
27
|
+
* every row (incl. legacy rows back-filled by the migration) carries `'default'`, so a default
|
|
28
|
+
* engine's result set is UNCHANGED from the un-namespaced scheme. Passing it here is EXPLICIT and
|
|
29
|
+
* wins over a later {@link DbTransport.useNamespace} (the engine's propagation).
|
|
30
|
+
*/
|
|
31
|
+
namespace?: string;
|
|
16
32
|
/** Lucid connection name to use. Defaults to the `Database` default connection. */
|
|
17
33
|
connectionName?: string;
|
|
18
34
|
/** Poll interval (ms) for the result/task/heartbeat/control loops. Default 200ms. */
|
|
@@ -47,6 +63,11 @@ export interface DbTransportOptions {
|
|
|
47
63
|
* its group). Call {@link start} to begin the engine-side pollers; `handle()` auto-starts the task
|
|
48
64
|
* loop. The wire payloads are the documented `RemoteTask`/`StepResult` JSON.
|
|
49
65
|
*
|
|
66
|
+
* Partitions by {@link DbTransportOptions.namespace} like the broker transports do: every row is
|
|
67
|
+
* stamped with the instance's namespace and every claim is scoped to it, so several worker-pool
|
|
68
|
+
* partitions can share ONE table set without cross-processing each other's work. `"default"` (and
|
|
69
|
+
* absent) is byte-compatible with the pre-namespace scheme (all rows carry `'default'`).
|
|
70
|
+
*
|
|
50
71
|
* Usually you don't construct this directly: `config/durable.ts` selects it via
|
|
51
72
|
* `transports.db({ ... })` and the provider builds it for you.
|
|
52
73
|
*/
|
|
@@ -55,10 +76,18 @@ export declare class DbTransport implements Transport, ControlPlane {
|
|
|
55
76
|
constructor(options: DbTransportOptions);
|
|
56
77
|
/** Stable id stamped on heartbeats, control `from`, and `claimed_by`. */
|
|
57
78
|
get instanceId(): string;
|
|
79
|
+
/**
|
|
80
|
+
* Adopt `namespace` (the engine's, typically), scoping every write/claim to it — but ONLY if a
|
|
81
|
+
* namespace wasn't passed explicitly to the constructor (an explicit one always wins). Idempotent.
|
|
82
|
+
* Satisfies the optional `Transport.useNamespace` hook the engine calls when wiring a transport.
|
|
83
|
+
*/
|
|
84
|
+
useNamespace(namespace: string): void;
|
|
58
85
|
dispatch(task: RemoteTask): Promise<void>;
|
|
59
86
|
/**
|
|
60
|
-
* Register a step handler (worker side).
|
|
61
|
-
*
|
|
87
|
+
* Register a step handler (worker side). Records this name's routing token
|
|
88
|
+
* (`tenantGroup(sanitizeQueueToken(name), partition)`) as served and starts the shared task poll
|
|
89
|
+
* loop on the first call — it claims task rows for EVERY served token (matching the token the
|
|
90
|
+
* engine dispatches by), runs each through {@link runStepHandler}, and writes the result.
|
|
62
91
|
*/
|
|
63
92
|
handle(name: string, fn: StepHandler): void;
|
|
64
93
|
/** Worker side: publish a liveness heartbeat for an in-flight long step. */
|