bunqueue 2.7.2 → 2.7.4

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 (40) hide show
  1. package/README.md +14 -8
  2. package/dist/client/workflow/compensator.d.ts +15 -0
  3. package/dist/client/workflow/compensator.d.ts.map +1 -0
  4. package/dist/client/workflow/compensator.js +38 -0
  5. package/dist/client/workflow/compensator.js.map +1 -0
  6. package/dist/client/workflow/emitter.d.ts.map +1 -1
  7. package/dist/client/workflow/emitter.js +15 -3
  8. package/dist/client/workflow/emitter.js.map +1 -1
  9. package/dist/client/workflow/engine.d.ts +8 -1
  10. package/dist/client/workflow/engine.d.ts.map +1 -1
  11. package/dist/client/workflow/engine.js +9 -0
  12. package/dist/client/workflow/engine.js.map +1 -1
  13. package/dist/client/workflow/executor.d.ts +5 -2
  14. package/dist/client/workflow/executor.d.ts.map +1 -1
  15. package/dist/client/workflow/executor.js +38 -59
  16. package/dist/client/workflow/executor.js.map +1 -1
  17. package/dist/client/workflow/index.d.ts +1 -1
  18. package/dist/client/workflow/index.d.ts.map +1 -1
  19. package/dist/client/workflow/loops.d.ts +1 -1
  20. package/dist/client/workflow/loops.d.ts.map +1 -1
  21. package/dist/client/workflow/loops.js +3 -1
  22. package/dist/client/workflow/loops.js.map +1 -1
  23. package/dist/client/workflow/recovery.d.ts +23 -0
  24. package/dist/client/workflow/recovery.d.ts.map +1 -0
  25. package/dist/client/workflow/recovery.js +74 -0
  26. package/dist/client/workflow/recovery.js.map +1 -0
  27. package/dist/client/workflow/runner.d.ts.map +1 -1
  28. package/dist/client/workflow/runner.js +7 -5
  29. package/dist/client/workflow/runner.js.map +1 -1
  30. package/dist/client/workflow/store.d.ts +2 -0
  31. package/dist/client/workflow/store.d.ts.map +1 -1
  32. package/dist/client/workflow/store.js +6 -0
  33. package/dist/client/workflow/store.js.map +1 -1
  34. package/dist/client/workflow/types.d.ts +37 -22
  35. package/dist/client/workflow/types.d.ts.map +1 -1
  36. package/dist/client/workflow/workflow.d.ts +17 -14
  37. package/dist/client/workflow/workflow.d.ts.map +1 -1
  38. package/dist/client/workflow/workflow.js +30 -20
  39. package/dist/client/workflow/workflow.js.map +1 -1
  40. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recovery.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/recovery.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAA0B,aAAa,EAAgB,MAAM,SAAS,CAAC;AAGnF,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC;IAC1D,oBAAoB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACzF;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAuBjF"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Recovery logic for orphaned workflow executions after crash/restart
3
+ *
4
+ * Handles three states:
5
+ * - 'running': re-enqueue the step at currentNodeIndex
6
+ * - 'waiting': re-arm timeout timer or resume if signal already arrived
7
+ * - 'compensating': re-run compensation from the beginning (must be idempotent)
8
+ */
9
+ import { runCompensation } from './compensator';
10
+ export async function recoverExecutions(deps) {
11
+ const { store, workflows } = deps;
12
+ const executions = store.listRecoverable();
13
+ const result = { running: 0, waiting: 0, compensating: 0, total: 0 };
14
+ for (const exec of executions) {
15
+ const wf = workflows.get(exec.workflowName);
16
+ if (!wf)
17
+ continue;
18
+ if (exec.state === 'running') {
19
+ await enqueueExecution(exec, deps.queue);
20
+ result.running++;
21
+ }
22
+ else if (exec.state === 'waiting') {
23
+ await recoverWaiting(exec, wf, deps);
24
+ result.waiting++;
25
+ }
26
+ else if (exec.state === 'compensating') {
27
+ await runCompensation(exec, wf, store, deps.emitter);
28
+ result.compensating++;
29
+ }
30
+ }
31
+ result.total = result.running + result.waiting + result.compensating;
32
+ return result;
33
+ }
34
+ async function enqueueExecution(exec, queue) {
35
+ const jobData = {
36
+ executionId: exec.id,
37
+ workflowName: exec.workflowName,
38
+ nodeIndex: exec.currentNodeIndex,
39
+ };
40
+ await queue.add('wf:step', jobData);
41
+ }
42
+ async function recoverWaiting(exec, wf, deps) {
43
+ const node = wf.nodes[exec.currentNodeIndex];
44
+ if (node?.type !== 'waitFor') {
45
+ await enqueueExecution(exec, deps.queue);
46
+ return;
47
+ }
48
+ // Check if signal already arrived while we were down
49
+ if (exec.signals[node.event] !== undefined) {
50
+ exec.state = 'running';
51
+ deps.store.update(exec);
52
+ await enqueueExecution(exec, deps.queue);
53
+ return;
54
+ }
55
+ // Re-arm timeout if configured
56
+ if (node.timeout !== undefined) {
57
+ if (deps.timeoutTimers.has(exec.id))
58
+ return;
59
+ const waitKey = `__waitFor:${node.event}`;
60
+ const waitRecord = exec.steps[waitKey];
61
+ const waitingSince = waitRecord?.startedAt ?? exec.updatedAt;
62
+ const elapsed = Date.now() - waitingSince;
63
+ const remaining = node.timeout - elapsed;
64
+ if (remaining <= 0) {
65
+ exec.state = 'running';
66
+ deps.store.update(exec);
67
+ await enqueueExecution(exec, deps.queue);
68
+ }
69
+ else {
70
+ deps.scheduleTimeoutCheck(exec.id, exec.workflowName, exec.currentNodeIndex, remaining);
71
+ }
72
+ }
73
+ }
74
+ //# sourceMappingURL=recovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recovery.js","sourceRoot":"","sources":["../../../src/client/workflow/recovery.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AASjD,mCAAmC;AACnC,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAkBxF;AAED,8DAA8D;AAC9D,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,eAAe,GAAG,IAAI,EAC/B,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAClC,OAAO,CAAC,IAAI,CAAC,CAkFf;AAED,gEAAgE;AAChE,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,cAAc,EAAE,EACvB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,eAAe,GAAG,IAAI,EAC/B,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAClC,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,uEAAuE;AACvE,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,EAClE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,SAAS,GAAG,IAAI,EACvC,cAAc,SAAM,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAoBlC;AAED,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAoB7E;AAED,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,CAWzD"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AASjD,mCAAmC;AACnC,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAkBxF;AAED,8DAA8D;AAC9D,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,eAAe,GAAG,IAAI,EAC/B,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAClC,OAAO,CAAC,IAAI,CAAC,CAkFf;AAED,gEAAgE;AAChE,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,cAAc,EAAE,EACvB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,eAAe,GAAG,IAAI,EAC/B,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAClC,OAAO,CAAC,IAAI,CAAC,CAWf;AAED,uEAAuE;AACvE,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,EAClE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,SAAS,GAAG,IAAI,EACvC,cAAc,SAAM,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAoBlC;AAED,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAwB7E;AAED,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,CAWzD"}
@@ -109,9 +109,8 @@ export async function executeParallelSteps(steps, ctx, exec, emitter, updateFn)
109
109
  const results = await Promise.allSettled(steps.map((def) => executeStepWithRetry(def, ctx, exec, emitter, updateFn)));
110
110
  const failed = results.filter((r) => r.status === 'rejected');
111
111
  if (failed.length > 0) {
112
- throw failed[0].reason instanceof Error
113
- ? failed[0].reason
114
- : new Error(String(failed[0].reason));
112
+ const errors = failed.map((r) => r.reason instanceof Error ? r.reason : new Error(String(r.reason)));
113
+ throw new AggregateError(errors, errors[0].message);
115
114
  }
116
115
  }
117
116
  /** Execute a sub-workflow by starting it and polling for completion */
@@ -158,8 +157,11 @@ export function findStepDef(wf, name) {
158
157
  if (found)
159
158
  return found;
160
159
  }
161
- if (node.type === 'forEach' && node.def.step.name === name)
162
- return node.def.step;
160
+ if (node.type === 'forEach') {
161
+ if (node.def.step.name === name || name.startsWith(node.def.step.name + ':')) {
162
+ return node.def.step;
163
+ }
164
+ }
163
165
  }
164
166
  return null;
165
167
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/client/workflow/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/client/workflow/runner.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export declare class WorkflowStore {
10
10
  get(id: string): Execution | null;
11
11
  update(exec: Execution): void;
12
12
  list(workflowName?: string, state?: ExecutionState): Execution[];
13
+ /** List all executions in recoverable states (running, waiting, compensating) */
14
+ listRecoverable(): Execution[];
13
15
  /** Delete executions older than maxAge in terminal states */
14
16
  cleanup(maxAgeMs: number, states?: string[]): number;
15
17
  /** Archive executions older than maxAge to the archive table */
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAc,MAAM,SAAS,CAAC;AA8CrE,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAQpB;gBAEU,MAAM,CAAC,EAAE,MAAM;IAiC3B,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAe3B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAKjC,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAa7B,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,cAAc,GAAG,SAAS,EAAE;IAchE,6DAA6D;IAC7D,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,EAA4B,GAAG,MAAM;IAU7E,gEAAgE;IAChE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,EAA4B,GAAG,MAAM;IAyC7E,mCAAmC;IACnC,gBAAgB,IAAI,MAAM;IAO1B,KAAK,IAAI,IAAI;IAIb,OAAO,CAAC,cAAc;CAgBvB"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAc,MAAM,SAAS,CAAC;AA8CrE,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CASpB;gBAEU,MAAM,CAAC,EAAE,MAAM;IAoC3B,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAe3B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAKjC,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAa7B,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,cAAc,GAAG,SAAS,EAAE;IAchE,iFAAiF;IACjF,eAAe,IAAI,SAAS,EAAE;IAK9B,6DAA6D;IAC7D,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,EAA4B,GAAG,MAAM;IAU7E,gEAAgE;IAChE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,EAA4B,GAAG,MAAM;IAyC7E,mCAAmC;IACnC,gBAAgB,IAAI,MAAM;IAO1B,KAAK,IAAI,IAAI;IAIb,OAAO,CAAC,cAAc;CAgBvB"}
@@ -68,6 +68,7 @@ export class WorkflowStore {
68
68
  listByName: this.db.prepare(`SELECT * FROM workflow_executions WHERE workflow_name = ? ORDER BY created_at DESC LIMIT 100`),
69
69
  listByState: this.db.prepare(`SELECT * FROM workflow_executions WHERE state = ? ORDER BY created_at DESC LIMIT 100`),
70
70
  listByBoth: this.db.prepare(`SELECT * FROM workflow_executions WHERE workflow_name = ? AND state = ? ORDER BY created_at DESC LIMIT 100`),
71
+ listRecoverable: this.db.prepare(`SELECT * FROM workflow_executions WHERE state IN ('running', 'waiting', 'compensating') ORDER BY updated_at ASC`),
71
72
  };
72
73
  }
73
74
  save(exec) {
@@ -97,6 +98,11 @@ export class WorkflowStore {
97
98
  }
98
99
  return rows.map((r) => this.rowToExecution(r));
99
100
  }
101
+ /** List all executions in recoverable states (running, waiting, compensating) */
102
+ listRecoverable() {
103
+ const rows = this.stmts.listRecoverable.all();
104
+ return rows.map((r) => this.rowToExecution(r));
105
+ }
100
106
  /** Delete executions older than maxAge in terminal states */
101
107
  cleanup(maxAgeMs, states = ['completed', 'failed']) {
102
108
  const cutoff = Date.now() - maxAgeMs;
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/client/workflow/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/client/workflow/store.ts"],"names":[],"mappings":"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"}
@@ -3,29 +3,33 @@
3
3
  */
4
4
  import type { ConnectionOptions } from '../types';
5
5
  /** Context passed to step handlers */
6
- export interface StepContext<TInput = unknown> {
6
+ export interface StepContext<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> {
7
7
  /** Original workflow input */
8
8
  readonly input: TInput;
9
9
  /** Results from completed steps (step name → result) */
10
- readonly steps: Readonly<Record<string, unknown>>;
10
+ readonly steps: Readonly<TSteps>;
11
11
  /** Signals received via engine.signal() */
12
12
  readonly signals: Readonly<Record<string, unknown>>;
13
13
  /** Current execution ID */
14
14
  readonly executionId: string;
15
15
  }
16
- /** Step handler function */
17
- export type StepHandler<TInput = unknown, TResult = unknown> = (ctx: StepContext<TInput>) => Promise<TResult> | TResult;
18
- /** Compensate handler (rollback on failure) */
19
- export type CompensateHandler<TInput = unknown> = (ctx: StepContext<TInput>) => Promise<void> | void;
16
+ /** Step handler function (type-erased for internal storage) */
17
+ export type StepHandler<TInput = unknown, TResult = unknown> = (ctx: StepContext<TInput, any>) => Promise<TResult> | TResult;
18
+ /** Typed step handler preserves accumulated step types */
19
+ export type TypedStepHandler<TInput, TSteps extends Record<string, unknown>, TResult> = (ctx: StepContext<TInput, TSteps>) => Promise<TResult> | TResult;
20
+ /** Compensate handler (type-erased for internal storage) */
21
+ export type CompensateHandler<TInput = unknown> = (ctx: StepContext<TInput, any>) => Promise<void> | void;
22
+ /** Typed compensate handler — preserves accumulated step types */
23
+ export type TypedCompensateHandler<TInput, TSteps extends Record<string, unknown>> = (ctx: StepContext<TInput, TSteps>) => Promise<void> | void;
20
24
  /** Schema-like object — any object with a .parse() method (Zod, ArkType, Valibot, etc.) */
21
25
  export interface SchemaLike {
22
26
  parse(data: unknown): unknown;
23
27
  }
24
28
  /** Options for a single step */
25
- export interface StepOptions<TInput = unknown> {
29
+ export interface StepOptions<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> {
26
30
  retry?: number;
27
31
  timeout?: number;
28
- compensate?: CompensateHandler<TInput>;
32
+ compensate?: TypedCompensateHandler<TInput, TSteps> | CompensateHandler<TInput>;
29
33
  /** Validate step input before execution */
30
34
  inputSchema?: SchemaLike;
31
35
  /** Validate step output after execution */
@@ -42,10 +46,10 @@ export interface StepDefinition {
42
46
  outputSchema?: SchemaLike;
43
47
  }
44
48
  /** Branch condition function */
45
- export type BranchCondition = (ctx: StepContext) => string;
46
- /** Internal branch definition */
49
+ export type BranchCondition<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> = (ctx: StepContext<TInput, TSteps>) => string;
50
+ /** Internal branch definition (type-erased) */
47
51
  export interface BranchDefinition {
48
- condition: BranchCondition;
52
+ condition: BranchCondition<any, any>;
49
53
  paths: Map<string, StepDefinition[]>;
50
54
  }
51
55
  /** Definition of a parallel step group */
@@ -53,29 +57,29 @@ export interface ParallelDefinition {
53
57
  steps: StepDefinition[];
54
58
  }
55
59
  /** Input mapper for sub-workflows */
56
- export type SubWorkflowInputMapper = (ctx: StepContext) => unknown;
60
+ export type SubWorkflowInputMapper<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> = (ctx: StepContext<TInput, TSteps>) => unknown;
57
61
  /** Loop condition: receives context + iteration count, returns boolean */
58
- export type LoopCondition = (ctx: StepContext, iteration: number) => boolean | Promise<boolean>;
59
- /** Definition of a doUntil/doWhile loop */
62
+ export type LoopCondition<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> = (ctx: StepContext<TInput, TSteps>, iteration: number) => boolean | Promise<boolean>;
63
+ /** Definition of a doUntil/doWhile loop (type-erased) */
60
64
  export interface LoopDefinition {
61
- condition: LoopCondition;
65
+ condition: LoopCondition<any, any>;
62
66
  steps: StepDefinition[];
63
67
  maxIterations: number;
64
68
  }
65
69
  /** Item extractor for forEach */
66
- export type ForEachItemsExtractor = (ctx: StepContext) => unknown[];
67
- /** Definition of a forEach loop */
70
+ export type ForEachItemsExtractor<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> = (ctx: StepContext<TInput, TSteps>) => unknown[];
71
+ /** Definition of a forEach loop (type-erased) */
68
72
  export interface ForEachDefinition {
69
- items: ForEachItemsExtractor;
73
+ items: ForEachItemsExtractor<any, any>;
70
74
  step: StepDefinition;
71
75
  maxIterations: number;
72
76
  }
73
77
  /** Transform function for map */
74
- export type MapTransformFn = (ctx: StepContext) => unknown;
75
- /** Definition of a map node */
78
+ export type MapTransformFn<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> = (ctx: StepContext<TInput, TSteps>) => unknown;
79
+ /** Definition of a map node (type-erased) */
76
80
  export interface MapDefinition {
77
81
  name: string;
78
- transform: MapTransformFn;
82
+ transform: MapTransformFn<any, any>;
79
83
  }
80
84
  /** Workflow node (discriminated union) */
81
85
  export type WorkflowNode = {
@@ -94,7 +98,7 @@ export type WorkflowNode = {
94
98
  } | {
95
99
  type: 'subWorkflow';
96
100
  name: string;
97
- inputMapper: SubWorkflowInputMapper;
101
+ inputMapper: SubWorkflowInputMapper<any, any>;
98
102
  } | {
99
103
  type: 'doUntil';
100
104
  def: LoopDefinition;
@@ -187,6 +191,17 @@ export interface StepJobData {
187
191
  workflowName: string;
188
192
  nodeIndex: number;
189
193
  }
194
+ /** Result of engine.recover() */
195
+ export interface RecoverResult {
196
+ /** Number of running executions re-enqueued */
197
+ running: number;
198
+ /** Number of waiting executions with re-armed timers */
199
+ waiting: number;
200
+ /** Number of compensating executions re-run */
201
+ compensating: number;
202
+ /** Total recovered */
203
+ total: number;
204
+ }
190
205
  /** Options for cleanup */
191
206
  export interface CleanupOptions {
192
207
  maxAge: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/types.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,43 @@
1
1
  /**
2
2
  * Workflow - DSL builder for defining workflow step graphs
3
3
  * Pure data structure, no side effects.
4
+ *
5
+ * Supports type-safe step chaining: each .step() narrows the return type
6
+ * so subsequent steps can access previous results without casting.
4
7
  */
5
- import type { WorkflowNode, StepHandler, StepOptions, StepContext, BranchCondition, LoopCondition, ForEachItemsExtractor, MapTransformFn } from './types';
6
- export declare class Workflow<TInput = unknown> {
8
+ import type { WorkflowNode, StepOptions, StepContext, BranchCondition, LoopCondition, ForEachItemsExtractor, TypedStepHandler } from './types';
9
+ export declare class Workflow<TInput = unknown, TSteps extends Record<string, unknown> = Record<string, unknown>> {
7
10
  readonly name: string;
8
11
  readonly nodes: WorkflowNode[];
9
12
  constructor(name: string);
10
- /** Add a step to the workflow */
11
- step(name: string, handler: StepHandler<TInput>, options?: StepOptions<TInput>): this;
13
+ /** Add a step to the workflow — return type accumulates into TSteps */
14
+ step<TName extends string, TResult>(name: TName, handler: TypedStepHandler<TInput, TSteps, TResult>, options?: StepOptions<TInput, TSteps>): Workflow<TInput, TSteps & Record<TName, Awaited<TResult>>>;
12
15
  /** Add a branch point — call .path() after this to define paths */
13
- branch(condition: BranchCondition): this;
16
+ branch(condition: BranchCondition<TInput, TSteps>): this;
14
17
  /** Define a branch path (must follow a .branch() call) */
15
- path(name: string, builder: (w: Workflow<TInput>) => Workflow<TInput>): this;
16
- /** Run multiple steps in parallel */
17
- parallel(builder: (w: Workflow<TInput>) => Workflow<TInput>): this;
18
+ path(name: string, builder: (w: Workflow<TInput, TSteps>) => Workflow<TInput, any>): this;
19
+ /** Run multiple steps in parallel — accumulated types from sub-builder merge into TSteps */
20
+ parallel<TNewSteps extends Record<string, unknown>>(builder: (w: Workflow<TInput, TSteps>) => Workflow<TInput, TSteps & TNewSteps>): Workflow<TInput, TSteps & TNewSteps>;
18
21
  /** Call another registered workflow as a step */
19
- subWorkflow(name: string, inputMapper: (ctx: StepContext<TInput>) => unknown): this;
22
+ subWorkflow<TName extends string>(name: TName, inputMapper: (ctx: StepContext<TInput, TSteps>) => unknown): Workflow<TInput, TSteps & Record<`sub:${TName}`, Record<string, unknown>>>;
20
23
  /** Wait for an external signal before continuing */
21
24
  waitFor(event: string, options?: {
22
25
  timeout?: number;
23
26
  }): this;
24
27
  /** Repeat steps until condition returns true (checked after each iteration) */
25
- doUntil(condition: LoopCondition, builder: (w: Workflow<TInput>) => Workflow<TInput>, options?: {
28
+ doUntil(condition: LoopCondition<TInput, TSteps>, builder: (w: Workflow<TInput, TSteps>) => Workflow<TInput, any>, options?: {
26
29
  maxIterations?: number;
27
30
  }): this;
28
31
  /** Repeat steps while condition returns true (checked before each iteration) */
29
- doWhile(condition: LoopCondition, builder: (w: Workflow<TInput>) => Workflow<TInput>, options?: {
32
+ doWhile(condition: LoopCondition<TInput, TSteps>, builder: (w: Workflow<TInput, TSteps>) => Workflow<TInput, any>, options?: {
30
33
  maxIterations?: number;
31
34
  }): this;
32
35
  /** Iterate over items, executing a step for each */
33
- forEach(items: ForEachItemsExtractor, name: string, handler: StepHandler<TInput>, options?: StepOptions<TInput> & {
36
+ forEach<TName extends string, TResult>(items: ForEachItemsExtractor<TInput, TSteps>, name: TName, handler: TypedStepHandler<TInput, TSteps, TResult>, options?: StepOptions<TInput, TSteps> & {
34
37
  maxIterations?: number;
35
- }): this;
38
+ }): Workflow<TInput, TSteps & Record<TName, Awaited<TResult>>>;
36
39
  /** Transform step results into a new value stored under the given name */
37
- map(name: string, transform: MapTransformFn): this;
40
+ map<TName extends string, TResult>(name: TName, transform: (ctx: StepContext<TInput, TSteps>) => TResult): Workflow<TInput, TSteps & Record<TName, Awaited<TResult>>>;
38
41
  /** Get flat list of step names for validation */
39
42
  getStepNames(): string[];
40
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/workflow.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EAEX,WAAW,EAEX,WAAW,EACX,eAAe,EAEf,aAAa,EACb,qBAAqB,EACrB,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAQ,CAAC,MAAM,GAAG,OAAO;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,CAAM;gBAExB,IAAI,EAAE,MAAM;IAIxB,iCAAiC;IACjC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI;IAgBrF,mEAAmE;IACnE,MAAM,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI;IAQxC,0DAA0D;IAC1D,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI;IAc5E,qCAAqC;IACrC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI;IAalE,iDAAiD;IACjD,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,OAAO,GAAG,IAAI;IASnF,oDAAoD;IACpD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAS5D,+EAA+E;IAC/E,OAAO,CACL,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAClD,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GACnC,IAAI;IAcP,gFAAgF;IAChF,OAAO,CACL,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAClD,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GACnC,IAAI;IAcP,oDAAoD;IACpD,OAAO,CACL,KAAK,EAAE,qBAAqB,EAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,EAC5B,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GACzD,IAAI;IAiBP,0EAA0E;IAC1E,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,GAAG,IAAI;IAKlD,iDAAiD;IACjD,YAAY,IAAI,MAAM,EAAE;CAuBzB"}
1
+ {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/client/workflow/workflow.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  /**
2
2
  * Workflow - DSL builder for defining workflow step graphs
3
3
  * Pure data structure, no side effects.
4
+ *
5
+ * Supports type-safe step chaining: each .step() narrows the return type
6
+ * so subsequent steps can access previous results without casting.
4
7
  */
5
8
  export class Workflow {
6
9
  name;
@@ -8,7 +11,7 @@ export class Workflow {
8
11
  constructor(name) {
9
12
  this.name = name;
10
13
  }
11
- /** Add a step to the workflow */
14
+ /** Add a step to the workflow — return type accumulates into TSteps */
12
15
  step(name, handler, options) {
13
16
  this.nodes.push({
14
17
  type: 'step',
@@ -28,7 +31,7 @@ export class Workflow {
28
31
  branch(condition) {
29
32
  this.nodes.push({
30
33
  type: 'branch',
31
- def: { condition, paths: new Map() },
34
+ def: { condition: condition, paths: new Map() },
32
35
  });
33
36
  return this;
34
37
  }
@@ -46,7 +49,7 @@ export class Workflow {
46
49
  lastNode.def.paths.set(name, steps);
47
50
  return this;
48
51
  }
49
- /** Run multiple steps in parallel */
52
+ /** Run multiple steps in parallel — accumulated types from sub-builder merge into TSteps */
50
53
  parallel(builder) {
51
54
  const sub = new Workflow(`${this.name}:parallel`);
52
55
  builder(sub);
@@ -70,11 +73,7 @@ export class Workflow {
70
73
  }
71
74
  /** Wait for an external signal before continuing */
72
75
  waitFor(event, options) {
73
- this.nodes.push({
74
- type: 'waitFor',
75
- event,
76
- timeout: options?.timeout,
77
- });
76
+ this.nodes.push({ type: 'waitFor', event, timeout: options?.timeout });
78
77
  return this;
79
78
  }
80
79
  /** Repeat steps until condition returns true (checked after each iteration) */
@@ -88,7 +87,11 @@ export class Workflow {
88
87
  throw new Error('doUntil() requires at least one step');
89
88
  this.nodes.push({
90
89
  type: 'doUntil',
91
- def: { condition, steps, maxIterations: options?.maxIterations ?? 100 },
90
+ def: {
91
+ condition: condition,
92
+ steps,
93
+ maxIterations: options?.maxIterations ?? 100,
94
+ },
92
95
  });
93
96
  return this;
94
97
  }
@@ -103,7 +106,11 @@ export class Workflow {
103
106
  throw new Error('doWhile() requires at least one step');
104
107
  this.nodes.push({
105
108
  type: 'doWhile',
106
- def: { condition, steps, maxIterations: options?.maxIterations ?? 100 },
109
+ def: {
110
+ condition: condition,
111
+ steps,
112
+ maxIterations: options?.maxIterations ?? 100,
113
+ },
107
114
  });
108
115
  return this;
109
116
  }
@@ -120,22 +127,28 @@ export class Workflow {
120
127
  };
121
128
  this.nodes.push({
122
129
  type: 'forEach',
123
- def: { items, step, maxIterations: options?.maxIterations ?? 1000 },
130
+ def: {
131
+ items: items,
132
+ step,
133
+ maxIterations: options?.maxIterations ?? 1000,
134
+ },
124
135
  });
125
136
  return this;
126
137
  }
127
138
  /** Transform step results into a new value stored under the given name */
128
139
  map(name, transform) {
129
- this.nodes.push({ type: 'map', def: { name, transform } });
140
+ this.nodes.push({
141
+ type: 'map',
142
+ def: { name, transform: transform },
143
+ });
130
144
  return this;
131
145
  }
132
146
  /** Get flat list of step names for validation */
133
147
  getStepNames() {
134
148
  const names = [];
135
149
  for (const node of this.nodes) {
136
- if (node.type === 'step') {
150
+ if (node.type === 'step')
137
151
  names.push(node.def.name);
138
- }
139
152
  else if (node.type === 'branch') {
140
153
  for (const steps of node.def.paths.values()) {
141
154
  for (const s of steps)
@@ -146,19 +159,16 @@ export class Workflow {
146
159
  for (const s of node.def.steps)
147
160
  names.push(s.name);
148
161
  }
149
- else if (node.type === 'subWorkflow') {
162
+ else if (node.type === 'subWorkflow')
150
163
  names.push(`sub:${node.name}`);
151
- }
152
164
  else if (node.type === 'doUntil' || node.type === 'doWhile') {
153
165
  for (const s of node.def.steps)
154
166
  names.push(s.name);
155
167
  }
156
- else if (node.type === 'forEach') {
168
+ else if (node.type === 'forEach')
157
169
  names.push(node.def.step.name);
158
- }
159
- else if (node.type === 'map') {
170
+ else if (node.type === 'map')
160
171
  names.push(node.def.name);
161
- }
162
172
  }
163
173
  return names;
164
174
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/client/workflow/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/client/workflow/workflow.ts"],"names":[],"mappings":"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"}