@workglow/task-graph 0.2.24 → 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 (73) hide show
  1. package/dist/browser.js +1953 -1620
  2. package/dist/browser.js.map +37 -22
  3. package/dist/bun.js +1954 -1621
  4. package/dist/bun.js.map +37 -22
  5. package/dist/common.d.ts +14 -0
  6. package/dist/common.d.ts.map +1 -1
  7. package/dist/node.js +1954 -1621
  8. package/dist/node.js.map +37 -22
  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/MapTask.d.ts +1 -0
  24. package/dist/task/MapTask.d.ts.map +1 -1
  25. package/dist/task/ReduceTask.d.ts +1 -0
  26. package/dist/task/ReduceTask.d.ts.map +1 -1
  27. package/dist/task/StreamProcessor.d.ts +38 -0
  28. package/dist/task/StreamProcessor.d.ts.map +1 -0
  29. package/dist/task/TaskRunContext.d.ts +33 -0
  30. package/dist/task/TaskRunContext.d.ts.map +1 -0
  31. package/dist/task/TaskRunner.d.ts +31 -47
  32. package/dist/task/TaskRunner.d.ts.map +1 -1
  33. package/dist/task/WhileTask.d.ts +1 -0
  34. package/dist/task/WhileTask.d.ts.map +1 -1
  35. package/dist/task/WhileTaskRunner.d.ts +3 -2
  36. package/dist/task/WhileTaskRunner.d.ts.map +1 -1
  37. package/dist/task-graph/Dataflow.d.ts +1 -1
  38. package/dist/task-graph/EdgeMaterializer.d.ts +88 -0
  39. package/dist/task-graph/EdgeMaterializer.d.ts.map +1 -0
  40. package/dist/task-graph/GraphSchemaUtils.d.ts +19 -0
  41. package/dist/task-graph/GraphSchemaUtils.d.ts.map +1 -1
  42. package/dist/task-graph/IWorkflow.d.ts +11 -1
  43. package/dist/task-graph/IWorkflow.d.ts.map +1 -1
  44. package/dist/task-graph/LoopBuilderContext.d.ts +60 -0
  45. package/dist/task-graph/LoopBuilderContext.d.ts.map +1 -0
  46. package/dist/task-graph/RunContext.d.ts +39 -0
  47. package/dist/task-graph/RunContext.d.ts.map +1 -0
  48. package/dist/task-graph/RunScheduler.d.ts +81 -0
  49. package/dist/task-graph/RunScheduler.d.ts.map +1 -0
  50. package/dist/task-graph/StreamPump.d.ts +122 -0
  51. package/dist/task-graph/StreamPump.d.ts.map +1 -0
  52. package/dist/task-graph/TaskGraph.d.ts +10 -2
  53. package/dist/task-graph/TaskGraph.d.ts.map +1 -1
  54. package/dist/task-graph/TaskGraphRunner.d.ts +31 -167
  55. package/dist/task-graph/TaskGraphRunner.d.ts.map +1 -1
  56. package/dist/task-graph/Workflow.d.ts +18 -99
  57. package/dist/task-graph/Workflow.d.ts.map +1 -1
  58. package/dist/task-graph/WorkflowBuilder.d.ts +93 -0
  59. package/dist/task-graph/WorkflowBuilder.d.ts.map +1 -0
  60. package/dist/task-graph/WorkflowCacheAdapter.d.ts +19 -0
  61. package/dist/task-graph/WorkflowCacheAdapter.d.ts.map +1 -0
  62. package/dist/task-graph/WorkflowEventBridge.d.ts +41 -0
  63. package/dist/task-graph/WorkflowEventBridge.d.ts.map +1 -0
  64. package/dist/task-graph/WorkflowFactories.d.ts +52 -0
  65. package/dist/task-graph/WorkflowFactories.d.ts.map +1 -0
  66. package/dist/task-graph/WorkflowPipe.d.ts +32 -0
  67. package/dist/task-graph/WorkflowPipe.d.ts.map +1 -0
  68. package/dist/task-graph/WorkflowRunContext.d.ts +27 -0
  69. package/dist/task-graph/WorkflowRunContext.d.ts.map +1 -0
  70. package/dist/task-graph/WorkflowTask.d.ts +19 -0
  71. package/dist/task-graph/WorkflowTask.d.ts.map +1 -0
  72. package/package.json +7 -7
  73. package/src/EXECUTION_MODEL.md +13 -5
@@ -0,0 +1,48 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { TaskOutputRepository } from "../storage/TaskOutputRepository";
7
+ import type { ITask } from "./ITask";
8
+ import type { TaskInput, TaskOutput } from "./TaskTypes";
9
+ import type { TaskRunContext } from "./TaskRunContext";
10
+ /**
11
+ * @internal
12
+ * Cache key normalization, lookup, save, and cache-hit stream-event emission
13
+ * for streamable tasks. The three previously module-private helpers
14
+ * (serializeOutputPorts, deserializeOutputPorts, normalizeInputsForCacheKey)
15
+ * are private statics here.
16
+ *
17
+ * outputCache is passed as a method argument (not stored as a class field)
18
+ * because the facade resolves it per-run in handleStart and may differ
19
+ * between runs.
20
+ */
21
+ export declare class CacheCoordinator<Input extends TaskInput, Output extends TaskOutput> {
22
+ private readonly task;
23
+ constructor(task: ITask<Input, Output, any>);
24
+ /**
25
+ * Serializes format-annotated input properties (via their port codecs) so the
26
+ * resulting object is a stable, serialization-equivalent representation
27
+ * suitable for use as a cache key. Properties without a format annotation are
28
+ * passed through unchanged. No-op when no cache is configured.
29
+ */
30
+ buildKey(inputs: Input, outputCache: TaskOutputRepository | undefined): Promise<Input>;
31
+ /**
32
+ * Looks up a cached output. On a hit for a streaming task, also emits the
33
+ * synthetic stream_start / stream_chunk(finish) / stream_end events so
34
+ * downstream consumers see the same event shape as a fresh run.
35
+ *
36
+ * Returns the deserialized output if found, undefined otherwise.
37
+ */
38
+ lookup(keyInputs: Input, outputCache: TaskOutputRepository | undefined, isStreamable: boolean, ctx: TaskRunContext): Promise<Output | undefined>;
39
+ /**
40
+ * Serializes and saves output. No-op when no cache is configured or task is
41
+ * not cacheable.
42
+ */
43
+ save(keyInputs: Input, output: Output, outputCache: TaskOutputRepository | undefined): Promise<void>;
44
+ private static serializeOutputPorts;
45
+ private static deserializeOutputPorts;
46
+ private static normalizeInputsForCacheKey;
47
+ }
48
+ //# sourceMappingURL=CacheCoordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CacheCoordinator.d.ts","sourceRoot":"","sources":["../../src/task/CacheCoordinator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAMvD;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB,CAAC,KAAK,SAAS,SAAS,EAAE,MAAM,SAAS,UAAU;IAClE,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAI;IAEhE;;;;;OAKG;IACG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,oBAAoB,GAAG,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAO3F;IAED;;;;;;OAMG;IACG,MAAM,CACV,SAAS,EAAE,KAAK,EAChB,WAAW,EAAE,oBAAoB,GAAG,SAAS,EAC7C,YAAY,EAAE,OAAO,EACrB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAwB7B;IAED;;;OAGG;IACG,IAAI,CACR,SAAS,EAAE,KAAK,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,oBAAoB,GAAG,SAAS,GAC5C,OAAO,CAAC,IAAI,CAAC,CAQf;mBAOoB,oBAAoB;mBAepB,sBAAsB;mBAetB,0BAA0B;CAchD"}
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { DataPortSchema } from "@workglow/util/schema";
7
+ import { CreateLoopWorkflow } from "../task-graph/WorkflowFactories";
7
8
  import { GraphAsTask } from "./GraphAsTask";
8
9
  import type { GraphAsTaskConfig } from "./GraphAsTask";
9
10
  import { FallbackTaskRunner } from "./FallbackTaskRunner";
@@ -1 +1 @@
1
- {"version":3,"file":"FallbackTask.d.ts","sourceRoot":"","sources":["../../src/task/FallbackTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAA2B,MAAM,eAAe,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAMvE;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,eAAO,MAAM,wBAAwB;mBAC7B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAGI,IAAI,EAAE,QAAQ;qBAAE,IAAI;;;qBACpB,IAAI,EAAE,OAAO;qBAAE,KAAK;yBAAI,IAAI,EAAE,QAAQ;yBAAE,oBAAoB;;;;;CAG7C,CAAC;AAEpC;;;GAGG;AACH,MAAM,MAAM,kBAAkB,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,IAAI,iBAAiB,CAAC,KAAK,CAAC,GAAG;IAC/F;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAErC;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CACnD,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,qBAAa,YAAY,CACvB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,kBAAkB,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CACpE,SAAQ,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IAK1C,OAAuB,IAAI,EAAE,YAAY,CAAkB;IAC3D,OAAuB,QAAQ,EAAE,MAAM,CAAkB;IACzD,OAAuB,KAAK,EAAE,MAAM,CAAc;IAClD,OAAuB,WAAW,EAAE,MAAM,CAAyC;IAEnF,wEAAwE;IACxE,OAAuB,iBAAiB,EAAE,OAAO,CAAQ;IAEzD,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAMO,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3D,IAAa,MAAM,IAAI,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAK/D;IAMD,IAAW,YAAY,IAAI,YAAY,CAEtC;IAED,IAAW,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAEnD;IAMD;;;OAGG;IACa,WAAW,IAAI,cAAc,CA+B5C;IAED;;;OAGG;IACa,YAAY,IAAI,cAAc,CAkB7C;IAMe,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAUrB;CACF;AAMD,OAAO,QAAQ,wBAAwB,CAAC,CAAC;IACvC,UAAU,QAAQ;QAChB;;;;WAIG;QACH,QAAQ,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;QAEnF;;WAEG;QACH,WAAW,IAAI,QAAQ,CAAC;QAExB;;;;;;WAMG;QACH,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,QAAQ,CAAC;QAEhE;;WAEG;QACH,eAAe,IAAI,QAAQ,CAAC;KAC7B;CACF"}
1
+ {"version":3,"file":"FallbackTask.d.ts","sourceRoot":"","sources":["../../src/task/FallbackTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAyB,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,WAAW,EAA2B,MAAM,eAAe,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAMvE;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,eAAO,MAAM,wBAAwB;mBAC7B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAGI,IAAI,EAAE,QAAQ;qBAAE,IAAI;;;qBACpB,IAAI,EAAE,OAAO;qBAAE,KAAK;yBAAI,IAAI,EAAE,QAAQ;yBAAE,oBAAoB;;;;;CAG7C,CAAC;AAEpC;;;GAGG;AACH,MAAM,MAAM,kBAAkB,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,IAAI,iBAAiB,CAAC,KAAK,CAAC,GAAG;IAC/F;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAErC;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CACnD,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,qBAAa,YAAY,CACvB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,kBAAkB,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CACpE,SAAQ,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IAK1C,OAAuB,IAAI,EAAE,YAAY,CAAkB;IAC3D,OAAuB,QAAQ,EAAE,MAAM,CAAkB;IACzD,OAAuB,KAAK,EAAE,MAAM,CAAc;IAClD,OAAuB,WAAW,EAAE,MAAM,CAAyC;IAEnF,wEAAwE;IACxE,OAAuB,iBAAiB,EAAE,OAAO,CAAQ;IAEzD,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAMO,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3D,IAAa,MAAM,IAAI,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAK/D;IAMD,IAAW,YAAY,IAAI,YAAY,CAEtC;IAED,IAAW,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAEnD;IAMD;;;OAGG;IACa,WAAW,IAAI,cAAc,CA+B5C;IAED;;;OAGG;IACa,YAAY,IAAI,cAAc,CAkB7C;IAMe,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAUrB;CACF;AAMD,OAAO,QAAQ,wBAAwB,CAAC,CAAC;IACvC,UAAU,QAAQ;QAChB;;;;WAIG;QACH,QAAQ,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;QAEnF;;WAEG;QACH,WAAW,IAAI,QAAQ,CAAC;QAExB;;;;;;WAMG;QACH,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,QAAQ,CAAC;QAEhE;;WAEG;QACH,eAAe,IAAI,QAAQ,CAAC;KAC7B;CACF"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import type { FallbackTask, FallbackTaskConfig } from "./FallbackTask";
7
7
  import { GraphAsTaskRunner } from "./GraphAsTaskRunner";
8
+ import type { TaskRunContext } from "./TaskRunContext";
8
9
  import type { TaskInput, TaskOutput } from "./TaskTypes";
9
10
  /**
10
11
  * Runner for FallbackTask that executes alternatives sequentially until one succeeds.
@@ -17,12 +18,12 @@ export declare class FallbackTaskRunner<Input extends TaskInput = TaskInput, Out
17
18
  /**
18
19
  * Override executeTask to implement sequential fallback logic.
19
20
  */
20
- protected executeTask(input: Input): Promise<Output | undefined>;
21
+ protected executeTask(input: Input, _ctx: TaskRunContext): Promise<Output | undefined>;
21
22
  /**
22
23
  * For FallbackTask, preview runs use the task's preview hook only,
23
24
  * bypassing GraphAsTaskRunner's child-merging logic.
24
25
  */
25
- executeTaskPreview(input: Input): Promise<Output | undefined>;
26
+ executeTaskPreview(input: Input, _ctx: TaskRunContext): Promise<Output | undefined>;
26
27
  private executeTaskFallback;
27
28
  private executeDataFallback;
28
29
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FallbackTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/FallbackTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD;;;;;GAKG;AACH,qBAAa,kBAAkB,CAC7B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,kBAAkB,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CACpE,SAAQ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACxC,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAElD;;OAEG;IACH,UAAyB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAK9E;IAED;;;OAGG;IACmB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAElF;YAUa,mBAAmB;YAyDnB,mBAAmB;IA8FjC;;OAEG;IACH,OAAO,CAAC,SAAS;IASjB;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAa5B"}
1
+ {"version":3,"file":"FallbackTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/FallbackTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD;;;;;GAKG;AACH,qBAAa,kBAAkB,CAC7B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,kBAAkB,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CACpE,SAAQ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACxC,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAElD;;OAEG;IACH,UAAyB,WAAW,CAClC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAK7B;IAED;;;OAGG;IACmB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;YAUa,mBAAmB;YAyDnB,mBAAmB;IA8FjC;;OAEG;IACH,OAAO,CAAC,SAAS;IASjB;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAa5B"}
@@ -6,6 +6,7 @@
6
6
  import type { DataPortSchema, SchemaNode } from "@workglow/util/schema";
7
7
  import { TaskGraph } from "../task-graph/TaskGraph";
8
8
  import { CompoundMergeStrategy } from "../task-graph/TaskGraphRunner";
9
+ import type { CreateLoopWorkflow } from "../task-graph/WorkflowFactories";
9
10
  import { GraphAsTaskRunner } from "./GraphAsTaskRunner";
10
11
  import type { IExecuteContext, IRunConfig } from "./ITask";
11
12
  import type { StreamEvent } from "./StreamTypes";
@@ -1 +1 @@
1
- {"version":3,"file":"GraphAsTask.d.ts","sourceRoot":"","sources":["../../src/task/GraphAsTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIxE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAkB,MAAM,+BAA+B,CAAC;AAEtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGnF,eAAO,MAAM,uBAAuB;mBAC5B,QAAQ;;;qBAGK,IAAI,EAAE,QAAQ;qBAAE,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGf,CAAC;AAEpC,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG;IACvF,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE,qBAAqB,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,qBAAa,WAAW,CACtB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,iBAAiB,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAClE,SAAQ,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IAKnC,OAAuB,IAAI,EAAE,YAAY,CAAiB;IAC1D,OAAuB,KAAK,EAAE,MAAM,CAAW;IAC/C,OAAuB,WAAW,EAAE,MAAM,CAAiD;IAC3F,OAAuB,QAAQ,EAAE,MAAM,CAAkB;IACzD,OAAc,aAAa,EAAE,qBAAqB,CAAkB;IAEpE,gFAAgF;IAChF,OAAuB,iBAAiB,EAAE,OAAO,CAAQ;IAEzD,mFAAmF;IACnF,OAAuB,sBAAsB,EAAE,OAAO,CAAQ;IAM9D;;;OAGG;IACH,YAAY,MAAM,GAAE,OAAO,CAAC,MAAM,CAAM,EAAE,SAAS,GAAE,OAAO,CAAC,UAAU,CAAM,EAO5E;IAMO,OAAO,EAAE,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAE1D;;OAEG;IACH,IAAa,MAAM,IAAI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAK9D;IAMD,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAED,IAAW,aAAa,IAAI,qBAAqB,CAEhD;IAED,IAAoB,SAAS,IAAI,OAAO,CAMvC;IAMD;;;;;;;OAOG;IACa,WAAW,IAAI,cAAc,CAO5C;IAED,SAAS,CAAC,gBAAgB,EAAE,UAAU,GAAG,SAAS,CAAC;IACnD;;OAEG;IACH,UAAmB,kBAAkB,IAAI,UAAU,CAmBlD;IAED;;;;OAIG;IAEa,YAAY,IAAI,cAAc,CAO7C;IAED;;OAEG;IACa,YAAY,IAAI,gBAAgB,CAK/C;IAED;;OAEG;IACa,cAAc,IAAI,IAAI,CAUrC;IAMD;;;;;OAKG;IACI,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,GAAG,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CA2G/F;IAMD;;;;;;OAMG;IACI,eAAe,IAAI,IAAI,CAY7B;IAED;;;;;;OAMG;IACa,eAAe,IAAI,IAAI,CAItC;IAMD,2EAA2E;IAC3E,OAAO,CAAC,iBAAiB,CAA2B;IAEpD;;;;;;OAMG;IACH,OAAO,CAAC,wBAAwB,CAAkB;IAMlD;;;;OAIG;IACH,OAAO,CAAC,gCAAgC;IAaxC,OAAO,CAAC,oCAAoC;IAkB5B,SAAS,CAAC,KAAK,SAAS,UAAU,EAChD,IAAI,EAAE,KAAK,EACX,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAC3B,MAAM,IAAI,CAYZ;IAEe,EAAE,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,CAK5F;IAEe,GAAG,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,CAK7F;IAEe,IAAI,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,CAK9F;IAED,IAAoB,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAK/C;IAED,IAAa,QAAQ,IAAI,SAAS,CAKjC;IAMD;;;OAGG;IACa,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,iBAAiB,CAWxE;IAED;;;OAGG;IACa,gBAAgB,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,YAAY,CAS7E;CACF;AAED,OAAO,QAAQ,wBAAwB,CAAC,CAAC;IACvC,UAAU,QAAQ;QAChB;;;WAGG;QACH,KAAK,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;QAE/E;;WAEG;QACH,QAAQ,IAAI,QAAQ,CAAC;KACtB;CACF"}
1
+ {"version":3,"file":"GraphAsTask.d.ts","sourceRoot":"","sources":["../../src/task/GraphAsTask.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@
6
6
  import { GraphResultArray } from "../task-graph/TaskGraphRunner";
7
7
  import type { GraphAsTaskConfig } from "./GraphAsTask";
8
8
  import { GraphAsTask } from "./GraphAsTask";
9
+ import type { TaskRunContext } from "./TaskRunContext";
9
10
  import { TaskRunner } from "./TaskRunner";
10
11
  import type { TaskInput, TaskOutput } from "./TaskTypes";
11
12
  export declare class GraphAsTaskRunner<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends GraphAsTaskConfig<Input> = GraphAsTaskConfig<Input>> extends TaskRunner<Input, Output, Config> {
@@ -22,14 +23,14 @@ export declare class GraphAsTaskRunner<Input extends TaskInput = TaskInput, Outp
22
23
  * parent's input values after resetInputData() is called.
23
24
  */
24
25
  protected executeTaskChildrenPreview(): Promise<GraphResultArray<Output>>;
25
- protected handleDisable(): Promise<void>;
26
+ protected handleDisable(ctx: TaskRunContext | undefined): Promise<void>;
26
27
  /**
27
28
  * Execute the task
28
29
  */
29
- protected executeTask(input: Input): Promise<Output | undefined>;
30
+ protected executeTask(input: Input, ctx: TaskRunContext): Promise<Output | undefined>;
30
31
  /**
31
32
  * Execute the task in preview mode
32
33
  */
33
- executeTaskPreview(input: Input): Promise<Output | undefined>;
34
+ executeTaskPreview(input: Input, ctx: TaskRunContext): Promise<Output | undefined>;
34
35
  }
35
36
  //# sourceMappingURL=GraphAsTaskRunner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GraphAsTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/GraphAsTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD,qBAAa,iBAAiB,CAC5B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,iBAAiB,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAClE,SAAQ,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACjC,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjD;;OAEG;IACH,UAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAqBnF;IACD;;;;;;OAMG;IACH,UAAgB,0BAA0B,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAK9E;IAED,UAAyB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAKtD;IAMD;;OAEG;IACH,UAAyB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAY9E;IAED;;OAEG;IACmB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAelF;CACF"}
1
+ {"version":3,"file":"GraphAsTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/GraphAsTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD,qBAAa,iBAAiB,CAC5B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,iBAAiB,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAClE,SAAQ,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACjC,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjD;;OAEG;IACH,UAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAqBnF;IACD;;;;;;OAMG;IACH,UAAgB,0BAA0B,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAK9E;IAED,UAAyB,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAKrF;IAMD;;OAEG;IACH,UAAyB,WAAW,CAClC,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAY7B;IAED;;OAEG;IACmB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAe7B;CACF"}
@@ -39,7 +39,19 @@ export interface IExecuteContext {
39
39
  * from these streams and re-yield events for immediate downstream delivery.
40
40
  */
41
41
  inputStreams?: Map<string, ReadableStream<StreamEvent>>;
42
- /** Resource scope for registering heavyweight resource disposers. */
42
+ /**
43
+ * Resource scope for registering heavyweight resource disposers (model unload,
44
+ * AI session close, browser disconnect, etc.).
45
+ *
46
+ * **Register synchronously from within `execute()` / `executeStream()`.**
47
+ * The top-level runner disposes the scope as soon as the run completes;
48
+ * disposers registered after `execute()` resolves will land on a cleared Map
49
+ * and never be invoked.
50
+ *
51
+ * Always defined when the task is run via `Task.run()`, `TaskGraph.run()`,
52
+ * or `Workflow.run()` — the top-level runner auto-creates one if the caller
53
+ * did not provide it.
54
+ */
43
55
  resourceScope?: ResourceScope;
44
56
  }
45
57
  export type IExecutePreviewContext = Pick<IExecuteContext, "own">;
@@ -94,8 +106,12 @@ export interface IRunConfig {
94
106
  signal?: AbortSignal;
95
107
  /**
96
108
  * Resource scope for collecting heavyweight resource disposers.
97
- * When provided, tasks can register cleanup functions via context.resourceScope.
98
- * The caller controls when to invoke them.
109
+ *
110
+ * If omitted, the top-level runner creates a private scope and `disposeAll()`s
111
+ * it when the run finishes (success, error, or abort).
112
+ *
113
+ * If provided, the caller owns the lifecycle; the runner never calls
114
+ * `disposeAll`.
99
115
  */
100
116
  resourceScope?: ResourceScope;
101
117
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ITask.d.ts","sourceRoot":"","sources":["../../src/task/ITask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ITask.d.ts","sourceRoot":"","sources":["../../src/task/ITask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACX,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,WAAW,CAAC;IACpB;;;;;;OAMG;IACH,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClG,GAAG,EAAE,CAAC,CAAC,SAAS,KAAK,GAAG,UAAU,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAC3D,QAAQ,EAAE,eAAe,CAAC;IAC1B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;IACxD;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;AAElE;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC;IAE7C;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CACf,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,CAAC,EAAE,MAAM,EAChB,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAE3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC;IACzC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,cAAc,CAAC;IAC3C,QAAQ,CAAC,YAAY,EAAE,MAAM,cAAc,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,MAAM,cAAc,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,MAAM,gBAAgB,CAAC;CAC/C;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc,CAC7B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU;IAEtC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7E,cAAc,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAExF;;;;OAIG;IACH,aAAa,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,GAAG,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IAE3F;;;;OAIG;IACH,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc,CAC7B,KAAK,SAAS,SAAS,EACvB,MAAM,SAAS,UAAU,EACzB,MAAM,SAAS,UAAU;IAEzB,GAAG,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClF,UAAU,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACxD,IAAI,MAAM,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,KAAK,IAAI,IAAI,CAAC;IACd,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,KAAK,SAAS,SAAS;IAC9C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAE/B,WAAW,IAAI,cAAc,CAAC;IAC9B,YAAY,IAAI,cAAc,CAAC;IAC/B,YAAY,IAAI,cAAc,CAAC;IAC/B,IAAI,IAAI,IAAI,MAAM,CAAC;IACnB,IAAI,QAAQ,IAAI,MAAM,CAAC;IACvB,IAAI,KAAK,IAAI,MAAM,CAAC;IACpB,IAAI,WAAW,IAAI,MAAM,CAAC;IAE1B,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAC5C,cAAc,IAAI,IAAI,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC;IACzD,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,SAAS,IAAI,OAAO,CAAC;IACzB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACvF,YAAY,IAAI,gBAAgB,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,WAAW,IAAI,OAAO,CAAC;IACvB,eAAe,IAAI,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,MAAM,IAAI,YAAY,CAAC,kBAAkB,CAAC,CAAC;IAE/C,EAAE,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAC9E,GAAG,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAC/E,IAAI,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAChF,MAAM,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;IACnF,IAAI,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IACvF,SAAS,CAAC,KAAK,SAAS,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC;CAC5F;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,YAAY,GAAG,iBAAiB,CAAC;IACzE,gBAAgB,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,YAAY,CAAC;IAC/D,IAAI,EAAE,IAAI,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,MAAM,SAAS,UAAU,GAAG,UAAU;IAChE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,IAAI,OAAO,CAAC;IAClB,MAAM,EAAE,UAAU,CAAC;IACnB,wGAAwG;IACxG,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK,CACpB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,UAAU,GAAG,UAAU,CAEtC,SACE,UAAU,CAAC,MAAM,CAAC,EAClB,OAAO,CAAC,KAAK,CAAC,EACd,WAAW,EACX,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EACrC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,EAC7B,kBAAkB,EAClB,kBAAkB;CAAG;AAEzB,MAAM,WAAW,YAAY,CAC3B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,UAAU,GAAG,UAAU,CACtC,SAAQ,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACpC,IAAI,aAAa,IAAI,qBAAqB,CAAC;CAC5C;AAED;;GAEG;AACH,KAAK,oBAAoB,CACvB,KAAK,SAAS,SAAS,EACvB,MAAM,SAAS,UAAU,EACzB,MAAM,SAAS,UAAU,IACvB,KAAK,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE1F;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAC1B,KAAK,SAAS,SAAS,EACvB,MAAM,SAAS,UAAU,EACzB,MAAM,SAAS,UAAU,IACvB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,qBAAqB,CAAC"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { GraphAsTaskRunner } from "./GraphAsTaskRunner";
7
7
  import { type IterationAnalysisResult, type IteratorTask, type IteratorTaskConfig } from "./IteratorTask";
8
+ import type { TaskRunContext } from "./TaskRunContext";
8
9
  import type { TaskInput, TaskOutput } from "./TaskTypes";
9
10
  /**
10
11
  * Runner for IteratorTask that executes a single subgraph repeatedly with
@@ -21,11 +22,11 @@ export declare class IteratorTaskRunner<Input extends TaskInput = TaskInput, Out
21
22
  * For iterator tasks, runPreview() invokes only the task's executePreview hook —
22
23
  * it does not iterate the subgraph.
23
24
  */
24
- protected executeTask(input: Input): Promise<Output | undefined>;
25
+ protected executeTask(input: Input, _ctx: TaskRunContext): Promise<Output | undefined>;
25
26
  /**
26
27
  * Iterator tasks should only run the task's preview hook here.
27
28
  */
28
- executeTaskPreview(input: Input): Promise<Output | undefined>;
29
+ executeTaskPreview(input: Input, _ctx: TaskRunContext): Promise<Output | undefined>;
29
30
  protected executeCollectIterations(analysis: IterationAnalysisResult): Promise<Output>;
30
31
  /**
31
32
  * Updates parent MapTask / workflow progress from per-iteration partial completion (0–100 each).
@@ -1 +1 @@
1
- {"version":3,"file":"IteratorTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/IteratorTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,kBAAkB,CAC7B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,kBAAkB,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CACpE,SAAQ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACxC,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAElD,8FAA8F;IAC9F,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,wBAAwB,CAAK;IAErC;;;OAGG;IAEH,UAAyB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB9E;IAED;;OAEG;IACmB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAElF;IAED,UAAgB,wBAAwB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4D3F;IAED;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAWzC,UAAgB,uBAAuB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAyB1F;IAED,UAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,uBAAuB,EACjC,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACnC,OAAO,CAAC,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC,CA6BnE;IAED;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA2BlB,UAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAwDjC;CACF"}
1
+ {"version":3,"file":"IteratorTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/IteratorTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,kBAAkB,CAC7B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,kBAAkB,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CACpE,SAAQ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACxC,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAElD,8FAA8F;IAC9F,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,wBAAwB,CAAK;IAErC;;;OAGG;IAEH,UAAyB,WAAW,CAClC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB7B;IAED;;OAEG;IACmB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;IAED,UAAgB,wBAAwB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4D3F;IAED;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAWzC,UAAgB,uBAAuB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAyB1F;IAED,UAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,uBAAuB,EACjC,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACnC,OAAO,CAAC,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC,CA6BnE;IAED;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA2BlB,UAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAwDjC;CACF"}
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { DataPortSchema } from "@workglow/util/schema";
7
+ import { CreateLoopWorkflow } from "../task-graph/WorkflowFactories";
7
8
  import type { IRunConfig } from "./ITask";
8
9
  import { IteratorTask, IteratorTaskConfig } from "./IteratorTask";
9
10
  import type { TaskInput, TaskOutput, TaskTypeName } from "./TaskTypes";
@@ -1 +1 @@
1
- {"version":3,"file":"MapTask.d.ts","sourceRoot":"","sources":["../../src/task/MapTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MapTask.d.ts","sourceRoot":"","sources":["../../src/task/MapTask.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { DataPortSchema } from "@workglow/util/schema";
7
+ import { CreateLoopWorkflow } from "../task-graph/WorkflowFactories";
7
8
  import type { IRunConfig } from "./ITask";
8
9
  import { IterationAnalysisResult, IteratorTask, IteratorTaskConfig } from "./IteratorTask";
9
10
  import type { TaskInput, TaskOutput, TaskTypeName } from "./TaskTypes";
@@ -1 +1 @@
1
- {"version":3,"file":"ReduceTask.d.ts","sourceRoot":"","sources":["../../src/task/ReduceTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,kBAAkB,EAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEvE,eAAO,MAAM,sBAAsB;mBAC3B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOmB,CAAC;AAEpC;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAC1B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,WAAW,GAAG,OAAO,IACnB,kBAAkB,CAAC,KAAK,CAAC,GAAG;IAC9B;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,qBAAa,UAAU,CACrB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAChF,SAAQ,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IAC3C,OAAuB,IAAI,EAAE,YAAY,CAAgB;IACzD,OAAuB,QAAQ,EAAE,MAAM,CAAkB;IACzD,OAAuB,KAAK,EAAE,MAAM,CAAY;IAChD,OAAuB,WAAW,EAAE,MAAM,CAC4B;IAEtE,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAED,YAAY,MAAM,GAAE,OAAO,CAAC,MAAM,CAAM,EAAE,SAAS,GAAE,OAAO,CAAC,UAAU,CAAM,EAQ5E;IAED;;OAEG;IACH,IAAW,YAAY,IAAI,MAAM,CAEhC;IAEe,YAAY,IAAI,OAAO,CAEtC;IAEe,qBAAqB,IAAI,MAAM,CAS9C;IAEe,sBAAsB,CACpC,QAAQ,EAAE,uBAAuB,EACjC,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACvC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB;IAEe,cAAc,IAAI,MAAM,CAEvC;IAED;;OAEG;IACH,OAAuB,WAAW,IAAI,cAAc,CAMnD;IAED;;OAEG;IACH,OAAuB,YAAY,IAAI,cAAc,CAMpD;IAED;;OAEG;IACa,YAAY,IAAI,cAAc,CA+B7C;CACF;AAMD,OAAO,QAAQ,wBAAwB,CAAC,CAAC;IACvC,UAAU,QAAQ;QAChB;;;WAGG;QACH,MAAM,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QAEpF;;WAEG;QACH,SAAS,IAAI,QAAQ,CAAC;KACvB;CACF"}
1
+ {"version":3,"file":"ReduceTask.d.ts","sourceRoot":"","sources":["../../src/task/ReduceTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAyB,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,kBAAkB,EAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEvE,eAAO,MAAM,sBAAsB;mBAC3B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOmB,CAAC;AAEpC;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAC1B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,WAAW,GAAG,OAAO,IACnB,kBAAkB,CAAC,KAAK,CAAC,GAAG;IAC9B;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,qBAAa,UAAU,CACrB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAChF,SAAQ,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IAC3C,OAAuB,IAAI,EAAE,YAAY,CAAgB;IACzD,OAAuB,QAAQ,EAAE,MAAM,CAAkB;IACzD,OAAuB,KAAK,EAAE,MAAM,CAAY;IAChD,OAAuB,WAAW,EAAE,MAAM,CAC4B;IAEtE,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAED,YAAY,MAAM,GAAE,OAAO,CAAC,MAAM,CAAM,EAAE,SAAS,GAAE,OAAO,CAAC,UAAU,CAAM,EAQ5E;IAED;;OAEG;IACH,IAAW,YAAY,IAAI,MAAM,CAEhC;IAEe,YAAY,IAAI,OAAO,CAEtC;IAEe,qBAAqB,IAAI,MAAM,CAS9C;IAEe,sBAAsB,CACpC,QAAQ,EAAE,uBAAuB,EACjC,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACvC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB;IAEe,cAAc,IAAI,MAAM,CAEvC;IAED;;OAEG;IACH,OAAuB,WAAW,IAAI,cAAc,CAMnD;IAED;;OAEG;IACH,OAAuB,YAAY,IAAI,cAAc,CAMpD;IAED;;OAEG;IACa,YAAY,IAAI,cAAc,CA+B7C;CACF;AAMD,OAAO,QAAQ,wBAAwB,CAAC,CAAC;IACvC,UAAU,QAAQ;QAChB;;;WAGG;QACH,MAAM,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QAEpF;;WAEG;QACH,SAAS,IAAI,QAAQ,CAAC;KACvB;CACF"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { ResourceScope, ServiceRegistry } from "@workglow/util";
7
+ import type { Taskish } from "../task-graph/Conversions";
8
+ import type { ITask } from "./ITask";
9
+ import type { StreamEvent } from "./StreamTypes";
10
+ import type { TaskInput, TaskOutput } from "./TaskTypes";
11
+ import type { TaskRunContext } from "./TaskRunContext";
12
+ /**
13
+ * Per-call run-state inputs shared by StreamProcessor.run. Bundles facade
14
+ * state pulled at call time (registry, resourceScope, inputStreams) and
15
+ * facade methods bound to the facade instance (onProgress, own).
16
+ *
17
+ * @internal
18
+ */
19
+ export interface StreamProcessorDeps {
20
+ readonly registry: ServiceRegistry;
21
+ readonly resourceScope: ResourceScope | undefined;
22
+ readonly inputStreams: Map<string, ReadableStream<StreamEvent>> | undefined;
23
+ readonly onProgress: (progress: number | undefined, message?: string, ...args: any[]) => Promise<void>;
24
+ readonly own: <T extends Taskish<any, any>>(i: T) => T;
25
+ }
26
+ /**
27
+ * @internal
28
+ * Streaming event loop. Consumes a task's executeStream() output, manages
29
+ * text/object delta accumulators, mode switching (append/object/replace),
30
+ * and finish-event enrichment. Honors ctx.shouldAccumulate and
31
+ * ctx.abortController.signal.
32
+ */
33
+ export declare class StreamProcessor<Input extends TaskInput, Output extends TaskOutput> {
34
+ private readonly task;
35
+ constructor(task: ITask<Input, Output, any>);
36
+ run(input: Input, ctx: TaskRunContext, deps: StreamProcessorDeps): Promise<Output | undefined>;
37
+ }
38
+ //# sourceMappingURL=StreamProcessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StreamProcessor.d.ts","sourceRoot":"","sources":["../../src/task/StreamProcessor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,eAAe,CAAC;AAG7D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,GAAG,SAAS,CAAC;IAC5E,QAAQ,CAAC,UAAU,EAAE,CACnB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,CAAC,EAAE,MAAM,EAChB,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;CACxD;AAED;;;;;;GAMG;AACH,qBAAa,eAAe,CAAC,KAAK,SAAS,SAAS,EAAE,MAAM,SAAS,UAAU;IACjE,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAI;IAE1D,GAAG,CACP,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAyL7B;CACF"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { ISpan } from "@workglow/util";
7
+ import type { TaskTimeoutError } from "./TaskError";
8
+ /**
9
+ * @internal
10
+ * Per-run mutable state for a single TaskRunner.run() / runPreview() invocation.
11
+ * Built by TaskRunner.handleStart, discarded by handleComplete / handleError / handleAbort.
12
+ *
13
+ * Long-lived state (task, registry, resourceScope, outputCache default, accumulateLeafOutputs)
14
+ * stays on the facade. TaskRunContext only holds state created at run start and torn down
15
+ * at run end.
16
+ */
17
+ export declare class TaskRunContext {
18
+ readonly abortController: AbortController;
19
+ shouldAccumulate: boolean;
20
+ telemetrySpan?: ISpan;
21
+ timeoutTimer?: ReturnType<typeof setTimeout>;
22
+ pendingTimeoutError?: TaskTimeoutError;
23
+ private parentSignalCleanup?;
24
+ constructor(parentSignal?: AbortSignal);
25
+ /**
26
+ * Releases external listeners (parentSignal abort handler). Idempotent.
27
+ * Called by terminal handlers (handleComplete / handleError / handleAbort)
28
+ * so a parent abort fired after this run completes does not re-trigger our
29
+ * abort path and emit a duplicate terminal event.
30
+ */
31
+ dispose(): void;
32
+ }
33
+ //# sourceMappingURL=TaskRunContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskRunContext.d.ts","sourceRoot":"","sources":["../../src/task/TaskRunContext.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD;;;;;;;;GAQG;AACH,qBAAa,cAAc;IACzB,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAE1C,gBAAgB,EAAE,OAAO,CAAQ;IACjC,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,YAAY,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAC7C,mBAAmB,CAAC,EAAE,gBAAgB,CAAC;IAIvC,OAAO,CAAC,mBAAmB,CAAC,CAAa;IAEzC,YAAY,YAAY,CAAC,EAAE,WAAW,EAcrC;IAED;;;;;OAKG;IACH,OAAO,IAAI,IAAI,CAGd;CACF"}
@@ -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 { ResourceScope, ServiceRegistry } from "@workglow/util";
8
7
  import { TaskOutputRepository } from "../storage/TaskOutputRepository";
9
8
  import type { Taskish } from "../task-graph/Conversions";
9
+ import { CacheCoordinator } from "./CacheCoordinator";
10
10
  import type { IRunConfig, ITask } from "./ITask";
11
11
  import { ITaskRunner } from "./ITaskRunner";
12
+ import { StreamProcessor } from "./StreamProcessor";
12
13
  import type { StreamEvent } from "./StreamTypes";
13
- import { TaskTimeoutError } from "./TaskError";
14
+ import { TaskRunContext } from "./TaskRunContext";
14
15
  import { TaskConfig, TaskInput, TaskOutput } from "./TaskTypes";
15
16
  /**
16
17
  * Responsible for running tasks
@@ -27,13 +28,24 @@ export declare class TaskRunner<Input extends TaskInput = TaskInput, Output exte
27
28
  */
28
29
  readonly task: ITask<Input, Output, Config>;
29
30
  /**
30
- * AbortController for cancelling task execution
31
+ * Per-run state. Set by handleStart, cleared by handleComplete / handleError /
32
+ * handleAbort / handleDisable. The only mutable per-run state on the facade —
33
+ * exists so the public abort() and disable() methods (which take no arguments)
34
+ * have something to act on.
31
35
  */
32
- protected abortController?: AbortController;
36
+ protected currentCtx?: TaskRunContext;
33
37
  /**
34
38
  * The output cache for the task
35
39
  */
36
40
  protected outputCache?: TaskOutputRepository;
41
+ /**
42
+ * Cache coordinator for the task (key normalization, lookup, save).
43
+ */
44
+ protected readonly cacheCoordinator: CacheCoordinator<Input, Output>;
45
+ /**
46
+ * Stream processor for the task (handles executeStream() event loop).
47
+ */
48
+ protected readonly streamProcessor: StreamProcessor<Input, Output>;
37
49
  /**
38
50
  * The service registry for the task
39
51
  */
@@ -42,35 +54,20 @@ export declare class TaskRunner<Input extends TaskInput = TaskInput, Output exte
42
54
  * Resource scope for this task run
43
55
  */
44
56
  protected resourceScope?: ResourceScope;
57
+ /**
58
+ * True when `this.resourceScope` was auto-created by `run()` (caller did not
59
+ * pass one in `config`). The flag is used by `own()` so that an auto-owned
60
+ * scope is not stamped into a child task's long-lived `runConfig` — that
61
+ * stamp would survive past the parent run's `finally`-block disposal and
62
+ * leave the child holding a reference to a disposed scope.
63
+ */
64
+ protected ownsResourceScope: boolean;
45
65
  /**
46
66
  * Input streams for pass-through streaming tasks.
47
67
  * Set by the graph runner before executing a streaming task that has
48
68
  * upstream streaming edges. Keyed by input port name.
49
69
  */
50
70
  inputStreams?: Map<string, ReadableStream<StreamEvent>>;
51
- /**
52
- * Timer handle for task-level timeout. Set when `IRunConfig.timeout` is
53
- * provided and cleared on completion, error, or abort.
54
- */
55
- protected timeoutTimer?: ReturnType<typeof setTimeout>;
56
- /**
57
- * When a timeout triggers the abort, this holds the TaskTimeoutError so
58
- * handleAbort() can surface the correct error type instead of a generic
59
- * TaskAbortedError.
60
- */
61
- protected pendingTimeoutError?: TaskTimeoutError;
62
- /**
63
- * Whether the streaming task runner should accumulate text-delta chunks and
64
- * emit an enriched finish event. Set from IRunConfig.shouldAccumulate.
65
- * Defaults to true so standalone task execution is backward-compatible.
66
- * The graph runner sets this to false when no downstream edge needs
67
- * materialized data (no cache, all downstream tasks are also streaming).
68
- */
69
- protected shouldAccumulate: boolean;
70
- /**
71
- * Active telemetry span for the current task run.
72
- */
73
- protected telemetrySpan?: ISpan;
74
71
  /**
75
72
  * Constructor for TaskRunner
76
73
  * @param task The task to run
@@ -120,29 +117,16 @@ export declare class TaskRunner<Input extends TaskInput = TaskInput, Output exte
120
117
  /**
121
118
  * Protected method to execute a task by delegating back to the task itself.
122
119
  */
123
- protected executeTask(input: Input): Promise<Output | undefined>;
120
+ protected executeTask(input: Input, ctx: TaskRunContext): Promise<Output | undefined>;
124
121
  /**
125
122
  * Protected method for preview execution delegation
126
123
  */
127
- protected executeTaskPreview(input: Input): Promise<Output | undefined>;
128
- /**
129
- * Executes a streaming task by consuming its executeStream() async iterable.
130
- *
131
- * When `shouldAccumulate` is true (default, set by graph runner when any downstream
132
- * edge needs materialized data, or when caching is on):
133
- * - text-delta chunks are accumulated per-port into a Map
134
- * - the raw finish event is NOT emitted; instead an enriched finish event is
135
- * emitted with the accumulated text merged in, so downstream dataflows can
136
- * materialize values without re-accumulating on their own
137
- *
138
- * When `shouldAccumulate` is false (set by graph runner when all downstream edges
139
- * are also streaming and no cache is needed):
140
- * - all events including the raw finish are emitted as-is (pure pass-through)
141
- * - no accumulation Map is maintained
142
- */
143
- protected executeStreamingTask(input: Input): Promise<Output | undefined>;
124
+ protected executeTaskPreview(input: Input, _ctx: TaskRunContext): Promise<Output | undefined>;
125
+ private resolveSchemas;
144
126
  /**
145
- * Handles task start
127
+ * Handles task start. Concurrent-run rejection happens in {@link run} before
128
+ * any state mutation; by the time `handleStart` runs, the task status is
129
+ * guaranteed to be non-PROCESSING.
146
130
  */
147
131
  protected handleStart(config?: IRunConfig): Promise<void>;
148
132
  private updateProgress;
@@ -161,7 +145,7 @@ export declare class TaskRunner<Input extends TaskInput = TaskInput, Output exte
161
145
  */
162
146
  protected handleComplete(): Promise<void>;
163
147
  protected handleCompletePreview(): Promise<void>;
164
- protected handleDisable(): Promise<void>;
148
+ protected handleDisable(ctx: TaskRunContext | undefined): Promise<void>;
165
149
  disable(): Promise<void>;
166
150
  /**
167
151
  * Handles task error
@@ -1 +1 @@
1
- {"version":3,"file":"TaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/TaskRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/TaskRunner.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { DataPortSchema } from "@workglow/util/schema";
7
+ import { CreateLoopWorkflow } from "../task-graph/WorkflowFactories";
7
8
  import { GraphAsTask, GraphAsTaskConfig } from "./GraphAsTask";
8
9
  import type { IExecuteContext, IRunConfig } from "./ITask";
9
10
  import { type IterationBound } from "./IteratorTask";
@@ -1 +1 @@
1
- {"version":3,"file":"WhileTask.d.ts","sourceRoot":"","sources":["../../src/task/WhileTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WhileTask.d.ts","sourceRoot":"","sources":["../../src/task/WhileTask.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { GraphAsTaskRunner } from "./GraphAsTaskRunner";
7
+ import type { TaskRunContext } from "./TaskRunContext";
7
8
  import type { TaskInput, TaskOutput } from "./TaskTypes";
8
9
  import type { WhileTask, WhileTaskConfig } from "./WhileTask";
9
10
  /**
@@ -20,10 +21,10 @@ export declare class WhileTaskRunner<Input extends TaskInput = TaskInput, Output
20
21
  * contains the while-loop logic, rather than the default
21
22
  * GraphAsTaskRunner behavior of running the subgraph once.
22
23
  */
23
- protected executeTask(input: Input): Promise<Output | undefined>;
24
+ protected executeTask(input: Input, ctx: TaskRunContext): Promise<Output | undefined>;
24
25
  /**
25
26
  * For WhileTask, preview runs use the task's preview hook only.
26
27
  */
27
- executeTaskPreview(input: Input): Promise<Output | undefined>;
28
+ executeTaskPreview(input: Input, _ctx: TaskRunContext): Promise<Output | undefined>;
28
29
  }
29
30
  //# sourceMappingURL=WhileTaskRunner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WhileTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/WhileTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9D;;;;;;GAMG;AACH,qBAAa,eAAe,CAC1B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAC9E,SAAQ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACxC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/C;;;;OAIG;IACH,UAAyB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAS9E;IAED;;OAEG;IACmB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAElF;CACF"}
1
+ {"version":3,"file":"WhileTaskRunner.d.ts","sourceRoot":"","sources":["../../src/task/WhileTaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9D;;;;;;GAMG;AACH,qBAAa,eAAe,CAC1B,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAC9E,SAAQ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACxC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/C;;;;OAIG;IACH,UAAyB,WAAW,CAClC,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAS7B;IAED;;OAEG;IACmB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;CACF"}