@nodetool-ai/agents 0.8.1 → 0.8.2
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/.nodetool-build-stamp +1 -1
- package/dist/analysis/audio-dsp.d.ts +3 -2
- package/dist/analysis/audio-dsp.d.ts.map +1 -1
- package/dist/analysis/audio-dsp.js +11 -8
- package/dist/analysis/audio-dsp.js.map +1 -1
- package/dist/analysis/media-decode.d.ts +13 -0
- package/dist/analysis/media-decode.d.ts.map +1 -1
- package/dist/analysis/media-decode.js +33 -6
- package/dist/analysis/media-decode.js.map +1 -1
- package/dist/author-graph.d.ts +2 -3
- package/dist/author-graph.d.ts.map +1 -1
- package/dist/author-graph.js +3 -5
- package/dist/author-graph.js.map +1 -1
- package/dist/browser-gate.d.ts +2 -2
- package/dist/browser-gate.js +2 -2
- package/dist/capabilities/GamePublishRequest.d.ts +14 -0
- package/dist/capabilities/GamePublishRequest.d.ts.map +1 -0
- package/dist/capabilities/GamePublishRequest.js +2 -0
- package/dist/capabilities/GamePublishRequest.js.map +1 -0
- package/dist/capabilities/adapters.d.ts +4 -13
- package/dist/capabilities/adapters.d.ts.map +1 -1
- package/dist/capabilities/adapters.js +9 -14
- package/dist/capabilities/adapters.js.map +1 -1
- package/dist/capabilities/agent-activity.d.ts +27 -0
- package/dist/capabilities/agent-activity.d.ts.map +1 -0
- package/dist/capabilities/agent-activity.js +103 -0
- package/dist/capabilities/agent-activity.js.map +1 -0
- package/dist/capabilities/agentic-storyboard-finish.d.ts +67 -0
- package/dist/capabilities/agentic-storyboard-finish.d.ts.map +1 -0
- package/dist/capabilities/agentic-storyboard-finish.js +1321 -0
- package/dist/capabilities/agentic-storyboard-finish.js.map +1 -0
- package/dist/capabilities/agents.d.ts +5 -2
- package/dist/capabilities/agents.d.ts.map +1 -1
- package/dist/capabilities/agents.js +14 -4
- package/dist/capabilities/agents.js.map +1 -1
- package/dist/capabilities/agents.specs.d.ts +3 -0
- package/dist/capabilities/agents.specs.d.ts.map +1 -1
- package/dist/capabilities/agents.specs.js +71 -1
- package/dist/capabilities/agents.specs.js.map +1 -1
- package/dist/capabilities/analysis.d.ts.map +1 -1
- package/dist/capabilities/analysis.js +33 -22
- package/dist/capabilities/analysis.js.map +1 -1
- package/dist/capabilities/analysis.specs.js +2 -2
- package/dist/capabilities/analysis.specs.js.map +1 -1
- package/dist/capabilities/apps.d.ts.map +1 -1
- package/dist/capabilities/apps.js +5 -3
- package/dist/capabilities/apps.js.map +1 -1
- package/dist/capabilities/args.d.ts +2 -5
- package/dist/capabilities/args.d.ts.map +1 -1
- package/dist/capabilities/args.js +2 -5
- package/dist/capabilities/args.js.map +1 -1
- package/dist/capabilities/browser.d.ts +1 -1
- package/dist/capabilities/browser.js +1 -1
- package/dist/capabilities/browser.specs.d.ts +1 -1
- package/dist/capabilities/browser.specs.js +1 -1
- package/dist/capabilities/code.d.ts +5 -0
- package/dist/capabilities/code.d.ts.map +1 -1
- package/dist/capabilities/code.js +128 -89
- package/dist/capabilities/code.js.map +1 -1
- package/dist/capabilities/errors.d.ts +19 -0
- package/dist/capabilities/errors.d.ts.map +1 -0
- package/dist/capabilities/errors.js +109 -0
- package/dist/capabilities/errors.js.map +1 -0
- package/dist/capabilities/errors.specs.d.ts +11 -0
- package/dist/capabilities/errors.specs.d.ts.map +1 -0
- package/dist/capabilities/errors.specs.js +100 -0
- package/dist/capabilities/errors.specs.js.map +1 -0
- package/dist/capabilities/example-timelines.d.ts.map +1 -1
- package/dist/capabilities/example-timelines.js +52 -10
- package/dist/capabilities/example-timelines.js.map +1 -1
- package/dist/capabilities/example-timelines.specs.d.ts +1 -0
- package/dist/capabilities/example-timelines.specs.d.ts.map +1 -1
- package/dist/capabilities/example-timelines.specs.js +21 -3
- package/dist/capabilities/example-timelines.specs.js.map +1 -1
- package/dist/capabilities/finish-storyboard.d.ts +5 -0
- package/dist/capabilities/finish-storyboard.d.ts.map +1 -0
- package/dist/capabilities/finish-storyboard.js +278 -0
- package/dist/capabilities/finish-storyboard.js.map +1 -0
- package/dist/capabilities/game-asset-source.js +1 -1
- package/dist/capabilities/game-asset-source.js.map +1 -1
- package/dist/capabilities/game.d.ts +14 -2
- package/dist/capabilities/game.d.ts.map +1 -1
- package/dist/capabilities/game.js +209 -39
- package/dist/capabilities/game.js.map +1 -1
- package/dist/capabilities/game.specs.d.ts +2 -0
- package/dist/capabilities/game.specs.d.ts.map +1 -1
- package/dist/capabilities/game.specs.js +25 -11
- package/dist/capabilities/game.specs.js.map +1 -1
- package/dist/capabilities/game3d.d.ts +17 -0
- package/dist/capabilities/game3d.d.ts.map +1 -0
- package/dist/capabilities/game3d.js +433 -0
- package/dist/capabilities/game3d.js.map +1 -0
- package/dist/capabilities/gate-from-context.d.ts +1 -1
- package/dist/capabilities/gate-from-context.js +1 -1
- package/dist/capabilities/generations.d.ts +2 -0
- package/dist/capabilities/generations.d.ts.map +1 -1
- package/dist/capabilities/generations.js +7 -2
- package/dist/capabilities/generations.js.map +1 -1
- package/dist/capabilities/index.d.ts +2 -2
- package/dist/capabilities/index.d.ts.map +1 -1
- package/dist/capabilities/index.js +2 -2
- package/dist/capabilities/index.js.map +1 -1
- package/dist/capabilities/invoke.d.ts +14 -25
- package/dist/capabilities/invoke.d.ts.map +1 -1
- package/dist/capabilities/invoke.js +72 -35
- package/dist/capabilities/invoke.js.map +1 -1
- package/dist/capabilities/jobs.d.ts.map +1 -1
- package/dist/capabilities/jobs.js +47 -3
- package/dist/capabilities/jobs.js.map +1 -1
- package/dist/capabilities/jobs.specs.d.ts.map +1 -1
- package/dist/capabilities/jobs.specs.js +3 -1
- package/dist/capabilities/jobs.specs.js.map +1 -1
- package/dist/capabilities/js-scripts.d.ts +19 -1
- package/dist/capabilities/js-scripts.d.ts.map +1 -1
- package/dist/capabilities/js-scripts.js +109 -2
- package/dist/capabilities/js-scripts.js.map +1 -1
- package/dist/capabilities/js-scripts.specs.d.ts +2 -0
- package/dist/capabilities/js-scripts.specs.d.ts.map +1 -1
- package/dist/capabilities/js-scripts.specs.js +50 -0
- package/dist/capabilities/js-scripts.specs.js.map +1 -1
- package/dist/capabilities/lazy-tool.d.ts +23 -24
- package/dist/capabilities/lazy-tool.d.ts.map +1 -1
- package/dist/capabilities/lazy-tool.js +29 -35
- package/dist/capabilities/lazy-tool.js.map +1 -1
- package/dist/capabilities/legacy-tools.d.ts +15 -0
- package/dist/capabilities/legacy-tools.d.ts.map +1 -0
- package/dist/capabilities/legacy-tools.js +98 -0
- package/dist/capabilities/legacy-tools.js.map +1 -0
- package/dist/capabilities/media.d.ts +0 -9
- package/dist/capabilities/media.d.ts.map +1 -1
- package/dist/capabilities/media.js +301 -260
- package/dist/capabilities/media.js.map +1 -1
- package/dist/capabilities/models.d.ts +2 -2
- package/dist/capabilities/models.d.ts.map +1 -1
- package/dist/capabilities/models.js +5 -3
- package/dist/capabilities/models.js.map +1 -1
- package/dist/capabilities/registry.d.ts +2 -0
- package/dist/capabilities/registry.d.ts.map +1 -1
- package/dist/capabilities/registry.js +28 -0
- package/dist/capabilities/registry.js.map +1 -1
- package/dist/capabilities/run-agent.d.ts +19 -0
- package/dist/capabilities/run-agent.d.ts.map +1 -0
- package/dist/capabilities/run-agent.js +183 -0
- package/dist/capabilities/run-agent.js.map +1 -0
- package/dist/capabilities/runs.d.ts +9 -0
- package/dist/capabilities/runs.d.ts.map +1 -0
- package/dist/capabilities/runs.js +46 -0
- package/dist/capabilities/runs.js.map +1 -0
- package/dist/capabilities/runs.specs.d.ts +39 -0
- package/dist/capabilities/runs.specs.d.ts.map +1 -0
- package/dist/capabilities/runs.specs.js +52 -0
- package/dist/capabilities/runs.specs.js.map +1 -0
- package/dist/capabilities/scripts.d.ts.map +1 -1
- package/dist/capabilities/scripts.js +11 -5
- package/dist/capabilities/scripts.js.map +1 -1
- package/dist/capabilities/sketches.d.ts.map +1 -1
- package/dist/capabilities/sketches.js +4 -2
- package/dist/capabilities/sketches.js.map +1 -1
- package/dist/capabilities/skills.d.ts.map +1 -1
- package/dist/capabilities/skills.js +22 -2
- package/dist/capabilities/skills.js.map +1 -1
- package/dist/capabilities/storyboard-layout-check.d.ts +33 -0
- package/dist/capabilities/storyboard-layout-check.d.ts.map +1 -0
- package/dist/capabilities/storyboard-layout-check.js +229 -0
- package/dist/capabilities/storyboard-layout-check.js.map +1 -0
- package/dist/capabilities/storyboard-measured-sources.d.ts +10 -0
- package/dist/capabilities/storyboard-measured-sources.d.ts.map +1 -0
- package/dist/capabilities/storyboard-measured-sources.js +67 -0
- package/dist/capabilities/storyboard-measured-sources.js.map +1 -0
- package/dist/capabilities/storyboard-review-times.d.ts +4 -0
- package/dist/capabilities/storyboard-review-times.d.ts.map +1 -0
- package/dist/capabilities/storyboard-review-times.js +39 -0
- package/dist/capabilities/storyboard-review-times.js.map +1 -0
- package/dist/capabilities/storyboards.d.ts +2 -18
- package/dist/capabilities/storyboards.d.ts.map +1 -1
- package/dist/capabilities/storyboards.js +315 -94
- package/dist/capabilities/storyboards.js.map +1 -1
- package/dist/capabilities/storyboards.specs.d.ts +3 -0
- package/dist/capabilities/storyboards.specs.d.ts.map +1 -1
- package/dist/capabilities/storyboards.specs.js +42 -3
- package/dist/capabilities/storyboards.specs.js.map +1 -1
- package/dist/capabilities/timeline-bridge.d.ts +359 -0
- package/dist/capabilities/timeline-bridge.d.ts.map +1 -0
- package/dist/capabilities/timeline-bridge.js +1016 -0
- package/dist/capabilities/timeline-bridge.js.map +1 -0
- package/dist/capabilities/timeline-clip-frames.d.ts +17 -0
- package/dist/capabilities/timeline-clip-frames.d.ts.map +1 -0
- package/dist/capabilities/timeline-clip-frames.js +84 -0
- package/dist/capabilities/timeline-clip-frames.js.map +1 -0
- package/dist/capabilities/timeline-media-edit.d.ts +8 -0
- package/dist/capabilities/timeline-media-edit.d.ts.map +1 -0
- package/dist/capabilities/timeline-media-edit.js +94 -0
- package/dist/capabilities/timeline-media-edit.js.map +1 -0
- package/dist/capabilities/timeline-native-media.d.ts.map +1 -1
- package/dist/capabilities/timeline-native-media.js +40 -0
- package/dist/capabilities/timeline-native-media.js.map +1 -1
- package/dist/capabilities/timelines.d.ts +64 -4
- package/dist/capabilities/timelines.d.ts.map +1 -1
- package/dist/capabilities/timelines.js +566 -67
- package/dist/capabilities/timelines.js.map +1 -1
- package/dist/capabilities/timelines.specs.d.ts +8 -0
- package/dist/capabilities/timelines.specs.d.ts.map +1 -1
- package/dist/capabilities/timelines.specs.js +173 -8
- package/dist/capabilities/timelines.specs.js.map +1 -1
- package/dist/capabilities/types.d.ts +3 -1
- package/dist/capabilities/types.d.ts.map +1 -1
- package/dist/capabilities/types.js.map +1 -1
- package/dist/capabilities/ui.d.ts.map +1 -1
- package/dist/capabilities/ui.js +24 -2
- package/dist/capabilities/ui.js.map +1 -1
- package/dist/capabilities/workflows.d.ts.map +1 -1
- package/dist/capabilities/workflows.js +53 -26
- package/dist/capabilities/workflows.js.map +1 -1
- package/dist/capabilities/workflows.specs.d.ts.map +1 -1
- package/dist/capabilities/workflows.specs.js +7 -1
- package/dist/capabilities/workflows.specs.js.map +1 -1
- package/dist/codeact/action-diagnostics.d.ts.map +1 -1
- package/dist/codeact/action-diagnostics.js +51 -1
- package/dist/codeact/action-diagnostics.js.map +1 -1
- package/dist/codeact/codeact-executor.d.ts.map +1 -1
- package/dist/codeact/codeact-executor.js +16 -8
- package/dist/codeact/codeact-executor.js.map +1 -1
- package/dist/codeact/compact-ids.d.ts.map +1 -1
- package/dist/codeact/compact-ids.js +5 -1
- package/dist/codeact/compact-ids.js.map +1 -1
- package/dist/codeact/graph-model.d.ts +1 -1
- package/dist/codeact/graph-model.d.ts.map +1 -1
- package/dist/codeact/graph-model.js +2 -3
- package/dist/codeact/graph-model.js.map +1 -1
- package/dist/codeact/nodetool-api.d.ts +1 -1
- package/dist/codeact/nodetool-api.d.ts.map +1 -1
- package/dist/codeact/nodetool-api.js +202 -284
- package/dist/codeact/nodetool-api.js.map +1 -1
- package/dist/codeact/tool-api.d.ts +6 -3
- package/dist/codeact/tool-api.d.ts.map +1 -1
- package/dist/codeact/tool-api.js +22 -15
- package/dist/codeact/tool-api.js.map +1 -1
- package/dist/evals/codeact-api-cases.d.ts.map +1 -1
- package/dist/evals/codeact-api-cases.js +2 -0
- package/dist/evals/codeact-api-cases.js.map +1 -1
- package/dist/evals/codeact-api-runs.d.ts +3 -0
- package/dist/evals/codeact-api-runs.d.ts.map +1 -0
- package/dist/evals/codeact-api-runs.js +33 -0
- package/dist/evals/codeact-api-runs.js.map +1 -0
- package/dist/evals/surfaces/sketch.d.ts +2 -0
- package/dist/evals/surfaces/sketch.d.ts.map +1 -1
- package/dist/evals/surfaces/sketch.js +11 -3
- package/dist/evals/surfaces/sketch.js.map +1 -1
- package/dist/evals/surfaces/timeline.d.ts +4 -357
- package/dist/evals/surfaces/timeline.d.ts.map +1 -1
- package/dist/evals/surfaces/timeline.js +9 -2621
- package/dist/evals/surfaces/timeline.js.map +1 -1
- package/dist/evals/tool-loop-bridge.d.ts +4 -0
- package/dist/evals/tool-loop-bridge.d.ts.map +1 -1
- package/dist/evals/tool-loop-bridge.js.map +1 -1
- package/dist/evals/tool-loop-eval.d.ts +2 -0
- package/dist/evals/tool-loop-eval.d.ts.map +1 -1
- package/dist/evals/tool-loop-eval.js +6 -1
- package/dist/evals/tool-loop-eval.js.map +1 -1
- package/dist/evals/tool-loop-permission.d.ts +1 -15
- package/dist/evals/tool-loop-permission.d.ts.map +1 -1
- package/dist/evals/tool-loop-permission.js +23 -41
- package/dist/evals/tool-loop-permission.js.map +1 -1
- package/dist/game-authoring.d.ts +4737 -0
- package/dist/game-authoring.d.ts.map +1 -0
- package/dist/game-authoring.js +146 -0
- package/dist/game-authoring.js.map +1 -0
- package/dist/game-code-bake.d.ts +26 -0
- package/dist/game-code-bake.d.ts.map +1 -0
- package/dist/game-code-bake.js +98 -0
- package/dist/game-code-bake.js.map +1 -0
- package/dist/game-examples.d.ts +872 -16
- package/dist/game-examples.d.ts.map +1 -1
- package/dist/game-examples.js +5 -4
- package/dist/game-examples.js.map +1 -1
- package/dist/index.d.ts +15 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -3
- package/dist/index.js.map +1 -1
- package/dist/js-sandbox-worker/engine.d.ts +4 -0
- package/dist/js-sandbox-worker/engine.d.ts.map +1 -0
- package/dist/js-sandbox-worker/engine.js +45 -0
- package/dist/js-sandbox-worker/engine.js.map +1 -0
- package/dist/js-sandbox-worker/host.js +1 -1
- package/dist/js-sandbox-worker/host.js.map +1 -1
- package/dist/js-sandbox-worker/interpreter.d.ts +1 -1
- package/dist/js-sandbox-worker/interpreter.d.ts.map +1 -1
- package/dist/js-sandbox-worker/interpreter.js +94 -2
- package/dist/js-sandbox-worker/interpreter.js.map +1 -1
- package/dist/js-sandbox-worker/worker-entry.d.ts.map +1 -1
- package/dist/js-sandbox-worker/worker-entry.js +3 -2
- package/dist/js-sandbox-worker/worker-entry.js.map +1 -1
- package/dist/js-sandbox.d.ts +2 -0
- package/dist/js-sandbox.d.ts.map +1 -1
- package/dist/js-sandbox.js +56 -11
- package/dist/js-sandbox.js.map +1 -1
- package/dist/js-script-app-runner.d.ts +2 -0
- package/dist/js-script-app-runner.d.ts.map +1 -1
- package/dist/js-script-app-runner.js +8 -3
- package/dist/js-script-app-runner.js.map +1 -1
- package/dist/js-script-sandbox.d.ts +12 -18
- package/dist/js-script-sandbox.d.ts.map +1 -1
- package/dist/js-script-sandbox.js +3 -49
- package/dist/js-script-sandbox.js.map +1 -1
- package/dist/prompts/product-knowledge.d.ts +1 -1
- package/dist/prompts/product-knowledge.d.ts.map +1 -1
- package/dist/prompts/product-knowledge.js +82 -41
- package/dist/prompts/product-knowledge.js.map +1 -1
- package/dist/sandbox-pack-resolution.d.ts +21 -0
- package/dist/sandbox-pack-resolution.d.ts.map +1 -0
- package/dist/sandbox-pack-resolution.js +42 -0
- package/dist/sandbox-pack-resolution.js.map +1 -0
- package/dist/sandbox-toolbelt.d.ts +3 -1
- package/dist/sandbox-toolbelt.d.ts.map +1 -1
- package/dist/sandbox-toolbelt.js +8 -2
- package/dist/sandbox-toolbelt.js.map +1 -1
- package/dist/skill-prompt.d.ts +11 -1
- package/dist/skill-prompt.d.ts.map +1 -1
- package/dist/skill-prompt.js +17 -6
- package/dist/skill-prompt.js.map +1 -1
- package/dist/system-skills.d.ts +7 -1
- package/dist/system-skills.d.ts.map +1 -1
- package/dist/system-skills.js +2 -2
- package/dist/system-skills.js.map +1 -1
- package/dist/timeline-capture.d.ts +21 -0
- package/dist/timeline-capture.d.ts.map +1 -0
- package/dist/timeline-capture.js +564 -0
- package/dist/timeline-capture.js.map +1 -0
- package/dist/timeline-code-bake.d.ts +75 -0
- package/dist/timeline-code-bake.d.ts.map +1 -0
- package/dist/timeline-code-bake.js +327 -0
- package/dist/timeline-code-bake.js.map +1 -0
- package/dist/timeline-preview/frames.d.ts +26 -0
- package/dist/timeline-preview/frames.d.ts.map +1 -1
- package/dist/timeline-preview/frames.js +155 -70
- package/dist/timeline-preview/frames.js.map +1 -1
- package/dist/tools/base-tool.d.ts +1 -0
- package/dist/tools/base-tool.d.ts.map +1 -1
- package/dist/tools/base-tool.js +1 -1
- package/dist/tools/base-tool.js.map +1 -1
- package/dist/tools/builtin-tools.d.ts.map +1 -1
- package/dist/tools/builtin-tools.js +13 -0
- package/dist/tools/builtin-tools.js.map +1 -1
- package/dist/tools/external-capability-tools.d.ts +1 -1
- package/dist/tools/external-capability-tools.js +1 -1
- package/dist/tools/mcp-tool-support.d.ts +10 -9
- package/dist/tools/mcp-tool-support.d.ts.map +1 -1
- package/dist/tools/mcp-tool-support.js +14 -13
- package/dist/tools/mcp-tool-support.js.map +1 -1
- package/dist/tools/mcp-tools.d.ts +6 -4
- package/dist/tools/mcp-tools.d.ts.map +1 -1
- package/dist/tools/mcp-tools.js +65 -62
- package/dist/tools/mcp-tools.js.map +1 -1
- package/dist/tools/tool-permissions.d.ts +1 -1
- package/dist/tools/tool-permissions.js +1 -1
- package/package.json +24 -22
- package/dist/capabilities/gate-tools.d.ts +0 -18
- package/dist/capabilities/gate-tools.d.ts.map +0 -1
- package/dist/capabilities/gate-tools.js +0 -66
- package/dist/capabilities/gate-tools.js.map +0 -1
- package/dist/tsconfig.tests.tmp.tsbuildinfo +0 -1
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
*/
|
|
22
22
|
import { addSerializer, expose, getModuleLoader as createDefaultModuleLoader, modulePathNormalizer as defaultModulePathNormalizer } from "@sebastianwessel/quickjs";
|
|
23
23
|
import * as acorn from "acorn";
|
|
24
|
+
import { captureTimelineScenes } from "../timeline-capture.js";
|
|
24
25
|
import { Scope } from "quickjs-emscripten-core";
|
|
25
26
|
import { SANDBOX_CAPABILITY_BRIDGE_SOURCE, SANDBOX_CAPABILITY_BRIDGE_SPECIFIER, SANDBOX_CAPABILITY_DISPATCH_GLOBAL } from "@nodetool-ai/protocol/sandbox-capability";
|
|
26
27
|
import { generateSandboxHostFacade, sandboxHostModule, SANDBOX_HOST_BRIDGE_SOURCE, SANDBOX_HOST_BRIDGE_SPECIFIER, SANDBOX_HOST_DISPATCH_GLOBAL } from "@nodetool-ai/protocol/sandbox-host";
|
|
@@ -143,6 +144,46 @@ function guardAbort(fn, isAborted) {
|
|
|
143
144
|
return fn(...args);
|
|
144
145
|
};
|
|
145
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Replace every function reachable inside a caller-supplied data global with
|
|
149
|
+
* `wrap(fn)`, shallow-cloning the plain objects/arrays that hold them.
|
|
150
|
+
*
|
|
151
|
+
* A caller-supplied global is often a stub object nested a level or two deep
|
|
152
|
+
* — `{ nodetool: { timelines: { edit(id, ops) { ... } } } }` is exactly the
|
|
153
|
+
* shape `bakeTimelineCode`'s hermetic stub uses. Only the top-level `globals`
|
|
154
|
+
* entries were ever routed through the never-reject convention; a function
|
|
155
|
+
* found deeper than that reached the guest through the wrapper's own generic
|
|
156
|
+
* marshaling (see the call site), where a host throw or promise rejection is
|
|
157
|
+
* the exact shape `SANDBOX_ERROR_MARKER` exists to avoid. Running every
|
|
158
|
+
* nested function through the same `wrap` the top-level ones get — before the
|
|
159
|
+
* value is even classified as JSON-representable or not — means no host
|
|
160
|
+
* function this run exposes, at any depth, can ever throw or reject across
|
|
161
|
+
* the boundary; the guest-side deep-unwrap at the call site turns the
|
|
162
|
+
* resulting tagged value back into an ordinary guest `throw`.
|
|
163
|
+
*/
|
|
164
|
+
function wrapNestedFunctionsDeep(value, wrap, seen = new Set()) {
|
|
165
|
+
if (isFunction(value)) {
|
|
166
|
+
return wrap(value);
|
|
167
|
+
}
|
|
168
|
+
if (value === null || typeof value !== "object")
|
|
169
|
+
return value;
|
|
170
|
+
if (seen.has(value))
|
|
171
|
+
return value;
|
|
172
|
+
seen.add(value);
|
|
173
|
+
if (Array.isArray(value)) {
|
|
174
|
+
return value.map((entry) => wrapNestedFunctionsDeep(entry, wrap, seen));
|
|
175
|
+
}
|
|
176
|
+
// Only plain records can hold a bridge function. Rebuilding anything else
|
|
177
|
+
// (Uint8Array, Date, Map) as a record strips the type the guest relies on.
|
|
178
|
+
const proto = Object.getPrototypeOf(value);
|
|
179
|
+
if (proto !== Object.prototype && proto !== null)
|
|
180
|
+
return value;
|
|
181
|
+
const out = {};
|
|
182
|
+
for (const [key, entry] of Object.entries(value)) {
|
|
183
|
+
out[key] = wrapNestedFunctionsDeep(entry, wrap, seen);
|
|
184
|
+
}
|
|
185
|
+
return out;
|
|
186
|
+
}
|
|
146
187
|
// ---------------------------------------------------------------------------
|
|
147
188
|
// Guest surface tables
|
|
148
189
|
// ---------------------------------------------------------------------------
|
|
@@ -278,7 +319,11 @@ function dropTimersStatement() {
|
|
|
278
319
|
* denies them at runtime (see {@link createGuestModuleHost}); rewriting them
|
|
279
320
|
* here would only move a runtime denial into a confusing compile-time one.
|
|
280
321
|
*/
|
|
281
|
-
export function buildEntryModule(
|
|
322
|
+
export function buildEntryModule(source, prelude = "", encodeResult = false) {
|
|
323
|
+
// Timeline code gets its scene capture records here, the one step every
|
|
324
|
+
// guest run passes (docs/timeline-code-capture.md). The records add no
|
|
325
|
+
// line breaks, so line offsets below stay correct.
|
|
326
|
+
const code = captureTimelineScenes(source);
|
|
282
327
|
let program;
|
|
283
328
|
try {
|
|
284
329
|
program = acorn.parse(code, {
|
|
@@ -697,9 +742,26 @@ export async function runInterpreter(params) {
|
|
|
697
742
|
bridges[name] = value;
|
|
698
743
|
}
|
|
699
744
|
else {
|
|
700
|
-
|
|
745
|
+
// A function reachable at any depth inside this object (a stub
|
|
746
|
+
// like `{ nodetool: { timelines: { edit() {...} } } }`) makes the
|
|
747
|
+
// whole tree UNREPRESENTABLE below and falls through to the
|
|
748
|
+
// wrapper's own generic marshaling (`encoded.skipped`). That path
|
|
749
|
+
// calls a *nested* host function the way the wrapper calls any
|
|
750
|
+
// host function — no never-reject convention applied — so a host
|
|
751
|
+
// implementation that throws (or whose returned promise rejects)
|
|
752
|
+
// crosses the FFI boundary as a genuine QuickJS exception/rejection
|
|
753
|
+
// rather than the tagged, always-resolved value the top-level
|
|
754
|
+
// bridges above are wrapped to produce. That is exactly the
|
|
755
|
+
// handle-leak shape documented on `SANDBOX_ERROR_MARKER`: replacing
|
|
756
|
+
// every nested function with `wrap(fn)` here, before the tree is
|
|
757
|
+
// even classified, means every host function this run exposes —
|
|
758
|
+
// top-level or nested — follows the same never-reject contract, and
|
|
759
|
+
// the guest-side deep-unwrap below turns the tagged value back into
|
|
760
|
+
// a plain guest `throw`.
|
|
761
|
+
dataGlobals[name] = wrapNestedFunctionsDeep(value, wrap);
|
|
701
762
|
}
|
|
702
763
|
}
|
|
764
|
+
const skippedGlobalNames = [];
|
|
703
765
|
if (Object.keys(dataGlobals).length > 0) {
|
|
704
766
|
const encoded = encodeHostRecord(dataGlobals);
|
|
705
767
|
if (encoded.cyclic.length > 0) {
|
|
@@ -716,6 +778,7 @@ export async function runInterpreter(params) {
|
|
|
716
778
|
}
|
|
717
779
|
for (const name of encoded.skipped) {
|
|
718
780
|
bridges[name] = dataGlobals[name];
|
|
781
|
+
skippedGlobalNames.push(name);
|
|
719
782
|
}
|
|
720
783
|
}
|
|
721
784
|
// `expose` manages its own internal Scope; the second arg is unused.
|
|
@@ -918,6 +981,9 @@ globalThis.format = {
|
|
|
918
981
|
const __reviveDeep = (v) => {
|
|
919
982
|
const r = __revive(v);
|
|
920
983
|
if (r !== v) return r;
|
|
984
|
+
// Revived bytes are already final. Walking a typed array key by key makes
|
|
985
|
+
// one string per byte and exhausts the guest heap on a large image.
|
|
986
|
+
if (ArrayBuffer.isView(v)) return v;
|
|
921
987
|
if (Array.isArray(v)) {
|
|
922
988
|
for (let i = 0; i < v.length; i++) v[i] = __reviveDeep(v[i]);
|
|
923
989
|
return v;
|
|
@@ -1104,6 +1170,32 @@ globalThis.crypto = {
|
|
|
1104
1170
|
hmac: __wrap(__crypto.hmac)
|
|
1105
1171
|
};
|
|
1106
1172
|
${GUEST_JSON_TRANSPORT_SOURCE}
|
|
1173
|
+
${skippedGlobalNames.length === 0
|
|
1174
|
+
? ""
|
|
1175
|
+
: `// A global whose JSON tree held a function anywhere (\`encoded.skipped\`
|
|
1176
|
+
// on the host side) crossed via the wrapper's own generic marshaling, with
|
|
1177
|
+
// every nested function already replaced host-side by \`wrap(fn)\` — see
|
|
1178
|
+
// \`wrapNestedFunctionsDeep\`. Each one now resolves instead of throwing or
|
|
1179
|
+
// rejecting; this walks the same tree guest-side and turns every one of
|
|
1180
|
+
// those resolved, possibly-tagged values back into a normal guest function
|
|
1181
|
+
// that throws a real Error on failure, the same contract every named bridge
|
|
1182
|
+
// above already has.
|
|
1183
|
+
const __wrapGlobalFnsDeep = (v, seen) => {
|
|
1184
|
+
if (typeof v === "function") return __wrap(v);
|
|
1185
|
+
if (v && typeof v === "object") {
|
|
1186
|
+
if (seen.has(v)) return v;
|
|
1187
|
+
seen.add(v);
|
|
1188
|
+
if (Array.isArray(v)) {
|
|
1189
|
+
for (let i = 0; i < v.length; i++) v[i] = __wrapGlobalFnsDeep(v[i], seen);
|
|
1190
|
+
} else {
|
|
1191
|
+
for (const k of Object.keys(v)) v[k] = __wrapGlobalFnsDeep(v[k], seen);
|
|
1192
|
+
}
|
|
1193
|
+
}
|
|
1194
|
+
return v;
|
|
1195
|
+
};
|
|
1196
|
+
${skippedGlobalNames
|
|
1197
|
+
.map((n) => `globalThis.${n} = __wrapGlobalFnsDeep(globalThis.${n}, new Set());`)
|
|
1198
|
+
.join("\n")}`}
|
|
1107
1199
|
${DELETED_GUEST_GLOBALS.map((n) => `delete globalThis.${n};`).join("\n")}
|
|
1108
1200
|
${wasmCall === undefined
|
|
1109
1201
|
? ""
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../src/js-sandbox-worker/interpreter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../src/js-sandbox-worker/interpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-entry.d.ts","sourceRoot":"","sources":["../../src/js-sandbox-worker/worker-entry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAeH,OAAO,EAOL,KAAK,mBAAmB,EACzB,MAAM,eAAe,CAAC;AA2CvB,KAAK,IAAI,GAAG;IACV,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAChD,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;CACjE,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-entry.d.ts","sourceRoot":"","sources":["../../src/js-sandbox-worker/worker-entry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAeH,OAAO,EAOL,KAAK,mBAAmB,EACzB,MAAM,eAAe,CAAC;AA2CvB,KAAK,IAAI,GAAG;IACV,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAChD,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;CACjE,CAAC;AAwQF,wBAAsB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC3D"}
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
* This module is never statically imported by `js-sandbox.ts` — it is loaded
|
|
17
17
|
* only as a worker entry.
|
|
18
18
|
*/
|
|
19
|
-
import { loadQuickJs } from "@sebastianwessel/quickjs";
|
|
20
19
|
import { createLogger, importNodeBuiltin } from "@nodetool-ai/config";
|
|
20
|
+
import { loadSandboxEngine } from "./engine.js";
|
|
21
21
|
import { toGuestBytes } from "../sandbox-bytes.js";
|
|
22
22
|
import { MAX_RANDOM_BYTES } from "../sandbox-constants.js";
|
|
23
23
|
import { registerTypedArraySerializers, runInterpreter, SANDBOX_STREAM_OPEN_BINDING } from "./interpreter.js";
|
|
@@ -48,7 +48,7 @@ let enginePromise = null;
|
|
|
48
48
|
function getEngine() {
|
|
49
49
|
registerTypedArraySerializers();
|
|
50
50
|
if (!enginePromise)
|
|
51
|
-
enginePromise =
|
|
51
|
+
enginePromise = loadSandboxEngine(quickJsVariant);
|
|
52
52
|
return enginePromise;
|
|
53
53
|
}
|
|
54
54
|
class RunSession {
|
|
@@ -266,6 +266,7 @@ export async function startWorker(port) {
|
|
|
266
266
|
type: "result",
|
|
267
267
|
runId: raw.runId,
|
|
268
268
|
evalOk: false,
|
|
269
|
+
failure: "worker",
|
|
269
270
|
errorName: error instanceof Error ? error.name : "Error",
|
|
270
271
|
errorMessage: error instanceof Error ? error.message : String(error)
|
|
271
272
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-entry.js","sourceRoot":"","sources":["../../src/js-sandbox-worker/worker-entry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"worker-entry.js","sourceRoot":"","sources":["../../src/js-sandbox-worker/worker-entry.ts"],"names":[],"mappings":"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"}
|
package/dist/js-sandbox.d.ts
CHANGED
|
@@ -474,6 +474,8 @@ export interface RunSandboxOptions {
|
|
|
474
474
|
* lookup leaves the process.
|
|
475
475
|
*/
|
|
476
476
|
resolveHost?: HostResolver;
|
|
477
|
+
/** Pure guest construction only. Host bridges and host-backed module mounts are refused. */
|
|
478
|
+
hermetic?: boolean;
|
|
477
479
|
}
|
|
478
480
|
export interface RunSandboxResult {
|
|
479
481
|
success: boolean;
|
package/dist/js-sandbox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"js-sandbox.d.ts","sourceRoot":"","sources":["../src/js-sandbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;
|
|
1
|
+
{"version":3,"file":"js-sandbox.d.ts","sourceRoot":"","sources":["../src/js-sandbox.ts"],"names":[],"mappings":"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"}
|
package/dist/js-sandbox.js
CHANGED
|
@@ -50,7 +50,6 @@
|
|
|
50
50
|
* module (see {@link wrapCode}), because timer callbacks would run outside
|
|
51
51
|
* the never-reject/abort-guard conventions every bridge follows.
|
|
52
52
|
*/
|
|
53
|
-
import { loadQuickJs } from "@sebastianwessel/quickjs";
|
|
54
53
|
import { SANDBOX_CAPABILITY_DISPATCH_GLOBAL, SANDBOX_WASM_DISPATCH_GLOBAL } from "@nodetool-ai/protocol";
|
|
55
54
|
import { createSandboxHostDispatcher } from "./host-modules/dispatcher.js";
|
|
56
55
|
import { EXPOSED_BRIDGE_NAMES, MAX_ENGINE_TIMEOUT_MS, NO_INPUT_STREAM_MESSAGE, registerTypedArraySerializers, runInterpreter, SANDBOX_CAPABILITY_BRIDGE_BINDING, SANDBOX_INPUT_TAKE_BINDING, SANDBOX_STREAM_OPEN_BINDING, SANDBOX_WASM_BRIDGE_BINDING } from "./js-sandbox-worker/interpreter.js";
|
|
@@ -74,6 +73,7 @@ import * as quickJsVariantModule from "@jitl/quickjs-ng-wasmfile-release-sync";
|
|
|
74
73
|
// `QuickJSSyncVariant` this reads.
|
|
75
74
|
const quickJsVariant = quickJsVariantModule.default;
|
|
76
75
|
import { importNodeBuiltin } from "@nodetool-ai/config";
|
|
76
|
+
import { loadSandboxEngine } from "./js-sandbox-worker/engine.js";
|
|
77
77
|
// ---------------------------------------------------------------------------
|
|
78
78
|
// Constants
|
|
79
79
|
// ---------------------------------------------------------------------------
|
|
@@ -185,7 +185,7 @@ let enginePromise = null;
|
|
|
185
185
|
function getEngine() {
|
|
186
186
|
registerTypedArraySerializers();
|
|
187
187
|
if (!enginePromise) {
|
|
188
|
-
enginePromise =
|
|
188
|
+
enginePromise = loadSandboxEngine(quickJsVariant);
|
|
189
189
|
}
|
|
190
190
|
return enginePromise;
|
|
191
191
|
}
|
|
@@ -221,10 +221,9 @@ export function describeEngineFailure(error) {
|
|
|
221
221
|
const message = String(error?.message ?? error);
|
|
222
222
|
if (/gc_obj_list|Assertion failed|\bAborted\(/.test(message)) {
|
|
223
223
|
return ("The JavaScript sandbox runtime aborted while cleaning up, so this " +
|
|
224
|
-
"action
|
|
225
|
-
"
|
|
226
|
-
"
|
|
227
|
-
"payloads between steps as assets instead of as bytes.");
|
|
224
|
+
"action has no usable result. Host operations may already have completed. " +
|
|
225
|
+
"This is an internal sandbox cleanup failure. Inspect the execution " +
|
|
226
|
+
"before retrying any operation that writes data.");
|
|
228
227
|
}
|
|
229
228
|
if (/out of memory/i.test(message)) {
|
|
230
229
|
return ("The JavaScript sandbox ran out of guest memory, so this action " +
|
|
@@ -1963,6 +1962,10 @@ function noteWorkerFallback(reason) {
|
|
|
1963
1962
|
*/
|
|
1964
1963
|
export async function runInSandbox(options) {
|
|
1965
1964
|
const { code, context, timeoutMs = DEFAULT_TIMEOUT_MS, globals, signal, limits, onProgress, onLog, onEmit, onTakeInput, onStreamOpen, clock, modules, capabilities, wasmPool, resolveMediaRef, promoteMedia, resolveHost } = options;
|
|
1965
|
+
if (options.hermetic && (capabilities || (globals && Object.keys(globals).length) ||
|
|
1966
|
+
modules?.modules.some((module) => module.kind !== "js"))) {
|
|
1967
|
+
return { success: false, error: "Hermetic execution accepts only guest JavaScript modules and literal program inputs", logs: [] };
|
|
1968
|
+
}
|
|
1966
1969
|
const resolvedLimits = resolveSandboxLimits(limits);
|
|
1967
1970
|
// A streaming run needs a clock whether or not the caller brought one: the
|
|
1968
1971
|
// time it spends parked on upstream is not its own execution.
|
|
@@ -1988,10 +1991,10 @@ export async function runInSandbox(options) {
|
|
|
1988
1991
|
if (signal !== undefined)
|
|
1989
1992
|
hostOptions.signal = signal;
|
|
1990
1993
|
try {
|
|
1991
|
-
wasm = modules
|
|
1994
|
+
wasm = modules && !options.hermetic
|
|
1992
1995
|
? createSandboxWasmDispatcher(modules.modules, wasmOptions)
|
|
1993
1996
|
: undefined;
|
|
1994
|
-
hostModules = modules
|
|
1997
|
+
hostModules = modules && !options.hermetic
|
|
1995
1998
|
? createSandboxHostDispatcher(modules.modules, hostOptions)
|
|
1996
1999
|
: undefined;
|
|
1997
2000
|
}
|
|
@@ -2012,7 +2015,31 @@ export async function runInSandbox(options) {
|
|
|
2012
2015
|
streams.onStreamOpen = onStreamOpen;
|
|
2013
2016
|
if (activeClock !== undefined)
|
|
2014
2017
|
streams.clock = activeClock;
|
|
2015
|
-
const { sandbox, getLogs, getOutputs, getEmitted } = buildSandbox(context, signal, resolvedLimits, onProgress, onLog, onEmit, streams, resolveMediaRef, promoteMedia, resolveHost);
|
|
2018
|
+
const { sandbox, getLogs, getOutputs, getEmitted } = buildSandbox(options.hermetic ? undefined : context, signal, resolvedLimits, options.hermetic ? undefined : onProgress, options.hermetic ? undefined : onLog, options.hermetic ? undefined : onEmit, options.hermetic ? {} : streams, options.hermetic ? undefined : resolveMediaRef, options.hermetic ? undefined : promoteMedia, options.hermetic ? undefined : resolveHost);
|
|
2019
|
+
if (options.hermetic) {
|
|
2020
|
+
// Deny host bridge functions before either interpreter receives them.
|
|
2021
|
+
// Only console collection survives. Native guest arithmetic is not a bridge.
|
|
2022
|
+
const refuse = (path) => async () => {
|
|
2023
|
+
throw new Error(`${path} is unavailable during hermetic construction`);
|
|
2024
|
+
};
|
|
2025
|
+
const restrict = (value, path) => {
|
|
2026
|
+
if (typeof value === "function") {
|
|
2027
|
+
return refuse(path);
|
|
2028
|
+
}
|
|
2029
|
+
if (value && typeof value === "object") {
|
|
2030
|
+
return Object.fromEntries(Object.entries(value).map(([key, member]) => [key, restrict(member, `${path}.${key}`)]));
|
|
2031
|
+
}
|
|
2032
|
+
return value;
|
|
2033
|
+
};
|
|
2034
|
+
const hostBindings = sandbox;
|
|
2035
|
+
for (const name of EXPOSED_BRIDGE_NAMES) {
|
|
2036
|
+
if (name !== "console") {
|
|
2037
|
+
hostBindings[name] = restrict(hostBindings[name], name);
|
|
2038
|
+
}
|
|
2039
|
+
}
|
|
2040
|
+
hostBindings[SANDBOX_INPUT_TAKE_BINDING] = refuse("stream");
|
|
2041
|
+
hostBindings[SANDBOX_STREAM_OPEN_BINDING] = () => false;
|
|
2042
|
+
}
|
|
2016
2043
|
// User-supplied globals (dynamic inputs from CodeNode etc.) layer on top of
|
|
2017
2044
|
// the core surface, but must not clobber the bridge functions themselves.
|
|
2018
2045
|
const userGlobals = {};
|
|
@@ -2026,9 +2053,27 @@ export async function runInSandbox(options) {
|
|
|
2026
2053
|
}
|
|
2027
2054
|
}
|
|
2028
2055
|
// Identify object-typed globals whose contents should be synced back to the
|
|
2029
|
-
// host after the guest runs. Primitives are passed by value and need no
|
|
2056
|
+
// host after the guest runs. Primitives are passed by value and need no
|
|
2057
|
+
// sync. A global holding a function anywhere inside it — a hermetic bake's
|
|
2058
|
+
// `{ nodetool: { timelines: { edit() {...} } } }` stub — is excluded even
|
|
2059
|
+
// though it is object-typed: nothing reads a synced-back copy of a stub
|
|
2060
|
+
// (CodeNode's `state` object is the only real consumer, and it never holds
|
|
2061
|
+
// functions), and extracting the guest's current value asks the engine to
|
|
2062
|
+
// marshal a live function back out on every successful run, on top of the
|
|
2063
|
+
// one it already crossed in as. That is reach the sync-back exists to
|
|
2064
|
+
// avoid, not a capability it needs.
|
|
2065
|
+
const objectGlobalHasFunction = (value, seen = new Set()) => {
|
|
2066
|
+
if (typeof value === "function")
|
|
2067
|
+
return true;
|
|
2068
|
+
if (value === null || typeof value !== "object")
|
|
2069
|
+
return false;
|
|
2070
|
+
if (seen.has(value))
|
|
2071
|
+
return false;
|
|
2072
|
+
seen.add(value);
|
|
2073
|
+
return Object.values(value).some((entry) => objectGlobalHasFunction(entry, seen));
|
|
2074
|
+
};
|
|
2030
2075
|
const syncTargetNames = Object.entries(userGlobals)
|
|
2031
|
-
.filter(([, v]) => isObjectLike(v))
|
|
2076
|
+
.filter(([, v]) => isObjectLike(v) && !objectGlobalHasFunction(v))
|
|
2032
2077
|
.map(([k]) => k);
|
|
2033
2078
|
// Write the extracted object-global snapshots back into the caller's own
|
|
2034
2079
|
// objects. Both paths end here: node:vm shared the host heap, QuickJS does
|