@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
|
@@ -20,6 +20,9 @@
|
|
|
20
20
|
* provide: the node toolbelt (imports / `nodetool.*`) and secrets outside
|
|
21
21
|
* the call's own `secrets` list — authoring runs are hermetic by default.
|
|
22
22
|
*/
|
|
23
|
+
import { withSpan, recordTraceEvent } from "@nodetool-ai/runtime";
|
|
24
|
+
import { SpanStatusCode } from "@opentelemetry/api";
|
|
25
|
+
import { resolveImportedPacks } from "../sandbox-pack-resolution.js";
|
|
23
26
|
import { gradeCodeCases } from "./code-grading.js";
|
|
24
27
|
import { validateCodeSpec, runCodeSpec, testCodeSpec, MAX_TIMEOUT_SECONDS, DEFAULT_TIMEOUT_SECONDS, MAX_TEST_CASES } from "./code.specs.js";
|
|
25
28
|
import { isNonBlankString, isObjectLike, isRecord } from "../utils/type-guards.js";
|
|
@@ -34,6 +37,15 @@ import { isNonBlankString, isObjectLike, isRecord } from "../utils/type-guards.j
|
|
|
34
37
|
* has a context and no capability run.
|
|
35
38
|
*/
|
|
36
39
|
export async function runCodeBody(context, params) {
|
|
40
|
+
return withSpan("script.run", {}, async (span) => {
|
|
41
|
+
const result = await runCodeBodyImpl(context, params);
|
|
42
|
+
if (!result.ok) {
|
|
43
|
+
span?.setStatus({ code: SpanStatusCode.ERROR });
|
|
44
|
+
}
|
|
45
|
+
return result;
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
async function runCodeBodyImpl(context, params) {
|
|
37
49
|
const { hasReturnStatement, hasYieldStatement, wrapImplicitReturn, normalizeCodeOutput, usesEmitOutputContract } = await import("@nodetool-ai/node-sdk");
|
|
38
50
|
const { runInSandbox } = await import("../js-sandbox.js");
|
|
39
51
|
const started = Date.now();
|
|
@@ -43,104 +55,131 @@ export async function runCodeBody(context, params) {
|
|
|
43
55
|
logs,
|
|
44
56
|
duration_ms: Date.now() - started
|
|
45
57
|
});
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
58
|
+
// The same deadline reaches both the guest and in-flight capabilities.
|
|
59
|
+
// Aborting this invocation must not cancel or copy the caller's context.
|
|
60
|
+
const completion = new AbortController();
|
|
61
|
+
const signal = AbortSignal.any([context.signal, completion.signal]);
|
|
62
|
+
const deadline = setTimeout(() => completion.abort(new Error("Script execution deadline exceeded.")), Math.max(1, Math.ceil(params.timeoutSeconds * 1000)));
|
|
63
|
+
deadline.unref();
|
|
64
|
+
try {
|
|
65
|
+
let modules;
|
|
66
|
+
let capabilities;
|
|
67
|
+
if (params.withToolbelt) {
|
|
68
|
+
const { mountJsScriptSandbox } = await import("../js-script-sandbox.js");
|
|
69
|
+
const mounted = await mountJsScriptSandbox(params.code, context, {
|
|
70
|
+
signal
|
|
71
|
+
});
|
|
72
|
+
if (!mounted.ok) {
|
|
73
|
+
return fail(mounted.error);
|
|
74
|
+
}
|
|
75
|
+
modules = mounted.modules;
|
|
76
|
+
capabilities = mounted.capabilities;
|
|
53
77
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
if (!packs.ok) {
|
|
66
|
-
return fail(packs.error);
|
|
78
|
+
else {
|
|
79
|
+
// Hermetic: the body's pack imports still resolve against the installed
|
|
80
|
+
// catalog, but no platform module is mounted, so importing one fails in
|
|
81
|
+
// the guest the way any unserved specifier does.
|
|
82
|
+
const packs = resolveImportedPacks(params.code, context, {
|
|
83
|
+
subject: "The code"
|
|
84
|
+
});
|
|
85
|
+
if (!packs.ok) {
|
|
86
|
+
return fail(packs.error);
|
|
87
|
+
}
|
|
88
|
+
modules = packs.modules;
|
|
67
89
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
inputs: params.inputs,
|
|
87
|
-
state: {}
|
|
88
|
-
};
|
|
89
|
-
let source = body;
|
|
90
|
-
if (params.withToolbelt) {
|
|
91
|
-
const { NODETOOL_PRELUDE, assembleJsScriptToolbelt, sandboxToolBridgeGlobals } = await import("../sandbox-toolbelt.js");
|
|
92
|
-
source = `${NODETOOL_PRELUDE}\n${body}`;
|
|
93
|
-
Object.assign(globals, sandboxToolBridgeGlobals(context, await assembleJsScriptToolbelt(context)));
|
|
94
|
-
}
|
|
95
|
-
// A body reading `stream` needs a source, or every verb throws. Only a call
|
|
96
|
-
// that staged items gets one — without `inputStreams` the harness behaves
|
|
97
|
-
// exactly as before.
|
|
98
|
-
const staged = params.inputStreams
|
|
99
|
-
? stagedInputStreams(params.inputStreams)
|
|
100
|
-
: undefined;
|
|
101
|
-
const sandboxOptions = {
|
|
102
|
-
code: source,
|
|
103
|
-
context,
|
|
104
|
-
timeoutMs: params.timeoutSeconds * 1000,
|
|
105
|
-
globals,
|
|
106
|
-
limits: { secretScope: [...params.secrets] },
|
|
107
|
-
...(staged ?? {})
|
|
108
|
-
};
|
|
109
|
-
if (modules)
|
|
110
|
-
sandboxOptions.modules = modules;
|
|
111
|
-
if (capabilities)
|
|
112
|
-
sandboxOptions.capabilities = capabilities;
|
|
113
|
-
const result = await runInSandbox(sandboxOptions);
|
|
114
|
-
const logs = result.logs ?? [];
|
|
115
|
-
if (!result.success) {
|
|
116
|
-
return fail(result.error ?? "Code execution failed", logs);
|
|
117
|
-
}
|
|
118
|
-
if (emitContract) {
|
|
119
|
-
// No `onEmit` sink is passed, so the host accumulates the emits and hands
|
|
120
|
-
// them back in call order; the return value carries no output semantics.
|
|
121
|
-
return {
|
|
122
|
-
ok: true,
|
|
123
|
-
outputs: result.outputs ?? {},
|
|
124
|
-
streamed: result.emitted ?? [],
|
|
125
|
-
logs,
|
|
126
|
-
duration_ms: Date.now() - started
|
|
90
|
+
const code = params.code;
|
|
91
|
+
// The emit/output contract names its outputs, so nothing is inferred from
|
|
92
|
+
// the body's shape and nothing is rewritten: it runs exactly as written.
|
|
93
|
+
const emitContract = usesEmitOutputContract(code);
|
|
94
|
+
const streaming = !emitContract && hasYieldStatement(code);
|
|
95
|
+
const body = emitContract
|
|
96
|
+
? code
|
|
97
|
+
: streaming
|
|
98
|
+
? `const __yielded = [];
|
|
99
|
+
function yield_(value) { __yielded.push(value); }
|
|
100
|
+
${code.replace(/\byield\b/g, "yield_")}
|
|
101
|
+
return __yielded;`
|
|
102
|
+
: hasReturnStatement(code)
|
|
103
|
+
? code
|
|
104
|
+
: wrapImplicitReturn(code);
|
|
105
|
+
const globals = {
|
|
106
|
+
inputs: params.inputs,
|
|
107
|
+
state: {}
|
|
127
108
|
};
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
109
|
+
let source = body;
|
|
110
|
+
if (params.withToolbelt) {
|
|
111
|
+
const { NODETOOL_PRELUDE, assembleJsScriptToolbelt, sandboxToolBridgeGlobals } = await import("../sandbox-toolbelt.js");
|
|
112
|
+
source = `${NODETOOL_PRELUDE}\n${body}`;
|
|
113
|
+
Object.assign(globals, sandboxToolBridgeGlobals(context, await assembleJsScriptToolbelt(context), { signal }));
|
|
114
|
+
}
|
|
115
|
+
// A body reading `stream` needs a source, or every verb throws. Only a call
|
|
116
|
+
// that staged items gets one — without `inputStreams` the harness behaves
|
|
117
|
+
// exactly as before.
|
|
118
|
+
const staged = params.inputStreams
|
|
119
|
+
? stagedInputStreams(params.inputStreams)
|
|
120
|
+
: undefined;
|
|
121
|
+
const sandboxOptions = {
|
|
122
|
+
code: source,
|
|
123
|
+
context,
|
|
124
|
+
signal,
|
|
125
|
+
timeoutMs: params.timeoutSeconds * 1000,
|
|
126
|
+
globals,
|
|
127
|
+
limits: { secretScope: [...params.secrets] },
|
|
128
|
+
onLog: (level, message) => {
|
|
129
|
+
recordTraceEvent("console", { "log.level": level, "log.source": "script", "log.message": message });
|
|
130
|
+
},
|
|
131
|
+
...(staged ?? {})
|
|
132
|
+
};
|
|
133
|
+
if (modules)
|
|
134
|
+
sandboxOptions.modules = modules;
|
|
135
|
+
if (capabilities)
|
|
136
|
+
sandboxOptions.capabilities = capabilities;
|
|
137
|
+
const relayed = [];
|
|
138
|
+
const watch = params.onEmit;
|
|
139
|
+
if (watch) {
|
|
140
|
+
sandboxOptions.onEmit = (name, value) => {
|
|
141
|
+
relayed.push({ name, value });
|
|
142
|
+
watch(name, value);
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
const result = await runInSandbox(sandboxOptions);
|
|
146
|
+
const logs = result.logs ?? [];
|
|
147
|
+
if (!result.success) {
|
|
148
|
+
return fail(result.error ?? "Code execution failed", logs);
|
|
149
|
+
}
|
|
150
|
+
if (emitContract) {
|
|
151
|
+
// Without a sink the host accumulates the emits and hands them back in
|
|
152
|
+
// call order; with one they were collected as they were relayed. The
|
|
153
|
+
// return value carries no output semantics.
|
|
154
|
+
return {
|
|
155
|
+
ok: true,
|
|
156
|
+
outputs: result.outputs ?? {},
|
|
157
|
+
streamed: watch ? relayed : (result.emitted ?? []),
|
|
158
|
+
logs,
|
|
159
|
+
duration_ms: Date.now() - started
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
if (streaming) {
|
|
163
|
+
const items = Array.isArray(result.result) ? result.result : [];
|
|
164
|
+
return {
|
|
165
|
+
ok: true,
|
|
166
|
+
streamed: items.map(normalizeCodeOutput),
|
|
167
|
+
logs,
|
|
168
|
+
duration_ms: Date.now() - started
|
|
169
|
+
};
|
|
170
|
+
}
|
|
131
171
|
return {
|
|
132
172
|
ok: true,
|
|
133
|
-
|
|
173
|
+
outputs: normalizeCodeOutput(result.result),
|
|
134
174
|
logs,
|
|
135
175
|
duration_ms: Date.now() - started
|
|
136
176
|
};
|
|
137
177
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
};
|
|
178
|
+
finally {
|
|
179
|
+
clearTimeout(deadline);
|
|
180
|
+
// Revoke unawaited capabilities after both successful and failed scripts.
|
|
181
|
+
completion.abort(new Error("Script invocation has finished."));
|
|
182
|
+
}
|
|
144
183
|
}
|
|
145
184
|
function stagedInputStreams(streams) {
|
|
146
185
|
const queues = new Map(Object.entries(streams).map(([handle, values]) => [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/capabilities/code.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/capabilities/code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAMrE,OAAO,EACL,cAAc,EAIf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACT,MAAM,yBAAyB,CAAC;AAQjC;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAA0B,EAC1B,MAkBC;IAED,OAAO,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,OAA0B,EAC1B,MAAyC;IAEzC,MAAM,EACJ,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACvB,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAC1C,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE1D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,IAAI,GAAa,EAAE,EAAoB,EAAE,CAAC,CAAC;QACtE,EAAE,EAAE,KAAK;QACT,KAAK;QACL,IAAI;QACJ,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;KAClC,CAAC,CAAC;IAEH,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,UAAU,CACzB,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC,EACxE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CACrD,CAAC;IACF,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,OAAO,CAAC;QACZ,IAAI,YAAY,CAAC;QACjB,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACzE,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE;gBAC/D,MAAM;aACP,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC1B,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,wEAAwE;YACxE,wEAAwE;YACxE,iDAAiD;YACjD,MAAM,KAAK,GAAG,oBAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE;gBACvD,OAAO,EAAE,UAAU;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YACD,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC1B,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,0EAA0E;QAC1E,yEAAyE;QACzE,MAAM,YAAY,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,CAAC,YAAY,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,YAAY;YACvB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC;;IAEN,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC;oBACpB;gBACZ,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC;oBACxB,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAEjC,MAAM,OAAO,GAA4B;YACvC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,EAAE;SACV,CAAC;QACF,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,MAAM,EACJ,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACzB,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;YAC3C,MAAM,GAAG,GAAG,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACxC,MAAM,CAAC,MAAM,CACX,OAAO,EACP,wBAAwB,CACtB,OAAO,EACP,MAAM,wBAAwB,CAAC,OAAO,CAAC,EACvC,EAAE,MAAM,EAAE,CACX,CACF,CAAC;QACJ,CAAC;QAED,4EAA4E;QAC5E,0EAA0E;QAC1E,qBAAqB;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY;YAChC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC;YACzC,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,cAAc,GAAsB;YACxC,IAAI,EAAE,MAAM;YACZ,OAAO;YACP,MAAM;YACN,SAAS,EAAE,MAAM,CAAC,cAAc,GAAG,IAAI;YACvC,OAAO;YACP,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE;YAC5C,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBACxB,gBAAgB,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;YACtG,CAAC;YACD,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;SAClB,CAAC;QACF,IAAI,OAAO;YAAE,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;QAC9C,IAAI,YAAY;YAAE,cAAc,CAAC,YAAY,GAAG,YAAY,CAAC;QAC7D,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,KAAK,EAAE,CAAC;YACV,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBACtC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC9B,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACrB,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,CAAC;QAElD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,uBAAuB,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,uEAAuE;YACvE,qEAAqE;YACrE,4CAA4C;YAC5C,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;gBAC7B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBAClD,IAAI;gBACJ,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;aAClC,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC;gBACxC,IAAI;gBACJ,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;aAClC,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC;YAC3C,IAAI;YACJ,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;SAClC,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,QAAQ,CAAC,CAAC;QACvB,0EAA0E;QAC1E,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAsBD,SAAS,kBAAkB,CACzB,OAAkC;IAElC,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM;QACN,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;KACzC,CAAC,CACH,CAAC;IACF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACtB,CAAC,EACD,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CACrD,CAAC;IACF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;QAC7C,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK;gBAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAAG,CAAC,MAAc,EAAQ,EAAE;QAC/C,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,EAAE,IAAI,CAAC;YAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,OAAO;QACL,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACxD,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAC7D,CAAC;QACD,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;KAChE,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC;AAC1E,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAA8B,EAAE,CAAC;IAC7C,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAC1C,KAAgC,CACjC,EAAE,CAAC;QACF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAgC,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,IAAI,uBAAuB,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,uBAAuB,CAAC;IAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAC/C,CAAC;AAED,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,2EAA2E;AAC3E,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAEpD,MAAM,YAAY,GAAqB;IACrC,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAC1B,MAAM,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,GACpD,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,oBAAoB,CAAC;YAClC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,eAAe,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7C,eAAe,EAAE,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC9C,oBAAoB,EAAE,GAAG,CAAC,OAAO,CAAC,oBAAoB;SACvD,CAAC,CAAC;QACH,yEAAyE;QACzE,sEAAsE;QACtE,yEAAyE;QACzE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAC/B,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,KAAK,oBAAoB,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CACzE,CAAC;QACF,iEAAiE;QACjE,IACE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;YAClB,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY;YAC5B,CAAC,sBAAsB,CAAC,IAAI,CAAC;YAC7B,CAAC,aAAa,EACd,CAAC;YACD,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EACL,sDAAsD;oBACtD,iEAAiE;oBACjE,kBAAkB;aACrB,CAAC,CAAC;QACL,CAAC;QACD,OAAO;YACL,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC;YACvD,MAAM;SACP,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,4DAA4D;AAC5D,SAAS,aAAa,CACpB,MAAqC;IAErC,MAAM,UAAU,GAAsC;QACpD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;KAC1D,CAAC;IACF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IACvD,IAAI,MAAM,KAAK,SAAS;QAAE,UAAU,CAAC,YAAY,GAAG,MAAM,CAAC;IAC3D,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,OAAO,GAAqB;IAChC,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC7E,CAAC;AAEF,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,MAAM,QAAQ,GAAqB;IACjC,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC;QACzD,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;YACrC,OAAO;gBACL,KAAK,EAAE,0BAA0B,cAAc,wBAAwB,QAAQ,CAAC,MAAM,IAAI;aAC3F,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAE1D,MAAM,KAAK,GAAiB,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACpD,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;gBACb,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;YACpD,MAAM,MAAM,GAAe,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACrE,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;gBAChC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,QAAQ,CAA4B,CAAC;YAC3D,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC;gBAC5C,MAAM,CAAC,gBAAgB,GAAG,GAAG,CAAC,mBAAmB,CAAc,CAAC;YAClE,CAAC;YACD,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC;YACvD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,OAAO,cAAc,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE;YACxC,MAAM,UAAU,GAAsC;gBACpD,IAAI;gBACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,OAAO;gBACP,cAAc,EAAE,OAAO;aACxB,CAAC;YACF,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACxC,UAAU,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;YAClD,CAAC;YACD,OAAO,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,iBAAiB,GAAgC;IACrD,YAAY;IACZ,OAAO;IACP,QAAQ;CACT,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAqB;IACtC,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,iBAAiB;CAC3B,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `errors` capability module: read the caller's redacted error traces
|
|
3
|
+
* from `nodetool_error_traces` and render them for a bug report.
|
|
4
|
+
*
|
|
5
|
+
* Every read is scoped to the run's user id. Redaction happened before the
|
|
6
|
+
* rows were stored (`@nodetool-ai/models` `redactErrorTrace`), so what these
|
|
7
|
+
* return is safe to show the model and to paste into an issue.
|
|
8
|
+
* `@nodetool-ai/models` is imported inside each implementation, so loading
|
|
9
|
+
* this module costs nothing.
|
|
10
|
+
*/
|
|
11
|
+
import type { CapabilityExport, CapabilityModule } from "./types.js";
|
|
12
|
+
declare const listErrorTraces: CapabilityExport;
|
|
13
|
+
declare const getErrorTrace: CapabilityExport;
|
|
14
|
+
declare const exportErrorReport: CapabilityExport;
|
|
15
|
+
/** Every error-trace capability, in declaration order. */
|
|
16
|
+
export declare const ERROR_CAPABILITIES: readonly CapabilityExport[];
|
|
17
|
+
export declare const module: CapabilityModule;
|
|
18
|
+
export { listErrorTraces, getErrorTrace, exportErrorReport };
|
|
19
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/capabilities/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAoBrE,QAAA,MAAM,eAAe,EAAE,gBA2BtB,CAAC;AAEF,QAAA,MAAM,aAAa,EAAE,gBAiBpB,CAAC;AAEF,QAAA,MAAM,iBAAiB,EAAE,gBA2BxB,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,kBAAkB,EAAE,SAAS,gBAAgB,EAIzD,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,gBAGpB,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `errors` capability module: read the caller's redacted error traces
|
|
3
|
+
* from `nodetool_error_traces` and render them for a bug report.
|
|
4
|
+
*
|
|
5
|
+
* Every read is scoped to the run's user id. Redaction happened before the
|
|
6
|
+
* rows were stored (`@nodetool-ai/models` `redactErrorTrace`), so what these
|
|
7
|
+
* return is safe to show the model and to paste into an issue.
|
|
8
|
+
* `@nodetool-ai/models` is imported inside each implementation, so loading
|
|
9
|
+
* this module costs nothing.
|
|
10
|
+
*/
|
|
11
|
+
import { userIdOf } from "../tools/mcp-tool-support.js";
|
|
12
|
+
import { exportErrorReportSpec, getErrorTraceSpec, listErrorTracesSpec } from "./errors.specs.js";
|
|
13
|
+
import { isString } from "../utils/type-guards.js";
|
|
14
|
+
const MAX_LIMIT = 200;
|
|
15
|
+
const MAX_REPORT_TRACES = 50;
|
|
16
|
+
function limitOf(value, fallback, max) {
|
|
17
|
+
const n = Number(value ?? fallback);
|
|
18
|
+
return Number.isFinite(n) ? Math.min(Math.max(1, Math.floor(n)), max) : fallback;
|
|
19
|
+
}
|
|
20
|
+
function optionalString(value) {
|
|
21
|
+
return isString(value) && value.trim() ? value.trim() : undefined;
|
|
22
|
+
}
|
|
23
|
+
const listErrorTraces = {
|
|
24
|
+
spec: listErrorTracesSpec,
|
|
25
|
+
impl: async (run, params) => {
|
|
26
|
+
const models = await import("@nodetool-ai/models");
|
|
27
|
+
const userId = userIdOf(run.context);
|
|
28
|
+
const since = optionalString(params["since"]);
|
|
29
|
+
const limit = limitOf(params["limit"], 20, MAX_LIMIT);
|
|
30
|
+
const source = optionalString(params["source"]);
|
|
31
|
+
if (source && !models.isErrorTraceSource(source)) {
|
|
32
|
+
return { error: `Unknown source "${source}".` };
|
|
33
|
+
}
|
|
34
|
+
const fingerprint = optionalString(params["fingerprint"]);
|
|
35
|
+
if (params["grouped"] !== false && !fingerprint && !source) {
|
|
36
|
+
const groups = await models.summarizeErrorTraces(userId, { since, limit });
|
|
37
|
+
return { groups };
|
|
38
|
+
}
|
|
39
|
+
const traces = await models.listErrorTraces(userId, {
|
|
40
|
+
since,
|
|
41
|
+
limit,
|
|
42
|
+
fingerprint,
|
|
43
|
+
source: source && models.isErrorTraceSource(source) ? source : undefined
|
|
44
|
+
});
|
|
45
|
+
// A listing omits stacks; get_error_trace reads one in full.
|
|
46
|
+
return {
|
|
47
|
+
traces: traces.map(({ stack: _stack, user_id: _user, ...rest }) => rest)
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
const getErrorTrace = {
|
|
52
|
+
spec: getErrorTraceSpec,
|
|
53
|
+
impl: async (run, params) => {
|
|
54
|
+
const { getErrorTrace: find } = await import("@nodetool-ai/models");
|
|
55
|
+
const id = String(params["trace_id"] ?? "");
|
|
56
|
+
const result = await find(userIdOf(run.context), id);
|
|
57
|
+
if (!result.ok) {
|
|
58
|
+
return {
|
|
59
|
+
error: result.reason === "ambiguous"
|
|
60
|
+
? `Trace id ${id} matches more than one trace; use the full id.`
|
|
61
|
+
: `Error trace ${id} was not found.`
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
const { user_id: _user, ...trace } = result.trace;
|
|
65
|
+
return trace;
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
const exportErrorReport = {
|
|
69
|
+
spec: exportErrorReportSpec,
|
|
70
|
+
impl: async (run, params) => {
|
|
71
|
+
const models = await import("@nodetool-ai/models");
|
|
72
|
+
const userId = userIdOf(run.context);
|
|
73
|
+
const ids = Array.isArray(params["trace_ids"])
|
|
74
|
+
? params["trace_ids"].filter(isString).slice(0, MAX_REPORT_TRACES)
|
|
75
|
+
: [];
|
|
76
|
+
let traces;
|
|
77
|
+
if (ids.length > 0) {
|
|
78
|
+
traces = [];
|
|
79
|
+
for (const id of ids) {
|
|
80
|
+
const result = await models.getErrorTrace(userId, id);
|
|
81
|
+
if (result.ok)
|
|
82
|
+
traces.push(result.trace);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
traces = await models.listErrorTraces(userId, {
|
|
87
|
+
fingerprint: optionalString(params["fingerprint"]),
|
|
88
|
+
since: optionalString(params["since"]),
|
|
89
|
+
limit: limitOf(params["limit"], 10, MAX_REPORT_TRACES)
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return {
|
|
93
|
+
markdown: models.formatErrorReport(traces),
|
|
94
|
+
trace_ids: traces.map((trace) => trace.id)
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
/** Every error-trace capability, in declaration order. */
|
|
99
|
+
export const ERROR_CAPABILITIES = [
|
|
100
|
+
listErrorTraces,
|
|
101
|
+
getErrorTrace,
|
|
102
|
+
exportErrorReport
|
|
103
|
+
];
|
|
104
|
+
export const module = {
|
|
105
|
+
module: "errors",
|
|
106
|
+
exports: ERROR_CAPABILITIES
|
|
107
|
+
};
|
|
108
|
+
export { listErrorTraces, getErrorTrace, exportErrorReport };
|
|
109
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/capabilities/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `errors` module's specs — data only, no implementation. See
|
|
3
|
+
* `jobs.specs.ts` for why specs live apart from their implementations.
|
|
4
|
+
*/
|
|
5
|
+
import type { CapabilitySpec } from "./types.js";
|
|
6
|
+
export declare const listErrorTracesSpec: CapabilitySpec;
|
|
7
|
+
export declare const getErrorTraceSpec: CapabilitySpec;
|
|
8
|
+
export declare const exportErrorReportSpec: CapabilitySpec;
|
|
9
|
+
/** Every spec this module declares, in declaration order. */
|
|
10
|
+
export declare const errorsSpecs: readonly CapabilitySpec[];
|
|
11
|
+
//# sourceMappingURL=errors.specs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.specs.d.ts","sourceRoot":"","sources":["../../src/capabilities/errors.specs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAIjD,eAAO,MAAM,mBAAmB,EAAE,cAwCjC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,cAe/B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,cAiCnC,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,WAAW,EAAE,SAAS,cAAc,EAIhD,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `errors` module's specs — data only, no implementation. See
|
|
3
|
+
* `jobs.specs.ts` for why specs live apart from their implementations.
|
|
4
|
+
*/
|
|
5
|
+
const SOURCES = ["server", "trpc", "http", "job", "web", "electron", "agent", "cli"];
|
|
6
|
+
export const listErrorTracesSpec = {
|
|
7
|
+
name: "list_error_traces",
|
|
8
|
+
description: "List the user's recorded error traces: server failures, failed " +
|
|
9
|
+
"workflow runs and client crashes. Traces are redacted before storage " +
|
|
10
|
+
"(no credentials, emails, IPs or prompt content). By default returns " +
|
|
11
|
+
"groups of identical errors (by fingerprint) with counts and first/last " +
|
|
12
|
+
"seen; pass grouped=false for individual traces, newest first. Use " +
|
|
13
|
+
"get_error_trace for the full stack.",
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: "object",
|
|
16
|
+
properties: {
|
|
17
|
+
grouped: {
|
|
18
|
+
type: "boolean",
|
|
19
|
+
description: "Group identical errors by fingerprint",
|
|
20
|
+
default: true
|
|
21
|
+
},
|
|
22
|
+
since: {
|
|
23
|
+
type: "string",
|
|
24
|
+
description: "Only traces at or after this ISO-8601 time"
|
|
25
|
+
},
|
|
26
|
+
source: {
|
|
27
|
+
type: "string",
|
|
28
|
+
enum: SOURCES,
|
|
29
|
+
description: "Only traces from this source"
|
|
30
|
+
},
|
|
31
|
+
fingerprint: {
|
|
32
|
+
type: "string",
|
|
33
|
+
description: "Only occurrences of this error group"
|
|
34
|
+
},
|
|
35
|
+
limit: {
|
|
36
|
+
type: "number",
|
|
37
|
+
description: "Maximum groups or traces to return",
|
|
38
|
+
default: 20
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
required: []
|
|
42
|
+
},
|
|
43
|
+
category: "read",
|
|
44
|
+
userMessage: () => "Listing error traces"
|
|
45
|
+
};
|
|
46
|
+
export const getErrorTraceSpec = {
|
|
47
|
+
name: "get_error_trace",
|
|
48
|
+
description: "Get one redacted error trace with its stack and context (job, " +
|
|
49
|
+
"workflow, route, HTTP status). Accepts the full id or its 12-character " +
|
|
50
|
+
"prefix.",
|
|
51
|
+
inputSchema: {
|
|
52
|
+
type: "object",
|
|
53
|
+
properties: {
|
|
54
|
+
trace_id: { type: "string", description: "The trace id" }
|
|
55
|
+
},
|
|
56
|
+
required: ["trace_id"]
|
|
57
|
+
},
|
|
58
|
+
category: "read",
|
|
59
|
+
userMessage: (params) => `Getting error trace ${params["trace_id"]}`
|
|
60
|
+
};
|
|
61
|
+
export const exportErrorReportSpec = {
|
|
62
|
+
name: "export_error_report",
|
|
63
|
+
description: "Render redacted error traces as Markdown for a bug report. Name traces " +
|
|
64
|
+
"by id, or select one error group by fingerprint, or everything since a " +
|
|
65
|
+
"time; with none of these, the most recent traces. Returns the Markdown " +
|
|
66
|
+
"and the trace ids it covers.",
|
|
67
|
+
inputSchema: {
|
|
68
|
+
type: "object",
|
|
69
|
+
properties: {
|
|
70
|
+
trace_ids: {
|
|
71
|
+
type: "array",
|
|
72
|
+
items: { type: "string" },
|
|
73
|
+
description: "Trace ids (full or 12-character prefix)"
|
|
74
|
+
},
|
|
75
|
+
fingerprint: {
|
|
76
|
+
type: "string",
|
|
77
|
+
description: "Every recent occurrence of this error group"
|
|
78
|
+
},
|
|
79
|
+
since: {
|
|
80
|
+
type: "string",
|
|
81
|
+
description: "Only traces at or after this ISO-8601 time"
|
|
82
|
+
},
|
|
83
|
+
limit: {
|
|
84
|
+
type: "number",
|
|
85
|
+
description: "Maximum traces in the report",
|
|
86
|
+
default: 10
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
required: []
|
|
90
|
+
},
|
|
91
|
+
category: "read",
|
|
92
|
+
userMessage: () => "Exporting an error report"
|
|
93
|
+
};
|
|
94
|
+
/** Every spec this module declares, in declaration order. */
|
|
95
|
+
export const errorsSpecs = [
|
|
96
|
+
listErrorTracesSpec,
|
|
97
|
+
getErrorTraceSpec,
|
|
98
|
+
exportErrorReportSpec
|
|
99
|
+
];
|
|
100
|
+
//# sourceMappingURL=errors.specs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.specs.js","sourceRoot":"","sources":["../../src/capabilities/errors.specs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAErF,MAAM,CAAC,MAAM,mBAAmB,GAAmB;IACjD,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,iEAAiE;QACjE,uEAAuE;QACvE,sEAAsE;QACtE,yEAAyE;QACzE,oEAAoE;QACpE,qCAAqC;IACvC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,uCAAuC;gBACpD,OAAO,EAAE,IAAI;aACd;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4CAA4C;aAC1D;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,8BAA8B;aAC5C;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sCAAsC;aACpD;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oCAAoC;gBACjD,OAAO,EAAE,EAAE;aACZ;SACF;QACD,QAAQ,EAAE,EAAE;KACb;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,GAAG,EAAE,CAAC,sBAAsB;CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAmB;IAC/C,IAAI,EAAE,iBAAiB;IACvB,WAAW,EACT,gEAAgE;QAChE,yEAAyE;QACzE,SAAS;IACX,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;SAC1D;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;KACvB;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,uBAAuB,MAAM,CAAC,UAAU,CAAC,EAAE;CACrE,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAmB;IACnD,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,yEAAyE;QACzE,yEAAyE;QACzE,yEAAyE;QACzE,8BAA8B;IAChC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,yCAAyC;aACvD;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6CAA6C;aAC3D;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4CAA4C;aAC1D;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,OAAO,EAAE,EAAE;aACZ;SACF;QACD,QAAQ,EAAE,EAAE;KACb;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,GAAG,EAAE,CAAC,2BAA2B;CAC/C,CAAC;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,WAAW,GAA8B;IACpD,mBAAmB;IACnB,iBAAiB;IACjB,qBAAqB;CACtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example-timelines.d.ts","sourceRoot":"","sources":["../../src/capabilities/example-timelines.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"example-timelines.d.ts","sourceRoot":"","sources":["../../src/capabilities/example-timelines.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAoB,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAsRrE,eAAO,MAAM,MAAM,EAAE,gBAGpB,CAAC"}
|