@bian-womp/spark-graph 0.3.1 → 0.3.3
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/lib/cjs/index.cjs +1417 -1220
- package/lib/cjs/index.cjs.map +1 -1
- package/lib/cjs/src/core/types.d.ts +1 -1
- package/lib/cjs/src/core/types.d.ts.map +1 -1
- package/lib/cjs/src/index.d.ts +3 -3
- package/lib/cjs/src/index.d.ts.map +1 -1
- package/lib/cjs/src/misc/utils/json.d.ts +9 -0
- package/lib/cjs/src/misc/utils/json.d.ts.map +1 -1
- package/lib/cjs/src/runtime/GraphLifecycleApi.d.ts +4 -1
- package/lib/cjs/src/runtime/GraphLifecycleApi.d.ts.map +1 -1
- package/lib/cjs/src/runtime/GraphRuntime.d.ts +18 -27
- package/lib/cjs/src/runtime/GraphRuntime.d.ts.map +1 -1
- package/lib/cjs/src/runtime/{UnifiedEngine.d.ts → LocalEngine.d.ts} +20 -7
- package/lib/cjs/src/runtime/LocalEngine.d.ts.map +1 -0
- package/lib/cjs/src/runtime/components/EdgePropagator.d.ts +101 -0
- package/lib/cjs/src/runtime/components/EdgePropagator.d.ts.map +1 -0
- package/lib/cjs/src/runtime/components/Graph.d.ts +31 -0
- package/lib/cjs/src/runtime/components/Graph.d.ts.map +1 -0
- package/lib/cjs/src/runtime/components/HandleResolver.d.ts +11 -8
- package/lib/cjs/src/runtime/components/HandleResolver.d.ts.map +1 -1
- package/lib/cjs/src/runtime/components/NodeExecutor.d.ts +108 -0
- package/lib/cjs/src/runtime/components/NodeExecutor.d.ts.map +1 -0
- package/lib/cjs/src/runtime/components/RunContextManager.d.ts +26 -13
- package/lib/cjs/src/runtime/components/RunContextManager.d.ts.map +1 -1
- package/lib/cjs/src/runtime/components/graph-utils.d.ts +22 -0
- package/lib/cjs/src/runtime/components/graph-utils.d.ts.map +1 -0
- package/lib/cjs/src/runtime/components/interfaces.d.ts +9 -13
- package/lib/cjs/src/runtime/components/interfaces.d.ts.map +1 -1
- package/lib/cjs/src/runtime/components/types.d.ts +1 -10
- package/lib/cjs/src/runtime/components/types.d.ts.map +1 -1
- package/lib/esm/index.js +1416 -1220
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/src/core/types.d.ts +1 -1
- package/lib/esm/src/core/types.d.ts.map +1 -1
- package/lib/esm/src/index.d.ts +3 -3
- package/lib/esm/src/index.d.ts.map +1 -1
- package/lib/esm/src/misc/utils/json.d.ts +9 -0
- package/lib/esm/src/misc/utils/json.d.ts.map +1 -1
- package/lib/esm/src/runtime/GraphLifecycleApi.d.ts +4 -1
- package/lib/esm/src/runtime/GraphLifecycleApi.d.ts.map +1 -1
- package/lib/esm/src/runtime/GraphRuntime.d.ts +18 -27
- package/lib/esm/src/runtime/GraphRuntime.d.ts.map +1 -1
- package/lib/esm/src/runtime/{UnifiedEngine.d.ts → LocalEngine.d.ts} +20 -7
- package/lib/esm/src/runtime/LocalEngine.d.ts.map +1 -0
- package/lib/esm/src/runtime/components/EdgePropagator.d.ts +101 -0
- package/lib/esm/src/runtime/components/EdgePropagator.d.ts.map +1 -0
- package/lib/esm/src/runtime/components/Graph.d.ts +31 -0
- package/lib/esm/src/runtime/components/Graph.d.ts.map +1 -0
- package/lib/esm/src/runtime/components/HandleResolver.d.ts +11 -8
- package/lib/esm/src/runtime/components/HandleResolver.d.ts.map +1 -1
- package/lib/esm/src/runtime/components/NodeExecutor.d.ts +108 -0
- package/lib/esm/src/runtime/components/NodeExecutor.d.ts.map +1 -0
- package/lib/esm/src/runtime/components/RunContextManager.d.ts +26 -13
- package/lib/esm/src/runtime/components/RunContextManager.d.ts.map +1 -1
- package/lib/esm/src/runtime/components/graph-utils.d.ts +22 -0
- package/lib/esm/src/runtime/components/graph-utils.d.ts.map +1 -0
- package/lib/esm/src/runtime/components/interfaces.d.ts +9 -13
- package/lib/esm/src/runtime/components/interfaces.d.ts.map +1 -1
- package/lib/esm/src/runtime/components/types.d.ts +1 -10
- package/lib/esm/src/runtime/components/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/lib/cjs/src/runtime/AbstractEngine.d.ts +0 -28
- package/lib/cjs/src/runtime/AbstractEngine.d.ts.map +0 -1
- package/lib/cjs/src/runtime/UnifiedEngine.d.ts.map +0 -1
- package/lib/cjs/src/runtime/components/ExecutionScheduler.d.ts +0 -56
- package/lib/cjs/src/runtime/components/ExecutionScheduler.d.ts.map +0 -1
- package/lib/cjs/src/runtime/components/GraphStructure.d.ts +0 -36
- package/lib/cjs/src/runtime/components/GraphStructure.d.ts.map +0 -1
- package/lib/cjs/src/runtime/components/ValuePropagator.d.ts +0 -46
- package/lib/cjs/src/runtime/components/ValuePropagator.d.ts.map +0 -1
- package/lib/esm/src/runtime/AbstractEngine.d.ts +0 -28
- package/lib/esm/src/runtime/AbstractEngine.d.ts.map +0 -1
- package/lib/esm/src/runtime/UnifiedEngine.d.ts.map +0 -1
- package/lib/esm/src/runtime/components/ExecutionScheduler.d.ts +0 -56
- package/lib/esm/src/runtime/components/ExecutionScheduler.d.ts.map +0 -1
- package/lib/esm/src/runtime/components/GraphStructure.d.ts +0 -36
- package/lib/esm/src/runtime/components/GraphStructure.d.ts.map +0 -1
- package/lib/esm/src/runtime/components/ValuePropagator.d.ts +0 -46
- package/lib/esm/src/runtime/components/ValuePropagator.d.ts.map +0 -1
|
@@ -21,7 +21,7 @@ export interface ExecutionContext<State> extends NodeContext<State> {
|
|
|
21
21
|
abortSignal: AbortSignal;
|
|
22
22
|
emit: (handle: HandleId, value: unknown) => void;
|
|
23
23
|
invalidateDownstream: () => void;
|
|
24
|
-
|
|
24
|
+
execute: () => void;
|
|
25
25
|
getInput: (handle: HandleId) => unknown;
|
|
26
26
|
reportProgress?: (value: number) => void;
|
|
27
27
|
log: (level: LogLevel, message: string, context?: Record<string, unknown>) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,QAAQ,EACR,qBAAqB,EACrB,cAAc,EACd,eAAe,EACf,eAAe,EACf,QAAQ,EACT,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,OAAO;IAC7C,EAAE,EAAE,UAAU,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC,UAAU,CAAC,EAAE;QAAE,UAAU,EAAE,UAAU,CAAC;QAAC,WAAW,EAAE,QAAQ,CAAA;KAAE,CAAC;CAChE;AAED,MAAM,MAAM,gBAAgB,GACxB,eAAe,GACf,oBAAoB,GACpB,QAAQ,GACR,UAAU,CAAC;AAEf,MAAM,WAAW,WAAW,CAAC,KAAK;IAChC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB,CAAC,KAAK,CAAE,SAAQ,WAAW,CAAC,KAAK,CAAC;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,WAAW,CAAC;IAEzB,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/types.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/src/index.d.ts
CHANGED
|
@@ -6,9 +6,9 @@ export { GraphBuilder } from "./builder/GraphBuilder";
|
|
|
6
6
|
export type { ValidationIssue, ValidationReport } from "./builder/GraphBuilder";
|
|
7
7
|
export { GraphRuntime } from "./runtime/GraphRuntime";
|
|
8
8
|
export type { RuntimeEventName, RuntimeEventMap } from "./runtime/GraphRuntime";
|
|
9
|
-
export type { RuntimeNode, RuntimeEdge
|
|
9
|
+
export type { RuntimeNode, RuntimeEdge } from "./runtime/components/types";
|
|
10
10
|
export type { Engine, EngineEventListener, EngineEventMap, EngineEventName, } from "./runtime/Engine";
|
|
11
|
-
export {
|
|
11
|
+
export { LocalEngine } from "./runtime/LocalEngine";
|
|
12
12
|
export type { GraphLifecycleApi } from "./runtime/GraphLifecycleApi";
|
|
13
13
|
export { ComputeCategory } from "./plugins/compute";
|
|
14
14
|
export { CompositeCategory } from "./plugins/composite";
|
|
@@ -19,5 +19,5 @@ export { createValidationGraphRegistry, createValidationGraphDef, } from "./exam
|
|
|
19
19
|
export { installLogging } from "./examples/shared";
|
|
20
20
|
export { registerDelayNode, registerProgressNodes, generateId, BaseMathOperation, BaseCompareOperation, BaseLogicOperation, } from "./misc/base";
|
|
21
21
|
export { mergeGraphDefinitions, computeGraphCenter, offsetImportedPositions, mergeInputsOutputs, mergeSnapshotData, mergeRuntimeState, buildValueConverter, type ConverterConfig, type ValueMappingConfig, type ValueConverter, type ValueConverterConfig, } from "./misc/utils/merge";
|
|
22
|
-
export { parseJsonPath, getValueAtPath, setValueAtPath, findMatchingPaths, type JsonPath, type PathSegment, } from "./misc/utils/json";
|
|
22
|
+
export { parseJsonPath, getValueAtPath, setValueAtPath, setValueAtPathWithCreation, findMatchingPaths, type JsonPath, type PathSegment, } from "./misc/utils/json";
|
|
23
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,EACL,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,eAAe,EACf,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAChF,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,EACL,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,eAAe,EACf,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAChF,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC3E,YAAY,EACV,MAAM,EACN,mBAAmB,EACnB,cAAc,EACd,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,YAAY,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,0BAA0B,EAC1B,iBAAiB,EACjB,KAAK,QAAQ,EACb,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC"}
|
|
@@ -7,6 +7,15 @@ export declare function getValueAtPath(obj: unknown, pathSegments: PathSegment[]
|
|
|
7
7
|
key: string | number;
|
|
8
8
|
} | null;
|
|
9
9
|
export declare function setValueAtPath(obj: unknown, pathSegments: PathSegment[], newValue: unknown): boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Sets a value at a path, creating intermediate objects as needed.
|
|
12
|
+
* Mutates the root object in place.
|
|
13
|
+
* @param root - The root object to modify (must be an object, will be initialized if needed)
|
|
14
|
+
* @param pathSegments - The path segments to traverse
|
|
15
|
+
* @param value - The value to set, or null to delete the path
|
|
16
|
+
* @throws Error if path cannot be created (e.g., array indices not supported, invalid parent types)
|
|
17
|
+
*/
|
|
18
|
+
export declare function setValueAtPathWithCreation(root: Record<string, unknown>, pathSegments: PathSegment[], value: unknown): void;
|
|
10
19
|
export declare function findMatchingPaths(obj: unknown, pathSegments: PathSegment[], currentPath?: PathSegment[]): Array<{
|
|
11
20
|
path: PathSegment[];
|
|
12
21
|
value: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../../src/misc/utils/json.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACnD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,EAAE,CAAC;AAE9C,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,EAAE,CAY3D;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,GAC1B;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,IAAI,CAiGlE;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,EAC3B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAUT;AAED,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,EAC3B,WAAW,GAAE,WAAW,EAAO,GAC9B,KAAK,CAAC;IAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,CAoEhD"}
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../../src/misc/utils/json.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACnD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,EAAE,CAAC;AAE9C,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,EAAE,CAY3D;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,GAC1B;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,IAAI,CAiGlE;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,EAC3B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAUT;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,WAAW,EAAE,EAC3B,KAAK,EAAE,OAAO,GACb,IAAI,CAkDN;AAED,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,YAAY,EAAE,WAAW,EAAE,EAC3B,WAAW,GAAE,WAAW,EAAO,GAC9B,KAAK,CAAC;IAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,CAoEhD"}
|
|
@@ -28,7 +28,10 @@ export interface GraphLifecycleApi {
|
|
|
28
28
|
getEnvironment(): Promise<Record<string, unknown>>;
|
|
29
29
|
coerce(from: string, to: string, value: unknown): Promise<unknown>;
|
|
30
30
|
setExtData(data: Record<string, unknown>): Promise<void>;
|
|
31
|
-
|
|
31
|
+
updateExtData(updates: Array<{
|
|
32
|
+
path: string;
|
|
33
|
+
value: unknown;
|
|
34
|
+
}>): Promise<void>;
|
|
32
35
|
setViewport(viewport: Viewport): Promise<void>;
|
|
33
36
|
commit(reason?: string): Promise<RuntimeHistoryInfo | undefined>;
|
|
34
37
|
undo(): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphLifecycleApi.d.ts","sourceRoot":"","sources":["../../../../src/runtime/GraphLifecycleApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,QAAQ,EACT,MAAM,2BAA2B,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAEhC,KAAK,CACH,GAAG,EAAE,eAAe,EACpB,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC/C,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG5C,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;IACrC,YAAY,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7C,iBAAiB,CACf,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAChC,OAAO,CAAC,IAAI,CAAC,CAAC;IAGjB,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAChD,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtD,cAAc,CACZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GACxC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAGnD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAGnE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,
|
|
1
|
+
{"version":3,"file":"GraphLifecycleApi.d.ts","sourceRoot":"","sources":["../../../../src/runtime/GraphLifecycleApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,QAAQ,EACT,MAAM,2BAA2B,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAEhC,KAAK,CACH,GAAG,EAAE,eAAe,EACpB,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC/C,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG5C,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;IACrC,YAAY,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7C,iBAAiB,CACf,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAChC,OAAO,CAAC,IAAI,CAAC,CAAC;IAGjB,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAChD,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtD,cAAc,CACZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GACxC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAGnD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAGnE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG/E,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG/C,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;IACjE,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1B"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { RuntimeValue, RuntimeInvalidate, RuntimeError, RuntimeStats,
|
|
1
|
+
import type { RuntimeValue, RuntimeInvalidate, RuntimeError, RuntimeStats, GraphDefinition, RunMode } from "@bian-womp/spark-protocol";
|
|
2
2
|
import type { RuntimeNodeStats } from "../core/types";
|
|
3
3
|
import { Registry } from "../builder/Registry";
|
|
4
|
-
import type {
|
|
4
|
+
import type { INodeExecutor, IRuntime, IEdgePropagator } from "./components/interfaces";
|
|
5
|
+
import type { RunContextId } from "./components/types";
|
|
5
6
|
export type RuntimeEventListener<K extends RuntimeEventName> = (e: RuntimeEventMap[K]) => void;
|
|
6
7
|
export type RuntimeEventName = "value" | "invalidate" | "error" | "stats";
|
|
7
8
|
export interface RuntimeEventMap {
|
|
@@ -10,15 +11,16 @@ export interface RuntimeEventMap {
|
|
|
10
11
|
error: RuntimeError;
|
|
11
12
|
stats: RuntimeStats;
|
|
12
13
|
}
|
|
13
|
-
export declare class GraphRuntime implements
|
|
14
|
-
private
|
|
14
|
+
export declare class GraphRuntime implements IRuntime, INodeExecutor, IEdgePropagator {
|
|
15
|
+
private graph;
|
|
15
16
|
private eventEmitter;
|
|
16
17
|
private runContextManager;
|
|
17
18
|
private handleResolver;
|
|
18
|
-
private
|
|
19
|
-
private
|
|
20
|
-
private paused;
|
|
19
|
+
private edgePropagator;
|
|
20
|
+
private nodeExecutor;
|
|
21
21
|
private environment;
|
|
22
|
+
private runMode;
|
|
23
|
+
private pauseRefCount;
|
|
22
24
|
constructor();
|
|
23
25
|
static create(def: GraphDefinition, registry: Registry, opts?: {
|
|
24
26
|
environment?: Record<string, unknown>;
|
|
@@ -26,10 +28,9 @@ export declare class GraphRuntime implements IRuntimeCoordinator {
|
|
|
26
28
|
on<K extends RuntimeEventName>(event: K, handler: RuntimeEventListener<K>): () => void;
|
|
27
29
|
setInputs(nodeId: string, inputs: Record<string, unknown>): void;
|
|
28
30
|
getOutput(nodeId: string, output: string): unknown;
|
|
29
|
-
updateNodeHandles(nodeId: string, handles: ResolvedHandles, registry: Registry): void;
|
|
30
31
|
launch(invalidate?: boolean): void;
|
|
31
32
|
triggerExternal(nodeId: string, event: unknown): void;
|
|
32
|
-
|
|
33
|
+
cancelNodeRuns(nodeIds: string[]): void;
|
|
33
34
|
getNodeIds(): string[];
|
|
34
35
|
getNodeData(nodeId: string): {
|
|
35
36
|
inputs: Record<string, unknown>;
|
|
@@ -42,28 +43,14 @@ export declare class GraphRuntime implements IRuntimeCoordinator {
|
|
|
42
43
|
setEnvironment(env: Record<string, unknown>): void;
|
|
43
44
|
getGraphDef(): GraphDefinition;
|
|
44
45
|
whenIdle(): Promise<void>;
|
|
45
|
-
/**
|
|
46
|
-
* Run this node and optionally all dynamically reachable downstream nodes as a run-context.
|
|
47
|
-
* Includes nodes added later behind the same path (via re-emits).
|
|
48
|
-
* @param startNodeId - The node to start execution from
|
|
49
|
-
* @param options - Execution options
|
|
50
|
-
* @param options.skipPropagateValues - If true, don't set inputs of linked nodes (default: false)
|
|
51
|
-
* @param options.propagate - If false, don't schedule downstream nodes (default: true)
|
|
52
|
-
*/
|
|
53
46
|
runFromHereContext(startNodeId: string, options?: {
|
|
54
47
|
skipPropagateValues?: boolean;
|
|
55
48
|
propagate?: boolean;
|
|
56
49
|
}): Promise<void>;
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
private scheduleInputsChangedWithRunContexts;
|
|
61
|
-
pause(): void;
|
|
50
|
+
setRunMode(runMode: RunMode): void;
|
|
51
|
+
getRunMode(): RunMode | null;
|
|
52
|
+
requestPause(): () => void;
|
|
62
53
|
isPaused(): boolean;
|
|
63
|
-
resume(): void;
|
|
64
|
-
invalidateDownstream(nodeId: string): void;
|
|
65
|
-
scheduleInputsChanged(nodeId: string): void;
|
|
66
|
-
cancelNodeRuns(nodeIds: string[]): void;
|
|
67
54
|
copyOutputs(fromNodeId: string, toNodeId: string, options?: {
|
|
68
55
|
dry?: boolean;
|
|
69
56
|
}): void;
|
|
@@ -71,8 +58,12 @@ export declare class GraphRuntime implements IRuntimeCoordinator {
|
|
|
71
58
|
inputs?: Record<string, Record<string, unknown>>;
|
|
72
59
|
outputs?: Record<string, Record<string, unknown>>;
|
|
73
60
|
}, opts?: {
|
|
74
|
-
|
|
61
|
+
invalidate?: boolean;
|
|
75
62
|
}): void;
|
|
76
63
|
update(def: GraphDefinition, registry: Registry): void;
|
|
64
|
+
dispose(): void;
|
|
65
|
+
execute(nodeId: string, runContextIds?: Set<RunContextId>): void;
|
|
66
|
+
propagate(srcNodeId: string, srcHandle: string, value: unknown, runContextIds?: Set<RunContextId>): void;
|
|
67
|
+
invalidateDownstream(nodeId: string): void;
|
|
77
68
|
}
|
|
78
69
|
//# sourceMappingURL=GraphRuntime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphRuntime.d.ts","sourceRoot":"","sources":["../../../../src/runtime/GraphRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,YAAY,
|
|
1
|
+
{"version":3,"file":"GraphRuntime.d.ts","sourceRoot":"","sources":["../../../../src/runtime/GraphRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
import type { RunMode } from "@bian-womp/spark-protocol";
|
|
2
|
-
import { AbstractEngine } from "./AbstractEngine";
|
|
3
2
|
import { GraphRuntime } from "./GraphRuntime";
|
|
3
|
+
import { Engine, EngineEventListener, EngineEventName } from "./Engine";
|
|
4
4
|
/**
|
|
5
5
|
* Unified Engine implementation that handles both manual and auto run modes.
|
|
6
|
-
* - Manual mode:
|
|
7
|
-
* - Auto mode:
|
|
6
|
+
* - Manual mode: Nodes execute only when explicitly called via computeNode/runFromHere (unless paused)
|
|
7
|
+
* - Auto mode: Nodes automatically execute when inputs change (unless paused)
|
|
8
8
|
*/
|
|
9
|
-
export declare class
|
|
10
|
-
|
|
9
|
+
export declare class LocalEngine implements Engine {
|
|
10
|
+
protected readonly graphRuntime: GraphRuntime;
|
|
11
11
|
constructor(graphRuntime: GraphRuntime, runMode?: RunMode);
|
|
12
|
+
setInputs(nodeId: string, inputs: Record<string, unknown>, options?: {
|
|
13
|
+
dry?: boolean;
|
|
14
|
+
}): void;
|
|
15
|
+
triggerExternal(nodeId: string, event: unknown, options?: {
|
|
16
|
+
dry?: boolean;
|
|
17
|
+
}): void;
|
|
18
|
+
on<K extends EngineEventName>(event: K, handler: EngineEventListener<K>): () => void;
|
|
19
|
+
getOutput(nodeId: string, output: string): unknown;
|
|
20
|
+
whenIdle(): Promise<void>;
|
|
21
|
+
cancelNodeRuns(nodeIds: string[]): void;
|
|
22
|
+
copyOutputs(fromNodeId: string, toNodeId: string, options?: {
|
|
23
|
+
dry?: boolean;
|
|
24
|
+
}): void;
|
|
25
|
+
dispose(): void;
|
|
12
26
|
launch(invalidate?: boolean, runMode?: RunMode): void;
|
|
13
27
|
/**
|
|
14
28
|
* Run only this node, no downstream propagation.
|
|
@@ -26,7 +40,6 @@ export declare class UnifiedEngine extends AbstractEngine {
|
|
|
26
40
|
* Uses run-context system for dynamic graph updates.
|
|
27
41
|
*/
|
|
28
42
|
runFromHere(nodeId: string): Promise<void>;
|
|
29
|
-
getRunMode(): RunMode;
|
|
30
43
|
setRunMode(runMode: RunMode): void;
|
|
31
44
|
}
|
|
32
|
-
//# sourceMappingURL=
|
|
45
|
+
//# sourceMappingURL=LocalEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalEngine.d.ts","sourceRoot":"","sources":["../../../../src/runtime/LocalEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAExE;;;;GAIG;AACH,qBAAa,WAAY,YAAW,MAAM;IAEtC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY;gBAA1B,YAAY,EAAE,YAAY,EAC7C,OAAO,CAAC,EAAE,OAAO;IAKnB,SAAS,CACP,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAC1B,IAAI;IAcP,eAAe,CACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAC1B,IAAI;IAcP,EAAE,CAAC,CAAC,SAAS,eAAe,EAC1B,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,MAAM,IAAI;IAIb,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAIlD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAIvC,WAAW,CACT,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAC1B,IAAI;IAIP,OAAO,IAAI,IAAI;IAIf,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI;IAKrD;;;;;;OAMG;IACG,WAAW,CACf,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;KAAE,GAC1C,OAAO,CAAC,IAAI,CAAC;IAOhB;;;;OAIG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAGnC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import type { RunContextId } from "./types";
|
|
2
|
+
import type { Graph } from "./Graph";
|
|
3
|
+
import type { EventEmitter } from "./EventEmitter";
|
|
4
|
+
import type { RunContextManager } from "./RunContextManager";
|
|
5
|
+
import { INodeExecutor, IHandleResolver, IEdgePropagator } from "./interfaces";
|
|
6
|
+
/**
|
|
7
|
+
* EdgePropagator component - handles value propagation through edges
|
|
8
|
+
*/
|
|
9
|
+
export declare class EdgePropagator implements IEdgePropagator {
|
|
10
|
+
private readonly graph;
|
|
11
|
+
private readonly eventEmitter;
|
|
12
|
+
private readonly runContextManager;
|
|
13
|
+
private readonly handleResolver;
|
|
14
|
+
private readonly nodeExecutor;
|
|
15
|
+
private arrayInputBuckets;
|
|
16
|
+
constructor(graph: Graph, eventEmitter: EventEmitter, runContextManager: RunContextManager, handleResolver: IHandleResolver, nodeExecutor: INodeExecutor);
|
|
17
|
+
/**
|
|
18
|
+
* Propagate value through edges
|
|
19
|
+
* @param runContextIds - Optional set of run-context IDs. If provided, propagation is run-context aware.
|
|
20
|
+
* If undefined or empty, behaves like auto mode (always propagates values and execution).
|
|
21
|
+
*/
|
|
22
|
+
propagate(srcNodeId: string, srcHandle: string, value: unknown, runContextIds?: Set<RunContextId>): void;
|
|
23
|
+
/**
|
|
24
|
+
* Set source output value and emit event
|
|
25
|
+
*/
|
|
26
|
+
private setSourceOutput;
|
|
27
|
+
/**
|
|
28
|
+
* Find all outgoing edges from a source node handle
|
|
29
|
+
*/
|
|
30
|
+
private findOutgoingEdges;
|
|
31
|
+
/**
|
|
32
|
+
* Propagate value to a single edge
|
|
33
|
+
*/
|
|
34
|
+
private propagateToEdge;
|
|
35
|
+
/**
|
|
36
|
+
* Filter run-contexts to exclude cancelled nodes
|
|
37
|
+
*/
|
|
38
|
+
private filterEffectiveRunContexts;
|
|
39
|
+
/**
|
|
40
|
+
* Validate union type requirements
|
|
41
|
+
*/
|
|
42
|
+
private validateUnionType;
|
|
43
|
+
/**
|
|
44
|
+
* Handle synchronous conversion
|
|
45
|
+
*/
|
|
46
|
+
private handleSyncConversion;
|
|
47
|
+
/**
|
|
48
|
+
* Handle asynchronous conversion
|
|
49
|
+
*/
|
|
50
|
+
private handleAsyncConversion;
|
|
51
|
+
/**
|
|
52
|
+
* Apply value to target node input
|
|
53
|
+
*/
|
|
54
|
+
private applyToTarget;
|
|
55
|
+
/**
|
|
56
|
+
* Process array input by merging values from all edges
|
|
57
|
+
*/
|
|
58
|
+
private processArrayInput;
|
|
59
|
+
/**
|
|
60
|
+
* Check if input value should be set (respecting skipPropagateValues)
|
|
61
|
+
*/
|
|
62
|
+
private shouldSetInputValue;
|
|
63
|
+
/**
|
|
64
|
+
* Set target input value and emit event
|
|
65
|
+
*/
|
|
66
|
+
private setTargetInput;
|
|
67
|
+
/**
|
|
68
|
+
* Execute downstream if conditions are met
|
|
69
|
+
*/
|
|
70
|
+
private executeDownstream;
|
|
71
|
+
/**
|
|
72
|
+
* Check if execution should propagate
|
|
73
|
+
*/
|
|
74
|
+
private shouldPropagateExecution;
|
|
75
|
+
/**
|
|
76
|
+
* Update edge stats on successful conversion
|
|
77
|
+
*/
|
|
78
|
+
private updateEdgeStatsOnSuccess;
|
|
79
|
+
/**
|
|
80
|
+
* Handle edge conversion error
|
|
81
|
+
*/
|
|
82
|
+
private handleEdgeConversionError;
|
|
83
|
+
/**
|
|
84
|
+
* Finish edge conversion and decrement pending edges
|
|
85
|
+
*/
|
|
86
|
+
private finishEdgeConversion;
|
|
87
|
+
/**
|
|
88
|
+
* Re-emit all outputs from a node (used when graph updates)
|
|
89
|
+
* Only re-emits outputs that are valid according to resolved handles
|
|
90
|
+
*/
|
|
91
|
+
invalidateDownstream(nodeId: string): void;
|
|
92
|
+
/**
|
|
93
|
+
* Clear array input buckets for a node (when node is deleted)
|
|
94
|
+
*/
|
|
95
|
+
clearArrayBuckets(nodeId: string): void;
|
|
96
|
+
/**
|
|
97
|
+
* Clear all array buckets
|
|
98
|
+
*/
|
|
99
|
+
clearAllArrayBuckets(): void;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=EdgePropagator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EdgePropagator.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/components/EdgePropagator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAA4B,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EACL,aAAa,EACb,eAAe,EAEf,eAAe,EAChB,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,qBAAa,cAAe,YAAW,eAAe;IAOlD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAV/B,OAAO,CAAC,iBAAiB,CAGrB;gBAGe,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,cAAc,EAAE,eAAe,EAC/B,YAAY,EAAE,aAAa;IAG9C;;;;OAIG;IACH,SAAS,CACP,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,aAAa,CAAC,EAAE,GAAG,CAAC,YAAY,CAAC,GAChC,IAAI;IAeP;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAUzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAoCvB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAgBlC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA6BzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgD7B;;OAEG;IACH,OAAO,CAAC,aAAa;IA8BrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAyCzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAkBhC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAkBhC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAYjC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;OAGG;IACH,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAiB1C;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIvC;;OAEG;IACH,oBAAoB,IAAI,IAAI;CAG7B"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ResolvedHandles } from "@bian-womp/spark-protocol";
|
|
2
|
+
import { Registry } from "../../builder/Registry";
|
|
3
|
+
import type { RuntimeNode, RuntimeEdge } from "./types";
|
|
4
|
+
/**
|
|
5
|
+
* Graph component - manages nodes, edges, and handle resolution
|
|
6
|
+
*/
|
|
7
|
+
export declare class Graph {
|
|
8
|
+
private registry?;
|
|
9
|
+
private nodes;
|
|
10
|
+
private edges;
|
|
11
|
+
private resolvedByNode;
|
|
12
|
+
constructor(registry?: Registry | undefined);
|
|
13
|
+
getNode(nodeId: string): RuntimeNode<any> | undefined;
|
|
14
|
+
getNodes(): Map<string, RuntimeNode<any>>;
|
|
15
|
+
setNode(nodeId: string, node: RuntimeNode<any>): void;
|
|
16
|
+
deleteNode(nodeId: string): void;
|
|
17
|
+
hasNode(nodeId: string): boolean;
|
|
18
|
+
getEdges(): RuntimeEdge[];
|
|
19
|
+
setEdges(edges: RuntimeEdge[]): void;
|
|
20
|
+
getRegistry(): Registry | undefined;
|
|
21
|
+
setRegistry(registry: Registry): void;
|
|
22
|
+
getResolvedHandles(nodeId: string): ResolvedHandles | undefined;
|
|
23
|
+
setResolvedHandles(nodeId: string, handles: ResolvedHandles): void;
|
|
24
|
+
getResolvedHandlesMap(): Map<string, ResolvedHandles>;
|
|
25
|
+
/**
|
|
26
|
+
* Check if all inbound edges for a node have values
|
|
27
|
+
*/
|
|
28
|
+
allInboundHaveValue(nodeId: string): boolean;
|
|
29
|
+
clear(): void;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=Graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/components/Graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExD;;GAEG;AACH,qBAAa,KAAK;IAKJ,OAAO,CAAC,QAAQ,CAAC;IAJ7B,OAAO,CAAC,KAAK,CAAuC;IACpD,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,cAAc,CAAsC;gBAExC,QAAQ,CAAC,EAAE,QAAQ,YAAA;IAGvC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS;IAIrD,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;IAIzC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI;IAIrD,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIhC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAKhC,QAAQ,IAAI,WAAW,EAAE;IAIzB,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI;IAKpC,WAAW,IAAI,QAAQ,GAAG,SAAS;IAInC,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAKrC,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI/D,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,IAAI;IAIlE,qBAAqB,IAAI,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC;IAIrD;;OAEG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAY5C,KAAK,IAAI,IAAI;CAKd"}
|
|
@@ -1,24 +1,27 @@
|
|
|
1
1
|
import { Registry } from "../../builder/Registry";
|
|
2
|
-
import type { GraphStructure } from "./GraphStructure";
|
|
3
2
|
import type { EventEmitter } from "./EventEmitter";
|
|
4
|
-
import type {
|
|
3
|
+
import type { Graph } from "./Graph";
|
|
4
|
+
import type { RunContextManager } from "./RunContextManager";
|
|
5
|
+
import type { IEdgePropagator, IHandleResolver } from "./interfaces";
|
|
5
6
|
/**
|
|
6
7
|
* HandleResolver component - manages dynamic handle resolution
|
|
7
8
|
*/
|
|
8
|
-
export declare class HandleResolver {
|
|
9
|
-
private
|
|
10
|
-
private
|
|
11
|
-
private
|
|
12
|
-
private
|
|
9
|
+
export declare class HandleResolver implements IHandleResolver {
|
|
10
|
+
private readonly graph;
|
|
11
|
+
private readonly eventEmitter;
|
|
12
|
+
private readonly runContextManager;
|
|
13
|
+
private readonly edgePropagator;
|
|
13
14
|
private registry?;
|
|
15
|
+
private recomputeTokenByNode;
|
|
14
16
|
private environment;
|
|
15
|
-
constructor(
|
|
17
|
+
constructor(graph: Graph, eventEmitter: EventEmitter, runContextManager: RunContextManager, edgePropagator: IEdgePropagator, registry?: Registry | undefined, environment?: Record<string, unknown>);
|
|
16
18
|
setRegistry(registry: Registry): void;
|
|
17
19
|
setEnvironment(environment: Record<string, unknown>): void;
|
|
18
20
|
/**
|
|
19
21
|
* Schedule async recomputation of handles for a node
|
|
20
22
|
*/
|
|
21
23
|
scheduleRecomputeHandles(nodeId: string): void;
|
|
24
|
+
private updateNodeHandles;
|
|
22
25
|
/**
|
|
23
26
|
* Recompute dynamic handles for a single node using current inputs/environment
|
|
24
27
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandleResolver.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/components/HandleResolver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HandleResolver.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/components/HandleResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAgB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAIrE;;GAEG;AACH,qBAAa,cAAe,YAAW,eAAe;IAKlD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC;IARnB,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,WAAW,CAA+B;gBAG/B,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,iBAAiB,EAAE,iBAAiB,EACpC,cAAc,EAAE,eAAe,EACxC,QAAQ,CAAC,EAAE,QAAQ,YAAA,EAC3B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAKvC,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAIrC,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI1D;;OAEG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAmB9C,OAAO,CAAC,iBAAiB;IAyEzB;;OAEG;YACW,uBAAuB;CAsFtC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import type { ExecutionContext } from "../../core/types";
|
|
2
|
+
import type { RuntimeNode, RunContextId } from "./types";
|
|
3
|
+
import type { Graph } from "./Graph";
|
|
4
|
+
import type { EventEmitter } from "./EventEmitter";
|
|
5
|
+
import type { RunContextManager } from "./RunContextManager";
|
|
6
|
+
import { IEdgePropagator, INodeExecutor, IRuntime } from "./interfaces";
|
|
7
|
+
/**
|
|
8
|
+
* NodeExecutor component - handles node execution scheduling and lifecycle
|
|
9
|
+
*/
|
|
10
|
+
export declare class NodeExecutor implements INodeExecutor {
|
|
11
|
+
private readonly graph;
|
|
12
|
+
private readonly eventEmitter;
|
|
13
|
+
private readonly runContextManager;
|
|
14
|
+
private readonly edgePropagator;
|
|
15
|
+
private readonly runtime;
|
|
16
|
+
private environment;
|
|
17
|
+
constructor(graph: Graph, eventEmitter: EventEmitter, runContextManager: RunContextManager, edgePropagator: IEdgePropagator, runtime: IRuntime, environment?: Record<string, unknown>);
|
|
18
|
+
setEnvironment(environment: Record<string, unknown>): void;
|
|
19
|
+
/**
|
|
20
|
+
* Compute effective inputs for a node by merging real inputs with defaults
|
|
21
|
+
*/
|
|
22
|
+
getEffectiveInputs(nodeId: string): Record<string, unknown>;
|
|
23
|
+
/**
|
|
24
|
+
* Create an execution context for a node
|
|
25
|
+
*/
|
|
26
|
+
createExecutionContext(nodeId: string, node: RuntimeNode<any>, inputs: Record<string, unknown>, runId: string, abortSignal: AbortSignal, runContextIds?: Set<RunContextId>, options?: {
|
|
27
|
+
emitHandler?: (handle: string, value: unknown) => void;
|
|
28
|
+
reportProgress?: (p: number) => void;
|
|
29
|
+
}): ExecutionContext<any>;
|
|
30
|
+
/**
|
|
31
|
+
* Internal method for executing inputs changed (also used by GraphRuntime)
|
|
32
|
+
*/
|
|
33
|
+
execute(nodeId: string, runContextIds?: Set<RunContextId>): void;
|
|
34
|
+
/**
|
|
35
|
+
* Attach run-context IDs to the node
|
|
36
|
+
*/
|
|
37
|
+
private attachRunContexts;
|
|
38
|
+
/**
|
|
39
|
+
* Check if execution should be debounced
|
|
40
|
+
*/
|
|
41
|
+
private shouldDebounce;
|
|
42
|
+
/**
|
|
43
|
+
* Handle debounced scheduling by replacing the latest queued item
|
|
44
|
+
*/
|
|
45
|
+
private handleDebouncedSchedule;
|
|
46
|
+
/**
|
|
47
|
+
* Prepare execution plan with all necessary information
|
|
48
|
+
*/
|
|
49
|
+
private prepareExecutionPlan;
|
|
50
|
+
/**
|
|
51
|
+
* Route execution to appropriate concurrency handler
|
|
52
|
+
*/
|
|
53
|
+
private routeToConcurrencyHandler;
|
|
54
|
+
/**
|
|
55
|
+
* Handle drop mode - drop execution if node is already running, otherwise start run
|
|
56
|
+
*/
|
|
57
|
+
private handleDropMode;
|
|
58
|
+
/**
|
|
59
|
+
* Handle queue mode - add to queue and process sequentially
|
|
60
|
+
*/
|
|
61
|
+
private handleQueueMode;
|
|
62
|
+
/**
|
|
63
|
+
* Process queued executions sequentially
|
|
64
|
+
*/
|
|
65
|
+
private processQueue;
|
|
66
|
+
/**
|
|
67
|
+
* Start a node execution run
|
|
68
|
+
*/
|
|
69
|
+
private startRun;
|
|
70
|
+
/**
|
|
71
|
+
* Track run-context start for pending nodes
|
|
72
|
+
*/
|
|
73
|
+
private trackRunContextStart;
|
|
74
|
+
/**
|
|
75
|
+
* Create execution controller and update node stats
|
|
76
|
+
*/
|
|
77
|
+
private createExecutionController;
|
|
78
|
+
/**
|
|
79
|
+
* Apply concurrency mode (switch mode aborts other controllers)
|
|
80
|
+
*/
|
|
81
|
+
private applyConcurrencyMode;
|
|
82
|
+
/**
|
|
83
|
+
* Setup timeout for execution if configured
|
|
84
|
+
*/
|
|
85
|
+
private setupTimeout;
|
|
86
|
+
/**
|
|
87
|
+
* Create emit and progress handlers for execution context
|
|
88
|
+
*/
|
|
89
|
+
private createEmitAndProgressHandlers;
|
|
90
|
+
/**
|
|
91
|
+
* Execute the node with retry logic and cleanup
|
|
92
|
+
*/
|
|
93
|
+
private executeNode;
|
|
94
|
+
/**
|
|
95
|
+
* Cleanup after execution completes
|
|
96
|
+
*/
|
|
97
|
+
private cleanupExecution;
|
|
98
|
+
/**
|
|
99
|
+
* Cancel all active runs for a node
|
|
100
|
+
*/
|
|
101
|
+
cancelNodeActiveRuns(node: RuntimeNode, reason: "snapshot" | "node-deleted" | "user-cancelled"): void;
|
|
102
|
+
/**
|
|
103
|
+
* Cancel runs for multiple nodes.
|
|
104
|
+
* Can be called for snapshot/undo/redo operations or user-initiated cancellation.
|
|
105
|
+
*/
|
|
106
|
+
cancelNodeRuns(nodeIds: string[], reason?: "snapshot" | "user-cancelled"): void;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=NodeExecutor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeExecutor.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/components/NodeExecutor.ts"],"names":[],"mappings":"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"}
|