bunqueue 2.7.3 → 2.7.5

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 (36) hide show
  1. package/dist/client/worker/processor.d.ts.map +1 -1
  2. package/dist/client/worker/processor.js +35 -99
  3. package/dist/client/worker/processor.js.map +1 -1
  4. package/dist/client/worker/processorHandlers.d.ts +26 -0
  5. package/dist/client/worker/processorHandlers.d.ts.map +1 -0
  6. package/dist/client/worker/processorHandlers.js +137 -0
  7. package/dist/client/worker/processorHandlers.js.map +1 -0
  8. package/dist/client/workflow/compensator.d.ts +15 -0
  9. package/dist/client/workflow/compensator.d.ts.map +1 -0
  10. package/dist/client/workflow/compensator.js +38 -0
  11. package/dist/client/workflow/compensator.js.map +1 -0
  12. package/dist/client/workflow/engine.d.ts +8 -1
  13. package/dist/client/workflow/engine.d.ts.map +1 -1
  14. package/dist/client/workflow/engine.js +9 -0
  15. package/dist/client/workflow/engine.js.map +1 -1
  16. package/dist/client/workflow/executor.d.ts +5 -2
  17. package/dist/client/workflow/executor.d.ts.map +1 -1
  18. package/dist/client/workflow/executor.js +38 -59
  19. package/dist/client/workflow/executor.js.map +1 -1
  20. package/dist/client/workflow/index.d.ts +1 -1
  21. package/dist/client/workflow/index.d.ts.map +1 -1
  22. package/dist/client/workflow/recovery.d.ts +23 -0
  23. package/dist/client/workflow/recovery.d.ts.map +1 -0
  24. package/dist/client/workflow/recovery.js +74 -0
  25. package/dist/client/workflow/recovery.js.map +1 -0
  26. package/dist/client/workflow/store.d.ts +2 -0
  27. package/dist/client/workflow/store.d.ts.map +1 -1
  28. package/dist/client/workflow/store.js +6 -0
  29. package/dist/client/workflow/store.js.map +1 -1
  30. package/dist/client/workflow/types.d.ts +37 -22
  31. package/dist/client/workflow/types.d.ts.map +1 -1
  32. package/dist/client/workflow/workflow.d.ts +17 -14
  33. package/dist/client/workflow/workflow.d.ts.map +1 -1
  34. package/dist/client/workflow/workflow.js +30 -20
  35. package/dist/client/workflow/workflow.js.map +1 -1
  36. package/package.json +1 -1
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bunqueue",
3
- "version": "2.7.3",
3
+ "version": "2.7.5",
4
4
  "description": "High-performance job queue for Bun & AI agents. SQLite persistence, cron scheduling, priorities, retries, DLQ, webhooks, native MCP server. Zero external dependencies.",
5
5
  "type": "module",
6
6
  "main": "dist/main.js",