@workglow/task-graph 0.1.2 → 0.2.1
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.
- package/dist/browser.js +810 -189
- package/dist/browser.js.map +40 -33
- package/dist/bun.js +810 -189
- package/dist/bun.js.map +40 -33
- package/dist/common.d.ts +2 -0
- package/dist/common.d.ts.map +1 -1
- package/dist/node.js +810 -189
- package/dist/node.js.map +40 -33
- package/dist/storage/TaskOutputTabularRepository.d.ts +1 -1
- package/dist/storage/TaskOutputTabularRepository.d.ts.map +1 -1
- package/dist/task/ConditionalTask.d.ts +7 -2
- package/dist/task/ConditionalTask.d.ts.map +1 -1
- package/dist/task/EntitlementEnforcer.d.ts +55 -0
- package/dist/task/EntitlementEnforcer.d.ts.map +1 -0
- package/dist/task/EntitlementPolicy.d.ts +60 -0
- package/dist/task/EntitlementPolicy.d.ts.map +1 -0
- package/dist/task/EntitlementProfiles.d.ts +49 -0
- package/dist/task/EntitlementProfiles.d.ts.map +1 -0
- package/dist/task/EntitlementResolver.d.ts +50 -0
- package/dist/task/EntitlementResolver.d.ts.map +1 -0
- package/dist/task/FallbackTask.d.ts +11 -4
- package/dist/task/FallbackTask.d.ts.map +1 -1
- package/dist/task/FallbackTaskRunner.d.ts +2 -2
- package/dist/task/FallbackTaskRunner.d.ts.map +1 -1
- package/dist/task/GraphAsTask.d.ts +18 -6
- package/dist/task/GraphAsTask.d.ts.map +1 -1
- package/dist/task/GraphAsTaskRunner.d.ts +3 -2
- package/dist/task/GraphAsTaskRunner.d.ts.map +1 -1
- package/dist/task/ITask.d.ts +12 -1
- package/dist/task/ITask.d.ts.map +1 -1
- package/dist/task/InputCompactor.d.ts +1 -1
- package/dist/task/InputCompactor.d.ts.map +1 -1
- package/dist/task/InputResolver.d.ts +3 -3
- package/dist/task/InputResolver.d.ts.map +1 -1
- package/dist/task/IteratorTask.d.ts +9 -4
- package/dist/task/IteratorTask.d.ts.map +1 -1
- package/dist/task/IteratorTaskRunner.d.ts +1 -1
- package/dist/task/IteratorTaskRunner.d.ts.map +1 -1
- package/dist/task/MapTask.d.ts +8 -3
- package/dist/task/MapTask.d.ts.map +1 -1
- package/dist/task/ReduceTask.d.ts +9 -4
- package/dist/task/ReduceTask.d.ts.map +1 -1
- package/dist/task/StreamTypes.d.ts +6 -2
- package/dist/task/StreamTypes.d.ts.map +1 -1
- package/dist/task/Task.d.ts +37 -7
- package/dist/task/Task.d.ts.map +1 -1
- package/dist/task/TaskEntitlements.d.ts +134 -0
- package/dist/task/TaskEntitlements.d.ts.map +1 -0
- package/dist/task/TaskError.d.ts +7 -0
- package/dist/task/TaskError.d.ts.map +1 -1
- package/dist/task/TaskEvents.d.ts +3 -0
- package/dist/task/TaskEvents.d.ts.map +1 -1
- package/dist/task/TaskJSON.d.ts +14 -1
- package/dist/task/TaskJSON.d.ts.map +1 -1
- package/dist/task/TaskRegistry.d.ts +16 -3
- package/dist/task/TaskRegistry.d.ts.map +1 -1
- package/dist/task/TaskRunner.d.ts +5 -4
- package/dist/task/TaskRunner.d.ts.map +1 -1
- package/dist/task/TaskTypes.d.ts +10 -2
- package/dist/task/TaskTypes.d.ts.map +1 -1
- package/dist/task/WhileTask.d.ts +8 -4
- package/dist/task/WhileTask.d.ts.map +1 -1
- package/dist/task/WhileTaskRunner.d.ts +1 -1
- package/dist/task/WhileTaskRunner.d.ts.map +1 -1
- package/dist/task/index.d.ts +5 -0
- package/dist/task/index.d.ts.map +1 -1
- package/dist/task/iterationSchema.d.ts +2 -1
- package/dist/task/iterationSchema.d.ts.map +1 -1
- package/dist/task-graph/Dataflow.d.ts +1 -1
- package/dist/task-graph/Dataflow.d.ts.map +1 -1
- package/dist/task-graph/GraphEntitlementUtils.d.ts +30 -0
- package/dist/task-graph/GraphEntitlementUtils.d.ts.map +1 -0
- package/dist/task-graph/GraphFormatScanner.d.ts +41 -0
- package/dist/task-graph/GraphFormatScanner.d.ts.map +1 -0
- package/dist/task-graph/GraphToWorkflowCode.d.ts.map +1 -1
- package/dist/task-graph/TaskGraph.d.ts +23 -5
- package/dist/task-graph/TaskGraph.d.ts.map +1 -1
- package/dist/task-graph/TaskGraphEvents.d.ts +3 -0
- package/dist/task-graph/TaskGraphEvents.d.ts.map +1 -1
- package/dist/task-graph/TaskGraphRunner.d.ts +13 -1
- package/dist/task-graph/TaskGraphRunner.d.ts.map +1 -1
- package/dist/task-graph/Workflow.d.ts +29 -17
- package/dist/task-graph/Workflow.d.ts.map +1 -1
- package/package.json +12 -7
|
@@ -14,13 +14,13 @@ export interface InputResolverConfig {
|
|
|
14
14
|
/**
|
|
15
15
|
* Extracts the format string from a schema, handling oneOf/anyOf wrappers.
|
|
16
16
|
*/
|
|
17
|
-
export declare function getSchemaFormat(schema: unknown): string | undefined;
|
|
17
|
+
export declare function getSchemaFormat(schema: unknown, visited?: WeakSet<object>): string | undefined;
|
|
18
18
|
/**
|
|
19
19
|
* Extracts the object-typed schema from a property schema, handling oneOf/anyOf wrappers.
|
|
20
20
|
* This is needed for patterns like `oneOf: [{ type: "string" }, { type: "object", properties: {...} }]`
|
|
21
21
|
* where the model can be either a string ID or an inline config object.
|
|
22
22
|
*/
|
|
23
|
-
export declare function getObjectSchema(schema: unknown): (Record<string, unknown> & {
|
|
23
|
+
export declare function getObjectSchema(schema: unknown, visited?: WeakSet<object>): (Record<string, unknown> & {
|
|
24
24
|
properties: Record<string, unknown>;
|
|
25
25
|
}) | undefined;
|
|
26
26
|
/**
|
|
@@ -55,5 +55,5 @@ export declare function schemaHasFormatAnnotations(schema: DataPortSchema): bool
|
|
|
55
55
|
* );
|
|
56
56
|
* ```
|
|
57
57
|
*/
|
|
58
|
-
export declare function resolveSchemaInputs<T extends Record<string, unknown>>(input: T, schema: DataPortSchema, config: InputResolverConfig): Promise<T>;
|
|
58
|
+
export declare function resolveSchemaInputs<T extends Record<string, unknown>>(input: T, schema: DataPortSchema, config: InputResolverConfig, visited?: Set<object>): Promise<T>;
|
|
59
59
|
//# sourceMappingURL=InputResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputResolver.d.ts","sourceRoot":"","sources":["../../src/task/InputResolver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;CACpC;AAED;;GAEG;AACH,wBAAgB,eAAe,
|
|
1
|
+
{"version":3,"file":"InputResolver.d.ts","sourceRoot":"","sources":["../../src/task/InputResolver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;CACpC;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,OAAO,EACf,OAAO,GAAE,OAAO,CAAC,MAAM,CAAiB,GACvC,MAAM,GAAG,SAAS,CA8BpB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,OAAO,EACf,OAAO,GAAE,OAAO,CAAC,MAAM,CAAiB,GACvC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC,GAAG,SAAS,CAmCjF;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAU1E;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzE,KAAK,EAAE,CAAC,EACR,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,mBAAmB,EAC3B,OAAO,GAAE,GAAG,CAAC,MAAM,CAAa,GAC/B,OAAO,CAAC,CAAC,CAAC,CAiEZ"}
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { DataPortSchema, PropertySchema } from "@workglow/util/schema";
|
|
7
7
|
import { TaskGraph } from "../task-graph/TaskGraph";
|
|
8
|
-
import { GraphAsTask
|
|
8
|
+
import { GraphAsTask } from "./GraphAsTask";
|
|
9
|
+
import type { GraphAsTaskConfig } from "./GraphAsTask";
|
|
9
10
|
import type { IExecuteContext } from "./ITask";
|
|
10
11
|
import { IteratorTaskRunner } from "./IteratorTaskRunner";
|
|
11
12
|
import type { StreamEvent } from "./StreamTypes";
|
|
@@ -78,6 +79,11 @@ export declare const iteratorTaskConfigSchema: {
|
|
|
78
79
|
readonly additionalProperties: true;
|
|
79
80
|
readonly "x-ui-hidden": true;
|
|
80
81
|
};
|
|
82
|
+
readonly defaults: {
|
|
83
|
+
readonly type: "object";
|
|
84
|
+
readonly additionalProperties: true;
|
|
85
|
+
readonly "x-ui-hidden": true;
|
|
86
|
+
};
|
|
81
87
|
readonly concurrencyLimit: {
|
|
82
88
|
readonly type: "integer";
|
|
83
89
|
readonly minimum: 1;
|
|
@@ -101,7 +107,7 @@ export declare const iteratorTaskConfigSchema: {
|
|
|
101
107
|
* Configuration type for IteratorTask.
|
|
102
108
|
* Extends GraphAsTaskConfig with iterator-specific options.
|
|
103
109
|
*/
|
|
104
|
-
export type IteratorTaskConfig = GraphAsTaskConfig & {
|
|
110
|
+
export type IteratorTaskConfig<Input extends TaskInput = TaskInput> = GraphAsTaskConfig<Input> & {
|
|
105
111
|
/**
|
|
106
112
|
* Maximum number of concurrent iteration workers
|
|
107
113
|
* @default undefined (unlimited)
|
|
@@ -163,7 +169,7 @@ export declare function schemaAcceptsArray(schema: DataPortSchema): boolean;
|
|
|
163
169
|
/**
|
|
164
170
|
* Base class for iterator tasks that process collections of items.
|
|
165
171
|
*/
|
|
166
|
-
export declare abstract class IteratorTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends IteratorTaskConfig = IteratorTaskConfig
|
|
172
|
+
export declare abstract class IteratorTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends IteratorTaskConfig<Input> = IteratorTaskConfig<Input>> extends GraphAsTask<Input, Output, Config> {
|
|
167
173
|
static type: TaskTypeName;
|
|
168
174
|
static category: string;
|
|
169
175
|
static title: string;
|
|
@@ -180,7 +186,6 @@ export declare abstract class IteratorTask<Input extends TaskInput = TaskInput,
|
|
|
180
186
|
protected _iteratorPortInfo: IteratorPortInfo | undefined;
|
|
181
187
|
/** Cached computed iteration input schema. */
|
|
182
188
|
protected _iterationInputSchema: DataPortSchema | undefined;
|
|
183
|
-
constructor(input?: Partial<Input>, config?: Partial<Config>);
|
|
184
189
|
_runner: IteratorTaskRunner<Input, Output, Config>;
|
|
185
190
|
get runner(): IteratorTaskRunner<Input, Output, Config>;
|
|
186
191
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IteratorTask.d.ts","sourceRoot":"","sources":["../../src/task/IteratorTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"IteratorTask.d.ts","sourceRoot":"","sources":["../../src/task/IteratorTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,WAAW,EAA2B,MAAM,eAAe,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,eAAe,CAAC;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAkBrC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,kBAAkB,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,gEAAgE;IAChE,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,uCAAuC;IACvC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;CACnC;AAED,eAAO,MAAM,wBAAwB;mBAC7B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAGQ,IAAI,EAAE,SAAS;qBAAE,OAAO,EAAE,CAAC;;;qBAClC,IAAI,EAAE,SAAS;qBAAE,OAAO,EAAE,CAAC;;;qBACvB,IAAI,EAAE,SAAS;qBAAE,OAAO,EAAE,CAAC;;;qBACpB,IAAI,EAAE,QAAQ;qBAAE,oBAAoB;;;;CAG7B,CAAC;AAEpC;;;GAGG;AACH,MAAM,MAAM,kBAAkB,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,IAAI,iBAAiB,CAAC,KAAK,CAAC,GAAG;IAC/F;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;CACzE,CAAC;AAEF;;GAEG;AACH,UAAU,gBAAgB;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,0CAA0C;IAC1C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAC9B,iEAAiE;IACjE,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;IAC/B,oDAAoD;IACpD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3D;AAmDD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,cAAc,GAAG,cAAc,CAI/E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,cAAc,GAAG,cAAc,CAK5E;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CA4CxE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAYlE;AAED;;GAEG;AACH,8BAAsB,YAAY,CAChC,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;IAC1C,OAAuB,IAAI,EAAE,YAAY,CAAkB;IAC3D,OAAuB,QAAQ,EAAE,MAAM,CAAkB;IACzD,OAAuB,KAAK,EAAE,MAAM,CAAc;IAClD,OAAuB,WAAW,EAAE,MAAM,CAAoC;IAE9E,gEAAgE;IAChE,OAAuB,iBAAiB,EAAE,OAAO,CAAQ;IAEzD,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAED;;;OAGG;IACH,OAAc,yBAAyB,IAAI,cAAc,CAExD;IAED,sDAAsD;IACtD,SAAS,CAAC,iBAAiB,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAE1D,8CAA8C;IAC9C,SAAS,CAAC,qBAAqB,EAAE,cAAc,GAAG,SAAS,CAAC;IAMpD,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;IAED;;;;;OAKG;IACa,aAAa,CAC3B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe,GACxB,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAEpC;IAMD,IAAa,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAIxC;IAED,IAAa,QAAQ,IAAI,SAAS,CAEjC;IAEe,eAAe,IAAI,IAAI,CAGtC;IAMD;;;OAGG;IACI,sBAAsB,IAAI,OAAO,CAEvC;IAED;;OAEG;IACI,YAAY,IAAI,OAAO,CAE7B;IAED;;OAEG;IACI,qBAAqB,IAAI,MAAM,CAErC;IAED;;OAEG;IACI,sBAAsB,CAC3B,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,CAOzB;IAED;;OAEG;IACI,6BAA6B,CAClC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,UAAU,GAAG,SAAS,EACvC,MAAM,EAAE,MAAM,GACb,MAAM,CAER;IAED;;OAEG;IACI,cAAc,IAAI,MAAM,CAE9B;IAED;;OAEG;IACI,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAmBnD;IAMD,IAAW,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAEhD;IAED,IAAW,SAAS,IAAI,MAAM,GAAG,SAAS,CAEzC;IAMD,IAAW,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,GAAG,SAAS,CAErF;IAED,SAAS,CAAC,gCAAgC,IAAI,cAAc,CAyB3D;IAED,SAAS,CAAC,mCAAmC,IAAI,cAAc,CA4C9D;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,mBAAmB,IAAI,cAAc,GAAG,SAAS,CAmF1D;IAEM,uBAAuB,IAAI,cAAc,CAU/C;IAEM,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAI3D;IAEM,oBAAoB,CACzB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,kBAAkB,EACxB,UAAU,CAAC,EAAE,cAAc,GAC1B,IAAI,CAiCN;IAEM,8BAA8B,IAAI,IAAI,CAI5C;IAMD;;;;;;OAMG;IACI,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,uBAAuB,CAyFlE;IAMM,yBAAyB,IAAI,cAAc,CAEjD;IAEe,WAAW,IAAI,cAAc,CAK5C;IAEe,YAAY,IAAI,cAAc,CAM7C;IAED,SAAS,CAAC,sBAAsB,IAAI,cAAc,CAgCjD;CACF"}
|
|
@@ -11,7 +11,7 @@ import type { TaskInput, TaskOutput } from "./TaskTypes";
|
|
|
11
11
|
* per-iteration inputs. The task defines iteration analysis/collection hooks,
|
|
12
12
|
* while this runner owns scheduling and execution orchestration.
|
|
13
13
|
*/
|
|
14
|
-
export declare class IteratorTaskRunner<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends IteratorTaskConfig = IteratorTaskConfig
|
|
14
|
+
export declare class IteratorTaskRunner<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends IteratorTaskConfig<Input> = IteratorTaskConfig<Input>> extends GraphAsTaskRunner<Input, Output, Config> {
|
|
15
15
|
task: IteratorTask<Input, Output, Config>;
|
|
16
16
|
/** When true, {@link executeSubgraphIteration} folds inner progress into parent MapTask %. */
|
|
17
17
|
private aggregatingParentMapProgress;
|
|
@@ -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,KAAK,EAAE,uBAAuB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChG,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,GAAG,kBAAkB,
|
|
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,KAAK,EAAE,uBAAuB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChG,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;;OAEG;IAEH,UAAyB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuB9E;IAED;;OAEG;IACmB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGvF;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,CAoDjC;CACF"}
|
package/dist/task/MapTask.d.ts
CHANGED
|
@@ -46,6 +46,11 @@ export declare const mapTaskConfigSchema: {
|
|
|
46
46
|
readonly additionalProperties: true;
|
|
47
47
|
readonly "x-ui-hidden": true;
|
|
48
48
|
};
|
|
49
|
+
readonly defaults: {
|
|
50
|
+
readonly type: "object";
|
|
51
|
+
readonly additionalProperties: true;
|
|
52
|
+
readonly "x-ui-hidden": true;
|
|
53
|
+
};
|
|
49
54
|
readonly concurrencyLimit: {
|
|
50
55
|
readonly type: "integer";
|
|
51
56
|
readonly minimum: 1;
|
|
@@ -74,7 +79,7 @@ export declare const mapTaskConfigSchema: {
|
|
|
74
79
|
/**
|
|
75
80
|
* Configuration for MapTask.
|
|
76
81
|
*/
|
|
77
|
-
export type MapTaskConfig = IteratorTaskConfig & {
|
|
82
|
+
export type MapTaskConfig<Input extends TaskInput = TaskInput> = IteratorTaskConfig<Input> & {
|
|
78
83
|
/**
|
|
79
84
|
* Whether to preserve the order of results matching the input order.
|
|
80
85
|
* When false, results may be in completion order.
|
|
@@ -91,7 +96,7 @@ export type MapTaskConfig = IteratorTaskConfig & {
|
|
|
91
96
|
/**
|
|
92
97
|
* MapTask transforms one or more array inputs by running a workflow for each index.
|
|
93
98
|
*/
|
|
94
|
-
export declare class MapTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends MapTaskConfig = MapTaskConfig
|
|
99
|
+
export declare class MapTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends MapTaskConfig<Input> = MapTaskConfig<Input>> extends IteratorTask<Input, Output, Config> {
|
|
95
100
|
static type: TaskTypeName;
|
|
96
101
|
static category: string;
|
|
97
102
|
static title: string;
|
|
@@ -138,7 +143,7 @@ declare module "../task-graph/Workflow" {
|
|
|
138
143
|
* Starts a map loop that transforms each element in array input ports.
|
|
139
144
|
* Use .endMap() to close the loop and return to the parent workflow.
|
|
140
145
|
*/
|
|
141
|
-
map: CreateLoopWorkflow<TaskInput, TaskOutput, MapTaskConfig
|
|
146
|
+
map: CreateLoopWorkflow<TaskInput, TaskOutput, MapTaskConfig<TaskInput>>;
|
|
142
147
|
/**
|
|
143
148
|
* Ends the map loop and returns to the parent workflow.
|
|
144
149
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapTask.d.ts","sourceRoot":"","sources":["../../src/task/MapTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAA4B,MAAM,gBAAgB,CAAC;AAC5F,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACvE,eAAO,MAAM,mBAAmB;mBACxB,QAAQ
|
|
1
|
+
{"version":3,"file":"MapTask.d.ts","sourceRoot":"","sources":["../../src/task/MapTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAA4B,MAAM,gBAAgB,CAAC;AAC5F,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACvE,eAAO,MAAM,mBAAmB;mBACxB,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAGK,IAAI,EAAE,SAAS;;;qBACrB,IAAI,EAAE,SAAS;;;;CAGK,CAAC;AAEpC;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG;IAC3F;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAEjC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF;;GAEG;AACH,qBAAa,OAAO,CAClB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,aAAa,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAC1D,SAAQ,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IAC3C,OAAuB,IAAI,EAAE,YAAY,CAAa;IACtD,OAAuB,QAAQ,EAAE,MAAM,CAAkB;IACzD,OAAuB,KAAK,EAAE,MAAM,CAAS;IAC7C,OAAuB,WAAW,EAAE,MAAM,CACiB;IAE3D,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAED;;OAEG;IACH,gBAAgC,aAAa,mBAAkB;IAE/D;;OAEG;IACH,OAAuB,WAAW,IAAI,cAAc,CAMnD;IAED;;OAEG;IACH,OAAuB,YAAY,IAAI,cAAc,CAMpD;IAED;;OAEG;IACH,IAAW,aAAa,IAAI,OAAO,CAElC;IAED;;OAEG;IACH,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEe,sBAAsB,IAAI,OAAO,CAEhD;IAED;;OAEG;IACa,cAAc,IAAI,MAAM,CAYvC;IAED;;;OAGG;IACa,YAAY,IAAI,cAAc,CAM7C;IAED;;OAEG;IACa,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAiB5D;CACF;AAMD,OAAO,QAAQ,wBAAwB,CAAC,CAAC;IACvC,UAAU,QAAQ;QAChB;;;WAGG;QACH,GAAG,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;QAEzE;;WAEG;QACH,MAAM,IAAI,QAAQ,CAAC;KACpB;CACF"}
|
|
@@ -46,6 +46,11 @@ export declare const reduceTaskConfigSchema: {
|
|
|
46
46
|
readonly additionalProperties: true;
|
|
47
47
|
readonly "x-ui-hidden": true;
|
|
48
48
|
};
|
|
49
|
+
readonly defaults: {
|
|
50
|
+
readonly type: "object";
|
|
51
|
+
readonly additionalProperties: true;
|
|
52
|
+
readonly "x-ui-hidden": true;
|
|
53
|
+
};
|
|
49
54
|
readonly concurrencyLimit: {
|
|
50
55
|
readonly type: "integer";
|
|
51
56
|
readonly minimum: 1;
|
|
@@ -69,7 +74,7 @@ export declare const reduceTaskConfigSchema: {
|
|
|
69
74
|
/**
|
|
70
75
|
* Configuration for ReduceTask.
|
|
71
76
|
*/
|
|
72
|
-
export type ReduceTaskConfig<Accumulator = unknown> = IteratorTaskConfig & {
|
|
77
|
+
export type ReduceTaskConfig<Input extends TaskInput = TaskInput, Accumulator = unknown> = IteratorTaskConfig<Input> & {
|
|
73
78
|
/**
|
|
74
79
|
* The initial value for the accumulator.
|
|
75
80
|
*/
|
|
@@ -78,13 +83,13 @@ export type ReduceTaskConfig<Accumulator = unknown> = IteratorTaskConfig & {
|
|
|
78
83
|
/**
|
|
79
84
|
* ReduceTask processes iterated inputs sequentially with an accumulator.
|
|
80
85
|
*/
|
|
81
|
-
export declare class ReduceTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends ReduceTaskConfig<Output> = ReduceTaskConfig<Output>> extends IteratorTask<Input, Output, Config> {
|
|
86
|
+
export declare class ReduceTask<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Config extends ReduceTaskConfig<Input, Output> = ReduceTaskConfig<Input, Output>> extends IteratorTask<Input, Output, Config> {
|
|
82
87
|
static type: TaskTypeName;
|
|
83
88
|
static category: string;
|
|
84
89
|
static title: string;
|
|
85
90
|
static description: string;
|
|
86
91
|
static configSchema(): DataPortSchema;
|
|
87
|
-
constructor(
|
|
92
|
+
constructor(config?: Partial<Config>);
|
|
88
93
|
/**
|
|
89
94
|
* Gets the initial accumulator value.
|
|
90
95
|
*/
|
|
@@ -112,7 +117,7 @@ declare module "../task-graph/Workflow" {
|
|
|
112
117
|
* Starts a reduce loop that processes iterated inputs with an accumulator.
|
|
113
118
|
* Use .endReduce() to close the loop and return to the parent workflow.
|
|
114
119
|
*/
|
|
115
|
-
reduce: CreateLoopWorkflow<TaskInput, TaskOutput, ReduceTaskConfig<any>>;
|
|
120
|
+
reduce: CreateLoopWorkflow<TaskInput, TaskOutput, ReduceTaskConfig<TaskInput, any>>;
|
|
116
121
|
/**
|
|
117
122
|
* Ends the reduce loop and returns to the parent workflow.
|
|
118
123
|
*/
|
|
@@ -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,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
|
|
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,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMmB,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,EAQvC;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"}
|
|
@@ -28,8 +28,12 @@ export type StreamTextDelta = {
|
|
|
28
28
|
/**
|
|
29
29
|
* Object delta for structured/object streaming.
|
|
30
30
|
* `port` identifies which output port this delta belongs to.
|
|
31
|
-
*
|
|
32
|
-
*
|
|
31
|
+
*
|
|
32
|
+
* - **Non-array** (e.g. structured generation): each `objectDelta` is a
|
|
33
|
+
* progressively more complete partial object snapshot. Consumers should
|
|
34
|
+
* replace (not merge) their state with the latest delta.
|
|
35
|
+
* - **Array** (e.g. tool calls): each `objectDelta` is a single-element
|
|
36
|
+
* array containing one item to upsert by `id` into the accumulated array.
|
|
33
37
|
*/
|
|
34
38
|
export type StreamObjectDelta = {
|
|
35
39
|
type: "object-delta";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StreamTypes.d.ts","sourceRoot":"","sources":["../../src/task/StreamTypes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5E;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"StreamTypes.d.ts","sourceRoot":"","sources":["../../src/task/StreamTypes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5E;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI;IACzD,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI;IACvD,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAChD,eAAe,GACf,iBAAiB,GACjB,cAAc,CAAC,MAAM,CAAC,GACtB,YAAY,CAAC,MAAM,CAAC,GACpB,WAAW,CAAC;AAMhB;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAOjG;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,GACrB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,CAc3C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,cAAc,GAAG,UAAU,CAW5E;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,YAAY,IAAI,cAAc,CAAC;IAC/B,aAAa,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;CACzC,GAAG,OAAO,CAGV;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAU1E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,MAAM,GACjB,OAAO,CAKT;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAU1E;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAa1F;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAEnE"}
|
package/dist/task/Task.d.ts
CHANGED
|
@@ -3,15 +3,18 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import
|
|
7
|
-
import { EventEmitter
|
|
6
|
+
import type { ServiceRegistry } from "@workglow/util";
|
|
7
|
+
import { EventEmitter } from "@workglow/util";
|
|
8
|
+
import type { DataPortSchema, SchemaNode } from "@workglow/util/schema";
|
|
8
9
|
import { TaskGraph } from "../task-graph/TaskGraph";
|
|
9
10
|
import type { IExecuteContext, IExecuteReactiveContext, IRunConfig, ITask } from "./ITask";
|
|
11
|
+
import { type TaskEntitlements } from "./TaskEntitlements";
|
|
10
12
|
import { TaskError } from "./TaskError";
|
|
11
|
-
import {
|
|
13
|
+
import type { TaskEventListener, TaskEventListeners, TaskEventParameters, TaskEvents } from "./TaskEvents";
|
|
12
14
|
import type { JsonTaskItem, TaskGraphItemJson, TaskGraphJsonOptions } from "./TaskJSON";
|
|
13
15
|
import { TaskRunner } from "./TaskRunner";
|
|
14
|
-
import {
|
|
16
|
+
import type { TaskConfig, TaskInput, TaskOutput, TaskTypeName } from "./TaskTypes";
|
|
17
|
+
import { TaskStatus } from "./TaskTypes";
|
|
15
18
|
/**
|
|
16
19
|
* Base class for all tasks that implements the ITask interface.
|
|
17
20
|
* This abstract class provides common functionality for both simple and compound tasks.
|
|
@@ -59,6 +62,23 @@ export declare class Task<Input extends TaskInput = TaskInput, Output extends Ta
|
|
|
59
62
|
* Tasks that have meaningful user-facing config options beyond the base fields should set this.
|
|
60
63
|
*/
|
|
61
64
|
static customizable: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* When true, this task defines the graph's output. The graph runner will
|
|
67
|
+
* collect results only from tasks with this flag when they exist among the
|
|
68
|
+
* leaf nodes; otherwise it falls back to collecting from all leaves.
|
|
69
|
+
*/
|
|
70
|
+
static isGraphOutput: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Whether this task has dynamic entitlements that can change at runtime.
|
|
73
|
+
* Tasks with dynamic entitlements should override the instance entitlements() method
|
|
74
|
+
* and emit 'entitlementChange' events when their entitlements change.
|
|
75
|
+
*/
|
|
76
|
+
static hasDynamicEntitlements: boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Entitlements required by this task class.
|
|
79
|
+
* Subclasses override to declare their permission requirements.
|
|
80
|
+
*/
|
|
81
|
+
static entitlements(): TaskEntitlements;
|
|
62
82
|
/**
|
|
63
83
|
* Input schema for this task
|
|
64
84
|
*/
|
|
@@ -140,6 +160,17 @@ export declare class Task<Input extends TaskInput = TaskInput, Output extends Ta
|
|
|
140
160
|
* Gets config schema for this task
|
|
141
161
|
*/
|
|
142
162
|
configSchema(): DataPortSchema;
|
|
163
|
+
/**
|
|
164
|
+
* Gets entitlements for this task instance.
|
|
165
|
+
* For tasks with dynamic entitlements, override this to compute based on config/state.
|
|
166
|
+
*/
|
|
167
|
+
entitlements(): TaskEntitlements;
|
|
168
|
+
/**
|
|
169
|
+
* Emits an entitlementChange event when the task's required entitlements change.
|
|
170
|
+
* Call this from tasks with dynamic entitlements when their configuration changes
|
|
171
|
+
* in a way that affects their entitlements.
|
|
172
|
+
*/
|
|
173
|
+
protected emitEntitlementChange(entitlements?: TaskEntitlements): void;
|
|
143
174
|
get type(): TaskTypeName;
|
|
144
175
|
get category(): string;
|
|
145
176
|
get title(): string;
|
|
@@ -212,11 +243,10 @@ export declare class Task<Input extends TaskInput = TaskInput, Output extends Ta
|
|
|
212
243
|
/**
|
|
213
244
|
* Creates a new task instance
|
|
214
245
|
*
|
|
215
|
-
* @param
|
|
216
|
-
* @param config Configuration for the task
|
|
246
|
+
* @param config Configuration for the task (includes defaults for input values)
|
|
217
247
|
* @param runConfig Runtime configuration for the task
|
|
218
248
|
*/
|
|
219
|
-
constructor(
|
|
249
|
+
constructor(config?: NoInfer<Partial<Config>>, runConfig?: NoInfer<Partial<IRunConfig>>);
|
|
220
250
|
/**
|
|
221
251
|
* Gets default input values from input schema
|
|
222
252
|
*/
|
package/dist/task/Task.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Task.d.ts","sourceRoot":"","sources":["../../src/task/Task.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"Task.d.ts","sourceRoot":"","sources":["../../src/task/Task.ts"],"names":[],"mappings":"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"}
|
|
@@ -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"}
|
package/dist/task/TaskError.d.ts
CHANGED
|
@@ -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"}
|
package/dist/task/TaskJSON.d.ts
CHANGED
|
@@ -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[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskJSON.d.ts","sourceRoot":"","sources":["../../src/task/TaskJSON.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"TaskJSON.d.ts","sourceRoot":"","sources":["../../src/task/TaskJSON.ts"],"names":[],"mappings":"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"}
|