@namzu/sdk 36.0.0 → 38.0.0
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/CHANGELOG.md +244 -0
- package/README.md +68 -41
- package/dist/bridge/a2a/mapper.d.ts.map +1 -1
- package/dist/bridge/a2a/mapper.js +4 -0
- package/dist/bridge/a2a/mapper.js.map +1 -1
- package/dist/bridge/sse/mapper.d.ts.map +1 -1
- package/dist/bridge/sse/mapper.js +16 -1
- package/dist/bridge/sse/mapper.js.map +1 -1
- package/dist/compaction/extractor.d.ts +1 -1
- package/dist/compaction/extractor.d.ts.map +1 -1
- package/dist/compaction/extractor.js +15 -7
- package/dist/compaction/extractor.js.map +1 -1
- package/dist/compaction/manager.d.ts +2 -0
- package/dist/compaction/manager.d.ts.map +1 -1
- package/dist/compaction/manager.js +12 -1
- package/dist/compaction/manager.js.map +1 -1
- package/dist/compaction/verifier.d.ts.map +1 -1
- package/dist/compaction/verifier.js +82 -15
- package/dist/compaction/verifier.js.map +1 -1
- package/dist/config/runtime.d.ts +16 -6
- package/dist/config/runtime.d.ts.map +1 -1
- package/dist/config/runtime.js +2 -0
- package/dist/config/runtime.js.map +1 -1
- package/dist/contracts/api.d.ts +1 -1
- package/dist/contracts/api.d.ts.map +1 -1
- package/dist/contracts/schemas.d.ts +10 -10
- package/dist/eval/harness-verification.d.ts +63 -0
- package/dist/eval/harness-verification.d.ts.map +1 -0
- package/dist/eval/harness-verification.js +165 -0
- package/dist/eval/harness-verification.js.map +1 -0
- package/dist/eval/index.d.ts +2 -0
- package/dist/eval/index.d.ts.map +1 -1
- package/dist/eval/index.js +1 -0
- package/dist/eval/index.js.map +1 -1
- package/dist/execution/code-runtime/json-value.d.ts +10 -0
- package/dist/execution/code-runtime/json-value.d.ts.map +1 -0
- package/dist/execution/code-runtime/json-value.js +89 -0
- package/dist/execution/code-runtime/json-value.js.map +1 -0
- package/dist/execution/code-runtime/worker-program.d.ts +8 -0
- package/dist/execution/code-runtime/worker-program.d.ts.map +1 -0
- package/dist/execution/code-runtime/worker-program.js +240 -0
- package/dist/execution/code-runtime/worker-program.js.map +1 -0
- package/dist/execution/code-runtime/worker.d.ts +22 -0
- package/dist/execution/code-runtime/worker.d.ts.map +1 -1
- package/dist/execution/code-runtime/worker.js +148 -111
- package/dist/execution/code-runtime/worker.js.map +1 -1
- package/dist/manager/agent/lifecycle.d.ts +12 -0
- package/dist/manager/agent/lifecycle.d.ts.map +1 -1
- package/dist/manager/agent/lifecycle.js +316 -46
- package/dist/manager/agent/lifecycle.js.map +1 -1
- package/dist/manager/run/persistence.d.ts +2 -0
- package/dist/manager/run/persistence.d.ts.map +1 -1
- package/dist/manager/run/persistence.js +6 -0
- package/dist/manager/run/persistence.js.map +1 -1
- package/dist/prompt/coding-agent-doctrine.d.ts +2 -2
- package/dist/prompt/coding-agent-doctrine.d.ts.map +1 -1
- package/dist/prompt/coding-agent-doctrine.js +11 -5
- package/dist/prompt/coding-agent-doctrine.js.map +1 -1
- package/dist/provider/capabilities.d.ts +5 -1
- package/dist/provider/capabilities.d.ts.map +1 -1
- package/dist/provider/capabilities.js +24 -0
- package/dist/provider/capabilities.js.map +1 -1
- package/dist/provider/fallback.d.ts.map +1 -1
- package/dist/provider/fallback.js +6 -2
- package/dist/provider/fallback.js.map +1 -1
- package/dist/public-runtime.d.ts +4 -1
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +3 -1
- package/dist/public-runtime.js.map +1 -1
- package/dist/public-tools.d.ts +2 -1
- package/dist/public-tools.d.ts.map +1 -1
- package/dist/public-tools.js +2 -1
- package/dist/public-tools.js.map +1 -1
- package/dist/public-types.d.ts +2 -0
- package/dist/public-types.d.ts.map +1 -1
- package/dist/registry/tool/execute.d.ts +3 -0
- package/dist/registry/tool/execute.d.ts.map +1 -1
- package/dist/registry/tool/execute.js +11 -80
- package/dist/registry/tool/execute.js.map +1 -1
- package/dist/run/command-gate.d.ts.map +1 -1
- package/dist/run/command-gate.js +65 -12
- package/dist/run/command-gate.js.map +1 -1
- package/dist/run/index.d.ts +2 -0
- package/dist/run/index.d.ts.map +1 -1
- package/dist/run/index.js +1 -0
- package/dist/run/index.js.map +1 -1
- package/dist/run/memory-promoter.d.ts +3 -35
- package/dist/run/memory-promoter.d.ts.map +1 -1
- package/dist/run/memory-promoter.js +32 -40
- package/dist/run/memory-promoter.js.map +1 -1
- package/dist/run/memory-recall.d.ts +25 -0
- package/dist/run/memory-recall.d.ts.map +1 -0
- package/dist/run/memory-recall.js +228 -0
- package/dist/run/memory-recall.js.map +1 -0
- package/dist/run/reporter.d.ts.map +1 -1
- package/dist/run/reporter.js +2 -0
- package/dist/run/reporter.js.map +1 -1
- package/dist/run/token-budget.d.ts +12 -4
- package/dist/run/token-budget.d.ts.map +1 -1
- package/dist/run/token-budget.js +49 -14
- package/dist/run/token-budget.js.map +1 -1
- package/dist/run/workspace-fingerprint.d.ts +10 -3
- package/dist/run/workspace-fingerprint.d.ts.map +1 -1
- package/dist/run/workspace-fingerprint.js +17 -8
- package/dist/run/workspace-fingerprint.js.map +1 -1
- package/dist/runtime/query/checkpoint.d.ts +14 -0
- package/dist/runtime/query/checkpoint.d.ts.map +1 -1
- package/dist/runtime/query/checkpoint.js +82 -1
- package/dist/runtime/query/checkpoint.js.map +1 -1
- package/dist/runtime/query/executor.d.ts +8 -3
- package/dist/runtime/query/executor.d.ts.map +1 -1
- package/dist/runtime/query/executor.js +94 -30
- package/dist/runtime/query/executor.js.map +1 -1
- package/dist/runtime/query/index.d.ts +7 -8
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +55 -7
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts +12 -0
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js +348 -38
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/native-output.d.ts +10 -0
- package/dist/runtime/query/iteration/native-output.d.ts.map +1 -0
- package/dist/runtime/query/iteration/native-output.js +32 -0
- package/dist/runtime/query/iteration/native-output.js.map +1 -0
- package/dist/runtime/query/iteration/phases/advisory.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/advisory.js +18 -13
- package/dist/runtime/query/iteration/phases/advisory.js.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.d.ts +2 -0
- package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js +32 -11
- package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
- package/dist/runtime/query/iteration/phases/context.d.ts +9 -0
- package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/context.js.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.js +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
- package/dist/runtime/query/iteration/phases/working-memory.d.ts +1 -1
- package/dist/runtime/query/iteration/phases/working-memory.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/working-memory.js +23 -6
- package/dist/runtime/query/iteration/phases/working-memory.js.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.js +12 -0
- package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
- package/dist/runtime/query/observation-context.d.ts +10 -0
- package/dist/runtime/query/observation-context.d.ts.map +1 -0
- package/dist/runtime/query/observation-context.js +84 -0
- package/dist/runtime/query/observation-context.js.map +1 -0
- package/dist/runtime/query/request-context.d.ts +30 -0
- package/dist/runtime/query/request-context.d.ts.map +1 -0
- package/dist/runtime/query/request-context.js +76 -0
- package/dist/runtime/query/request-context.js.map +1 -0
- package/dist/runtime/query/request-rich-content.d.ts.map +1 -1
- package/dist/runtime/query/request-rich-content.js +6 -3
- package/dist/runtime/query/request-rich-content.js.map +1 -1
- package/dist/runtime/query/review-policy.d.ts +3 -0
- package/dist/runtime/query/review-policy.d.ts.map +1 -1
- package/dist/runtime/query/review-policy.js +4 -1
- package/dist/runtime/query/review-policy.js.map +1 -1
- package/dist/runtime/query/steering.d.ts +6 -2
- package/dist/runtime/query/steering.d.ts.map +1 -1
- package/dist/runtime/query/steering.js +17 -2
- package/dist/runtime/query/steering.js.map +1 -1
- package/dist/runtime/query/tool-call-budget.d.ts +19 -0
- package/dist/runtime/query/tool-call-budget.d.ts.map +1 -0
- package/dist/runtime/query/tool-call-budget.js +110 -0
- package/dist/runtime/query/tool-call-budget.js.map +1 -0
- package/dist/runtime/query/tooling.d.ts +3 -0
- package/dist/runtime/query/tooling.d.ts.map +1 -1
- package/dist/runtime/query/tooling.js +5 -0
- package/dist/runtime/query/tooling.js.map +1 -1
- package/dist/sandbox/file-walk-program.d.ts.map +1 -1
- package/dist/sandbox/file-walk-program.js +8 -0
- package/dist/sandbox/file-walk-program.js.map +1 -1
- package/dist/sandbox/file-walk.d.ts.map +1 -1
- package/dist/sandbox/file-walk.js +9 -0
- package/dist/sandbox/file-walk.js.map +1 -1
- package/dist/scheduler/completion-inbox.d.ts.map +1 -1
- package/dist/scheduler/completion-inbox.js +3 -0
- package/dist/scheduler/completion-inbox.js.map +1 -1
- package/dist/scheduler/local.d.ts.map +1 -1
- package/dist/scheduler/local.js +1 -0
- package/dist/scheduler/local.js.map +1 -1
- package/dist/session/handoff/capacity.d.ts +2 -2
- package/dist/session/handoff/capacity.d.ts.map +1 -1
- package/dist/session/handoff/capacity.js +3 -2
- package/dist/session/handoff/capacity.js.map +1 -1
- package/dist/store/memory/disk.d.ts +6 -2
- package/dist/store/memory/disk.d.ts.map +1 -1
- package/dist/store/memory/disk.js +42 -25
- package/dist/store/memory/disk.js.map +1 -1
- package/dist/store/memory/index.d.ts +4 -0
- package/dist/store/memory/index.d.ts.map +1 -1
- package/dist/store/memory/index.js +55 -19
- package/dist/store/memory/index.js.map +1 -1
- package/dist/store/memory/memory.d.ts +3 -2
- package/dist/store/memory/memory.d.ts.map +1 -1
- package/dist/store/memory/memory.js +11 -2
- package/dist/store/memory/memory.js.map +1 -1
- package/dist/store/memory/operation-lock.d.ts +11 -0
- package/dist/store/memory/operation-lock.d.ts.map +1 -0
- package/dist/store/memory/operation-lock.js +94 -0
- package/dist/store/memory/operation-lock.js.map +1 -0
- package/dist/store/run/token-budget-disk.js +3 -0
- package/dist/store/run/token-budget-disk.js.map +1 -1
- package/dist/tools/builtins/computer-use.d.ts.map +1 -1
- package/dist/tools/builtins/computer-use.js +60 -10
- package/dist/tools/builtins/computer-use.js.map +1 -1
- package/dist/tools/builtins/edit.d.ts.map +1 -1
- package/dist/tools/builtins/edit.js +12 -26
- package/dist/tools/builtins/edit.js.map +1 -1
- package/dist/tools/builtins/file-write-result.d.ts +4 -0
- package/dist/tools/builtins/file-write-result.d.ts.map +1 -0
- package/dist/tools/builtins/file-write-result.js +72 -0
- package/dist/tools/builtins/file-write-result.js.map +1 -0
- package/dist/tools/builtins/glob.d.ts.map +1 -1
- package/dist/tools/builtins/glob.js +8 -1
- package/dist/tools/builtins/glob.js.map +1 -1
- package/dist/tools/builtins/grep.d.ts.map +1 -1
- package/dist/tools/builtins/grep.js +10 -0
- package/dist/tools/builtins/grep.js.map +1 -1
- package/dist/tools/builtins/job.d.ts.map +1 -1
- package/dist/tools/builtins/job.js +6 -0
- package/dist/tools/builtins/job.js.map +1 -1
- package/dist/tools/builtins/read-file.d.ts.map +1 -1
- package/dist/tools/builtins/read-file.js +10 -0
- package/dist/tools/builtins/read-file.js.map +1 -1
- package/dist/tools/builtins/run-code.d.ts +6 -0
- package/dist/tools/builtins/run-code.d.ts.map +1 -1
- package/dist/tools/builtins/run-code.js +15 -4
- package/dist/tools/builtins/run-code.js.map +1 -1
- package/dist/tools/builtins/search-tools.d.ts.map +1 -1
- package/dist/tools/builtins/search-tools.js +14 -2
- package/dist/tools/builtins/search-tools.js.map +1 -1
- package/dist/tools/builtins/write-file.d.ts.map +1 -1
- package/dist/tools/builtins/write-file.js +30 -44
- package/dist/tools/builtins/write-file.js.map +1 -1
- package/dist/tools/defineTool.d.ts +2 -0
- package/dist/tools/defineTool.d.ts.map +1 -1
- package/dist/tools/defineTool.js +3 -0
- package/dist/tools/defineTool.js.map +1 -1
- package/dist/tools/file-read-tracker.d.ts +4 -0
- package/dist/tools/file-read-tracker.d.ts.map +1 -0
- package/dist/tools/file-read-tracker.js +16 -0
- package/dist/tools/file-read-tracker.js.map +1 -0
- package/dist/tools/memory/delete.d.ts +4 -0
- package/dist/tools/memory/delete.d.ts.map +1 -0
- package/dist/tools/memory/delete.js +26 -0
- package/dist/tools/memory/delete.js.map +1 -0
- package/dist/tools/memory/index.d.ts +2 -0
- package/dist/tools/memory/index.d.ts.map +1 -1
- package/dist/tools/memory/index.js +6 -0
- package/dist/tools/memory/index.js.map +1 -1
- package/dist/tools/memory/save.d.ts.map +1 -1
- package/dist/tools/memory/save.js +3 -2
- package/dist/tools/memory/save.js.map +1 -1
- package/dist/tools/memory/search.d.ts.map +1 -1
- package/dist/tools/memory/search.js +12 -5
- package/dist/tools/memory/search.js.map +1 -1
- package/dist/tools/memory/update.d.ts +4 -0
- package/dist/tools/memory/update.d.ts.map +1 -0
- package/dist/tools/memory/update.js +47 -0
- package/dist/tools/memory/update.js.map +1 -0
- package/dist/tools/task/list.js +2 -2
- package/dist/tools/task/list.js.map +1 -1
- package/dist/types/agent/scheduler.d.ts +5 -0
- package/dist/types/agent/scheduler.d.ts.map +1 -1
- package/dist/types/agent/task.d.ts +10 -0
- package/dist/types/agent/task.d.ts.map +1 -1
- package/dist/types/computer-use/index.d.ts +6 -0
- package/dist/types/computer-use/index.d.ts.map +1 -1
- package/dist/types/computer-use/index.js.map +1 -1
- package/dist/types/errors/catalog.js +1 -1
- package/dist/types/errors/catalog.js.map +1 -1
- package/dist/types/hitl/index.d.ts +11 -1
- package/dist/types/hitl/index.d.ts.map +1 -1
- package/dist/types/hitl/index.js.map +1 -1
- package/dist/types/memory/index.d.ts +14 -1
- package/dist/types/memory/index.d.ts.map +1 -1
- package/dist/types/plugin/index.d.ts +7 -0
- package/dist/types/plugin/index.d.ts.map +1 -1
- package/dist/types/plugin/index.js.map +1 -1
- package/dist/types/project/entity.d.ts +1 -0
- package/dist/types/project/entity.d.ts.map +1 -1
- package/dist/types/provider/chat.d.ts +4 -0
- package/dist/types/provider/chat.d.ts.map +1 -1
- package/dist/types/provider/config.d.ts +4 -0
- package/dist/types/provider/config.d.ts.map +1 -1
- package/dist/types/provider/model.d.ts +4 -0
- package/dist/types/provider/model.d.ts.map +1 -1
- package/dist/types/provider/stream.d.ts +6 -0
- package/dist/types/provider/stream.d.ts.map +1 -1
- package/dist/types/run/answer-review.d.ts +2 -0
- package/dist/types/run/answer-review.d.ts.map +1 -1
- package/dist/types/run/config.d.ts +2 -0
- package/dist/types/run/config.d.ts.map +1 -1
- package/dist/types/run/events.d.ts +19 -0
- package/dist/types/run/events.d.ts.map +1 -1
- package/dist/types/run/events.js.map +1 -1
- package/dist/types/run/prepare-step.d.ts +19 -1
- package/dist/types/run/prepare-step.d.ts.map +1 -1
- package/dist/types/sandbox/index.d.ts +1 -0
- package/dist/types/sandbox/index.d.ts.map +1 -1
- package/dist/types/sandbox/index.js.map +1 -1
- package/dist/types/structured-output/index.d.ts +8 -2
- package/dist/types/structured-output/index.d.ts.map +1 -1
- package/dist/types/tool/index.d.ts +15 -0
- package/dist/types/tool/index.d.ts.map +1 -1
- package/dist/types/tool/index.js.map +1 -1
- package/dist/types/tool/presentation.d.ts +4 -0
- package/dist/types/tool/presentation.d.ts.map +1 -1
- package/dist/utils/json-snapshot.d.ts +3 -0
- package/dist/utils/json-snapshot.d.ts.map +1 -0
- package/dist/utils/json-snapshot.js +79 -0
- package/dist/utils/json-snapshot.js.map +1 -0
- package/package.json +4 -2
- package/src/bridge/a2a/mapper.ts +4 -0
- package/src/bridge/sse/mapper.ts +16 -1
- package/src/compaction/extractor.ts +21 -8
- package/src/compaction/manager.ts +11 -1
- package/src/compaction/verifier.ts +80 -18
- package/src/config/runtime.ts +2 -0
- package/src/contracts/api.ts +1 -0
- package/src/eval/harness-verification.ts +270 -0
- package/src/eval/index.ts +10 -0
- package/src/execution/code-runtime/json-value.ts +82 -0
- package/src/execution/code-runtime/worker-program.ts +239 -0
- package/src/execution/code-runtime/worker.ts +164 -111
- package/src/manager/agent/lifecycle.ts +352 -54
- package/src/manager/run/persistence.ts +7 -0
- package/src/prompt/coding-agent-doctrine.ts +11 -5
- package/src/provider/capabilities.ts +41 -1
- package/src/provider/fallback.ts +9 -2
- package/src/public-runtime.ts +6 -0
- package/src/public-tools.ts +7 -1
- package/src/public-types.ts +7 -0
- package/src/registry/tool/execute.ts +17 -79
- package/src/run/command-gate.ts +61 -13
- package/src/run/index.ts +2 -0
- package/src/run/memory-promoter.ts +32 -40
- package/src/run/memory-recall.ts +254 -0
- package/src/run/reporter.ts +2 -0
- package/src/run/token-budget.ts +55 -14
- package/src/run/workspace-fingerprint.ts +17 -8
- package/src/runtime/query/checkpoint.ts +96 -2
- package/src/runtime/query/executor.ts +100 -29
- package/src/runtime/query/index.ts +76 -16
- package/src/runtime/query/iteration/index.ts +405 -46
- package/src/runtime/query/iteration/native-output.ts +35 -0
- package/src/runtime/query/iteration/phases/advisory.ts +21 -11
- package/src/runtime/query/iteration/phases/compaction.ts +36 -14
- package/src/runtime/query/iteration/phases/context.ts +9 -0
- package/src/runtime/query/iteration/phases/tool-review.ts +5 -1
- package/src/runtime/query/iteration/phases/working-memory.ts +23 -5
- package/src/runtime/query/iteration/stream-turn.ts +15 -0
- package/src/runtime/query/observation-context.ts +86 -0
- package/src/runtime/query/request-context.ts +103 -0
- package/src/runtime/query/request-rich-content.ts +8 -3
- package/src/runtime/query/review-policy.ts +7 -1
- package/src/runtime/query/steering.ts +19 -2
- package/src/runtime/query/tool-call-budget.ts +115 -0
- package/src/runtime/query/tooling.ts +8 -0
- package/src/sandbox/file-walk-program.ts +8 -0
- package/src/sandbox/file-walk.ts +9 -0
- package/src/scheduler/completion-inbox.ts +3 -0
- package/src/scheduler/local.ts +1 -0
- package/src/session/handoff/capacity.ts +7 -3
- package/src/store/memory/disk.ts +52 -30
- package/src/store/memory/index.ts +75 -27
- package/src/store/memory/memory.ts +18 -6
- package/src/store/memory/operation-lock.ts +99 -0
- package/src/store/run/token-budget-disk.ts +3 -0
- package/src/tools/builtins/computer-use.ts +61 -7
- package/src/tools/builtins/edit.ts +12 -27
- package/src/tools/builtins/file-write-result.ts +84 -0
- package/src/tools/builtins/glob.ts +7 -1
- package/src/tools/builtins/grep.ts +10 -0
- package/src/tools/builtins/job.ts +8 -0
- package/src/tools/builtins/read-file.ts +10 -0
- package/src/tools/builtins/run-code.ts +24 -5
- package/src/tools/builtins/search-tools.ts +18 -3
- package/src/tools/builtins/write-file.ts +39 -44
- package/src/tools/defineTool.ts +5 -0
- package/src/tools/file-read-tracker.ts +16 -0
- package/src/tools/memory/delete.ts +29 -0
- package/src/tools/memory/index.ts +6 -0
- package/src/tools/memory/save.ts +4 -2
- package/src/tools/memory/search.ts +12 -5
- package/src/tools/memory/update.ts +50 -0
- package/src/tools/task/list.ts +2 -2
- package/src/types/agent/scheduler.ts +6 -0
- package/src/types/agent/task.ts +13 -0
- package/src/types/computer-use/index.ts +6 -0
- package/src/types/errors/catalog.ts +1 -1
- package/src/types/hitl/index.ts +11 -1
- package/src/types/memory/index.ts +16 -1
- package/src/types/plugin/index.ts +10 -0
- package/src/types/project/entity.ts +1 -0
- package/src/types/provider/chat.ts +2 -0
- package/src/types/provider/config.ts +4 -0
- package/src/types/provider/model.ts +4 -0
- package/src/types/provider/stream.ts +7 -0
- package/src/types/run/answer-review.ts +2 -0
- package/src/types/run/config.ts +2 -0
- package/src/types/run/events.ts +20 -0
- package/src/types/run/prepare-step.ts +19 -1
- package/src/types/sandbox/index.ts +1 -0
- package/src/types/structured-output/index.ts +15 -2
- package/src/types/tool/index.ts +16 -0
- package/src/types/tool/presentation.ts +4 -0
- package/src/utils/json-snapshot.ts +76 -0
|
@@ -1,99 +1,59 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';
|
|
1
2
|
import { Worker } from 'node:worker_threads';
|
|
3
|
+
import { encodeCodeValue } from './json-value.js';
|
|
2
4
|
import { HostCallDeniedError, } from './types.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
* on any leaked object is the whole escape, and it fits in a tweet. A
|
|
10
|
-
* worker is a separate V8 isolate with its own heap; escaping it means
|
|
11
|
-
* escaping V8.
|
|
12
|
-
*
|
|
13
|
-
* Chosen over a subprocess because a subprocess is a process: it inherits
|
|
14
|
-
* an environment, it can be a fork bomb, and killing it is the process-tree
|
|
15
|
-
* problem `process/kill-tree.ts` exists for. A worker is cheaper to start,
|
|
16
|
-
* cheaper to kill, and cannot outlive the process that made it.
|
|
17
|
-
*
|
|
18
|
-
* What a worker does NOT give, stated because it is the reason this is not
|
|
19
|
-
* the whole answer: a worker shares the process's filesystem and network
|
|
20
|
-
* access. It is not confined by anything the OS enforces. What confines the
|
|
21
|
-
* program here is that it is handed a scope with nothing in it — no
|
|
22
|
-
* `require`, no `process`, no `fetch` — and a single channel back to the
|
|
23
|
-
* host. That is a language-level boundary, and a language-level boundary is
|
|
24
|
-
* exactly as strong as the enumeration of what was withheld. So a host that
|
|
25
|
-
* needs an OS boundary runs this inside a sandbox that has one, and this
|
|
26
|
-
* comment is here so nobody concludes the worker was the boundary.
|
|
27
|
-
*/
|
|
28
|
-
/**
|
|
29
|
-
* The worker's own body, as source.
|
|
30
|
-
*
|
|
31
|
-
* Inlined rather than a separate file because a separate file has to be
|
|
32
|
-
* findable at runtime, and this package is consumed as `dist/` by hosts
|
|
33
|
-
* whose bundlers rewrite paths. A string has no path.
|
|
34
|
-
*/
|
|
35
|
-
const WORKER_SOURCE = `
|
|
36
|
-
const { parentPort, workerData } = require('node:worker_threads')
|
|
37
|
-
|
|
38
|
-
// Every host call is a request/response over the port, keyed by an id so
|
|
39
|
-
// several can be in flight — a program that awaits two calls at once is
|
|
40
|
-
// ordinary, and a channel that could only carry one would silently
|
|
41
|
-
// serialise them.
|
|
42
|
-
const pending = new Map()
|
|
43
|
-
let nextId = 0
|
|
44
|
-
|
|
45
|
-
function hostCall(name, input) {
|
|
46
|
-
const id = ++nextId
|
|
47
|
-
return new Promise((resolve, reject) => {
|
|
48
|
-
pending.set(id, { resolve, reject })
|
|
49
|
-
parentPort.postMessage({ kind: 'call', id, name, input })
|
|
50
|
-
})
|
|
5
|
+
import { QUICKJS_WORKER_SOURCE } from './worker-program.js';
|
|
6
|
+
const requireFromSdk = createRequire(import.meta.url);
|
|
7
|
+
function validateInteger(name, value, minimum, maximum) {
|
|
8
|
+
if (!Number.isSafeInteger(value) || value < minimum || value > maximum) {
|
|
9
|
+
throw new RangeError(`${name} must be an integer between ${minimum} and ${maximum}.`);
|
|
10
|
+
}
|
|
51
11
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
12
|
+
function resolveLimits(options) {
|
|
13
|
+
const limits = {
|
|
14
|
+
memoryLimitBytes: options.memoryLimitBytes ?? 64 * 1024 * 1024,
|
|
15
|
+
maxSourceBytes: options.maxSourceBytes ?? 256 * 1024,
|
|
16
|
+
maxValueBytes: options.maxValueBytes ?? 1024 * 1024,
|
|
17
|
+
maxHostCalls: options.maxHostCalls ?? 100,
|
|
18
|
+
maxPendingHostCalls: options.maxPendingHostCalls ?? options.maxHostCalls ?? 100,
|
|
19
|
+
};
|
|
20
|
+
validateInteger('memoryLimitBytes', limits.memoryLimitBytes, 16 * 1024 * 1024, 256 * 1024 * 1024);
|
|
21
|
+
validateInteger('maxSourceBytes', limits.maxSourceBytes, 1, 4 * 1024 * 1024);
|
|
22
|
+
validateInteger('maxValueBytes', limits.maxValueBytes, 1, 16 * 1024 * 1024);
|
|
23
|
+
validateInteger('maxHostCalls', limits.maxHostCalls, 1, 10_000);
|
|
24
|
+
validateInteger('maxPendingHostCalls', limits.maxPendingHostCalls, 1, limits.maxHostCalls);
|
|
25
|
+
return limits;
|
|
62
26
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
else entry.reject(new Error(message.error))
|
|
71
|
-
})
|
|
72
|
-
|
|
73
|
-
async function main() {
|
|
74
|
-
// The scope the program runs in, and everything it has. Built with
|
|
75
|
-
// \`new Function\` over an explicit parameter list rather than with
|
|
76
|
-
// \`with\` or a Proxy: the parameters SHADOW the outer names, so a
|
|
77
|
-
// program writing \`require\` gets the parameter, and the parameter is
|
|
78
|
-
// undefined.
|
|
79
|
-
const names = ['call', 'print', 'require', 'process', 'module', 'exports', 'globalThis', 'fetch']
|
|
80
|
-
const values = [hostCall, print, undefined, undefined, undefined, undefined, undefined, undefined]
|
|
81
|
-
const body = new Function(...names, '"use strict";return (async () => {' + workerData.source + '\\n})()')
|
|
82
|
-
return await body(...values)
|
|
27
|
+
function decodeValue(json, maxBytes) {
|
|
28
|
+
if (json === undefined)
|
|
29
|
+
return undefined;
|
|
30
|
+
if (typeof json !== 'string' || Buffer.byteLength(json) > maxBytes) {
|
|
31
|
+
throw new Error('Code runtime value exceeds the serialized value limit.');
|
|
32
|
+
}
|
|
33
|
+
return JSON.parse(json);
|
|
83
34
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
35
|
+
/**
|
|
36
|
+
* Runs untrusted JavaScript in a QuickJS interpreter inside a worker thread.
|
|
37
|
+
* QuickJS owns the guest globals, functions, and promises. Node capabilities
|
|
38
|
+
* never enter that realm; constructors and dynamic imports cannot recover them.
|
|
39
|
+
* A fresh interpreter and bounded imported WASM memory are created per run.
|
|
40
|
+
* The worker makes wall-clock cancellation independent of interpreter progress.
|
|
41
|
+
*/
|
|
90
42
|
export class WorkerCodeRuntime {
|
|
91
43
|
id = 'worker_threads';
|
|
44
|
+
limits;
|
|
45
|
+
constructor(options = {}) {
|
|
46
|
+
this.limits = resolveLimits(options);
|
|
47
|
+
}
|
|
92
48
|
async run(options) {
|
|
49
|
+
validateInteger('timeoutMs', options.timeoutMs, 1, 2_147_483_647);
|
|
50
|
+
validateInteger('maxOutputBytes', options.maxOutputBytes, 0, 16 * 1024 * 1024);
|
|
93
51
|
const allowed = new Set(options.allowedCalls);
|
|
94
52
|
const calls = [];
|
|
95
53
|
let output = '';
|
|
96
54
|
let truncated = false;
|
|
55
|
+
let printCount = 0;
|
|
56
|
+
const seenCalls = new Set();
|
|
97
57
|
// A withdrawn caller owns admission. Do not start an isolate merely to
|
|
98
58
|
// discover the signal was already aborted after construction.
|
|
99
59
|
if (options.signal?.aborted) {
|
|
@@ -104,11 +64,23 @@ export class WorkerCodeRuntime {
|
|
|
104
64
|
calls,
|
|
105
65
|
};
|
|
106
66
|
}
|
|
67
|
+
if (options.source.length > this.limits.maxSourceBytes ||
|
|
68
|
+
Buffer.byteLength(options.source) > this.limits.maxSourceBytes) {
|
|
69
|
+
return {
|
|
70
|
+
outcome: {
|
|
71
|
+
status: 'failed',
|
|
72
|
+
error: `Program source exceeds ${this.limits.maxSourceBytes} bytes.`,
|
|
73
|
+
},
|
|
74
|
+
output,
|
|
75
|
+
outputTruncated: truncated,
|
|
76
|
+
calls,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
107
79
|
const appendOutput = (lines) => {
|
|
108
80
|
for (const line of lines) {
|
|
109
81
|
if (truncated)
|
|
110
82
|
return;
|
|
111
|
-
const next =
|
|
83
|
+
const next = printCount === 0 ? line : `${output}\n${line}`;
|
|
112
84
|
if (Buffer.byteLength(next) > options.maxOutputBytes) {
|
|
113
85
|
// Cut at the LINE that would exceed, and say so. A cut
|
|
114
86
|
// mid-JSON produces output a reader cannot parse and cannot
|
|
@@ -117,25 +89,23 @@ export class WorkerCodeRuntime {
|
|
|
117
89
|
return;
|
|
118
90
|
}
|
|
119
91
|
output = next;
|
|
92
|
+
printCount++;
|
|
120
93
|
}
|
|
121
94
|
};
|
|
122
|
-
const worker = new Worker(
|
|
95
|
+
const worker = new Worker(QUICKJS_WORKER_SOURCE, {
|
|
123
96
|
eval: true,
|
|
124
|
-
workerData: {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
//
|
|
133
|
-
//
|
|
134
|
-
|
|
97
|
+
workerData: {
|
|
98
|
+
source: options.source,
|
|
99
|
+
corePath: requireFromSdk.resolve('quickjs-emscripten-core'),
|
|
100
|
+
variantPath: requireFromSdk.resolve('@jitl/quickjs-wasmfile-release-sync'),
|
|
101
|
+
limits: this.limits,
|
|
102
|
+
maxOutputBytes: options.maxOutputBytes,
|
|
103
|
+
deadline: Date.now() + options.timeoutMs,
|
|
104
|
+
},
|
|
105
|
+
// Trusted bootstrap requires Node; guest code runs only inside QuickJS.
|
|
106
|
+
// Avoid inheriting --input-type or test loaders into the CJS bootstrap.
|
|
107
|
+
execArgv: [],
|
|
135
108
|
env: {},
|
|
136
|
-
// No stdio inheritance: the program prints through `print`, which
|
|
137
|
-
// is bounded. A worker writing to the host's stdout would bypass
|
|
138
|
-
// the cap and interleave with the operator's own output.
|
|
139
109
|
stdout: true,
|
|
140
110
|
stderr: true,
|
|
141
111
|
});
|
|
@@ -196,13 +166,59 @@ export class WorkerCodeRuntime {
|
|
|
196
166
|
return;
|
|
197
167
|
}
|
|
198
168
|
worker.on('message', (message) => {
|
|
169
|
+
if (settled)
|
|
170
|
+
return;
|
|
171
|
+
if (message.kind === 'truncated') {
|
|
172
|
+
truncated = true;
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
if (message.kind === 'timed-out') {
|
|
176
|
+
operation.abort(new Error(`Code runtime exceeded ${options.timeoutMs}ms`));
|
|
177
|
+
finish({
|
|
178
|
+
outcome: { status: 'timed-out' },
|
|
179
|
+
output,
|
|
180
|
+
outputTruncated: truncated,
|
|
181
|
+
calls,
|
|
182
|
+
});
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
199
185
|
if (message.kind === 'call') {
|
|
200
186
|
const name = String(message.name);
|
|
201
187
|
const id = message.id;
|
|
188
|
+
if (typeof id !== 'number' ||
|
|
189
|
+
!Number.isSafeInteger(id) ||
|
|
190
|
+
id < 1 ||
|
|
191
|
+
seenCalls.has(id) ||
|
|
192
|
+
seenCalls.size >= this.limits.maxHostCalls ||
|
|
193
|
+
inFlight.size >= this.limits.maxPendingHostCalls) {
|
|
194
|
+
finish({
|
|
195
|
+
outcome: {
|
|
196
|
+
status: 'failed',
|
|
197
|
+
error: 'Invalid or over-budget host call.',
|
|
198
|
+
},
|
|
199
|
+
output,
|
|
200
|
+
outputTruncated: truncated,
|
|
201
|
+
calls,
|
|
202
|
+
});
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
seenCalls.add(id);
|
|
206
|
+
let input;
|
|
207
|
+
try {
|
|
208
|
+
input = decodeValue(message.json, this.limits.maxValueBytes);
|
|
209
|
+
}
|
|
210
|
+
catch (error) {
|
|
211
|
+
finish({
|
|
212
|
+
outcome: { status: 'failed', error: String(error) },
|
|
213
|
+
output,
|
|
214
|
+
outputTruncated: truncated,
|
|
215
|
+
calls,
|
|
216
|
+
});
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
202
219
|
if (!allowed.has(name)) {
|
|
203
|
-
//
|
|
204
|
-
//
|
|
205
|
-
// check the program shares a heap with.
|
|
220
|
+
// Authorization remains host-owned even though the interpreter
|
|
221
|
+
// also bounds its own bridge. A worker never expands the grant.
|
|
206
222
|
calls.push({ name, ok: false });
|
|
207
223
|
worker.postMessage({
|
|
208
224
|
kind: 'call-result',
|
|
@@ -217,17 +233,26 @@ export class WorkerCodeRuntime {
|
|
|
217
233
|
}
|
|
218
234
|
const runtimeToolCallId = String(id);
|
|
219
235
|
const hostCall = Promise.resolve()
|
|
220
|
-
.then(() => options.onHostCall({ name, input
|
|
236
|
+
.then(() => options.onHostCall({ name, input }, { runtimeToolCallId, signal: operation.signal }))
|
|
221
237
|
.then((result) => {
|
|
222
238
|
if (settled)
|
|
223
239
|
return;
|
|
240
|
+
let json;
|
|
241
|
+
try {
|
|
242
|
+
json = result.ok
|
|
243
|
+
? encodeCodeValue(result.value, this.limits.maxValueBytes)
|
|
244
|
+
: undefined;
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
throw new Error(`Host call "${name}" completed, but its result could not be delivered: ${error instanceof Error ? error.message : String(error)} Do not repeat a state-changing call solely to recover its output.`);
|
|
248
|
+
}
|
|
224
249
|
calls.push({ name, ok: result.ok });
|
|
225
250
|
worker.postMessage({
|
|
226
251
|
kind: 'call-result',
|
|
227
252
|
id,
|
|
228
253
|
ok: result.ok,
|
|
229
|
-
|
|
230
|
-
error: result.error,
|
|
254
|
+
json,
|
|
255
|
+
error: result.error?.slice(0, 4096),
|
|
231
256
|
});
|
|
232
257
|
})
|
|
233
258
|
.catch((err) => {
|
|
@@ -238,7 +263,7 @@ export class WorkerCodeRuntime {
|
|
|
238
263
|
kind: 'call-result',
|
|
239
264
|
id,
|
|
240
265
|
ok: false,
|
|
241
|
-
error: err instanceof Error ? err.message : String(err),
|
|
266
|
+
error: (err instanceof Error ? err.message : String(err)).slice(0, 4096),
|
|
242
267
|
});
|
|
243
268
|
})
|
|
244
269
|
.finally(() => {
|
|
@@ -257,8 +282,21 @@ export class WorkerCodeRuntime {
|
|
|
257
282
|
// declaring its JavaScript body complete is not evidence that the
|
|
258
283
|
// effect it started is complete, so keep the runtime open until the
|
|
259
284
|
// already-admitted host calls settle (or the deadline revokes them).
|
|
285
|
+
let value;
|
|
286
|
+
try {
|
|
287
|
+
value = decodeValue(message.json, this.limits.maxValueBytes);
|
|
288
|
+
}
|
|
289
|
+
catch (error) {
|
|
290
|
+
finish({
|
|
291
|
+
outcome: { status: 'failed', error: String(error) },
|
|
292
|
+
output,
|
|
293
|
+
outputTruncated: truncated,
|
|
294
|
+
calls,
|
|
295
|
+
});
|
|
296
|
+
return;
|
|
297
|
+
}
|
|
260
298
|
terminal = {
|
|
261
|
-
outcome: { status: 'completed', result:
|
|
299
|
+
outcome: { status: 'completed', result: value },
|
|
262
300
|
output,
|
|
263
301
|
outputTruncated: truncated,
|
|
264
302
|
calls,
|
|
@@ -287,9 +325,8 @@ export class WorkerCodeRuntime {
|
|
|
287
325
|
});
|
|
288
326
|
});
|
|
289
327
|
worker.on('exit', (code) => {
|
|
290
|
-
//
|
|
291
|
-
//
|
|
292
|
-
// `process.exit` through something we failed to withhold.
|
|
328
|
+
// A bootstrap or interpreter failure may exit before a terminal
|
|
329
|
+
// message. Guest code has no access to Node's process object.
|
|
293
330
|
finish({
|
|
294
331
|
outcome: {
|
|
295
332
|
status: 'failed',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/execution/code-runtime/worker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/execution/code-runtime/worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,8 +89,19 @@ export declare class AgentManager {
|
|
|
89
89
|
private spawnLocks;
|
|
90
90
|
private deps;
|
|
91
91
|
private topicManager;
|
|
92
|
+
private readonly pendingSpawns;
|
|
93
|
+
private readonly drainingParents;
|
|
94
|
+
private readonly executingTasks;
|
|
95
|
+
private readonly cancelingTasks;
|
|
96
|
+
private admissionTimer;
|
|
97
|
+
private disposed;
|
|
92
98
|
constructor(registry: AgentRegistry, config: Partial<AgentManagerConfig> | undefined, deps: AgentManagerDeps);
|
|
93
99
|
sendMessage(options: SendMessageOptions, context: AgentTaskContext, listener?: RunEventListener): Promise<AgentTask>;
|
|
100
|
+
private enqueueMessage;
|
|
101
|
+
private pumpAdmissions;
|
|
102
|
+
private drainAdmissions;
|
|
103
|
+
private failAdmission;
|
|
104
|
+
private startMessage;
|
|
94
105
|
private rollbackUnstartedSpawn;
|
|
95
106
|
private rollbackSpawnResources;
|
|
96
107
|
cancel(taskId: TaskId, cause?: CancelCause): void;
|
|
@@ -124,6 +135,7 @@ export declare class AgentManager {
|
|
|
124
135
|
* the store's to enforce, and no store here spans processes.
|
|
125
136
|
*/
|
|
126
137
|
private provisionSpawn;
|
|
138
|
+
private validateSpawn;
|
|
127
139
|
private provisionSpawnUnlocked;
|
|
128
140
|
private runChild;
|
|
129
141
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../../src/manager/agent/lifecycle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../../src/manager/agent/lifecycle.ts"],"names":[],"mappings":"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"}
|