@decaf-ts/integrations 0.3.10 → 0.3.11
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/integrations.cjs +1 -1
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs +102 -0
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.cjs +355 -0
- package/lib/cjs/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/index.cjs +2 -0
- package/lib/cjs/graph/engine/execution/index.cjs.map +1 -1
- package/lib/cjs/graph/engine/index.cjs +2 -0
- package/lib/cjs/graph/engine/index.cjs.map +1 -1
- package/lib/cjs/graph/shared/nodes/flow-control.cjs +8 -6
- package/lib/cjs/graph/shared/nodes/flow-control.cjs.map +1 -1
- package/lib/cjs/index.cjs +3 -3
- package/lib/cjs/namespaces/models/effective-permission.model.cjs +4 -4
- package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/group-membership.model.cjs +6 -6
- package/lib/cjs/namespaces/models/group-membership.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/group.model.cjs +6 -6
- package/lib/cjs/namespaces/models/group.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/index.cjs +20 -20
- package/lib/cjs/namespaces/models/index.cjs.map +1 -1
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs +5 -5
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +5 -5
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +6 -6
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/org-unit.model.cjs +11 -11
- package/lib/cjs/namespaces/models/org-unit.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/permission.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/principal.model.cjs +6 -6
- package/lib/cjs/namespaces/models/principal.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/protected-resource.model.cjs +8 -8
- package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/resource-grant.model.cjs +7 -7
- package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/role-assignment.model.cjs +6 -6
- package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/role-permission.model.cjs +4 -4
- package/lib/cjs/namespaces/models/role-permission.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/role.model.cjs +6 -6
- package/lib/cjs/namespaces/models/role.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -2
- package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs +4 -4
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/tenant.model.cjs +8 -8
- package/lib/cjs/namespaces/models/tenant.model.cjs.map +1 -1
- package/lib/cjs/namespaces/models/user.model.cjs +4 -4
- package/lib/cjs/namespaces/models/user.model.cjs.map +1 -1
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs +21 -21
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs.map +1 -1
- package/lib/cjs/namespaces/services/bootstrap.service.cjs +24 -24
- package/lib/cjs/namespaces/services/bootstrap.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/effective-permission.service.cjs +17 -17
- package/lib/cjs/namespaces/services/effective-permission.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/group-membership.service.cjs +4 -4
- package/lib/cjs/namespaces/services/group-membership.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/group.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/index.cjs +24 -24
- package/lib/cjs/namespaces/services/index.cjs.map +1 -1
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs +2 -2
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/org-unit.service.cjs +11 -11
- package/lib/cjs/namespaces/services/org-unit.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/permission.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/principal.service.cjs +2 -2
- package/lib/cjs/namespaces/services/principal.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/protected-resource.service.cjs +2 -2
- package/lib/cjs/namespaces/services/protected-resource.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/resource-grant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-grant.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs +5 -5
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/role-assignment.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-assignment.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/role-permission.service.cjs +6 -6
- package/lib/cjs/namespaces/services/role-permission.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/role.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/storage-binding.service.cjs +2 -2
- package/lib/cjs/namespaces/services/storage-binding.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/system-management.service.cjs +12 -12
- package/lib/cjs/namespaces/services/system-management.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/tenant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant.service.cjs.map +1 -1
- package/lib/cjs/namespaces/services/user.service.cjs +2 -2
- package/lib/cjs/namespaces/services/user.service.cjs.map +1 -1
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs +11 -3
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs.map +1 -1
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js +97 -0
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.js +314 -0
- package/lib/esm/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.js.map +1 -0
- package/lib/esm/graph/engine/execution/index.js +2 -0
- package/lib/esm/graph/engine/execution/index.js.map +1 -1
- package/lib/esm/graph/engine/index.js +2 -0
- package/lib/esm/graph/engine/index.js.map +1 -1
- package/lib/esm/graph/shared/nodes/flow-control.js +8 -6
- package/lib/esm/graph/shared/nodes/flow-control.js.map +1 -1
- package/lib/esm/index.js +3 -3
- package/lib/esm/namespaces/models/effective-permission.model.js +2 -2
- package/lib/esm/namespaces/models/effective-permission.model.js.map +1 -1
- package/lib/esm/namespaces/models/group-membership.model.js +3 -3
- package/lib/esm/namespaces/models/group-membership.model.js.map +1 -1
- package/lib/esm/namespaces/models/group.model.js +3 -3
- package/lib/esm/namespaces/models/group.model.js.map +1 -1
- package/lib/esm/namespaces/models/index.js +20 -20
- package/lib/esm/namespaces/models/index.js.map +1 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js +2 -2
- package/lib/esm/namespaces/models/inheritance-block.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js +2 -2
- package/lib/esm/namespaces/models/org-unit-closure.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js +3 -3
- package/lib/esm/namespaces/models/org-unit-membership.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js.map +1 -1
- package/lib/esm/namespaces/models/org-unit.model.js +5 -5
- package/lib/esm/namespaces/models/org-unit.model.js.map +1 -1
- package/lib/esm/namespaces/models/permission.model.js +1 -1
- package/lib/esm/namespaces/models/permission.model.js.map +1 -1
- package/lib/esm/namespaces/models/principal.model.js +3 -3
- package/lib/esm/namespaces/models/principal.model.js.map +1 -1
- package/lib/esm/namespaces/models/protected-resource.model.js +4 -4
- package/lib/esm/namespaces/models/protected-resource.model.js.map +1 -1
- package/lib/esm/namespaces/models/resource-grant.model.js +3 -3
- package/lib/esm/namespaces/models/resource-grant.model.js.map +1 -1
- package/lib/esm/namespaces/models/role-assignment.model.js +3 -3
- package/lib/esm/namespaces/models/role-assignment.model.js.map +1 -1
- package/lib/esm/namespaces/models/role-permission.model.js +2 -2
- package/lib/esm/namespaces/models/role-permission.model.js.map +1 -1
- package/lib/esm/namespaces/models/role.model.js +3 -3
- package/lib/esm/namespaces/models/role.model.js.map +1 -1
- package/lib/esm/namespaces/models/storage-binding.model.js +1 -1
- package/lib/esm/namespaces/models/storage-binding.model.js.map +1 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js +2 -2
- package/lib/esm/namespaces/models/tenant-membership.model.js.map +1 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js.map +1 -1
- package/lib/esm/namespaces/models/tenant.model.js +4 -4
- package/lib/esm/namespaces/models/tenant.model.js.map +1 -1
- package/lib/esm/namespaces/models/user.model.js +2 -2
- package/lib/esm/namespaces/models/user.model.js.map +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js.map +1 -1
- package/lib/esm/namespaces/services/bootstrap.service.js +12 -12
- package/lib/esm/namespaces/services/bootstrap.service.js.map +1 -1
- package/lib/esm/namespaces/services/effective-permission.service.js +8 -8
- package/lib/esm/namespaces/services/effective-permission.service.js.map +1 -1
- package/lib/esm/namespaces/services/group-membership.service.js +2 -2
- package/lib/esm/namespaces/services/group-membership.service.js.map +1 -1
- package/lib/esm/namespaces/services/group.service.js +1 -1
- package/lib/esm/namespaces/services/group.service.js.map +1 -1
- package/lib/esm/namespaces/services/index.js +24 -24
- package/lib/esm/namespaces/services/index.js.map +1 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js +1 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js.map +1 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js.map +1 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js.map +1 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js.map +1 -1
- package/lib/esm/namespaces/services/org-unit.service.js +3 -3
- package/lib/esm/namespaces/services/org-unit.service.js.map +1 -1
- package/lib/esm/namespaces/services/permission.service.js +1 -1
- package/lib/esm/namespaces/services/permission.service.js.map +1 -1
- package/lib/esm/namespaces/services/principal.service.js +1 -1
- package/lib/esm/namespaces/services/principal.service.js.map +1 -1
- package/lib/esm/namespaces/services/protected-resource.service.js +1 -1
- package/lib/esm/namespaces/services/protected-resource.service.js.map +1 -1
- package/lib/esm/namespaces/services/resource-grant.service.js +1 -1
- package/lib/esm/namespaces/services/resource-grant.service.js.map +1 -1
- package/lib/esm/namespaces/services/resource-lifecycle.service.js +2 -2
- package/lib/esm/namespaces/services/resource-lifecycle.service.js.map +1 -1
- package/lib/esm/namespaces/services/role-assignment.service.js +1 -1
- package/lib/esm/namespaces/services/role-assignment.service.js.map +1 -1
- package/lib/esm/namespaces/services/role-permission.service.js +3 -3
- package/lib/esm/namespaces/services/role-permission.service.js.map +1 -1
- package/lib/esm/namespaces/services/role.service.js +1 -1
- package/lib/esm/namespaces/services/role.service.js.map +1 -1
- package/lib/esm/namespaces/services/storage-binding.service.js +1 -1
- package/lib/esm/namespaces/services/storage-binding.service.js.map +1 -1
- package/lib/esm/namespaces/services/system-management.service.js +6 -6
- package/lib/esm/namespaces/services/system-management.service.js.map +1 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js.map +1 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js.map +1 -1
- package/lib/esm/namespaces/services/tenant.service.js +1 -1
- package/lib/esm/namespaces/services/tenant.service.js.map +1 -1
- package/lib/esm/namespaces/services/user.service.js +1 -1
- package/lib/esm/namespaces/services/user.service.js.map +1 -1
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js +12 -4
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js.map +1 -1
- package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.cts +65 -0
- package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.mts +65 -0
- package/lib/types/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.d.cts +45 -0
- package/lib/types/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.d.mts +45 -0
- package/lib/types/graph/engine/execution/index.d.cts +2 -0
- package/lib/types/graph/engine/execution/index.d.mts +2 -0
- package/lib/types/graph/engine/index.d.cts +2 -0
- package/lib/types/graph/engine/index.d.mts +2 -0
- package/lib/types/graph/shared/nodes/flow-control.d.cts +7 -6
- package/lib/types/graph/shared/nodes/flow-control.d.mts +7 -6
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.cts +10 -3
- package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.mts +10 -3
- package/package.json +5 -1
|
@@ -94,13 +94,14 @@ export declare class ReturnFlowNode extends Model {
|
|
|
94
94
|
result: unknown;
|
|
95
95
|
}
|
|
96
96
|
/**
|
|
97
|
-
* Code — sandboxed JS/TS code execution (ALFRED-5 §7).
|
|
97
|
+
* Code — sandboxed JS/TS code execution (ALFRED-5 §7, DECAF-32 §22.4).
|
|
98
98
|
*
|
|
99
|
-
* The engine
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
99
|
+
* The engine's {@link CodeGraphNodeExecutor} delegates to the pluggable
|
|
100
|
+
* {@link CodeSandboxEvaluator}. The default
|
|
101
|
+
* `IsolatedVmCodeSandboxEvaluator` (backed by `isolated-vm`) enforces the
|
|
102
|
+
* Code Node restrictions: no imports, no requires, pure functions only. The
|
|
103
|
+
* sandbox context exposes `$input`, `$vars`, `$item`, `$index`, `$node`, and
|
|
104
|
+
* `$output` as data variables. TypeScript is supported via transpilation.
|
|
104
105
|
*/
|
|
105
106
|
export declare class CodeFlowNode extends Model {
|
|
106
107
|
input: unknown;
|
package/lib/types/index.d.cts
CHANGED
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
export * from "./utils.d.cts";
|
|
7
7
|
export * from "./namespaces/index.d.cts";
|
|
8
8
|
export declare const VERSION: string;
|
|
9
|
-
export declare const COMMIT = "
|
|
10
|
-
export declare const FULL_VERSION = "0.3.
|
|
9
|
+
export declare const COMMIT = "857014d";
|
|
10
|
+
export declare const FULL_VERSION = "0.3.10-857014d";
|
|
11
11
|
export declare const PACKAGE_NAME: string;
|
package/lib/types/index.d.mts
CHANGED
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
export * from "./utils.d.mts";
|
|
7
7
|
export * from "./namespaces/index.d.mts";
|
|
8
8
|
export declare const VERSION: string;
|
|
9
|
-
export declare const COMMIT = "
|
|
10
|
-
export declare const FULL_VERSION = "0.3.
|
|
9
|
+
export declare const COMMIT = "857014d";
|
|
10
|
+
export declare const FULL_VERSION = "0.3.10-857014d";
|
|
11
11
|
export declare const PACKAGE_NAME: string;
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* the loop kinds. Additional executors can be registered on the returned
|
|
8
8
|
* registry before it is handed to the {@link GraphExecutionEngine}.
|
|
9
9
|
*/
|
|
10
|
-
import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor } from "../../graph/index.d.cts";
|
|
10
|
+
import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor, IsolatedVmCodeSandboxEvaluator } from "../../graph/index.d.cts";
|
|
11
11
|
/**
|
|
12
12
|
* Builds a {@link GraphNodeExecutorRegistry} populated with the demo executors.
|
|
13
13
|
*
|
|
@@ -21,7 +21,9 @@ import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor
|
|
|
21
21
|
* - `graph-intake-workflow`, `graph-planning-pipeline`, `graph-draft-node`,
|
|
22
22
|
* `graph-review-node`, `graph-publish-workflow` — publishing workflow demo.
|
|
23
23
|
* - `core.flow.*` — flow-control kinds (map, delay, return, merge, if, switch,
|
|
24
|
-
* parallel, errorBoundary, humanApproval
|
|
24
|
+
* parallel, errorBoundary, humanApproval). The `core.flow.code` kind is
|
|
25
|
+
* registered in `onEngineCreated` via the real {@link CodeGraphNodeExecutor}
|
|
26
|
+
* because it needs the engine's `codeSandboxEvaluator`.
|
|
25
27
|
* - `core.agent` — agent node.
|
|
26
28
|
* - `core.loop.foreach`, `core.loop.while`, `core.loop.until` — loop executors
|
|
27
29
|
* (registered after the engine is created via `onEngineCreated`).
|
|
@@ -32,7 +34,11 @@ import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor
|
|
|
32
34
|
export declare function createGraphExecutorRegistry(extra?: Record<string, GraphNodeExecutor>): GraphNodeExecutorRegistry;
|
|
33
35
|
/**
|
|
34
36
|
* Builds a {@link GraphExecutionEngineConfig} populated with all demo executors
|
|
35
|
-
* including loop executors that need a back-reference to the engine
|
|
37
|
+
* including loop executors that need a back-reference to the engine and the
|
|
38
|
+
* Code node executor that needs the engine's `codeSandboxEvaluator`.
|
|
39
|
+
*
|
|
40
|
+
* The config wires an {@link IsolatedVmCodeSandboxEvaluator} (backed by
|
|
41
|
+
* `isolated-vm`) so the Code Node runs in a truly isolated V8 sandbox.
|
|
36
42
|
*
|
|
37
43
|
* @returns A config object ready for `new GraphExecutionEngine(config)`.
|
|
38
44
|
*/
|
|
@@ -41,5 +47,6 @@ export declare function createDemoEngineConfig(): {
|
|
|
41
47
|
defaultOptions: {
|
|
42
48
|
failFast: boolean;
|
|
43
49
|
};
|
|
50
|
+
codeSandboxEvaluator: IsolatedVmCodeSandboxEvaluator;
|
|
44
51
|
onEngineCreated: (engine: GraphExecutionEngine) => void;
|
|
45
52
|
};
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* the loop kinds. Additional executors can be registered on the returned
|
|
8
8
|
* registry before it is handed to the {@link GraphExecutionEngine}.
|
|
9
9
|
*/
|
|
10
|
-
import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor } from "../../graph/index.d.mts";
|
|
10
|
+
import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor, IsolatedVmCodeSandboxEvaluator } from "../../graph/index.d.mts";
|
|
11
11
|
/**
|
|
12
12
|
* Builds a {@link GraphNodeExecutorRegistry} populated with the demo executors.
|
|
13
13
|
*
|
|
@@ -21,7 +21,9 @@ import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor
|
|
|
21
21
|
* - `graph-intake-workflow`, `graph-planning-pipeline`, `graph-draft-node`,
|
|
22
22
|
* `graph-review-node`, `graph-publish-workflow` — publishing workflow demo.
|
|
23
23
|
* - `core.flow.*` — flow-control kinds (map, delay, return, merge, if, switch,
|
|
24
|
-
* parallel, errorBoundary, humanApproval
|
|
24
|
+
* parallel, errorBoundary, humanApproval). The `core.flow.code` kind is
|
|
25
|
+
* registered in `onEngineCreated` via the real {@link CodeGraphNodeExecutor}
|
|
26
|
+
* because it needs the engine's `codeSandboxEvaluator`.
|
|
25
27
|
* - `core.agent` — agent node.
|
|
26
28
|
* - `core.loop.foreach`, `core.loop.while`, `core.loop.until` — loop executors
|
|
27
29
|
* (registered after the engine is created via `onEngineCreated`).
|
|
@@ -32,7 +34,11 @@ import { GraphNodeExecutorRegistry, GraphExecutionEngine, type GraphNodeExecutor
|
|
|
32
34
|
export declare function createGraphExecutorRegistry(extra?: Record<string, GraphNodeExecutor>): GraphNodeExecutorRegistry;
|
|
33
35
|
/**
|
|
34
36
|
* Builds a {@link GraphExecutionEngineConfig} populated with all demo executors
|
|
35
|
-
* including loop executors that need a back-reference to the engine
|
|
37
|
+
* including loop executors that need a back-reference to the engine and the
|
|
38
|
+
* Code node executor that needs the engine's `codeSandboxEvaluator`.
|
|
39
|
+
*
|
|
40
|
+
* The config wires an {@link IsolatedVmCodeSandboxEvaluator} (backed by
|
|
41
|
+
* `isolated-vm`) so the Code Node runs in a truly isolated V8 sandbox.
|
|
36
42
|
*
|
|
37
43
|
* @returns A config object ready for `new GraphExecutionEngine(config)`.
|
|
38
44
|
*/
|
|
@@ -41,5 +47,6 @@ export declare function createDemoEngineConfig(): {
|
|
|
41
47
|
defaultOptions: {
|
|
42
48
|
failFast: boolean;
|
|
43
49
|
};
|
|
50
|
+
codeSandboxEvaluator: IsolatedVmCodeSandboxEvaluator;
|
|
44
51
|
onEngineCreated: (engine: GraphExecutionEngine) => void;
|
|
45
52
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decaf-ts/integrations",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.11",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.mts",
|
|
@@ -293,9 +293,13 @@
|
|
|
293
293
|
"@decaf-ts/logging": "latest",
|
|
294
294
|
"@decaf-ts/transactional-decorators": "latest",
|
|
295
295
|
"@decaf-ts/ui-decorators": "latest",
|
|
296
|
+
"acorn": "^8.17.0",
|
|
297
|
+
"acorn-walk": "^8.3.5",
|
|
296
298
|
"axios": "^1.7.9",
|
|
299
|
+
"isolated-vm": "^6.1.2",
|
|
297
300
|
"node-fetch": "^3.3.2",
|
|
298
301
|
"tslib": "^2.8.1",
|
|
302
|
+
"typescript": "^5.9.3",
|
|
299
303
|
"uuid": "^11.1.1"
|
|
300
304
|
},
|
|
301
305
|
"devDependencies": {
|