@workglow/task-graph 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/dist/browser.js +899 -187
  2. package/dist/browser.js.map +40 -32
  3. package/dist/bun.js +899 -187
  4. package/dist/bun.js.map +40 -32
  5. package/dist/common.d.ts +2 -0
  6. package/dist/common.d.ts.map +1 -1
  7. package/dist/node.js +899 -187
  8. package/dist/node.js.map +40 -32
  9. package/dist/storage/TaskGraphRepository.d.ts.map +1 -1
  10. package/dist/storage/TaskGraphTabularRepository.d.ts.map +1 -1
  11. package/dist/storage/TaskOutputRepository.d.ts.map +1 -1
  12. package/dist/storage/TaskOutputTabularRepository.d.ts +1 -1
  13. package/dist/storage/TaskOutputTabularRepository.d.ts.map +1 -1
  14. package/dist/task/ConditionalTask.d.ts +7 -2
  15. package/dist/task/ConditionalTask.d.ts.map +1 -1
  16. package/dist/task/EntitlementEnforcer.d.ts +55 -0
  17. package/dist/task/EntitlementEnforcer.d.ts.map +1 -0
  18. package/dist/task/EntitlementPolicy.d.ts +60 -0
  19. package/dist/task/EntitlementPolicy.d.ts.map +1 -0
  20. package/dist/task/EntitlementProfiles.d.ts +49 -0
  21. package/dist/task/EntitlementProfiles.d.ts.map +1 -0
  22. package/dist/task/EntitlementResolver.d.ts +50 -0
  23. package/dist/task/EntitlementResolver.d.ts.map +1 -0
  24. package/dist/task/FallbackTask.d.ts +31 -24
  25. package/dist/task/FallbackTask.d.ts.map +1 -1
  26. package/dist/task/FallbackTaskRunner.d.ts +2 -2
  27. package/dist/task/FallbackTaskRunner.d.ts.map +1 -1
  28. package/dist/task/GraphAsTask.d.ts +18 -6
  29. package/dist/task/GraphAsTask.d.ts.map +1 -1
  30. package/dist/task/GraphAsTaskRunner.d.ts +3 -2
  31. package/dist/task/GraphAsTaskRunner.d.ts.map +1 -1
  32. package/dist/task/ITask.d.ts +12 -1
  33. package/dist/task/ITask.d.ts.map +1 -1
  34. package/dist/task/InputCompactor.d.ts +37 -0
  35. package/dist/task/InputCompactor.d.ts.map +1 -0
  36. package/dist/task/InputResolver.d.ts +19 -1
  37. package/dist/task/InputResolver.d.ts.map +1 -1
  38. package/dist/task/IteratorTask.d.ts +9 -4
  39. package/dist/task/IteratorTask.d.ts.map +1 -1
  40. package/dist/task/IteratorTaskRunner.d.ts +1 -1
  41. package/dist/task/IteratorTaskRunner.d.ts.map +1 -1
  42. package/dist/task/MapTask.d.ts +8 -3
  43. package/dist/task/MapTask.d.ts.map +1 -1
  44. package/dist/task/ReduceTask.d.ts +9 -4
  45. package/dist/task/ReduceTask.d.ts.map +1 -1
  46. package/dist/task/StreamTypes.d.ts +6 -2
  47. package/dist/task/StreamTypes.d.ts.map +1 -1
  48. package/dist/task/Task.d.ts +37 -7
  49. package/dist/task/Task.d.ts.map +1 -1
  50. package/dist/task/TaskEntitlements.d.ts +134 -0
  51. package/dist/task/TaskEntitlements.d.ts.map +1 -0
  52. package/dist/task/TaskError.d.ts +7 -0
  53. package/dist/task/TaskError.d.ts.map +1 -1
  54. package/dist/task/TaskEvents.d.ts +3 -0
  55. package/dist/task/TaskEvents.d.ts.map +1 -1
  56. package/dist/task/TaskJSON.d.ts +18 -5
  57. package/dist/task/TaskJSON.d.ts.map +1 -1
  58. package/dist/task/TaskRegistry.d.ts +16 -3
  59. package/dist/task/TaskRegistry.d.ts.map +1 -1
  60. package/dist/task/TaskRunner.d.ts +5 -4
  61. package/dist/task/TaskRunner.d.ts.map +1 -1
  62. package/dist/task/TaskTypes.d.ts +10 -2
  63. package/dist/task/TaskTypes.d.ts.map +1 -1
  64. package/dist/task/WhileTask.d.ts +8 -4
  65. package/dist/task/WhileTask.d.ts.map +1 -1
  66. package/dist/task/WhileTaskRunner.d.ts +1 -1
  67. package/dist/task/WhileTaskRunner.d.ts.map +1 -1
  68. package/dist/task/index.d.ts +6 -0
  69. package/dist/task/index.d.ts.map +1 -1
  70. package/dist/task/iterationSchema.d.ts +2 -1
  71. package/dist/task/iterationSchema.d.ts.map +1 -1
  72. package/dist/task-graph/Dataflow.d.ts +1 -1
  73. package/dist/task-graph/Dataflow.d.ts.map +1 -1
  74. package/dist/task-graph/GraphEntitlementUtils.d.ts +30 -0
  75. package/dist/task-graph/GraphEntitlementUtils.d.ts.map +1 -0
  76. package/dist/task-graph/GraphFormatScanner.d.ts +41 -0
  77. package/dist/task-graph/GraphFormatScanner.d.ts.map +1 -0
  78. package/dist/task-graph/GraphToWorkflowCode.d.ts.map +1 -1
  79. package/dist/task-graph/TaskGraph.d.ts +23 -5
  80. package/dist/task-graph/TaskGraph.d.ts.map +1 -1
  81. package/dist/task-graph/TaskGraphEvents.d.ts +3 -0
  82. package/dist/task-graph/TaskGraphEvents.d.ts.map +1 -1
  83. package/dist/task-graph/TaskGraphRunner.d.ts +13 -1
  84. package/dist/task-graph/TaskGraphRunner.d.ts.map +1 -1
  85. package/dist/task-graph/Workflow.d.ts +32 -17
  86. package/dist/task-graph/Workflow.d.ts.map +1 -1
  87. package/package.json +12 -7
@@ -0,0 +1,134 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { TaskIdType } from "./TaskTypes";
7
+ /**
8
+ * Hierarchical entitlement identifier.
9
+ * Uses colon-separated namespacing: "network", "network:http", "network:websocket"
10
+ * A grant of "network" implicitly covers "network:http" and "network:websocket".
11
+ */
12
+ export type EntitlementId = string;
13
+ /**
14
+ * A single entitlement declaration.
15
+ */
16
+ export interface TaskEntitlement {
17
+ /** Hierarchical identifier, e.g. "network:http", "credential:anthropic", "code-execution:javascript" */
18
+ readonly id: EntitlementId;
19
+ /** Human-readable reason why this entitlement is needed */
20
+ readonly reason?: string;
21
+ /** Whether this entitlement is optional (task can degrade gracefully without it) */
22
+ readonly optional?: boolean;
23
+ /**
24
+ * Specific resources this entitlement applies to.
25
+ * E.g. URL patterns for network, model IDs for ai:model, server names for mcp.
26
+ * When undefined, the entitlement applies broadly.
27
+ */
28
+ readonly resources?: readonly string[];
29
+ }
30
+ /**
31
+ * Complete entitlement declaration for a task or graph.
32
+ */
33
+ export interface TaskEntitlements {
34
+ /** List of entitlements required */
35
+ readonly entitlements: readonly TaskEntitlement[];
36
+ }
37
+ /**
38
+ * An entitlement with origin tracking (which task(s) require it).
39
+ */
40
+ export interface TrackedTaskEntitlement extends TaskEntitlement {
41
+ /** Task IDs that require this entitlement */
42
+ readonly sourceTaskIds: readonly TaskIdType[];
43
+ }
44
+ /**
45
+ * Entitlements with optional origin tracking.
46
+ */
47
+ export interface TrackedTaskEntitlements {
48
+ readonly entitlements: readonly TrackedTaskEntitlement[];
49
+ }
50
+ /**
51
+ * Well-known entitlement categories. Tasks may also use custom IDs beyond these.
52
+ */
53
+ export declare const Entitlements: {
54
+ readonly NETWORK: "network";
55
+ readonly NETWORK_HTTP: "network:http";
56
+ readonly NETWORK_WEBSOCKET: "network:websocket";
57
+ readonly NETWORK_PRIVATE: "network:private";
58
+ readonly FILESYSTEM: "filesystem";
59
+ readonly FILESYSTEM_READ: "filesystem:read";
60
+ readonly FILESYSTEM_WRITE: "filesystem:write";
61
+ readonly CODE_EXECUTION: "code-execution";
62
+ readonly CODE_EXECUTION_JS: "code-execution:javascript";
63
+ readonly CREDENTIAL: "credential";
64
+ readonly AI: "ai";
65
+ readonly AI_MODEL: "ai:model";
66
+ readonly AI_INFERENCE: "ai:inference";
67
+ readonly MCP: "mcp";
68
+ readonly MCP_TOOL_CALL: "mcp:tool-call";
69
+ readonly MCP_RESOURCE_READ: "mcp:resource-read";
70
+ readonly MCP_PROMPT_GET: "mcp:prompt-get";
71
+ readonly MCP_STDIO: "mcp:stdio";
72
+ readonly STORAGE: "storage";
73
+ readonly STORAGE_READ: "storage:read";
74
+ readonly STORAGE_WRITE: "storage:write";
75
+ };
76
+ /** Shared empty entitlements object to avoid unnecessary allocations */
77
+ export declare const EMPTY_ENTITLEMENTS: TaskEntitlements;
78
+ /**
79
+ * Check if a granted entitlement covers a required entitlement.
80
+ * "network" covers "network:http" (parent covers child in hierarchy).
81
+ */
82
+ export declare function entitlementCovers(granted: EntitlementId, required: EntitlementId): boolean;
83
+ /**
84
+ * A grant declaration — what a consumer is willing to allow.
85
+ * Unlike TaskEntitlement (which declares what a task *needs*), this declares what is *permitted*.
86
+ */
87
+ export interface EntitlementGrant {
88
+ /** Entitlement ID to grant. Hierarchy applies: granting "network" covers "network:http". */
89
+ readonly id: EntitlementId;
90
+ /**
91
+ * Specific resources this grant covers.
92
+ * - undefined → broad grant, covers all resources for this entitlement
93
+ * - string[] → scoped grant, only covers requirements whose resources are a subset
94
+ *
95
+ * Supports glob-style trailing wildcards:
96
+ * - "/tmp/*" covers "/tmp/data.json" and "/tmp/subdir/file.txt"
97
+ * - "claude-*" covers "claude-3-opus", "claude-3-sonnet"
98
+ * - "*.example.com" covers "api.example.com"
99
+ */
100
+ readonly resources?: readonly string[];
101
+ }
102
+ /**
103
+ * Check if a single grant resource pattern matches a single required resource.
104
+ * Supports single-`*` glob matching:
105
+ * - "prefix*" matches anything starting with "prefix"
106
+ * - "*.example.com" matches anything ending with ".example.com"
107
+ * - "pre*suf" matches anything with both the given prefix and suffix
108
+ * Without `*`, requires exact match.
109
+ */
110
+ export declare function resourcePatternMatches(grantPattern: string, requiredResource: string): boolean;
111
+ /**
112
+ * Check if a grant covers the resource requirements of an entitlement.
113
+ *
114
+ * Matching rules:
115
+ * - Grant has no resources (broad) → covers any resource requirement
116
+ * - Requirement has no resources (broad need) → only a broad grant covers it
117
+ * - Both have resources → every required resource must match at least one grant pattern
118
+ */
119
+ export declare function grantCoversResources(grant: EntitlementGrant, required: TaskEntitlement): boolean;
120
+ /**
121
+ * Merge two TaskEntitlements into a union (deduplicating by ID).
122
+ * If the same ID appears in both, optional is false if either is false (most restrictive wins).
123
+ * Resources are merged (union of all resource arrays for the same ID).
124
+ */
125
+ export declare function mergeEntitlements(a: TaskEntitlements, b: TaskEntitlements): TaskEntitlements;
126
+ /**
127
+ * Merge two entitlements with the same ID.
128
+ * - optional: false wins (most restrictive)
129
+ * - reason: first non-empty wins
130
+ * - resources: union
131
+ */
132
+ export declare function mergeEntitlementPair(a: TaskEntitlement, b: TaskEntitlement): TaskEntitlement;
133
+ export declare function mergeResources(a: readonly string[] | undefined, b: readonly string[] | undefined): readonly string[] | undefined;
134
+ //# sourceMappingURL=TaskEntitlements.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskEntitlements.d.ts","sourceRoot":"","sources":["../../src/task/TaskEntitlements.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM9C;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wGAAwG;IACxG,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,QAAQ,CAAC,YAAY,EAAE,SAAS,eAAe,EAAE,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC7D,6CAA6C;IAC7C,QAAQ,CAAC,aAAa,EAAE,SAAS,UAAU,EAAE,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,YAAY,EAAE,SAAS,sBAAsB,EAAE,CAAC;CAC1D;AAMD;;GAEG;AACH,eAAO,MAAM,YAAY;aAEvB,OAAO,EAAE,SAAS;aAClB,YAAY,EAAE,cAAc;aAC5B,iBAAiB,EAAE,mBAAmB;aACtC,eAAe,EAAE,iBAAiB;aAGlC,UAAU,EAAE,YAAY;aACxB,eAAe,EAAE,iBAAiB;aAClC,gBAAgB,EAAE,kBAAkB;aAGpC,cAAc,EAAE,gBAAgB;aAChC,iBAAiB,EAAE,2BAA2B;aAG9C,UAAU,EAAE,YAAY;aAGxB,EAAE,EAAE,IAAI;aACR,QAAQ,EAAE,UAAU;aACpB,YAAY,EAAE,cAAc;aAG5B,GAAG,EAAE,KAAK;aACV,aAAa,EAAE,eAAe;aAC9B,iBAAiB,EAAE,mBAAmB;aACtC,cAAc,EAAE,gBAAgB;aAChC,SAAS,EAAE,WAAW;aAGtB,OAAO,EAAE,SAAS;aAClB,YAAY,EAAE,cAAc;aAC5B,aAAa,EAAE,eAAe;CACtB,CAAC;AAMX,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,EAAE,gBAE/B,CAAC;AAMH;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,GAAG,OAAO,CAE1F;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IAC3B;;;;;;;;;OASG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAY9F;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAShG;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,CAoB5F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,GAAG,eAAe,CAY5F;AAED,wBAAgB,cAAc,CAC5B,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAChC,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAC/B,SAAS,MAAM,EAAE,GAAG,SAAS,CAK/B"}
@@ -86,6 +86,13 @@ export declare class TaskInvalidInputError extends TaskError {
86
86
  static readonly type: string;
87
87
  constructor(message?: string);
88
88
  }
89
+ /**
90
+ * Thrown when required entitlements are denied by the registered enforcer.
91
+ */
92
+ export declare class TaskEntitlementError extends TaskError {
93
+ static readonly type: string;
94
+ constructor(message?: string);
95
+ }
89
96
  /**
90
97
  * Thrown when toJSON is called on a task whose config contains non-serializable
91
98
  * values (e.g. functions). Tasks should override canSerializeConfig() to declare
@@ -1 +1 @@
1
- {"version":3,"file":"TaskError.d.ts","sourceRoot":"","sources":["../../src/task/TaskError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,qBAAa,SAAU,SAAQ,SAAS;IACtC,gBAAyB,IAAI,EAAE,MAAM,CAAe;IACpD,mEAAmE;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,gBAAyB,IAAI,EAAE,MAAM,CAA4B;IACjE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,gBAAyB,IAAI,EAAE,MAAM,CAAmB;IACxD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;IAC7C,gBAAyB,IAAI,EAAE,MAAM,CAAsB;IAC3D,YAAY,OAAO,GAAE,MAAuB,EAE3C;CACF;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,gBAAgB;IACpD,gBAAyB,IAAI,EAAE,MAAM,CAAsB;IAC3D,YAAY,SAAS,CAAC,EAAE,MAAM,EAE7B;CACF;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,SAAQ,gBAAgB;IACzD,gBAAyB,IAAI,EAAE,MAAM,CAA2B;IAChE,YAAY,SAAS,CAAC,EAAE,MAAM,EAM7B;CACF;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,gBAAyB,IAAI,EAAE,MAAM,CAAqB;IAC1D,YAAY,OAAO,GAAE,MAAsB,EAE1C;CACF;AAED,qBAAa,kBAAmB,SAAQ,eAAe;IACrD,gBAAyB,IAAI,EAAE,MAAM,CAAwB;IACtD,QAAQ,EAAE,QAAQ,CAAC;IAC1B,YAAY,GAAG,EAAE,QAAQ,EAGxB;CACF;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,gBAAyB,IAAI,EAAE,MAAM,CAAmB;IACxD,YAAY,OAAO,GAAE,MAA0C,EAE9D;CACF;AAED;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,SAAS;IAClD,gBAAyB,IAAI,EAAE,MAAM,CAA2B;IAChE,YAAY,OAAO,GAAE,MAA6B,EAEjD;CACF;AAED;;;;GAIG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,gBAAyB,IAAI,EAAE,MAAM,CAA4B;IACjE,YAAY,QAAQ,EAAE,MAAM,EAK3B;CACF"}
1
+ {"version":3,"file":"TaskError.d.ts","sourceRoot":"","sources":["../../src/task/TaskError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,qBAAa,SAAU,SAAQ,SAAS;IACtC,gBAAyB,IAAI,EAAE,MAAM,CAAe;IACpD,mEAAmE;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,gBAAyB,IAAI,EAAE,MAAM,CAA4B;IACjE,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,gBAAyB,IAAI,EAAE,MAAM,CAAmB;IACxD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;IAC7C,gBAAyB,IAAI,EAAE,MAAM,CAAsB;IAC3D,YAAY,OAAO,GAAE,MAAuB,EAE3C;CACF;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,gBAAgB;IACpD,gBAAyB,IAAI,EAAE,MAAM,CAAsB;IAC3D,YAAY,SAAS,CAAC,EAAE,MAAM,EAE7B;CACF;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,SAAQ,gBAAgB;IACzD,gBAAyB,IAAI,EAAE,MAAM,CAA2B;IAChE,YAAY,SAAS,CAAC,EAAE,MAAM,EAM7B;CACF;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,gBAAyB,IAAI,EAAE,MAAM,CAAqB;IAC1D,YAAY,OAAO,GAAE,MAAsB,EAE1C;CACF;AAED,qBAAa,kBAAmB,SAAQ,eAAe;IACrD,gBAAyB,IAAI,EAAE,MAAM,CAAwB;IACtD,QAAQ,EAAE,QAAQ,CAAC;IAC1B,YAAY,GAAG,EAAE,QAAQ,EAGxB;CACF;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,gBAAyB,IAAI,EAAE,MAAM,CAAmB;IACxD,YAAY,OAAO,GAAE,MAA0C,EAE9D;CACF;AAED;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,SAAS;IAClD,gBAAyB,IAAI,EAAE,MAAM,CAA2B;IAChE,YAAY,OAAO,GAAE,MAA6B,EAEjD;CACF;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;IACjD,gBAAyB,IAAI,EAAE,MAAM,CAA0B;IAC/D,YAAY,OAAO,GAAE,MAAuC,EAE3D;CACF;AAED;;;;GAIG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;IACnD,gBAAyB,IAAI,EAAE,MAAM,CAA4B;IACjE,YAAY,QAAQ,EAAE,MAAM,EAK3B;CACF"}
@@ -7,6 +7,7 @@ import type { DataPortSchema } from "@workglow/util/schema";
7
7
  import { EventParameters } from "@workglow/util";
8
8
  import type { StreamEvent } from "./StreamTypes";
9
9
  import { TaskAbortedError, TaskError } from "./TaskError";
10
+ import type { TaskEntitlements } from "./TaskEntitlements";
10
11
  import { TaskStatus } from "./TaskTypes";
11
12
  /**
12
13
  * Event listeners for task lifecycle events
@@ -46,6 +47,8 @@ export type TaskEventListeners = {
46
47
  status: (status: TaskStatus) => void;
47
48
  /** Fired when a task's input or output schema changes (for tasks with dynamic schemas) */
48
49
  schemaChange: (inputSchema?: DataPortSchema, outputSchema?: DataPortSchema) => void;
50
+ /** Fired when a task's required entitlements change (for tasks with dynamic entitlements) */
51
+ entitlementChange: (entitlements: TaskEntitlements) => void;
49
52
  /** Fired when a streaming task begins producing chunks */
50
53
  stream_start: () => void;
51
54
  /** Fired for each stream chunk produced by a streaming task */
@@ -1 +1 @@
1
- {"version":3,"file":"TaskEvents.d.ts","sourceRoot":"","sources":["../../src/task/TaskEvents.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKzC;;GAEG;AAEH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,yCAAyC;IACzC,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,IAAI,CAAC;IAErB,mCAAmC;IACnC,KAAK,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEzC,4CAA4C;IAC5C,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IAElC,oCAAoC;IACpC,QAAQ,EAAE,MAAM,IAAI,CAAC;IAErB,yCAAyC;IACzC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAEvE;;;OAGG;IACH,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjE;;OAEG;IACH,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpE;;;OAGG;IACH,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;IAEV,2DAA2D;IAC3D,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB,mDAAmD;IACnD,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,0CAA0C;IAC1C,MAAM,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAErC,0FAA0F;IAC1F,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAEpF,0DAA0D;IAC1D,YAAY,EAAE,MAAM,IAAI,CAAC;IAEzB,+DAA+D;IAC/D,YAAY,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAE3C,kEAAkE;IAClE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CACvD,CAAC;AACF,kDAAkD;AAElD,MAAM,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC;AAClD,6CAA6C;AAE7C,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,UAAU,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACpF,qCAAqC;AAErC,MAAM,MAAM,mBAAmB,CAAC,KAAK,SAAS,UAAU,IAAI,eAAe,CACzE,kBAAkB,EAClB,KAAK,CACN,CAAC"}
1
+ {"version":3,"file":"TaskEvents.d.ts","sourceRoot":"","sources":["../../src/task/TaskEvents.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKzC;;GAEG;AAEH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,yCAAyC;IACzC,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,IAAI,CAAC;IAErB,mCAAmC;IACnC,KAAK,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEzC,4CAA4C;IAC5C,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IAElC,oCAAoC;IACpC,QAAQ,EAAE,MAAM,IAAI,CAAC;IAErB,yCAAyC;IACzC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAEvE;;;OAGG;IACH,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjE;;OAEG;IACH,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpE;;;OAGG;IACH,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;IAEV,2DAA2D;IAC3D,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB,mDAAmD;IACnD,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,0CAA0C;IAC1C,MAAM,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAErC,0FAA0F;IAC1F,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAEpF,6FAA6F;IAC7F,iBAAiB,EAAE,CAAC,YAAY,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAE5D,0DAA0D;IAC1D,YAAY,EAAE,MAAM,IAAI,CAAC;IAEzB,+DAA+D;IAC/D,YAAY,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAE3C,kEAAkE;IAClE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CACvD,CAAC;AACF,kDAAkD;AAElD,MAAM,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC;AAClD,6CAA6C;AAE7C,MAAM,MAAM,iBAAiB,CAAC,KAAK,SAAS,UAAU,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACpF,qCAAqC;AAErC,MAAM,MAAM,mBAAmB,CAAC,KAAK,SAAS,UAAU,IAAI,eAAe,CACzE,kBAAkB,EAClB,KAAK,CACN,CAAC"}
@@ -6,6 +6,7 @@
6
6
  import type { ServiceRegistry } from "@workglow/util";
7
7
  import { TaskGraph } from "../task-graph/TaskGraph";
8
8
  import { CompoundMergeStrategy } from "../task-graph/TaskGraphRunner";
9
+ import type { TaskEntitlements } from "../task/TaskEntitlements";
9
10
  import { ConditionalTaskConfig } from "./ConditionalTask";
10
11
  import { GraphAsTask, GraphAsTaskConfig } from "./GraphAsTask";
11
12
  import { IteratorTaskConfig } from "./IteratorTask";
@@ -17,7 +18,7 @@ import { WhileTaskConfig } from "./WhileTask";
17
18
  * Represents a single task item in the JSON configuration.
18
19
  * This structure defines how tasks should be configured in JSON format.
19
20
  */
20
- export type JsonTaskConfig = Omit<TaskConfig & GraphAsTaskConfig & WhileTaskConfig & IteratorTaskConfig & ReduceTaskConfig & MapTaskConfig & ConditionalTaskConfig, "id">;
21
+ export type JsonTaskConfig = Omit<TaskConfig & GraphAsTaskConfig & WhileTaskConfig & IteratorTaskConfig & ReduceTaskConfig & MapTaskConfig & ConditionalTaskConfig, "id" | "defaults">;
21
22
  export type JsonTaskItem = {
22
23
  /** Unique identifier for the task */
23
24
  id: unknown;
@@ -42,6 +43,13 @@ export type JsonTaskItem = {
42
43
  };
43
44
  /** Nested tasks for compound operations */
44
45
  subtasks?: JsonTaskItem[];
46
+ /**
47
+ * Entitlements required by this task.
48
+ * @output-only This field is populated during serialization (toJSON/toDependencyJSON)
49
+ * and is ignored during deserialization. User-supplied entitlements in JSON input
50
+ * are not applied to the reconstructed task.
51
+ */
52
+ entitlements?: TaskEntitlements;
45
53
  };
46
54
  /**
47
55
  * Represents a task graph item, which can be a task or a subgraph
@@ -53,6 +61,11 @@ export type TaskGraphItemJson = {
53
61
  config?: JsonTaskConfig;
54
62
  subgraph?: TaskGraphJson;
55
63
  merge?: CompoundMergeStrategy;
64
+ /**
65
+ * Entitlements required by this task.
66
+ * @output-only This field is populated during serialization and is ignored during deserialization.
67
+ */
68
+ entitlements?: TaskEntitlements;
56
69
  };
57
70
  export type TaskGraphJson = {
58
71
  tasks: TaskGraphItemJson[];
@@ -96,7 +109,7 @@ export interface TaskDeserializationOptions {
96
109
  * @throws {TaskConfigurationError} If `subtasks` are provided for a task that is not
97
110
  * a `GraphAsTask`.
98
111
  */
99
- export declare const createTaskFromDependencyJSON: (item: JsonTaskItem, registry?: ServiceRegistry | undefined, options?: TaskDeserializationOptions | undefined) => GraphAsTask<any, any, any> | import("./ITask").ITask<any, any, any>;
112
+ export declare const createTaskFromDependencyJSON: (item: JsonTaskItem, registry?: ServiceRegistry, options?: TaskDeserializationOptions) => GraphAsTask<any, any, any> | import("./ITask").ITask<any, any, any>;
100
113
  /**
101
114
  * Creates a `TaskGraph` from an array of JSON dependency-style task items.
102
115
  * Recursively processes `subtasks` for compound (`GraphAsTask`) tasks.
@@ -111,7 +124,7 @@ export declare const createTaskFromDependencyJSON: (item: JsonTaskItem, registry
111
124
  * unregistered task type.
112
125
  * @throws {TaskConfigurationError} If `subtasks` are specified for a non-`GraphAsTask`.
113
126
  */
114
- export declare const createGraphFromDependencyJSON: (jsonItems: JsonTaskItem[], registry?: ServiceRegistry | undefined, options?: TaskDeserializationOptions | undefined) => TaskGraph;
127
+ export declare const createGraphFromDependencyJSON: (jsonItems: JsonTaskItem[], registry?: ServiceRegistry, options?: TaskDeserializationOptions) => TaskGraph;
115
128
  /**
116
129
  * Creates a task instance from a task graph item JSON representation.
117
130
  *
@@ -127,7 +140,7 @@ export declare const createGraphFromDependencyJSON: (jsonItems: JsonTaskItem[],
127
140
  * @throws {TaskConfigurationError} If a `subgraph` is provided for a task that is not
128
141
  * a `GraphAsTask`.
129
142
  */
130
- export declare const createTaskFromGraphJSON: (item: TaskGraphItemJson, registry?: ServiceRegistry | undefined, options?: TaskDeserializationOptions | undefined) => GraphAsTask<any, any, any> | import("./ITask").ITask<any, any, any>;
143
+ export declare const createTaskFromGraphJSON: (item: TaskGraphItemJson, registry?: ServiceRegistry, options?: TaskDeserializationOptions) => GraphAsTask<any, any, any> | import("./ITask").ITask<any, any, any>;
131
144
  /**
132
145
  * Creates a `TaskGraph` instance from its JSON representation.
133
146
  * Reconstructs all tasks and the data flows between them.
@@ -143,5 +156,5 @@ export declare const createTaskFromGraphJSON: (item: TaskGraphItemJson, registry
143
156
  * unregistered task type.
144
157
  * @throws {TaskConfigurationError} If a `subgraph` is specified for a non-`GraphAsTask`.
145
158
  */
146
- export declare const createGraphFromGraphJSON: (graphJsonObj: TaskGraphJson, registry?: ServiceRegistry | undefined, options?: TaskDeserializationOptions | undefined) => TaskGraph;
159
+ export declare const createGraphFromGraphJSON: (graphJsonObj: TaskGraphJson, registry?: ServiceRegistry, options?: TaskDeserializationOptions) => TaskGraph;
147
160
  //# sourceMappingURL=TaskJSON.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TaskJSON.d.ts","sourceRoot":"","sources":["../../src/task/TaskJSON.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskJSON.d.ts","sourceRoot":"","sources":["../../src/task/TaskJSON.ts"],"names":[],"mappings":"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"}
@@ -9,12 +9,21 @@ type AnyTaskConstructor = ITaskConstructor<any, any, any>;
9
9
  /**
10
10
  * Registers a task constructor with the registry.
11
11
  * This allows the task type to be instantiated dynamically based on its type identifier.
12
+ * Re-registering the exact same class is idempotent and does nothing.
12
13
  *
13
- * @param type - The unique identifier for the task type
14
- * @param constructor - The constructor function for the task
15
- * @throws Error if a task with the same type is already registered
14
+ * @param baseClass - The constructor function for the task to register
15
+ * @throws Error if a different constructor is already registered for the same task type.
16
+ * Call {@link unregisterTask} first to replace an existing registration.
16
17
  */
17
18
  declare function registerTask(baseClass: AnyTaskConstructor): void;
19
+ /**
20
+ * Removes a task constructor from the registry.
21
+ * Must be called before re-registering a task type with a different constructor.
22
+ *
23
+ * @param type - The task type identifier to remove
24
+ * @returns true if the task type was found and removed, false otherwise
25
+ */
26
+ declare function unregisterTask(type: string): boolean;
18
27
  /**
19
28
  * TaskRegistry provides a centralized registry for task types.
20
29
  * It enables dynamic task instantiation and management across the application.
@@ -28,6 +37,10 @@ export declare const TaskRegistry: {
28
37
  * Function to register new task types
29
38
  */
30
39
  registerTask: typeof registerTask;
40
+ /**
41
+ * Function to remove a registered task type
42
+ */
43
+ unregisterTask: typeof unregisterTask;
31
44
  };
32
45
  /**
33
46
  * Service token for the task constructor registry.
@@ -1 +1 @@
1
- {"version":3,"file":"TaskRegistry.d.ts","sourceRoot":"","sources":["../../src/task/TaskRegistry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIL,eAAe,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAGhD,KAAK,kBAAkB,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAQ1D;;;;;;;GAOG;AACH,iBAAS,YAAY,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAMzD;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY;IACvB;;OAEG;;IAGH;;OAEG;;CAEJ,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,wEAC4C,CAAC;AAW3E;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAE3E;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,IAAI,CAEpF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAG/F"}
1
+ {"version":3,"file":"TaskRegistry.d.ts","sourceRoot":"","sources":["../../src/task/TaskRegistry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAML,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAGhD,KAAK,kBAAkB,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAQ1D;;;;;;;;GAQG;AACH,iBAAS,YAAY,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI,CA2BzD;AAED;;;;;;GAMG;AACH,iBAAS,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7C;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY;IACvB;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEJ,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,wEAC4C,CAAC;AAS3E;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAE3E;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,IAAI,CAEpF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAG/F"}
@@ -3,12 +3,13 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { ServiceRegistry, type ISpan } from "@workglow/util";
6
+ import { ServiceRegistry } from "@workglow/util";
7
+ import type { ISpan } from "@workglow/util";
7
8
  import { TaskOutputRepository } from "../storage/TaskOutputRepository";
8
- import { type Taskish } from "../task-graph/Conversions";
9
- import { IRunConfig, ITask } from "./ITask";
9
+ import type { Taskish } from "../task-graph/Conversions";
10
+ import type { IRunConfig, ITask } from "./ITask";
10
11
  import { ITaskRunner } from "./ITaskRunner";
11
- import { type StreamEvent } from "./StreamTypes";
12
+ import type { StreamEvent } from "./StreamTypes";
12
13
  import { TaskTimeoutError } from "./TaskError";
13
14
  import { TaskConfig, TaskInput, TaskOutput } from "./TaskTypes";
14
15
  /**
@@ -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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"}
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { type DataPortSchema, type FromSchema, StripJSONSchema } from "@workglow/util/schema";
6
+ import { StripJSONSchema } from "@workglow/util/schema";
7
+ import type { DataPortSchema, FromSchema } from "@workglow/util/schema";
7
8
  import type { Task } from "./Task";
8
9
  /**
9
10
  * Enum representing the possible states of a task
@@ -96,6 +97,11 @@ export declare const TaskConfigSchema: {
96
97
  readonly additionalProperties: true;
97
98
  readonly "x-ui-hidden": true;
98
99
  };
100
+ readonly defaults: {
101
+ readonly type: "object";
102
+ readonly additionalProperties: true;
103
+ readonly "x-ui-hidden": true;
104
+ };
99
105
  };
100
106
  readonly additionalProperties: false;
101
107
  };
@@ -105,13 +111,15 @@ type BaseFromSchema = FromSchema<typeof TaskConfigSchema>;
105
111
  * Use `TaskConfigSchema` when building JSON schemas in subclasses.
106
112
  * Use this type when declaring the Config generic parameter.
107
113
  */
108
- export type TaskConfig = Omit<BaseFromSchema, "id" | "inputSchema" | "outputSchema"> & {
114
+ export type TaskConfig<Input extends DataPorts = DataPorts> = Omit<BaseFromSchema, "id" | "inputSchema" | "outputSchema"> & {
109
115
  /** Unique identifier for the task (uuid4 by default) */
110
116
  id?: unknown;
111
117
  /** Dynamic input schema override for the task instance */
112
118
  inputSchema?: DataPortSchema;
113
119
  /** Dynamic output schema override for the task instance */
114
120
  outputSchema?: DataPortSchema;
121
+ /** Default input values provided at construction time */
122
+ defaults?: NoInfer<Partial<Input>>;
115
123
  };
116
124
  /** Type for task ID */
117
125
  export type TaskIdType = Task<TaskInput, TaskOutput, TaskConfig>["config"]["id"];
@@ -1 +1 @@
1
- {"version":3,"file":"TaskTypes.d.ts","sourceRoot":"","sources":["../../src/task/TaskTypes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,UAAU,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC9F,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,UAAU,GACV,YAAY,GACZ,WAAW,GACX,WAAW,GACX,UAAU,GACV,QAAQ,CAAC;AAEb,eAAO,MAAM,UAAU;IACrB,0CAA0C;;IAE1C,gDAAgD;;IAEhD,gCAAgC;;IAEhC,uDAAuD;;IAEvD,sCAAsC;;IAEtC,8CAA8C;;IAE9C,sBAAsB;;CAE2B,CAAC;AAMpD,MAAM,WAAW,SAAU,SAAQ,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,+BAA+B;AAC/B,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC;AAElC,gCAAgC;AAChC,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC;AAEnC,MAAM,MAAM,kBAAkB,GAC1B;IACE,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB,GACD;IACE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,SAAS,CAAC;CAChD,CAAC;AAEN,+BAA+B;AAC/B,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAMlC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BM,CAAC;AAEpC,KAAK,cAAc,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,aAAa,GAAG,cAAc,CAAC,GAAG;IACrF,wDAAwD;IACxD,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,0DAA0D;IAC1D,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,2DAA2D;IAC3D,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B,CAAC;AAEF,uBAAuB;AACvB,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"TaskTypes.d.ts","sourceRoot":"","sources":["../../src/task/TaskTypes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,UAAU,GACV,YAAY,GACZ,WAAW,GACX,WAAW,GACX,UAAU,GACV,QAAQ,CAAC;AAEb,eAAO,MAAM,UAAU;IACrB,0CAA0C;sBACjC,SAAS;IAClB,gDAAgD;uBACtC,UAAU;IACpB,gCAAgC;yBACpB,YAAY;IACxB,uDAAuD;wBAC5C,WAAW;IACtB,sCAAsC;wBAC3B,WAAW;IACtB,8CAA8C;uBACpC,UAAU;IACpB,sBAAsB;qBACd,QAAQ;CACiC,CAAC;AAMpD,MAAM,WAAW,SAAU,SAAQ,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,+BAA+B;AAC/B,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC;AAElC,gCAAgC;AAChC,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC;AAEnC,MAAM,MAAM,kBAAkB,GAC1B;IACE,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB,GACD;IACE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,SAAS,CAAC;CAChD,CAAC;AAEN,+BAA+B;AAC/B,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAMlC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB;mBACrB,QAAQ;;iBAEZ,EAAE;qBACA,aAAa;;iBAEf,KAAK;qBAAI,IAAI,EAAE,QAAQ;;iBACvB,WAAW;qBAAI,IAAI,EAAE,QAAQ;;iBAC7B,SAAS;qBAAI,IAAI,EAAE,SAAS;;iBAC5B,OAAO;qBAAI,IAAI,EAAE,QAAQ;qBAAE,WAAW,EAAE,oCAAoC;;iBAC5E,WAAW;qBACT,IAAI,EAAE,QAAQ;qBACd,UAAU;qBACV,oBAAoB;qBACpB,aAAa;;iBAEf,YAAY;qBACV,IAAI,EAAE,QAAQ;qBACd,UAAU;qBACV,oBAAoB;qBACpB,aAAa;;iBAEf,MAAM;qBACJ,IAAI,EAAE,QAAQ;qBACd,oBAAoB;qBACpB,aAAa;;iBAEf,QAAQ;qBACN,IAAI,EAAE,QAAQ;qBACd,oBAAoB;qBACpB,aAAa;;;;CAIgB,CAAC;AAEpC,KAAK,cAAc,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,MAAM,UAAU,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,IAAI,IAAI,CAChE,cAAc,EACd,IAAI,GAAG,aAAa,GAAG,cAAc,CACtC,GAAG;IACF,wDAAwD;IACxD,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,0DAA0D;IAC1D,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,2DAA2D;IAC3D,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;CACpC,CAAC;AAEF,uBAAuB;AACvB,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC"}
@@ -64,6 +64,11 @@ export declare const whileTaskConfigSchema: {
64
64
  readonly additionalProperties: true;
65
65
  readonly "x-ui-hidden": true;
66
66
  };
67
+ readonly defaults: {
68
+ readonly type: "object";
69
+ readonly additionalProperties: true;
70
+ readonly "x-ui-hidden": true;
71
+ };
67
72
  readonly condition: {};
68
73
  readonly maxIterations: {
69
74
  readonly type: "integer";
@@ -91,7 +96,7 @@ export declare const whileTaskConfigSchema: {
91
96
  /**
92
97
  * Configuration for WhileTask.
93
98
  */
94
- export type WhileTaskConfig<Output extends TaskOutput = TaskOutput> = GraphAsTaskConfig & {
99
+ export type WhileTaskConfig<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput> = GraphAsTaskConfig<Input> & {
95
100
  /**
96
101
  * Condition function that determines whether to continue looping.
97
102
  * Called after each iteration with the current output and iteration count.
@@ -164,7 +169,7 @@ export type WhileTaskConfig<Output extends TaskOutput = TaskOutput> = GraphAsTas
164
169
  * @template Output - The output type for the while task
165
170
  * @template Config - The configuration type
166
171
  */
167
- export declare class WhileTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends WhileTaskConfig<Output> = WhileTaskConfig<Output>> extends GraphAsTask<Input, Output, Config> {
172
+ export declare class WhileTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends WhileTaskConfig<Input, Output> = WhileTaskConfig<Input, Output>> extends GraphAsTask<Input, Output, Config> {
168
173
  static type: TaskTypeName;
169
174
  static category: string;
170
175
  static title: string;
@@ -185,7 +190,6 @@ export declare class WhileTask<Input extends TaskInput = TaskInput, Output exten
185
190
  */
186
191
  protected _currentIteration: number;
187
192
  canSerializeConfig(): boolean;
188
- constructor(input?: Partial<Input>, config?: Partial<Config>);
189
193
  _runner: WhileTaskRunner<Input, Output, Config>;
190
194
  get runner(): WhileTaskRunner<Input, Output, Config>;
191
195
  /**
@@ -283,7 +287,7 @@ declare module "../task-graph/Workflow" {
283
287
  * .endWhile()
284
288
  * ```
285
289
  */
286
- while: CreateLoopWorkflow<TaskInput, TaskOutput, WhileTaskConfig<any>>;
290
+ while: CreateLoopWorkflow<TaskInput, TaskOutput, WhileTaskConfig<TaskInput, any>>;
287
291
  /**
288
292
  * Ends the while loop and returns to the parent workflow.
289
293
  * Only callable on workflows in loop builder mode.
@@ -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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"}
@@ -13,7 +13,7 @@ import type { WhileTask, WhileTaskConfig } from "./WhileTask";
13
13
  *
14
14
  * This follows the same pattern as IteratorTaskRunner.
15
15
  */
16
- export declare class WhileTaskRunner<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends WhileTaskConfig<Output> = WhileTaskConfig<Output>> extends GraphAsTaskRunner<Input, Output, Config> {
16
+ export declare class WhileTaskRunner<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends WhileTaskConfig<Input, Output> = WhileTaskConfig<Input, Output>> extends GraphAsTaskRunner<Input, Output, Config> {
17
17
  task: WhileTask<Input, Output, Config>;
18
18
  /**
19
19
  * Override executeTask to call the task's execute() method which
@@ -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,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAChE,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,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGvF;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,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,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGvF;CACF"}
@@ -5,10 +5,15 @@
5
5
  */
6
6
  export * from "./ConditionalTask";
7
7
  export * from "./ConditionUtils";
8
+ export * from "./EntitlementEnforcer";
9
+ export * from "./EntitlementPolicy";
10
+ export * from "./EntitlementProfiles";
11
+ export * from "./EntitlementResolver";
8
12
  export * from "./FallbackTask";
9
13
  export * from "./FallbackTaskRunner";
10
14
  export * from "./GraphAsTask";
11
15
  export * from "./GraphAsTaskRunner";
16
+ export * from "./InputCompactor";
12
17
  export * from "./InputResolver";
13
18
  export * from "./ITask";
14
19
  export * from "./iterationSchema";
@@ -19,6 +24,7 @@ export * from "./MapTask";
19
24
  export * from "./ReduceTask";
20
25
  export * from "./StreamTypes";
21
26
  export * from "./Task";
27
+ export * from "./TaskEntitlements";
22
28
  export * from "./TaskError";
23
29
  export * from "./TaskEvents";
24
30
  export * from "./TaskJSON";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,iBAAiB,qIAI7B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,eAAO,MAAM,iBAAiB,qIAI7B,CAAC"}
@@ -7,7 +7,8 @@
7
7
  * Re-exports context schemas and adds pure schema functions that operate on DataPortSchema.
8
8
  */
9
9
  import type { DataPortSchema, PropertySchema } from "@workglow/util/schema";
10
- import { createArraySchema, createFlexibleSchema, extractBaseSchema, ITERATOR_CONTEXT_SCHEMA, type ExecutionMode, type IterationInputMode, type IterationPropertyConfig } from "./IteratorTask";
10
+ import { createArraySchema, createFlexibleSchema, extractBaseSchema, ITERATOR_CONTEXT_SCHEMA } from "./IteratorTask";
11
+ import type { ExecutionMode, IterationInputMode, IterationPropertyConfig } from "./IteratorTask";
11
12
  import { WHILE_CONTEXT_SCHEMA } from "./WhileTask";
12
13
  export { createArraySchema, createFlexibleSchema, extractBaseSchema, ITERATOR_CONTEXT_SCHEMA, WHILE_CONTEXT_SCHEMA, type ExecutionMode, type IterationInputMode, type IterationPropertyConfig, };
13
14
  /** Config for buildIterationInputSchema: mode and optional baseSchema (defaults to extracted from inner). */
@@ -1 +1 @@
1
- {"version":3,"file":"iterationSchema.d.ts","sourceRoot":"","sources":["../../src/task/iterationSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5E,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC7B,CAAC;AAEF,6GAA6G;AAC7G,MAAM,MAAM,oBAAoB,GAAG,MAAM,CACvC,MAAM,EACN;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,UAAU,CAAC,EAAE,cAAc,CAAA;CAAE,CAC1D,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAsBhE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAInE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,kBAAkB,CAIjF;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAQ7F;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,cAAc,EAAE,cAAc,GAAG,SAAS,EAC1C,cAAc,EAAE,MAAM,GACrB,cAAc,CA4BhB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAGnE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,SAAS,CAiB7F;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,SAAS,CAe9F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,SAAS,CAE7F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,cAAc,GAAG,SAAS,EACvC,YAAY,EAAE,cAAc,GAAG,SAAS,GACvC,cAAc,CAiChB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,cAAc,GAAG,SAAS,EACvC,MAAM,CAAC,EAAE,oBAAoB,GAC5B,cAAc,CA2DhB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,EAAE,CAgB3E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAmBhG"}
1
+ {"version":3,"file":"iterationSchema.d.ts","sourceRoot":"","sources":["../../src/task/iterationSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5E,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC7B,CAAC;AAEF,6GAA6G;AAC7G,MAAM,MAAM,oBAAoB,GAAG,MAAM,CACvC,MAAM,EACN;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,UAAU,CAAC,EAAE,cAAc,CAAA;CAAE,CAC1D,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAsBhE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAInE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,kBAAkB,CAIjF;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAQ7F;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,cAAc,EAAE,cAAc,GAAG,SAAS,EAC1C,cAAc,EAAE,MAAM,GACrB,cAAc,CA4BhB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAGnE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,SAAS,CAiB7F;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,SAAS,CAe9F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,SAAS,CAE7F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,cAAc,GAAG,SAAS,EACvC,YAAY,EAAE,cAAc,GAAG,SAAS,GACvC,cAAc,CAiChB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,cAAc,GAAG,SAAS,EACvC,MAAM,CAAC,EAAE,oBAAoB,GAC5B,cAAc,CA2DhB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,EAAE,CAgB3E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAmBhG"}
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { EventEmitter } from "@workglow/util";
7
- import { type StreamEvent } from "../task/StreamTypes";
7
+ import type { StreamEvent } from "../task/StreamTypes";
8
8
  import { TaskError } from "../task/TaskError";
9
9
  import { DataflowJson } from "../task/TaskJSON";
10
10
  import { TaskIdType, TaskOutput, TaskStatus } from "../task/TaskTypes";
@@ -1 +1 @@
1
- {"version":3,"file":"Dataflow.d.ts","sourceRoot":"","sources":["../../src/task-graph/Dataflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dataflow.d.ts","sourceRoot":"","sources":["../../src/task-graph/Dataflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { type TaskEntitlements, type TrackedTaskEntitlements } from "../task/TaskEntitlements";
7
+ import type { TaskGraph } from "./TaskGraph";
8
+ export interface GraphEntitlementOptions {
9
+ /**
10
+ * When true, annotate each entitlement with the source task IDs that require it.
11
+ */
12
+ readonly trackOrigins?: boolean;
13
+ /**
14
+ * Controls which ConditionalTask branches are included.
15
+ * - "all" (default): Include entitlements from ALL branches (conservative, pre-execution analysis)
16
+ * - "active": Only include entitlements from currently active branches (runtime, after conditions evaluated)
17
+ */
18
+ readonly conditionalBranches?: "all" | "active";
19
+ }
20
+ /**
21
+ * Computes the aggregated entitlements for a TaskGraph.
22
+ * Returns the union of all task entitlements in the graph.
23
+ *
24
+ * When `trackOrigins` is true, returns TrackedTaskEntitlements with source task IDs.
25
+ */
26
+ export declare function computeGraphEntitlements(graph: TaskGraph, options?: GraphEntitlementOptions & {
27
+ readonly trackOrigins: true;
28
+ }): TrackedTaskEntitlements;
29
+ export declare function computeGraphEntitlements(graph: TaskGraph, options?: GraphEntitlementOptions): TaskEntitlements;
30
+ //# sourceMappingURL=GraphEntitlementUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GraphEntitlementUtils.d.ts","sourceRoot":"","sources":["../../src/task-graph/GraphEntitlementUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAGL,KAAK,gBAAgB,EAErB,KAAK,uBAAuB,EAG7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CACjD;AAMD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,EAChB,OAAO,CAAC,EAAE,uBAAuB,GAAG;IAAE,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAA;CAAE,GAClE,uBAAuB,CAAC;AAC3B,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,EAChB,OAAO,CAAC,EAAE,uBAAuB,GAChC,gBAAgB,CAAC"}