@workglow/task-graph 0.2.23 → 0.2.25

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 (75) hide show
  1. package/dist/browser.js +1957 -1622
  2. package/dist/browser.js.map +38 -23
  3. package/dist/bun.js +1958 -1623
  4. package/dist/bun.js.map +38 -23
  5. package/dist/common.d.ts +14 -0
  6. package/dist/common.d.ts.map +1 -1
  7. package/dist/node.js +1958 -1623
  8. package/dist/node.js.map +38 -23
  9. package/dist/task/CacheCoordinator.d.ts +48 -0
  10. package/dist/task/CacheCoordinator.d.ts.map +1 -0
  11. package/dist/task/FallbackTask.d.ts +1 -0
  12. package/dist/task/FallbackTask.d.ts.map +1 -1
  13. package/dist/task/FallbackTaskRunner.d.ts +3 -2
  14. package/dist/task/FallbackTaskRunner.d.ts.map +1 -1
  15. package/dist/task/GraphAsTask.d.ts +1 -0
  16. package/dist/task/GraphAsTask.d.ts.map +1 -1
  17. package/dist/task/GraphAsTaskRunner.d.ts +4 -3
  18. package/dist/task/GraphAsTaskRunner.d.ts.map +1 -1
  19. package/dist/task/ITask.d.ts +19 -3
  20. package/dist/task/ITask.d.ts.map +1 -1
  21. package/dist/task/IteratorTaskRunner.d.ts +3 -2
  22. package/dist/task/IteratorTaskRunner.d.ts.map +1 -1
  23. package/dist/task/JobQueueFactory.d.ts +1 -0
  24. package/dist/task/JobQueueFactory.d.ts.map +1 -1
  25. package/dist/task/MapTask.d.ts +1 -0
  26. package/dist/task/MapTask.d.ts.map +1 -1
  27. package/dist/task/ReduceTask.d.ts +1 -0
  28. package/dist/task/ReduceTask.d.ts.map +1 -1
  29. package/dist/task/StreamProcessor.d.ts +38 -0
  30. package/dist/task/StreamProcessor.d.ts.map +1 -0
  31. package/dist/task/TaskRunContext.d.ts +33 -0
  32. package/dist/task/TaskRunContext.d.ts.map +1 -0
  33. package/dist/task/TaskRunner.d.ts +31 -47
  34. package/dist/task/TaskRunner.d.ts.map +1 -1
  35. package/dist/task/WhileTask.d.ts +1 -0
  36. package/dist/task/WhileTask.d.ts.map +1 -1
  37. package/dist/task/WhileTaskRunner.d.ts +3 -2
  38. package/dist/task/WhileTaskRunner.d.ts.map +1 -1
  39. package/dist/task-graph/Dataflow.d.ts +1 -1
  40. package/dist/task-graph/EdgeMaterializer.d.ts +88 -0
  41. package/dist/task-graph/EdgeMaterializer.d.ts.map +1 -0
  42. package/dist/task-graph/GraphSchemaUtils.d.ts +19 -0
  43. package/dist/task-graph/GraphSchemaUtils.d.ts.map +1 -1
  44. package/dist/task-graph/IWorkflow.d.ts +11 -1
  45. package/dist/task-graph/IWorkflow.d.ts.map +1 -1
  46. package/dist/task-graph/LoopBuilderContext.d.ts +60 -0
  47. package/dist/task-graph/LoopBuilderContext.d.ts.map +1 -0
  48. package/dist/task-graph/RunContext.d.ts +39 -0
  49. package/dist/task-graph/RunContext.d.ts.map +1 -0
  50. package/dist/task-graph/RunScheduler.d.ts +81 -0
  51. package/dist/task-graph/RunScheduler.d.ts.map +1 -0
  52. package/dist/task-graph/StreamPump.d.ts +122 -0
  53. package/dist/task-graph/StreamPump.d.ts.map +1 -0
  54. package/dist/task-graph/TaskGraph.d.ts +10 -2
  55. package/dist/task-graph/TaskGraph.d.ts.map +1 -1
  56. package/dist/task-graph/TaskGraphRunner.d.ts +31 -167
  57. package/dist/task-graph/TaskGraphRunner.d.ts.map +1 -1
  58. package/dist/task-graph/Workflow.d.ts +18 -99
  59. package/dist/task-graph/Workflow.d.ts.map +1 -1
  60. package/dist/task-graph/WorkflowBuilder.d.ts +93 -0
  61. package/dist/task-graph/WorkflowBuilder.d.ts.map +1 -0
  62. package/dist/task-graph/WorkflowCacheAdapter.d.ts +19 -0
  63. package/dist/task-graph/WorkflowCacheAdapter.d.ts.map +1 -0
  64. package/dist/task-graph/WorkflowEventBridge.d.ts +41 -0
  65. package/dist/task-graph/WorkflowEventBridge.d.ts.map +1 -0
  66. package/dist/task-graph/WorkflowFactories.d.ts +52 -0
  67. package/dist/task-graph/WorkflowFactories.d.ts.map +1 -0
  68. package/dist/task-graph/WorkflowPipe.d.ts +32 -0
  69. package/dist/task-graph/WorkflowPipe.d.ts.map +1 -0
  70. package/dist/task-graph/WorkflowRunContext.d.ts +27 -0
  71. package/dist/task-graph/WorkflowRunContext.d.ts.map +1 -0
  72. package/dist/task-graph/WorkflowTask.d.ts +19 -0
  73. package/dist/task-graph/WorkflowTask.d.ts.map +1 -0
  74. package/package.json +7 -7
  75. package/src/EXECUTION_MODEL.md +13 -5
@@ -3,14 +3,15 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { ISpan } from "@workglow/util";
7
6
  import { ConvertAllToOptionalArray, ResourceScope, ServiceRegistry } from "@workglow/util";
8
7
  import { TaskOutputRepository } from "../storage/TaskOutputRepository";
9
- import type { IEntitlementEnforcer } from "../task/EntitlementEnforcer";
10
8
  import { ITask } from "../task/ITask";
11
- import type { StreamMode } from "../task/StreamTypes";
12
- import { TaskError, TaskGraphTimeoutError } from "../task/TaskError";
13
- import { TaskInput, TaskOutput, TaskStatus } from "../task/TaskTypes";
9
+ import { TaskError } from "../task/TaskError";
10
+ import { TaskInput, TaskOutput } from "../task/TaskTypes";
11
+ import { EdgeMaterializer } from "./EdgeMaterializer";
12
+ import { RunContext } from "./RunContext";
13
+ import { RunScheduler } from "./RunScheduler";
14
+ import { StreamPump } from "./StreamPump";
14
15
  import { TaskGraph, TaskGraphRunConfig, TaskGraphRunPreviewConfig } from "./TaskGraph";
15
16
  import { DependencyBasedScheduler, TopologicalScheduler } from "./TaskGraphScheduler";
16
17
  /**
@@ -59,6 +60,10 @@ export declare class TaskGraphRunner {
59
60
  * Whether the task graph is currently running
60
61
  */
61
62
  protected running: boolean;
63
+ /**
64
+ * Whether the task graph is currently running in preview mode.
65
+ * Read by EdgeMaterializer via bracket access (`runner["previewRunning"]`).
66
+ */
62
67
  protected previewRunning: boolean;
63
68
  /**
64
69
  * The task graph to run
@@ -74,7 +79,8 @@ export declare class TaskGraphRunner {
74
79
  */
75
80
  protected accumulateLeafOutputs: boolean;
76
81
  /**
77
- * Service registry for this graph run
82
+ * Service registry for this graph run.
83
+ * Read by EdgeMaterializer via bracket access (`runner["registry"]`).
78
84
  */
79
85
  protected registry: ServiceRegistry;
80
86
  /**
@@ -82,33 +88,26 @@ export declare class TaskGraphRunner {
82
88
  */
83
89
  protected resourceScope?: ResourceScope;
84
90
  /**
85
- * AbortController for cancelling graph execution
86
- */
87
- protected abortController: AbortController | undefined;
88
- /**
89
- * Maps to track task execution state
91
+ * Per-run state. Set by handleStart, cleared by handleComplete/Error/Abort.
92
+ * The only mutable per-run state on the facade — exists so the public abort()
93
+ * and disable() methods (which take no arguments) have something to act on.
90
94
  */
91
- protected inProgressTasks: Map<unknown, Promise<TaskOutput>>;
92
- protected inProgressFunctions: Map<unknown, Promise<void>>;
93
- protected failedTaskErrors: Map<unknown, TaskError>;
95
+ protected currentCtx?: RunContext;
94
96
  /**
95
- * Active telemetry span for the current graph run.
97
+ * Edge materializer owns dataflow read/write, transforms, and error-port routing.
96
98
  */
97
- protected telemetrySpan?: ISpan;
99
+ protected readonly edgeMaterializer: EdgeMaterializer;
98
100
  /**
99
- * Timer handle for graph-level timeout. Cleared on completion, error, or abort.
101
+ * Stream pump owns streaming-input handoff, streaming task execution, and
102
+ * stream tee/fan-out to outgoing dataflow edges.
100
103
  */
101
- protected graphTimeoutTimer?: ReturnType<typeof setTimeout>;
104
+ protected readonly streamPump: StreamPump;
102
105
  /**
103
- * When a graph-level timeout fires, this stores the error so handleAbort()
104
- * can surface the correct error type.
106
+ * Run-loop coordinator owns the for-await loop body, status push, disabled
107
+ * cascade, progress aggregation, and graph-level timeout arm/clear.
108
+ * Read by EdgeMaterializer via bracket access (`runner["runScheduler"]`).
105
109
  */
106
- protected pendingGraphTimeoutError?: TaskGraphTimeoutError;
107
- /**
108
- * The entitlement enforcer for the current run, if enforcement is enabled.
109
- * Set during handleStart and cleared after the run completes.
110
- */
111
- protected activeEnforcer?: IEntitlementEnforcer;
110
+ protected readonly runScheduler: RunScheduler;
112
111
  /**
113
112
  * Constructor for TaskGraphRunner
114
113
  * @param graph The task graph to run
@@ -117,10 +116,6 @@ export declare class TaskGraphRunner {
117
116
  * @param previewScheduler The scheduler to use for preview task execution
118
117
  */
119
118
  constructor(graph: TaskGraph, outputCache?: TaskOutputRepository, processScheduler?: DependencyBasedScheduler, previewScheduler?: TopologicalScheduler);
120
- /**
121
- * Unique ID for the current run, used for timing labels.
122
- */
123
- protected runId: string;
124
119
  runGraph<ExecuteOutput extends TaskOutput>(input?: TaskInput, config?: TaskGraphRunConfig): Promise<GraphResultArray<ExecuteOutput>>;
125
120
  /**
126
121
  * Runs the task graph in preview mode
@@ -141,13 +136,6 @@ export declare class TaskGraphRunner {
141
136
  * Disables the task graph execution
142
137
  */
143
138
  disable(): Promise<void>;
144
- /**
145
- * Filters graph-level input to only include properties that are not connected via dataflows for a given task
146
- * @param task The task to filter input for
147
- * @param input The graph-level input
148
- * @returns Filtered input containing only unconnected properties
149
- */
150
- protected filterInputForTask(task: ITask, input: TaskInput): TaskInput;
151
139
  /**
152
140
  * Adds input data to a task.
153
141
  * Delegates to {@link Task.addInput} for the actual merging logic.
@@ -162,76 +150,6 @@ export declare class TaskGraphRunner {
162
150
  */
163
151
  protected filterLeafResults<T>(results: GraphResultArray<T>): GraphResultArray<T>;
164
152
  mergeExecuteOutputsToRunOutput<ExecuteOutput extends TaskOutput, Merge extends CompoundMergeStrategy = CompoundMergeStrategy>(results: GraphResultArray<ExecuteOutput>, compoundMerge: Merge): GraphResult<ExecuteOutput, Merge>;
165
- /**
166
- * Copies input data from edges to a task
167
- * @param task The task to copy input data to
168
- */
169
- protected copyInputFromEdgesToNode(task: ITask): void;
170
- /**
171
- * Pushes the output of a task to its target tasks
172
- * @param node The task that produced the output
173
- * @param results The output of the task
174
- */
175
- protected pushOutputFromNodeToEdges(node: ITask, results: TaskOutput): Promise<void>;
176
- /**
177
- * Pushes the status of a task to its target edges
178
- * @param node The task that produced the status
179
- *
180
- * For ConditionalTask, this method handles selective dataflow status:
181
- * - Active branch dataflows get COMPLETED status
182
- * - Inactive branch dataflows get DISABLED status
183
- */
184
- protected pushStatusFromNodeToEdges(graph: TaskGraph, node: ITask, status?: TaskStatus): void;
185
- /**
186
- * Pushes the error of a task to its target edges
187
- * @param node The task that produced the error
188
- */
189
- protected pushErrorFromNodeToEdges(graph: TaskGraph, node: ITask): void;
190
- /**
191
- * Returns true if the task has any outgoing dataflow edges that use the
192
- * error output port (`[error]`). These edges indicate that the task's
193
- * errors should be routed to downstream handler tasks instead of failing
194
- * the entire graph.
195
- */
196
- protected hasErrorOutputEdges(task: ITask): boolean;
197
- /**
198
- * Routes a failed task's error through its error-port dataflow edges.
199
- *
200
- * For each outgoing dataflow:
201
- * - Error-port edges (`[error]`) receive the error data and get COMPLETED status
202
- * - Non-error-port edges get DISABLED status (the task didn't produce normal output)
203
- *
204
- * After setting edge statuses, propagateDisabledStatus() cascades DISABLED
205
- * through any downstream tasks that only had non-error inputs from this task.
206
- */
207
- protected pushErrorOutputToEdges(task: ITask): void;
208
- /**
209
- * Propagates DISABLED status through the graph.
210
- *
211
- * When a task's ALL incoming dataflows are DISABLED, that task becomes unreachable
212
- * and should also be disabled. This cascades through the graph until no more
213
- * tasks can be disabled.
214
- *
215
- * This is used by ConditionalTask to disable downstream tasks on inactive branches.
216
- *
217
- * @param graph The task graph to propagate disabled status through
218
- */
219
- protected propagateDisabledStatus(graph: TaskGraph): void;
220
- /**
221
- * Determines whether a streaming task needs to accumulate its text-delta
222
- * chunks into an enriched finish event. Accumulation is needed when:
223
- *
224
- * 1. Output caching is active (the cached value must be fully materialised).
225
- * 2. Any outgoing dataflow edge connects a streaming output port to an input
226
- * port that is not streaming with the same mode (i.e. the downstream task
227
- * cannot consume a raw stream and needs a completed value).
228
- *
229
- * When accumulation is required the source task runs with shouldAccumulate=true,
230
- * emitting an enriched finish event that carries all accumulated port text.
231
- * All downstream dataflow edges share that event via tee'd streams so no
232
- * edge needs to re-accumulate independently.
233
- */
234
- protected taskNeedsAccumulation(task: ITask): boolean;
235
153
  /**
236
154
  * Runs a task
237
155
  * @param task The task to run
@@ -239,54 +157,6 @@ export declare class TaskGraphRunner {
239
157
  * @returns The output of the task
240
158
  */
241
159
  protected runTask<T>(task: ITask, input: TaskInput): Promise<GraphSingleTaskResult<T>>;
242
- /**
243
- * For non-streaming downstream tasks, awaits completion of any active
244
- * streams on input dataflow edges, materializing their values.
245
- *
246
- * Streaming upstream tasks set a ReadableStream on outgoing edges.
247
- * Non-streaming downstream tasks cannot consume streams directly, so
248
- * this method reads each stream to completion and accumulates the
249
- * value (via Dataflow.awaitStreamValue) before the task reads its
250
- * inputs through the normal getPortData() path.
251
- */
252
- protected awaitStreamInputs(task: ITask): Promise<void>;
253
- /**
254
- * Runs a streaming task within the DAG.
255
- * Listens for stream events to:
256
- * - Notify the scheduler when streaming begins (unblocking downstream streamable tasks)
257
- * - Push stream data to outgoing dataflow edges
258
- * - Have the source task accumulate and emit enriched finish events for
259
- * non-streaming downstream tasks (when taskNeedsAccumulation() is true)
260
- */
261
- protected runStreamingTask<T>(task: ITask, input: TaskInput): Promise<GraphSingleTaskResult<T>>;
262
- /**
263
- * Returns true if an event carries a port-specific delta (text-delta or object-delta).
264
- */
265
- private static isPortDelta;
266
- /**
267
- * Creates a ReadableStream from task streaming events, optionally filtered
268
- * to a single port. When `portId` is undefined (DATAFLOW_ALL_PORTS), all
269
- * events pass through. When set, only delta events matching the port plus
270
- * control events (finish, error, snapshot) are enqueued.
271
- *
272
- * Also taps snapshot events to write per-port data into each edge's
273
- * `latestSnapshot` slot for downstream peek-during-streaming.
274
- */
275
- private createStreamFromTaskEvents;
276
- /**
277
- * Pushes stream events from a streaming task to its outgoing dataflow edges.
278
- * Creates per-port filtered ReadableStreams for specific-port edges and
279
- * unfiltered streams for DATAFLOW_ALL_PORTS edges. Within each port group,
280
- * uses tee() for fan-out to multiple consumers.
281
- */
282
- protected pushStreamToEdges(task: ITask, _streamMode: StreamMode): void;
283
- /**
284
- * Resets a task
285
- * @param graph The task graph to reset
286
- * @param task The task to reset
287
- * @param runId The run ID
288
- */
289
- protected resetTask(graph: TaskGraph, task: ITask, runId: string): void;
290
160
  /**
291
161
  * Resets the task graph, recursively
292
162
  * @param graph The task graph to reset
@@ -298,9 +168,6 @@ export declare class TaskGraphRunner {
298
168
  */
299
169
  protected handleStart(config?: TaskGraphRunConfig): Promise<void>;
300
170
  protected handleStartPreview(config?: TaskGraphRunConfig): Promise<void>;
301
- /**
302
- * Handles the completion of task graph execution
303
- */
304
171
  /**
305
172
  * Clears the graph-level timeout timer if active.
306
173
  */
@@ -313,7 +180,12 @@ export declare class TaskGraphRunner {
313
180
  protected handleError(error: TaskError): Promise<void>;
314
181
  protected handleErrorPreview(): Promise<void>;
315
182
  /**
316
- * Handles task graph abortion
183
+ * Handles task graph abortion.
184
+ *
185
+ * Single-fire: invoked from both the abort-signal listener installed in
186
+ * `handleStart` and the `runGraph` epilogue when `signal.aborted`. Without
187
+ * a guard, observers see two `"abort"` events for one logical abort. We
188
+ * latch on `this.running` synchronously so the second caller is a no-op.
317
189
  */
318
190
  protected handleAbort(): Promise<void>;
319
191
  protected handleAbortPreview(): Promise<void>;
@@ -321,13 +193,5 @@ export declare class TaskGraphRunner {
321
193
  * Handles task graph disabling
322
194
  */
323
195
  protected handleDisable(): Promise<void>;
324
- /**
325
- * Handles progress updates for the task graph by averaging `progress` across tasks whose class
326
- * declares its own `execute` ({@link taskPrototypeHasOwnExecute}). Other nodes are ignored.
327
- * @param progress Progress value (0-100), or `undefined` for indeterminate
328
- * @param message Optional message
329
- * @param args Additional arguments
330
- */
331
- protected handleProgress(task: ITask, progress: number | undefined, message?: string, ...args: any[]): Promise<void>;
332
196
  }
333
197
  //# sourceMappingURL=TaskGraphRunner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TaskGraphRunner.d.ts","sourceRoot":"","sources":["../../src/task-graph/TaskGraphRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskGraphRunner.d.ts","sourceRoot":"","sources":["../../src/task-graph/TaskGraphRunner.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import type { EventParameters } from "@workglow/util";
7
7
  import { EventEmitter, ServiceRegistry } from "@workglow/util";
8
- import { TaskOutputRepository } from "../storage/TaskOutputRepository";
8
+ import type { TaskOutputRepository } from "../storage/TaskOutputRepository";
9
9
  import type { ConditionFn } from "../task/ConditionalTask";
10
10
  import { GraphAsTask } from "../task/GraphAsTask";
11
11
  import type { ITask, ITaskConstructor } from "../task/ITask";
@@ -14,28 +14,16 @@ import { Task } from "../task/Task";
14
14
  import type { TaskEntitlements } from "../task/TaskEntitlements";
15
15
  import type { JsonTaskItem, TaskGraphJson, TaskGraphJsonOptions } from "../task/TaskJSON";
16
16
  import type { DataPorts, TaskConfig, TaskIdType, TaskInput } from "../task/TaskTypes";
17
- import { ConditionalBuilder } from "./ConditionalBuilder";
17
+ import type { ConditionalBuilder } from "./ConditionalBuilder";
18
18
  import type { PipeFunction, Taskish } from "./Conversions";
19
19
  import type { GraphEntitlementOptions } from "./GraphEntitlementUtils";
20
- import type { ITaskGraph } from "./ITaskGraph";
21
20
  import type { IWorkflow, WorkflowRunConfig } from "./IWorkflow";
22
21
  import { TaskGraph } from "./TaskGraph";
23
22
  import type { PropertyArrayGraphResult } from "./TaskGraphRunner";
24
23
  import { CompoundMergeStrategy } from "./TaskGraphRunner";
25
24
  import type { ITransformStep } from "./TransformTypes";
26
- export declare function getLastTask(workflow: IWorkflow): ITask<any, any, any> | undefined;
27
- export declare function connect(source: ITask<any, any, any>, target: ITask<any, any, any>, workflow: IWorkflow<any, any>): void;
28
- export declare function pipe<A extends DataPorts, B extends DataPorts>([fn1]: [Taskish<A, B>], workflow?: IWorkflow<A, B>): IWorkflow<A, B>;
29
- export declare function pipe<A extends DataPorts, B extends DataPorts, C extends DataPorts>([fn1, fn2]: [Taskish<A, B>, Taskish<B, C>], workflow?: IWorkflow<A, C>): IWorkflow<A, C>;
30
- export declare function pipe<A extends DataPorts, B extends DataPorts, C extends DataPorts, D extends DataPorts>([fn1, fn2, fn3]: [Taskish<A, B>, Taskish<B, C>, Taskish<C, D>], workflow?: IWorkflow<A, D>): IWorkflow<A, D>;
31
- export declare function pipe<A extends DataPorts, B extends DataPorts, C extends DataPorts, D extends DataPorts, E extends DataPorts>([fn1, fn2, fn3, fn4]: [Taskish<A, B>, Taskish<B, C>, Taskish<C, D>, Taskish<D, E>], workflow?: IWorkflow<A, E>): IWorkflow<A, E>;
32
- export declare function pipe<A extends DataPorts, B extends DataPorts, C extends DataPorts, D extends DataPorts, E extends DataPorts, F extends DataPorts>([fn1, fn2, fn3, fn4, fn5]: [
33
- Taskish<A, B>,
34
- Taskish<B, C>,
35
- Taskish<C, D>,
36
- Taskish<D, E>,
37
- Taskish<E, F>
38
- ], workflow?: IWorkflow<A, F>): IWorkflow<A, F>;
25
+ import type { IWorkflowBuilderHandle } from "./WorkflowBuilder";
26
+ import type { CreateWorkflow } from "./WorkflowFactories";
39
27
  /** Options accepted by {@link Workflow.rename}. */
40
28
  export interface RenameOptions {
41
29
  /** Index of the task whose output is renamed (defaults to the last task, `-1`). */
@@ -43,62 +31,6 @@ export interface RenameOptions {
43
31
  /** Transform chain applied to the dataflow edge this rename creates. */
44
32
  readonly transforms?: ReadonlyArray<ITransformStep>;
45
33
  }
46
- export declare function parallel<I extends DataPorts = DataPorts, O extends DataPorts = DataPorts>(args: (PipeFunction<I, O> | ITask<I, O> | IWorkflow<I, O> | ITaskGraph)[], mergeFn?: CompoundMergeStrategy, workflow?: IWorkflow<I, O>): IWorkflow<I, O>;
47
- export type CreateWorkflow<I extends DataPorts, O extends DataPorts, C extends TaskConfig<I>> = (input?: Partial<I>, config?: Partial<C>) => Workflow<I, O>;
48
- export declare function CreateWorkflow<I extends DataPorts, O extends DataPorts, C extends TaskConfig<I> = TaskConfig<I>>(taskClass: ITaskConstructor<I, O, C>): CreateWorkflow<I, O, C>;
49
- /**
50
- * Type for loop workflow methods (map, while, reduce).
51
- * Represents the method signature with proper `this` context.
52
- * Loop methods take only a config parameter - input is not used for loop tasks.
53
- */
54
- export type CreateLoopWorkflow<I extends DataPorts, O extends DataPorts, C extends TaskConfig<I> = TaskConfig<I>> = (this: Workflow<I, O>, config?: Partial<C>) => Workflow<I, O>;
55
- /**
56
- * Factory function that creates a loop workflow method for a given task class.
57
- * Returns a method that can be assigned to Workflow.prototype.
58
- *
59
- * @param taskClass - The iterator task class (MapTask, ReduceTask, etc.)
60
- * @returns A method that creates the task and returns a loop builder workflow
61
- */
62
- export declare function CreateLoopWorkflow<I extends DataPorts, O extends DataPorts, C extends TaskConfig<I> = TaskConfig<I>>(taskClass: ITaskConstructor<I, O, C>): CreateLoopWorkflow<I, O, C>;
63
- /**
64
- * Type for end loop workflow methods (endMap, endBatch, etc.).
65
- */
66
- export type EndLoopWorkflow = (this: Workflow) => Workflow;
67
- /**
68
- * Factory function that creates an end loop workflow method.
69
- *
70
- * @param methodName - The name of the method (for error messages)
71
- * @returns A method that finalizes the loop and returns to the parent workflow
72
- */
73
- export declare function CreateEndLoopWorkflow(methodName: string): EndLoopWorkflow;
74
- /**
75
- * Returns true if the task's output schema has any port with TypedArray format.
76
- * Used by adaptive workflow methods to choose scalar vs vector task variant.
77
- */
78
- export declare function hasVectorOutput(task: ITask): boolean;
79
- /**
80
- * Returns true if the input object looks like vector task input: has a "vectors"
81
- * property that is an array with at least one TypedArray element. Used by
82
- * adaptive workflow methods so that e.g. sum({ vectors: [new Float32Array(...)] })
83
- * chooses the vector variant even with no previous task.
84
- */
85
- export declare function hasVectorLikeInput(input: unknown): boolean;
86
- /**
87
- * Type for adaptive workflow methods that dispatch to scalar or vector variant
88
- * based on the previous task's output schema.
89
- */
90
- export type CreateAdaptiveWorkflow<IS extends DataPorts, _OS extends DataPorts, IV extends DataPorts, _OV extends DataPorts, CS extends TaskConfig<IS> = TaskConfig<IS>, CV extends TaskConfig<IV> = TaskConfig<IV>> = (this: Workflow, input?: Partial<IS> & Partial<IV>, config?: Partial<CS> & Partial<CV>) => Workflow;
91
- /**
92
- * Factory that creates an adaptive workflow method: when called, inspects the
93
- * output schema of the last task in the chain and delegates to the vector
94
- * variant if it has TypedArray output, otherwise to the scalar variant.
95
- * If there is no previous task, defaults to the scalar variant.
96
- *
97
- * @param scalarClass - Task class for scalar path (e.g. ScalarAddTask)
98
- * @param vectorClass - Task class for vector path (e.g. VectorSumTask)
99
- * @returns A method suitable for Workflow.prototype
100
- */
101
- export declare function CreateAdaptiveWorkflow<IS extends DataPorts, OS extends DataPorts, IV extends DataPorts, OV extends DataPorts, CS extends TaskConfig<IS> = TaskConfig<IS>, CV extends TaskConfig<IV> = TaskConfig<IV>>(scalarClass: ITaskConstructor<IS, OS, CS>, vectorClass: ITaskConstructor<IV, OV, CV>): CreateAdaptiveWorkflow<IS, OS, IV, OV, CS, CV>;
102
34
  export type WorkflowEventListeners = {
103
35
  changed: (id: unknown) => void;
104
36
  reset: () => void;
@@ -137,15 +69,20 @@ export declare class Workflow<Input extends DataPorts = DataPorts, Output extend
137
69
  */
138
70
  constructor(cache?: TaskOutputRepository, parent?: Workflow, iteratorTask?: GraphAsTask, registry?: ServiceRegistry);
139
71
  private _graph;
140
- private _dataFlows;
141
- private _error;
142
- private _outputCache?;
143
- private _registry?;
144
- private _entitlementUnsub?;
145
- private _abortController?;
146
- private readonly _parentWorkflow?;
147
- private readonly _iteratorTask?;
148
- private _pendingLoopConnect?;
72
+ private _cache;
73
+ private _bridge?;
74
+ private _builder;
75
+ private _currentRun?;
76
+ /** @internal — exposes the parent's registry so a child loop-builder can inherit it */
77
+ private get builderRegistry();
78
+ /**
79
+ * Internal cross-instance handle for loop-builder wiring and error
80
+ * propagation. Returns a NARROWED interface — only the two members the
81
+ * package actually needs externally — so consumers cannot reach
82
+ * `_dataFlows`, `_registry`, or other builder internals through `wf.builder`.
83
+ * @internal
84
+ */
85
+ get builder(): IWorkflowBuilderHandle;
149
86
  outputCache(): TaskOutputRepository | undefined;
150
87
  /**
151
88
  * Whether this workflow is in loop builder mode.
@@ -263,18 +200,6 @@ export declare class Workflow<Input extends DataPorts = DataPorts, Output extend
263
200
  * @returns The current task graph workflow
264
201
  */
265
202
  reset(): Workflow;
266
- /**
267
- * Sets up event listeners for the task graph
268
- */
269
- private setupEvents;
270
- /**
271
- * Clears event listeners for the task graph
272
- */
273
- private clearEvents;
274
- /**
275
- * Handles changes to the task graph
276
- */
277
- private _onChanged;
278
203
  /**
279
204
  * Connects outputs to inputs between tasks
280
205
  */
@@ -323,12 +248,6 @@ export declare class Workflow<Input extends DataPorts = DataPorts, Output extend
323
248
  parent: ITask;
324
249
  iteratorTask: ITask;
325
250
  }): void;
326
- /**
327
- * Updates InputTask/OutputTask config schemas based on their connected dataflows.
328
- * InputTask schema reflects its outgoing dataflow targets' input schemas.
329
- * OutputTask schema reflects its incoming dataflow sources' output schemas.
330
- */
331
- private static updateBoundaryTaskSchemas;
332
251
  /**
333
252
  * Options for auto-connect operation.
334
253
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Workflow.d.ts","sourceRoot":"","sources":["../../src/task-graph/Workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Workflow.d.ts","sourceRoot":"","sources":["../../src/task-graph/Workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { ServiceRegistry } from "@workglow/util";
7
+ import type { ConditionFn } from "../task/ConditionalTask";
8
+ import type { ITask, ITaskConstructor } from "../task/ITask";
9
+ import type { DataPorts, TaskConfig, TaskInput } from "../task/TaskTypes";
10
+ import { ConditionalBuilder } from "./ConditionalBuilder";
11
+ import type { Taskish } from "./Conversions";
12
+ import { LoopBuilderContext } from "./LoopBuilderContext";
13
+ import type { RenameOptions, Workflow } from "./Workflow";
14
+ /**
15
+ * Owns the DSL state machine for a {@link Workflow}: the list of pending
16
+ * dataflows queued by `.rename(...)`, the most recent error string, the
17
+ * optional service registry, and the optional loop-builder context.
18
+ *
19
+ * The {@link Workflow} facade keeps its public method signatures and
20
+ * delegates the implementation here. This split keeps the run/abort/event
21
+ * surface separate from the chainable graph-construction surface.
22
+ */
23
+ /**
24
+ * Narrowed handle returned by `Workflow.builder`. Exposes only the two
25
+ * members other in-package code legitimately needs to reach across instances
26
+ * (loop-builder wiring + error propagation), keeping `_dataFlows`,
27
+ * `_registry`, and other builder internals out of reach via the facade.
28
+ * @internal
29
+ */
30
+ export interface IWorkflowBuilderHandle {
31
+ readonly loopContext: LoopBuilderContext | undefined;
32
+ setError(message: string): void;
33
+ }
34
+ export declare class WorkflowBuilder implements IWorkflowBuilderHandle {
35
+ private readonly _facade;
36
+ private _dataFlows;
37
+ private _error;
38
+ private readonly _registry?;
39
+ private readonly _loopContext?;
40
+ constructor(facade: Workflow<any, any>, registry?: ServiceRegistry, loopContext?: LoopBuilderContext);
41
+ get error(): string;
42
+ get registry(): ServiceRegistry | undefined;
43
+ get loopContext(): LoopBuilderContext | undefined;
44
+ /**
45
+ * Surfaces an error onto this builder's error slot. Used by deferred
46
+ * loop-builder auto-connect (which runs from a child Workflow but reports
47
+ * the failure onto the parent's `.error`, matching the non-loop path).
48
+ */
49
+ setError(message: string): void;
50
+ /** Clears pending state. Called by the facade's graph setter and reset(). */
51
+ resetState(): void;
52
+ /**
53
+ * Instantiates a task and adds it to the facade's graph; emits "changed".
54
+ * Used both by {@link addTaskWithAutoConnect} and direct callers.
55
+ */
56
+ addTaskInstance<I extends DataPorts, O extends DataPorts, C extends TaskConfig<I> = TaskConfig<I>>(taskClass: ITaskConstructor<I, O, C>, config: C): ITask<I, O, C>;
57
+ /**
58
+ * Adds a task with auto-connect to the previous task. Drains pending
59
+ * dataflows queued by `.rename(...)` first, then runs auto-connect
60
+ * against the immediately-previous task plus earlier tasks for any
61
+ * unmatched required inputs.
62
+ */
63
+ addTaskWithAutoConnect<I extends DataPorts, O extends DataPorts, C extends TaskConfig<I> = TaskConfig<I>>(taskClass: ITaskConstructor<I, O, C>, input?: Partial<I>, config?: Partial<C>): Workflow<any, any>;
64
+ /**
65
+ * Adds an iterator/loop task to the workflow using the same auto-connect
66
+ * logic as {@link addTaskWithAutoConnect}, then returns a new loop-builder
67
+ * Workflow whose template graph the user populates.
68
+ */
69
+ addLoopTask<I extends DataPorts, O extends DataPorts, C extends TaskConfig<I> = TaskConfig<I>>(taskClass: ITaskConstructor<I, O, C>, config?: Partial<C>): Workflow<I, O>;
70
+ /**
71
+ * Connects outputs to inputs between tasks. Validates source/target
72
+ * schemas before adding the dataflow; throws {@link WorkflowError} on
73
+ * mismatch.
74
+ */
75
+ connect(sourceTaskId: unknown, sourceTaskPortId: string, targetTaskId: unknown, targetTaskPortId: string): void;
76
+ /**
77
+ * Renames an output of a task, queuing a pending dataflow. The dataflow's
78
+ * target is filled in when the next task is added via
79
+ * {@link addTaskWithAutoConnect}.
80
+ */
81
+ rename(source: string, target: string, indexOrOptions?: number | RenameOptions): void;
82
+ /**
83
+ * Adds an error handler task that receives errors from the previous task.
84
+ * The handler task is wired from the previous task's `[error]` output port
85
+ * to its all-ports input.
86
+ */
87
+ onError(handler: Taskish): void;
88
+ /** Removes the last task from the graph. */
89
+ pop(): void;
90
+ /** Opens a conditional branch builder rooted at the facade. */
91
+ createConditional(condition: ConditionFn<TaskInput>): ConditionalBuilder;
92
+ }
93
+ //# sourceMappingURL=WorkflowBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkflowBuilder.d.ts","sourceRoot":"","sources":["../../src/task-graph/WorkflowBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAa,eAAe,EAAS,MAAM,gBAAgB,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG1D;;;;;;;;GAQG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,qBAAa,eAAgB,YAAW,sBAAsB;IAC5D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAqB;IAEnD,YACE,MAAM,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAC1B,QAAQ,CAAC,EAAE,eAAe,EAC1B,WAAW,CAAC,EAAE,kBAAkB,EAKjC;IAED,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAW,QAAQ,IAAI,eAAe,GAAG,SAAS,CAEjD;IAED,IAAW,WAAW,IAAI,kBAAkB,GAAG,SAAS,CAEvD;IAED;;;;OAIG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAErC;IAED,6EAA6E;IACtE,UAAU,IAAI,IAAI,CAGxB;IAED;;;OAGG;IACI,eAAe,CACpB,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EACvC,SAAS,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAKjE;IAED;;;;;OAKG;IACI,sBAAsB,CAC3B,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAEvC,SAAS,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACpC,KAAK,GAAE,OAAO,CAAC,CAAC,CAAM,EACtB,MAAM,GAAE,OAAO,CAAC,CAAC,CAAM,GACtB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CA6EpB;IAED;;;;OAIG;IACI,WAAW,CAChB,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EACvC,SAAS,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,GAAE,OAAO,CAAC,CAAC,CAAM,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAsE/E;IAED;;;;OAIG;IACI,OAAO,CACZ,YAAY,EAAE,OAAO,EACrB,gBAAgB,EAAE,MAAM,EACxB,YAAY,EAAE,OAAO,EACrB,gBAAgB,EAAE,MAAM,GACvB,IAAI,CAoCN;IAED;;;;OAIG;IACI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAE,MAAM,GAAG,aAAkB,GAAG,IAAI,CAqC/F;IAED;;;;OAIG;IACI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsBrC;IAED,4CAA4C;IACrC,GAAG,IAAI,IAAI,CAYjB;IAED,+DAA+D;IACxD,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,kBAAkB,CAE9E;CACF"}