@namzu/sdk 27.0.0 → 28.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 +1714 -0
- package/README.md +45 -42
- package/dist/advisory/executor.d.ts.map +1 -1
- package/dist/advisory/executor.js +14 -12
- package/dist/advisory/executor.js.map +1 -1
- package/dist/advisory/registry.d.ts +2 -2
- package/dist/advisory/registry.d.ts.map +1 -1
- package/dist/advisory/registry.js +2 -2
- package/dist/advisory/registry.js.map +1 -1
- package/dist/agents/AbstractAgent.d.ts +44 -2
- package/dist/agents/AbstractAgent.d.ts.map +1 -1
- package/dist/agents/AbstractAgent.js +62 -13
- package/dist/agents/AbstractAgent.js.map +1 -1
- package/dist/agents/PipelineAgent.d.ts +29 -1
- package/dist/agents/PipelineAgent.d.ts.map +1 -1
- package/dist/agents/PipelineAgent.js +33 -4
- package/dist/agents/PipelineAgent.js.map +1 -1
- package/dist/agents/ReactiveAgent.d.ts +2 -1
- package/dist/agents/ReactiveAgent.d.ts.map +1 -1
- package/dist/agents/ReactiveAgent.js +15 -5
- package/dist/agents/ReactiveAgent.js.map +1 -1
- package/dist/agents/RouterAgent.d.ts +2 -1
- package/dist/agents/RouterAgent.d.ts.map +1 -1
- package/dist/agents/RouterAgent.js +21 -13
- package/dist/agents/RouterAgent.js.map +1 -1
- package/dist/agents/SupervisorAgent.d.ts +3 -2
- package/dist/agents/SupervisorAgent.d.ts.map +1 -1
- package/dist/agents/SupervisorAgent.js +29 -14
- package/dist/agents/SupervisorAgent.js.map +1 -1
- package/dist/agents/handle.d.ts +85 -0
- package/dist/agents/handle.d.ts.map +1 -0
- package/dist/agents/handle.js +79 -0
- package/dist/agents/handle.js.map +1 -0
- package/dist/agents/runAgent.d.ts +10 -5
- package/dist/agents/runAgent.d.ts.map +1 -1
- package/dist/agents/runAgent.js +3 -2
- package/dist/agents/runAgent.js.map +1 -1
- package/dist/{verification → authorization}/gate.d.ts +4 -4
- package/dist/authorization/gate.d.ts.map +1 -0
- package/dist/{verification → authorization}/gate.js +31 -24
- package/dist/authorization/gate.js.map +1 -0
- package/dist/authorization/index.d.ts +6 -0
- package/dist/authorization/index.d.ts.map +1 -0
- package/dist/authorization/index.js +14 -0
- package/dist/authorization/index.js.map +1 -0
- package/dist/authorization/permission-presets.d.ts +119 -0
- package/dist/authorization/permission-presets.d.ts.map +1 -0
- package/dist/authorization/permission-presets.js +137 -0
- package/dist/authorization/permission-presets.js.map +1 -0
- package/dist/{verification → authorization}/presets.d.ts +3 -3
- package/dist/authorization/presets.d.ts.map +1 -0
- package/dist/{verification → authorization}/presets.js +12 -0
- package/dist/authorization/presets.js.map +1 -0
- package/dist/authorization/rules.d.ts +4 -0
- package/dist/authorization/rules.d.ts.map +1 -0
- package/dist/{verification → authorization}/rules.js +14 -1
- package/dist/authorization/rules.js.map +1 -0
- package/dist/bridge/a2a/client.d.ts +107 -0
- package/dist/bridge/a2a/client.d.ts.map +1 -0
- package/dist/bridge/a2a/client.js +275 -0
- package/dist/bridge/a2a/client.js.map +1 -0
- package/dist/bridge/a2a/mapper.d.ts.map +1 -1
- package/dist/bridge/a2a/mapper.js +16 -0
- package/dist/bridge/a2a/mapper.js.map +1 -1
- package/dist/bridge/acp/filesystem.d.ts +33 -0
- package/dist/bridge/acp/filesystem.d.ts.map +1 -0
- package/dist/bridge/acp/filesystem.js +30 -0
- package/dist/bridge/acp/filesystem.js.map +1 -0
- package/dist/bridge/acp/index.d.ts +8 -0
- package/dist/bridge/acp/index.d.ts.map +1 -0
- package/dist/bridge/acp/index.js +5 -0
- package/dist/bridge/acp/index.js.map +1 -0
- package/dist/bridge/acp/permission.d.ts +51 -0
- package/dist/bridge/acp/permission.d.ts.map +1 -0
- package/dist/bridge/acp/permission.js +37 -0
- package/dist/bridge/acp/permission.js.map +1 -0
- package/dist/bridge/acp/server.d.ts +163 -0
- package/dist/bridge/acp/server.d.ts.map +1 -0
- package/dist/bridge/acp/server.js +312 -0
- package/dist/bridge/acp/server.js.map +1 -0
- package/dist/bridge/acp/update.d.ts +13 -0
- package/dist/bridge/acp/update.d.ts.map +1 -0
- package/dist/bridge/acp/update.js +94 -0
- package/dist/bridge/acp/update.js.map +1 -0
- package/dist/bridge/mcp/connector/adapter.d.ts +2 -0
- package/dist/bridge/mcp/connector/adapter.d.ts.map +1 -1
- package/dist/bridge/mcp/connector/adapter.js +7 -3
- package/dist/bridge/mcp/connector/adapter.js.map +1 -1
- package/dist/bridge/sse/mapper.d.ts.map +1 -1
- package/dist/bridge/sse/mapper.js +27 -0
- package/dist/bridge/sse/mapper.js.map +1 -1
- package/dist/bus/breaker.d.ts.map +1 -1
- package/dist/bus/breaker.js +15 -10
- package/dist/bus/breaker.js.map +1 -1
- package/dist/bus/index.d.ts.map +1 -1
- package/dist/bus/index.js +10 -8
- package/dist/bus/index.js.map +1 -1
- package/dist/bus/lock.d.ts.map +1 -1
- package/dist/bus/lock.js +36 -19
- package/dist/bus/lock.js.map +1 -1
- package/dist/bus/ownership.d.ts.map +1 -1
- package/dist/bus/ownership.js +17 -9
- package/dist/bus/ownership.js.map +1 -1
- package/dist/compaction/context-window.d.ts +18 -2
- package/dist/compaction/context-window.d.ts.map +1 -1
- package/dist/compaction/context-window.js +15 -1
- package/dist/compaction/context-window.js.map +1 -1
- package/dist/compaction/index.d.ts +3 -0
- package/dist/compaction/index.d.ts.map +1 -1
- package/dist/compaction/index.js +4 -0
- package/dist/compaction/index.js.map +1 -1
- package/dist/compaction/manual.d.ts +58 -0
- package/dist/compaction/manual.d.ts.map +1 -0
- package/dist/compaction/manual.js +104 -0
- package/dist/compaction/manual.js.map +1 -0
- package/dist/compaction/plan.d.ts +92 -0
- package/dist/compaction/plan.d.ts.map +1 -0
- package/dist/compaction/plan.js +149 -0
- package/dist/compaction/plan.js.map +1 -0
- package/dist/compaction/summary.d.ts +23 -0
- package/dist/compaction/summary.d.ts.map +1 -0
- package/dist/compaction/summary.js +27 -0
- package/dist/compaction/summary.js.map +1 -0
- package/dist/compaction/verifier.js +2 -2
- package/dist/compaction/verifier.js.map +1 -1
- package/dist/config/registry.d.ts +104 -0
- package/dist/config/registry.d.ts.map +1 -0
- package/dist/config/registry.js +105 -0
- package/dist/config/registry.js.map +1 -0
- package/dist/config/runtime.d.ts +99 -28
- package/dist/config/runtime.d.ts.map +1 -1
- package/dist/config/runtime.js +27 -0
- package/dist/config/runtime.js.map +1 -1
- package/dist/connector/BaseConnector.d.ts +1 -1
- package/dist/connector/BaseConnector.d.ts.map +1 -1
- package/dist/connector/BaseConnector.js +8 -3
- package/dist/connector/BaseConnector.js.map +1 -1
- package/dist/connector/builtins/http.d.ts +1 -1
- package/dist/connector/builtins/http.d.ts.map +1 -1
- package/dist/connector/builtins/http.js +11 -2
- package/dist/connector/builtins/http.js.map +1 -1
- package/dist/connector/builtins/webhook.d.ts +1 -1
- package/dist/connector/builtins/webhook.d.ts.map +1 -1
- package/dist/connector/builtins/webhook.js +5 -2
- package/dist/connector/builtins/webhook.js.map +1 -1
- package/dist/connector/index.d.ts +4 -15
- package/dist/connector/index.d.ts.map +1 -1
- package/dist/connector/index.js +12 -12
- package/dist/connector/index.js.map +1 -1
- package/dist/connector/mcp/adapter.d.ts +30 -0
- package/dist/connector/mcp/adapter.d.ts.map +1 -1
- package/dist/connector/mcp/adapter.js +43 -1
- package/dist/connector/mcp/adapter.js.map +1 -1
- package/dist/connector/mcp/client.d.ts.map +1 -1
- package/dist/connector/mcp/client.js +31 -20
- package/dist/connector/mcp/client.js.map +1 -1
- package/dist/connector/mcp/discovery.d.ts.map +1 -1
- package/dist/connector/mcp/discovery.js +31 -20
- package/dist/connector/mcp/discovery.js.map +1 -1
- package/dist/connector/mcp/http-sse.d.ts +2 -1
- package/dist/connector/mcp/http-sse.d.ts.map +1 -1
- package/dist/connector/mcp/http-sse.js +9 -6
- package/dist/connector/mcp/http-sse.js.map +1 -1
- package/dist/connector/mcp/index.d.ts +2 -3
- package/dist/connector/mcp/index.d.ts.map +1 -1
- package/dist/connector/mcp/index.js +5 -4
- package/dist/connector/mcp/index.js.map +1 -1
- package/dist/connector/mcp/reconnect.d.ts +123 -0
- package/dist/connector/mcp/reconnect.d.ts.map +1 -0
- package/dist/connector/mcp/reconnect.js +121 -0
- package/dist/connector/mcp/reconnect.js.map +1 -0
- package/dist/connector/mcp/server/index.d.ts +28 -0
- package/dist/connector/mcp/server/index.d.ts.map +1 -0
- package/dist/connector/mcp/server/index.js +27 -0
- package/dist/connector/mcp/server/index.js.map +1 -0
- package/dist/connector/mcp/{server-stdio.d.ts → server/server-stdio.d.ts} +3 -2
- package/dist/connector/mcp/server/server-stdio.d.ts.map +1 -0
- package/dist/connector/mcp/{server-stdio.js → server/server-stdio.js} +4 -3
- package/dist/connector/mcp/server/server-stdio.js.map +1 -0
- package/dist/connector/mcp/{server.d.ts → server/server.d.ts} +5 -4
- package/dist/connector/mcp/server/server.d.ts.map +1 -0
- package/dist/connector/mcp/{server.js → server/server.js} +14 -9
- package/dist/connector/mcp/server/server.js.map +1 -0
- package/dist/connector/mcp/stdio.d.ts +2 -1
- package/dist/connector/mcp/stdio.d.ts.map +1 -1
- package/dist/connector/mcp/stdio.js +15 -7
- package/dist/connector/mcp/stdio.js.map +1 -1
- package/dist/connector/mcp/streamable-http.d.ts +2 -1
- package/dist/connector/mcp/streamable-http.d.ts.map +1 -1
- package/dist/connector/mcp/streamable-http.js +5 -4
- package/dist/connector/mcp/streamable-http.js.map +1 -1
- package/dist/{bridge/tools/connector → connector/tools}/adapter.d.ts +4 -4
- package/dist/connector/tools/adapter.d.ts.map +1 -0
- package/dist/{bridge/tools/connector → connector/tools}/adapter.js +1 -1
- package/dist/connector/tools/adapter.js.map +1 -0
- package/dist/{bridge/tools/connector → connector/tools}/definitions.d.ts +2 -2
- package/dist/connector/tools/definitions.d.ts.map +1 -0
- package/dist/{bridge/tools/connector → connector/tools}/definitions.js +2 -2
- package/dist/connector/tools/definitions.js.map +1 -0
- package/dist/connector/tools/index.d.ts.map +1 -0
- package/dist/connector/tools/index.js.map +1 -0
- package/dist/{bridge/tools/connector → connector/tools}/router.d.ts +4 -2
- package/dist/connector/tools/router.d.ts.map +1 -0
- package/dist/{bridge/tools/connector → connector/tools}/router.js +14 -7
- package/dist/connector/tools/router.js.map +1 -0
- package/dist/connector/web/guarded-fetch.d.ts +60 -0
- package/dist/connector/web/guarded-fetch.d.ts.map +1 -0
- package/dist/connector/web/guarded-fetch.js +233 -0
- package/dist/connector/web/guarded-fetch.js.map +1 -0
- package/dist/connector/web/index.d.ts +5 -0
- package/dist/connector/web/index.d.ts.map +1 -0
- package/dist/connector/web/index.js +7 -0
- package/dist/connector/web/index.js.map +1 -0
- package/dist/connector/web/types.d.ts +87 -0
- package/dist/connector/web/types.d.ts.map +1 -0
- package/dist/connector/web/types.js +25 -0
- package/dist/connector/web/types.js.map +1 -0
- package/dist/constants/acp/index.d.ts +97 -0
- package/dist/constants/acp/index.d.ts.map +1 -0
- package/dist/constants/acp/index.js +96 -0
- package/dist/constants/acp/index.js.map +1 -0
- package/dist/constants/authorization/index.d.ts.map +1 -0
- package/dist/constants/authorization/index.js.map +1 -0
- package/dist/constants/credential-env-keys.d.ts +36 -0
- package/dist/constants/credential-env-keys.d.ts.map +1 -0
- package/dist/constants/credential-env-keys.js +62 -0
- package/dist/constants/credential-env-keys.js.map +1 -0
- package/dist/constants/index.d.ts +3 -1
- package/dist/constants/index.d.ts.map +1 -1
- package/dist/constants/index.js +3 -1
- package/dist/constants/index.js.map +1 -1
- package/dist/constants/secret-patterns.d.ts +78 -0
- package/dist/constants/secret-patterns.d.ts.map +1 -0
- package/dist/constants/secret-patterns.js +99 -0
- package/dist/constants/secret-patterns.js.map +1 -0
- package/dist/constants/telemetry/index.d.ts +42 -0
- package/dist/constants/telemetry/index.d.ts.map +1 -1
- package/dist/constants/telemetry/index.js +87 -0
- package/dist/constants/telemetry/index.js.map +1 -1
- package/dist/contracts/a2a.d.ts +54 -54
- package/dist/contracts/api.d.ts +12 -1
- package/dist/contracts/api.d.ts.map +1 -1
- package/dist/contracts/schemas.d.ts +12 -12
- package/dist/deprecated-aliases.d.ts +80 -0
- package/dist/deprecated-aliases.d.ts.map +1 -0
- package/dist/deprecated-aliases.js +60 -0
- package/dist/deprecated-aliases.js.map +1 -0
- package/dist/eval/judge.js +2 -2
- package/dist/eval/judge.js.map +1 -1
- package/dist/execution/base.d.ts +1 -1
- package/dist/execution/base.d.ts.map +1 -1
- package/dist/execution/base.js +18 -7
- package/dist/execution/base.js.map +1 -1
- package/dist/execution/code-runtime/types.d.ts +114 -0
- package/dist/execution/code-runtime/types.d.ts.map +1 -0
- package/dist/execution/code-runtime/types.js +40 -0
- package/dist/execution/code-runtime/types.js.map +1 -0
- package/dist/execution/code-runtime/worker.d.ts +6 -0
- package/dist/execution/code-runtime/worker.d.ts.map +1 -0
- package/dist/execution/code-runtime/worker.js +248 -0
- package/dist/execution/code-runtime/worker.js.map +1 -0
- package/dist/{connector/execution → execution}/factory.d.ts +3 -3
- package/dist/execution/factory.d.ts.map +1 -0
- package/dist/{connector/execution → execution}/factory.js +1 -1
- package/dist/execution/factory.js.map +1 -0
- package/dist/{connector/execution → execution}/hybrid.d.ts +5 -3
- package/dist/execution/hybrid.d.ts.map +1 -0
- package/dist/{connector/execution → execution}/hybrid.js +10 -4
- package/dist/execution/hybrid.js.map +1 -0
- package/dist/execution/index.d.ts +23 -0
- package/dist/execution/index.d.ts.map +1 -1
- package/dist/execution/index.js +21 -0
- package/dist/execution/index.js.map +1 -1
- package/dist/execution/local.d.ts +2 -0
- package/dist/execution/local.d.ts.map +1 -1
- package/dist/execution/local.js +2 -2
- package/dist/execution/local.js.map +1 -1
- package/dist/{connector/execution → execution}/remote.d.ts +4 -2
- package/dist/execution/remote.d.ts.map +1 -0
- package/dist/{connector/execution → execution}/remote.js +12 -5
- package/dist/execution/remote.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/invariants/index.d.ts +111 -0
- package/dist/invariants/index.d.ts.map +1 -0
- package/dist/invariants/index.js +138 -0
- package/dist/invariants/index.js.map +1 -0
- package/dist/manager/agent/lifecycle.d.ts +29 -7
- package/dist/manager/agent/lifecycle.d.ts.map +1 -1
- package/dist/manager/agent/lifecycle.js +140 -50
- package/dist/manager/agent/lifecycle.js.map +1 -1
- package/dist/manager/connector/environment.d.ts +2 -0
- package/dist/manager/connector/environment.d.ts.map +1 -1
- package/dist/manager/connector/environment.js +20 -9
- package/dist/manager/connector/environment.js.map +1 -1
- package/dist/manager/connector/lifecycle.d.ts +10 -0
- package/dist/manager/connector/lifecycle.d.ts.map +1 -1
- package/dist/manager/connector/lifecycle.js +21 -11
- package/dist/manager/connector/lifecycle.js.map +1 -1
- package/dist/manager/connector/tenant.d.ts +9 -0
- package/dist/manager/connector/tenant.d.ts.map +1 -1
- package/dist/manager/connector/tenant.js +24 -10
- package/dist/manager/connector/tenant.js.map +1 -1
- package/dist/manager/index.d.ts +6 -2
- package/dist/manager/index.d.ts.map +1 -1
- package/dist/manager/index.js +7 -1
- package/dist/manager/index.js.map +1 -1
- package/dist/manager/project/lifecycle.d.ts +1 -1
- package/dist/manager/project/lifecycle.js +1 -1
- package/dist/manager/run/emergency.d.ts.map +1 -1
- package/dist/manager/run/emergency.js +9 -7
- package/dist/manager/run/emergency.js.map +1 -1
- package/dist/manager/run/persistence.d.ts +46 -4
- package/dist/manager/run/persistence.d.ts.map +1 -1
- package/dist/manager/run/persistence.js +102 -7
- package/dist/manager/run/persistence.js.map +1 -1
- package/dist/manager/topic/lifecycle.d.ts +123 -0
- package/dist/manager/topic/lifecycle.d.ts.map +1 -0
- package/dist/manager/{thread → topic}/lifecycle.js +79 -61
- package/dist/manager/topic/lifecycle.js.map +1 -0
- package/dist/manager/topic/objective.d.ts +77 -0
- package/dist/manager/topic/objective.d.ts.map +1 -0
- package/dist/manager/topic/objective.js +133 -0
- package/dist/manager/topic/objective.js.map +1 -0
- package/dist/model-router/task-router.d.ts.map +1 -0
- package/dist/model-router/task-router.js.map +1 -0
- package/dist/persona/assembler.d.ts +1 -1
- package/dist/persona/assembler.d.ts.map +1 -1
- package/dist/persona/assembler.js +14 -2
- package/dist/persona/assembler.js.map +1 -1
- package/dist/plugin/lifecycle.d.ts +24 -0
- package/dist/plugin/lifecycle.d.ts.map +1 -1
- package/dist/plugin/lifecycle.js +112 -20
- package/dist/plugin/lifecycle.js.map +1 -1
- package/dist/plugin/loader.d.ts +17 -2
- package/dist/plugin/loader.d.ts.map +1 -1
- package/dist/plugin/loader.js +46 -26
- package/dist/plugin/loader.js.map +1 -1
- package/dist/probe/index.d.ts +1 -0
- package/dist/probe/index.d.ts.map +1 -1
- package/dist/probe/registry.d.ts +34 -1
- package/dist/probe/registry.d.ts.map +1 -1
- package/dist/probe/registry.js +5 -4
- package/dist/probe/registry.js.map +1 -1
- package/dist/process/kill-tree.d.ts +40 -0
- package/dist/process/kill-tree.d.ts.map +1 -0
- package/dist/process/kill-tree.js +54 -0
- package/dist/process/kill-tree.js.map +1 -0
- package/dist/prompt/contributions.d.ts +138 -0
- package/dist/prompt/contributions.d.ts.map +1 -0
- package/dist/prompt/contributions.js +78 -0
- package/dist/prompt/contributions.js.map +1 -0
- package/dist/prompt/index.d.ts +3 -0
- package/dist/prompt/index.d.ts.map +1 -0
- package/dist/prompt/index.js +6 -0
- package/dist/prompt/index.js.map +1 -0
- package/dist/provider/attribution.d.ts +45 -0
- package/dist/provider/attribution.d.ts.map +1 -0
- package/dist/provider/attribution.js +23 -0
- package/dist/provider/attribution.js.map +1 -0
- package/dist/provider/{collect.d.ts → collect-chat-completion.d.ts} +3 -3
- package/dist/provider/collect-chat-completion.d.ts.map +1 -0
- package/dist/provider/{collect.js → collect-chat-completion.js} +3 -3
- package/dist/provider/collect-chat-completion.js.map +1 -0
- package/dist/provider/conformance.d.ts +93 -0
- package/dist/provider/conformance.d.ts.map +1 -0
- package/dist/provider/conformance.js +124 -0
- package/dist/provider/conformance.js.map +1 -0
- package/dist/provider/errors.d.ts +29 -0
- package/dist/provider/errors.d.ts.map +1 -1
- package/dist/provider/errors.js +27 -10
- package/dist/provider/errors.js.map +1 -1
- package/dist/provider/fallback.d.ts +1 -1
- package/dist/provider/fallback.d.ts.map +1 -1
- package/dist/provider/fallback.js +27 -9
- package/dist/provider/fallback.js.map +1 -1
- package/dist/provider/idle-timeout.d.ts +47 -0
- package/dist/provider/idle-timeout.d.ts.map +1 -0
- package/dist/provider/idle-timeout.js +61 -0
- package/dist/provider/idle-timeout.js.map +1 -0
- package/dist/provider/instrumentation.d.ts +3 -2
- package/dist/provider/instrumentation.d.ts.map +1 -1
- package/dist/provider/instrumentation.js.map +1 -1
- package/dist/provider/retry.d.ts.map +1 -1
- package/dist/provider/retry.js +58 -21
- package/dist/provider/retry.js.map +1 -1
- package/dist/public-runtime.d.ts +79 -15
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +173 -17
- package/dist/public-runtime.js.map +1 -1
- package/dist/public-tools.d.ts +8 -1
- package/dist/public-tools.d.ts.map +1 -1
- package/dist/public-tools.js +29 -1
- package/dist/public-tools.js.map +1 -1
- package/dist/public-types.d.ts +21 -4
- package/dist/public-types.d.ts.map +1 -1
- package/dist/rag/rag-tool.d.ts.map +1 -1
- package/dist/rag/rag-tool.js +4 -1
- package/dist/rag/rag-tool.js.map +1 -1
- package/dist/read-model/index.d.ts +5 -0
- package/dist/read-model/index.d.ts.map +1 -0
- package/dist/read-model/index.js +7 -0
- package/dist/read-model/index.js.map +1 -0
- package/dist/read-model/registry.d.ts +112 -0
- package/dist/read-model/registry.d.ts.map +1 -0
- package/dist/read-model/registry.js +105 -0
- package/dist/read-model/registry.js.map +1 -0
- package/dist/read-model/run-status.d.ts +43 -0
- package/dist/read-model/run-status.d.ts.map +1 -0
- package/dist/read-model/run-status.js +89 -0
- package/dist/read-model/run-status.js.map +1 -0
- package/dist/registry/{Registry.d.ts → BaseRegistry.d.ts} +2 -2
- package/dist/registry/BaseRegistry.d.ts.map +1 -0
- package/dist/registry/{Registry.js → BaseRegistry.js} +2 -2
- package/dist/registry/BaseRegistry.js.map +1 -0
- package/dist/registry/ManagedRegistry.d.ts +2 -2
- package/dist/registry/ManagedRegistry.d.ts.map +1 -1
- package/dist/registry/ManagedRegistry.js +26 -9
- package/dist/registry/ManagedRegistry.js.map +1 -1
- package/dist/registry/command/index-exports.d.ts +3 -0
- package/dist/registry/command/index-exports.d.ts.map +1 -0
- package/dist/registry/command/index-exports.js +5 -0
- package/dist/registry/command/index-exports.js.map +1 -0
- package/dist/registry/command/index.d.ts +53 -0
- package/dist/registry/command/index.d.ts.map +1 -0
- package/dist/registry/command/index.js +87 -0
- package/dist/registry/command/index.js.map +1 -0
- package/dist/registry/command/kernel-commands.d.ts +32 -0
- package/dist/registry/command/kernel-commands.d.ts.map +1 -0
- package/dist/registry/command/kernel-commands.js +78 -0
- package/dist/registry/command/kernel-commands.js.map +1 -0
- package/dist/registry/connector/scoped.d.ts +2 -1
- package/dist/registry/connector/scoped.d.ts.map +1 -1
- package/dist/registry/connector/scoped.js +6 -5
- package/dist/registry/connector/scoped.js.map +1 -1
- package/dist/registry/index.d.ts +4 -1
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +5 -1
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/tool/execute.d.ts +1 -0
- package/dist/registry/tool/execute.d.ts.map +1 -1
- package/dist/registry/tool/execute.js +46 -13
- package/dist/registry/tool/execute.js.map +1 -1
- package/dist/registry/tool/presentation.d.ts +32 -0
- package/dist/registry/tool/presentation.d.ts.map +1 -0
- package/dist/registry/tool/presentation.js +92 -0
- package/dist/registry/tool/presentation.js.map +1 -0
- package/dist/registry/tool/screen.d.ts +33 -0
- package/dist/registry/tool/screen.d.ts.map +1 -0
- package/dist/registry/tool/screen.js +103 -0
- package/dist/registry/tool/screen.js.map +1 -0
- package/dist/run/drain.d.ts +13 -3
- package/dist/run/drain.d.ts.map +1 -1
- package/dist/run/drain.js +10 -0
- package/dist/run/drain.js.map +1 -1
- package/dist/run/reporter.d.ts.map +1 -1
- package/dist/run/reporter.js +203 -149
- package/dist/run/reporter.js.map +1 -1
- package/dist/run-query/index.d.ts +74 -0
- package/dist/run-query/index.d.ts.map +1 -0
- package/dist/run-query/index.js +73 -0
- package/dist/run-query/index.js.map +1 -0
- package/dist/runtime/bidi/session.d.ts.map +1 -1
- package/dist/runtime/bidi/session.js +7 -2
- package/dist/runtime/bidi/session.js.map +1 -1
- package/dist/runtime/decision/fallback.d.ts.map +1 -1
- package/dist/runtime/decision/fallback.js +6 -3
- package/dist/runtime/decision/fallback.js.map +1 -1
- package/dist/runtime/decision/parser.d.ts.map +1 -1
- package/dist/runtime/decision/parser.js +10 -9
- package/dist/runtime/decision/parser.js.map +1 -1
- package/dist/runtime/jobs/registry.d.ts +147 -0
- package/dist/runtime/jobs/registry.d.ts.map +1 -0
- package/dist/runtime/jobs/registry.js +242 -0
- package/dist/runtime/jobs/registry.js.map +1 -0
- package/dist/runtime/query/approval-policy.d.ts +22 -0
- package/dist/runtime/query/approval-policy.d.ts.map +1 -0
- package/dist/runtime/query/approval-policy.js +61 -0
- package/dist/runtime/query/approval-policy.js.map +1 -0
- package/dist/runtime/query/checkpoint.d.ts +3 -3
- package/dist/runtime/query/checkpoint.d.ts.map +1 -1
- package/dist/runtime/query/checkpoint.js +2 -2
- package/dist/runtime/query/checkpoint.js.map +1 -1
- package/dist/runtime/query/context.d.ts +85 -15
- package/dist/runtime/query/context.d.ts.map +1 -1
- package/dist/runtime/query/context.js +57 -14
- package/dist/runtime/query/context.js.map +1 -1
- package/dist/runtime/query/events.d.ts +5 -4
- package/dist/runtime/query/events.d.ts.map +1 -1
- package/dist/runtime/query/events.js +9 -6
- package/dist/runtime/query/events.js.map +1 -1
- package/dist/runtime/query/executor.d.ts +113 -4
- package/dist/runtime/query/executor.d.ts.map +1 -1
- package/dist/runtime/query/executor.js +228 -62
- package/dist/runtime/query/executor.js.map +1 -1
- package/dist/runtime/query/guardrail-presets.d.ts +30 -1
- package/dist/runtime/query/guardrail-presets.d.ts.map +1 -1
- package/dist/runtime/query/guardrail-presets.js +59 -14
- package/dist/runtime/query/guardrail-presets.js.map +1 -1
- package/dist/runtime/query/guardrails.d.ts.map +1 -1
- package/dist/runtime/query/guardrails.js +16 -12
- package/dist/runtime/query/guardrails.js.map +1 -1
- package/dist/runtime/query/index.d.ts +140 -16
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +379 -76
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts +32 -0
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js +256 -88
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/phases/advisory.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/advisory.js +17 -16
- package/dist/runtime/query/iteration/phases/advisory.js.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.d.ts +1 -8
- package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js +202 -178
- package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
- package/dist/runtime/query/iteration/phases/context.d.ts +52 -6
- package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/context.js +26 -17
- package/dist/runtime/query/iteration/phases/context.js.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.d.ts +2 -2
- package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.js +27 -7
- package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
- package/dist/runtime/query/iteration/phases/working-memory.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/working-memory.js +3 -2
- package/dist/runtime/query/iteration/phases/working-memory.js.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.js +14 -14
- package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
- package/dist/runtime/query/{context-cache.d.ts → prompt-cache.d.ts} +6 -4
- package/dist/runtime/query/prompt-cache.d.ts.map +1 -0
- package/dist/runtime/query/{context-cache.js → prompt-cache.js} +20 -2
- package/dist/runtime/query/prompt-cache.js.map +1 -0
- package/dist/runtime/query/prompt.d.ts +50 -0
- package/dist/runtime/query/prompt.d.ts.map +1 -1
- package/dist/runtime/query/prompt.js +83 -4
- package/dist/runtime/query/prompt.js.map +1 -1
- package/dist/runtime/query/repeat-call.d.ts +42 -0
- package/dist/runtime/query/repeat-call.d.ts.map +1 -0
- package/dist/runtime/query/repeat-call.js +107 -0
- package/dist/runtime/query/repeat-call.js.map +1 -0
- package/dist/runtime/query/replay/mutate.js +8 -1
- package/dist/runtime/query/replay/mutate.js.map +1 -1
- package/dist/runtime/query/result.d.ts +7 -0
- package/dist/runtime/query/result.d.ts.map +1 -1
- package/dist/runtime/query/result.js +38 -10
- package/dist/runtime/query/result.js.map +1 -1
- package/dist/runtime/query/resume-pending.d.ts.map +1 -1
- package/dist/runtime/query/resume-pending.js +19 -17
- package/dist/runtime/query/resume-pending.js.map +1 -1
- package/dist/runtime/query/resume-run.d.ts +2 -2
- package/dist/runtime/query/resume-run.d.ts.map +1 -1
- package/dist/runtime/query/run-state.d.ts +3 -3
- package/dist/runtime/query/run-state.d.ts.map +1 -1
- package/dist/runtime/query/run-state.js +2 -2
- package/dist/runtime/query/run-state.js.map +1 -1
- package/dist/runtime/query/tool-grants.d.ts +7 -0
- package/dist/runtime/query/tool-grants.d.ts.map +1 -1
- package/dist/runtime/query/tool-grants.js +1 -1
- package/dist/runtime/query/tool-grants.js.map +1 -1
- package/dist/runtime/query/tool-output-budget.js +34 -3
- package/dist/runtime/query/tool-output-budget.js.map +1 -1
- package/dist/runtime/query/tool-pause.d.ts.map +1 -1
- package/dist/runtime/query/tool-pause.js +2 -1
- package/dist/runtime/query/tool-pause.js.map +1 -1
- package/dist/runtime/query/tooling.d.ts +10 -2
- package/dist/runtime/query/tooling.d.ts.map +1 -1
- package/dist/runtime/query/tooling.js +3 -0
- package/dist/runtime/query/tooling.js.map +1 -1
- package/dist/sandbox/provider/local.d.ts +10 -0
- package/dist/sandbox/provider/local.d.ts.map +1 -1
- package/dist/sandbox/provider/local.js +77 -23
- package/dist/sandbox/provider/local.js.map +1 -1
- package/dist/sandbox/terminal.d.ts +130 -0
- package/dist/sandbox/terminal.d.ts.map +1 -0
- package/dist/sandbox/terminal.js +119 -0
- package/dist/sandbox/terminal.js.map +1 -0
- package/dist/{gateway → scheduler}/completion-inbox.d.ts +12 -5
- package/dist/scheduler/completion-inbox.d.ts.map +1 -0
- package/dist/{gateway → scheduler}/completion-inbox.js +19 -7
- package/dist/scheduler/completion-inbox.js.map +1 -0
- package/dist/scheduler/delegating.d.ts +90 -0
- package/dist/scheduler/delegating.d.ts.map +1 -0
- package/dist/scheduler/delegating.js +230 -0
- package/dist/scheduler/delegating.js.map +1 -0
- package/dist/{gateway → scheduler}/local.d.ts +10 -2
- package/dist/scheduler/local.d.ts.map +1 -0
- package/dist/{gateway → scheduler}/local.js +20 -11
- package/dist/scheduler/local.js.map +1 -0
- package/dist/session/actor-scope.d.ts +52 -0
- package/dist/session/actor-scope.d.ts.map +1 -0
- package/dist/session/actor-scope.js +112 -0
- package/dist/session/actor-scope.js.map +1 -0
- package/dist/session/errors.d.ts +31 -8
- package/dist/session/errors.d.ts.map +1 -1
- package/dist/session/errors.js +21 -1
- package/dist/session/errors.js.map +1 -1
- package/dist/session/handoff/assignment.d.ts +5 -5
- package/dist/session/handoff/assignment.d.ts.map +1 -1
- package/dist/session/handoff/broadcast.d.ts +2 -2
- package/dist/session/handoff/broadcast.d.ts.map +1 -1
- package/dist/session/handoff/broadcast.js +7 -7
- package/dist/session/handoff/broadcast.js.map +1 -1
- package/dist/session/handoff/single.d.ts +4 -4
- package/dist/session/handoff/single.d.ts.map +1 -1
- package/dist/session/handoff/single.js +4 -4
- package/dist/session/handoff/single.js.map +1 -1
- package/dist/session/migration/filesystem.d.ts +28 -0
- package/dist/session/migration/filesystem.d.ts.map +1 -1
- package/dist/session/migration/filesystem.js +44 -2
- package/dist/session/migration/filesystem.js.map +1 -1
- package/dist/session/migration/id-prefix.d.ts +50 -19
- package/dist/session/migration/id-prefix.d.ts.map +1 -1
- package/dist/session/migration/id-prefix.js +54 -22
- package/dist/session/migration/id-prefix.js.map +1 -1
- package/dist/session/migration/index.d.ts +6 -2
- package/dist/session/migration/index.d.ts.map +1 -1
- package/dist/session/migration/index.js +6 -2
- package/dist/session/migration/index.js.map +1 -1
- package/dist/session/migration/marker.d.ts.map +1 -1
- package/dist/session/migration/marker.js +21 -4
- package/dist/session/migration/marker.js.map +1 -1
- package/dist/session/retention/archive.d.ts.map +1 -1
- package/dist/session/retention/archive.js +25 -11
- package/dist/session/retention/archive.js.map +1 -1
- package/dist/session/workspace/git-worktree.d.ts.map +1 -1
- package/dist/session/workspace/git-worktree.js +17 -8
- package/dist/session/workspace/git-worktree.js.map +1 -1
- package/dist/skills/loader.d.ts +4 -2
- package/dist/skills/loader.d.ts.map +1 -1
- package/dist/skills/loader.js +36 -9
- package/dist/skills/loader.js.map +1 -1
- package/dist/skills/registry.d.ts +59 -1
- package/dist/skills/registry.d.ts.map +1 -1
- package/dist/skills/registry.js +154 -20
- package/dist/skills/registry.js.map +1 -1
- package/dist/store/attachment/index.d.ts +111 -0
- package/dist/store/attachment/index.d.ts.map +1 -0
- package/dist/store/attachment/index.js +94 -0
- package/dist/store/attachment/index.js.map +1 -0
- package/dist/store/config/index.d.ts +43 -0
- package/dist/store/config/index.d.ts.map +1 -0
- package/dist/store/config/index.js +51 -0
- package/dist/store/config/index.js.map +1 -0
- package/dist/store/feedback/conformance.d.ts +44 -0
- package/dist/store/feedback/conformance.d.ts.map +1 -0
- package/dist/store/feedback/conformance.js +127 -0
- package/dist/store/feedback/conformance.js.map +1 -0
- package/dist/store/feedback/disk.d.ts +46 -0
- package/dist/store/feedback/disk.d.ts.map +1 -0
- package/dist/store/feedback/disk.js +141 -0
- package/dist/store/feedback/disk.js.map +1 -0
- package/dist/store/feedback/index.d.ts +9 -0
- package/dist/store/feedback/index.d.ts.map +1 -0
- package/dist/store/feedback/index.js +5 -0
- package/dist/store/feedback/index.js.map +1 -0
- package/dist/store/feedback/memory.d.ts +33 -0
- package/dist/store/feedback/memory.d.ts.map +1 -0
- package/dist/store/feedback/memory.js +0 -0
- package/dist/store/feedback/memory.js.map +1 -0
- package/dist/store/feedback/types.d.ts +95 -0
- package/dist/store/feedback/types.d.ts.map +1 -0
- package/dist/store/feedback/types.js +27 -0
- package/dist/store/feedback/types.js.map +1 -0
- package/dist/store/index.d.ts +1 -0
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +4 -0
- package/dist/store/index.js.map +1 -1
- package/dist/store/kv/record-store.d.ts +54 -0
- package/dist/store/kv/record-store.d.ts.map +1 -0
- package/dist/store/kv/record-store.js +94 -0
- package/dist/store/kv/record-store.js.map +1 -0
- package/dist/store/memory/disk.d.ts +2 -0
- package/dist/store/memory/disk.d.ts.map +1 -1
- package/dist/store/memory/disk.js +36 -30
- package/dist/store/memory/disk.js.map +1 -1
- package/dist/store/run/checkpoint-disk.d.ts +4 -4
- package/dist/store/run/checkpoint-disk.d.ts.map +1 -1
- package/dist/store/run/checkpoint-disk.js +22 -1
- package/dist/store/run/checkpoint-disk.js.map +1 -1
- package/dist/store/run/checkpoint-memory.d.ts +4 -4
- package/dist/store/run/checkpoint-memory.d.ts.map +1 -1
- package/dist/store/run/checkpoint-memory.js.map +1 -1
- package/dist/store/run/claim-disk.d.ts +5 -5
- package/dist/store/run/claim-disk.d.ts.map +1 -1
- package/dist/store/run/claim-disk.js +20 -0
- package/dist/store/run/claim-disk.js.map +1 -1
- package/dist/store/run/conformance.d.ts.map +1 -1
- package/dist/store/run/conformance.js +10 -9
- package/dist/store/run/conformance.js.map +1 -1
- package/dist/store/run/disk.d.ts +3 -1
- package/dist/store/run/disk.d.ts.map +1 -1
- package/dist/store/run/disk.js +73 -4
- package/dist/store/run/disk.js.map +1 -1
- package/dist/store/run/listing.d.ts +4 -4
- package/dist/store/run/listing.d.ts.map +1 -1
- package/dist/store/run/listing.js.map +1 -1
- package/dist/store/run/memory.d.ts +5 -0
- package/dist/store/run/memory.d.ts.map +1 -1
- package/dist/store/run/memory.js +20 -1
- package/dist/store/run/memory.js.map +1 -1
- package/dist/store/session/canonical-path.d.ts +32 -0
- package/dist/store/session/canonical-path.d.ts.map +1 -0
- package/dist/store/session/canonical-path.js +46 -0
- package/dist/store/session/canonical-path.js.map +1 -0
- package/dist/store/session/disk.d.ts +46 -2
- package/dist/store/session/disk.d.ts.map +1 -1
- package/dist/store/session/disk.js +191 -205
- package/dist/store/session/disk.js.map +1 -1
- package/dist/store/session/memory.d.ts +10 -2
- package/dist/store/session/memory.d.ts.map +1 -1
- package/dist/store/session/memory.js +36 -4
- package/dist/store/session/memory.js.map +1 -1
- package/dist/store/task/disk.d.ts.map +1 -1
- package/dist/store/task/disk.js +76 -68
- package/dist/store/task/disk.js.map +1 -1
- package/dist/store/topic/index.d.ts +6 -0
- package/dist/store/topic/index.d.ts.map +1 -0
- package/dist/store/topic/index.js +20 -0
- package/dist/store/topic/index.js.map +1 -0
- package/dist/store/topic/memory.d.ts +30 -0
- package/dist/store/topic/memory.d.ts.map +1 -0
- package/dist/store/topic/memory.js +97 -0
- package/dist/store/topic/memory.js.map +1 -0
- package/dist/store/topic/objective.d.ts +104 -0
- package/dist/store/topic/objective.d.ts.map +1 -0
- package/dist/store/topic/objective.js +195 -0
- package/dist/store/topic/objective.js.map +1 -0
- package/dist/store/topic/state.d.ts +60 -0
- package/dist/store/topic/state.d.ts.map +1 -0
- package/dist/store/topic/state.js +128 -0
- package/dist/store/topic/state.js.map +1 -0
- package/dist/streaming/coalesce.d.ts +19 -6
- package/dist/streaming/coalesce.d.ts.map +1 -1
- package/dist/streaming/coalesce.js +13 -4
- package/dist/streaming/coalesce.js.map +1 -1
- package/dist/telemetry/runtime-accessors.d.ts +27 -1
- package/dist/telemetry/runtime-accessors.d.ts.map +1 -1
- package/dist/telemetry/runtime-accessors.js +45 -1
- package/dist/telemetry/runtime-accessors.js.map +1 -1
- package/dist/test-support/ids.d.ts +68 -0
- package/dist/test-support/ids.d.ts.map +1 -0
- package/dist/test-support/ids.js +70 -0
- package/dist/test-support/ids.js.map +1 -0
- package/dist/testing.d.ts +24 -0
- package/dist/testing.d.ts.map +1 -0
- package/dist/testing.js +22 -0
- package/dist/testing.js.map +1 -0
- package/dist/tools/builtins/bash.d.ts +1 -0
- package/dist/tools/builtins/bash.d.ts.map +1 -1
- package/dist/tools/builtins/bash.js +77 -3
- package/dist/tools/builtins/bash.js.map +1 -1
- package/dist/tools/builtins/computer-use.d.ts +8 -8
- package/dist/tools/builtins/edit.d.ts +1 -1
- package/dist/tools/builtins/edit.d.ts.map +1 -1
- package/dist/tools/builtins/edit.js +34 -0
- package/dist/tools/builtins/edit.js.map +1 -1
- package/dist/tools/builtins/index.d.ts +6 -0
- package/dist/tools/builtins/index.d.ts.map +1 -1
- package/dist/tools/builtins/index.js +24 -1
- package/dist/tools/builtins/index.js.map +1 -1
- package/dist/tools/builtins/job.d.ts +6 -0
- package/dist/tools/builtins/job.d.ts.map +1 -0
- package/dist/tools/builtins/job.js +114 -0
- package/dist/tools/builtins/job.js.map +1 -0
- package/dist/tools/builtins/lsp.d.ts +21 -0
- package/dist/tools/builtins/lsp.d.ts.map +1 -0
- package/dist/tools/builtins/lsp.js +186 -0
- package/dist/tools/builtins/lsp.js.map +1 -0
- package/dist/tools/builtins/run-code.d.ts +13 -0
- package/dist/tools/builtins/run-code.d.ts.map +1 -0
- package/dist/tools/builtins/run-code.js +126 -0
- package/dist/tools/builtins/run-code.js.map +1 -0
- package/dist/tools/builtins/skill.d.ts +14 -0
- package/dist/tools/builtins/skill.d.ts.map +1 -0
- package/dist/tools/builtins/skill.js +120 -0
- package/dist/tools/builtins/skill.js.map +1 -0
- package/dist/tools/builtins/web-guidance.d.ts +31 -0
- package/dist/tools/builtins/web-guidance.d.ts.map +1 -0
- package/dist/tools/builtins/web-guidance.js +42 -0
- package/dist/tools/builtins/web-guidance.js.map +1 -0
- package/dist/tools/builtins/web.d.ts +10 -0
- package/dist/tools/builtins/web.d.ts.map +1 -0
- package/dist/tools/builtins/web.js +137 -0
- package/dist/tools/builtins/web.js.map +1 -0
- package/dist/tools/builtins/write-file.d.ts.map +1 -1
- package/dist/tools/builtins/write-file.js +35 -0
- package/dist/tools/builtins/write-file.js.map +1 -1
- package/dist/tools/coordinator/agent.d.ts +2 -2
- package/dist/tools/coordinator/agent.d.ts.map +1 -1
- package/dist/tools/coordinator/index.d.ts +13 -4
- package/dist/tools/coordinator/index.d.ts.map +1 -1
- package/dist/tools/coordinator/index.js +125 -38
- package/dist/tools/coordinator/index.js.map +1 -1
- package/dist/tools/coordinator/outcome.d.ts +2 -2
- package/dist/tools/coordinator/outcome.d.ts.map +1 -1
- package/dist/tools/coordinator/outcome.js +1 -1
- package/dist/tools/coordinator/wait-with-idle-bound.d.ts +3 -3
- package/dist/tools/coordinator/wait-with-idle-bound.d.ts.map +1 -1
- package/dist/tools/coordinator/wait-with-idle-bound.js.map +1 -1
- package/dist/tools/defineTool.d.ts +12 -0
- package/dist/tools/defineTool.d.ts.map +1 -1
- package/dist/tools/defineTool.js +2 -0
- package/dist/tools/defineTool.js.map +1 -1
- package/dist/tools/env-scrub.d.ts +66 -0
- package/dist/tools/env-scrub.d.ts.map +1 -0
- package/dist/tools/env-scrub.js +68 -0
- package/dist/tools/env-scrub.js.map +1 -0
- package/dist/tools/memory/read.d.ts.map +1 -1
- package/dist/tools/memory/read.js +5 -1
- package/dist/tools/memory/read.js.map +1 -1
- package/dist/tools/task/create.d.ts.map +1 -1
- package/dist/tools/task/create.js +2 -1
- package/dist/tools/task/create.js.map +1 -1
- package/dist/tools/task/update.d.ts.map +1 -1
- package/dist/tools/task/update.js +7 -3
- package/dist/tools/task/update.js.map +1 -1
- package/dist/types/acp/index.d.ts +161 -0
- package/dist/types/acp/index.d.ts.map +1 -0
- package/dist/types/acp/index.js +2 -0
- package/dist/types/acp/index.js.map +1 -0
- package/dist/types/agent/base.d.ts +62 -5
- package/dist/types/agent/base.d.ts.map +1 -1
- package/dist/types/agent/delegate.d.ts +102 -0
- package/dist/types/agent/delegate.d.ts.map +1 -0
- package/dist/types/agent/delegate.js +2 -0
- package/dist/types/agent/delegate.js.map +1 -0
- package/dist/types/agent/index.d.ts +1 -1
- package/dist/types/agent/index.d.ts.map +1 -1
- package/dist/types/agent/index.js +1 -1
- package/dist/types/agent/index.js.map +1 -1
- package/dist/types/agent/manager.d.ts +7 -1
- package/dist/types/agent/manager.d.ts.map +1 -1
- package/dist/types/agent/reactive.d.ts +24 -3
- package/dist/types/agent/reactive.d.ts.map +1 -1
- package/dist/types/agent/{gateway.d.ts → scheduler.d.ts} +41 -5
- package/dist/types/agent/scheduler.d.ts.map +1 -0
- package/dist/types/agent/scheduler.js +2 -0
- package/dist/types/agent/scheduler.js.map +1 -0
- package/dist/types/agent/supervisor.d.ts +23 -5
- package/dist/types/agent/supervisor.d.ts.map +1 -1
- package/dist/types/agent/task.d.ts +31 -9
- package/dist/types/agent/task.d.ts.map +1 -1
- package/dist/types/agent/working-memory.d.ts +1 -1
- package/dist/types/authorization/index.d.ts +634 -0
- package/dist/types/authorization/index.d.ts.map +1 -0
- package/dist/types/authorization/index.js +103 -0
- package/dist/types/authorization/index.js.map +1 -0
- package/dist/types/bus/index.d.ts +24 -1
- package/dist/types/bus/index.d.ts.map +1 -1
- package/dist/types/code-navigation/index.d.ts +112 -0
- package/dist/types/code-navigation/index.d.ts.map +1 -0
- package/dist/types/code-navigation/index.js +17 -0
- package/dist/types/code-navigation/index.js.map +1 -0
- package/dist/types/command/index.d.ts +74 -0
- package/dist/types/command/index.d.ts.map +1 -0
- package/dist/types/command/index.js +18 -0
- package/dist/types/command/index.js.map +1 -0
- package/dist/types/common/index.d.ts +19 -2
- package/dist/types/common/index.d.ts.map +1 -1
- package/dist/types/common/index.js.map +1 -1
- package/dist/types/connector/mcp.d.ts +8 -0
- package/dist/types/connector/mcp.d.ts.map +1 -1
- package/dist/types/guardrail/index.d.ts +74 -1
- package/dist/types/guardrail/index.d.ts.map +1 -1
- package/dist/types/hitl/policy.d.ts +79 -0
- package/dist/types/hitl/policy.d.ts.map +1 -0
- package/dist/types/hitl/policy.js +2 -0
- package/dist/types/hitl/policy.js.map +1 -0
- package/dist/types/ids/brand.d.ts +55 -0
- package/dist/types/ids/brand.d.ts.map +1 -0
- package/dist/types/ids/brand.js +45 -0
- package/dist/types/ids/brand.js.map +1 -0
- package/dist/types/ids/index.d.ts +98 -39
- package/dist/types/ids/index.d.ts.map +1 -1
- package/dist/types/ids/index.js +5 -1
- package/dist/types/ids/index.js.map +1 -1
- package/dist/types/message/index.d.ts +24 -1
- package/dist/types/message/index.d.ts.map +1 -1
- package/dist/types/message/index.js.map +1 -1
- package/dist/types/plugin/index.d.ts +2 -2
- package/dist/types/project/entity.d.ts +22 -2
- package/dist/types/project/entity.d.ts.map +1 -1
- package/dist/types/provider/interface.d.ts +43 -2
- package/dist/types/provider/interface.d.ts.map +1 -1
- package/dist/types/provider/model.d.ts +16 -2
- package/dist/types/provider/model.d.ts.map +1 -1
- package/dist/types/run/audit.d.ts +150 -0
- package/dist/types/run/audit.d.ts.map +1 -0
- package/dist/types/run/audit.js +39 -0
- package/dist/types/run/audit.js.map +1 -0
- package/dist/types/run/cancel-cause.d.ts +49 -0
- package/dist/types/run/cancel-cause.d.ts.map +1 -0
- package/dist/types/run/cancel-cause.js +39 -0
- package/dist/types/run/cancel-cause.js.map +1 -0
- package/dist/types/run/checkpoint-store.d.ts +29 -11
- package/dist/types/run/checkpoint-store.d.ts.map +1 -1
- package/dist/types/run/config.d.ts +24 -4
- package/dist/types/run/config.d.ts.map +1 -1
- package/dist/types/run/derive-status.d.ts +3 -3
- package/dist/types/run/derive-status.d.ts.map +1 -1
- package/dist/types/run/derive-status.js +1 -1
- package/dist/types/run/entity.d.ts +2 -3
- package/dist/types/run/entity.d.ts.map +1 -1
- package/dist/types/run/event-cursor.d.ts +3 -3
- package/dist/types/run/event-cursor.d.ts.map +1 -1
- package/dist/types/run/events.d.ts +159 -4
- package/dist/types/run/events.d.ts.map +1 -1
- package/dist/types/run/events.js.map +1 -1
- package/dist/types/run/index.d.ts +2 -0
- package/dist/types/run/index.d.ts.map +1 -1
- package/dist/types/run/index.js +2 -0
- package/dist/types/run/index.js.map +1 -1
- package/dist/types/run/metadata.d.ts +2 -2
- package/dist/types/run/metadata.d.ts.map +1 -1
- package/dist/types/run/prepare-step.d.ts +29 -0
- package/dist/types/run/prepare-step.d.ts.map +1 -1
- package/dist/types/run/state.d.ts +33 -10
- package/dist/types/run/state.d.ts.map +1 -1
- package/dist/types/run/state.js +60 -3
- package/dist/types/run/state.js.map +1 -1
- package/dist/types/run/stop-reason.d.ts +9 -0
- package/dist/types/run/stop-reason.d.ts.map +1 -1
- package/dist/types/run/store.d.ts +38 -0
- package/dist/types/run/store.d.ts.map +1 -1
- package/dist/types/sandbox/index.d.ts +38 -0
- package/dist/types/sandbox/index.d.ts.map +1 -1
- package/dist/types/sandbox/index.js +21 -0
- package/dist/types/sandbox/index.js.map +1 -1
- package/dist/types/session/actor.d.ts +2 -2
- package/dist/types/session/actor.d.ts.map +1 -1
- package/dist/types/session/entity.d.ts +9 -7
- package/dist/types/session/entity.d.ts.map +1 -1
- package/dist/types/session/ids.d.ts +3 -1
- package/dist/types/session/ids.d.ts.map +1 -1
- package/dist/types/session/index.d.ts +4 -2
- package/dist/types/session/index.d.ts.map +1 -1
- package/dist/types/session/store.d.ts +51 -22
- package/dist/types/session/store.d.ts.map +1 -1
- package/dist/types/session/sub-session.d.ts +55 -5
- package/dist/types/session/sub-session.d.ts.map +1 -1
- package/dist/types/skills/index.d.ts +41 -0
- package/dist/types/skills/index.d.ts.map +1 -1
- package/dist/types/skills/index.js +17 -1
- package/dist/types/skills/index.js.map +1 -1
- package/dist/types/tool/index.d.ts +186 -1
- 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 +53 -0
- package/dist/types/tool/presentation.d.ts.map +1 -0
- package/dist/types/tool/presentation.js +2 -0
- package/dist/types/tool/presentation.js.map +1 -0
- package/dist/types/{thread → topic}/entity.d.ts +34 -26
- package/dist/types/topic/entity.d.ts.map +1 -0
- package/dist/types/{thread → topic}/entity.js.map +1 -1
- package/dist/types/topic/index.d.ts +5 -0
- package/dist/types/topic/index.d.ts.map +1 -0
- package/dist/types/topic/index.js +11 -0
- package/dist/types/topic/index.js.map +1 -0
- package/dist/types/topic/objective.d.ts +86 -0
- package/dist/types/topic/objective.d.ts.map +1 -0
- package/dist/types/topic/objective.js +10 -0
- package/dist/types/topic/objective.js.map +1 -0
- package/dist/types/topic/state.d.ts +56 -0
- package/dist/types/topic/state.d.ts.map +1 -0
- package/dist/types/topic/state.js +10 -0
- package/dist/types/topic/state.js.map +1 -0
- package/dist/types/topic/store.d.ts +95 -0
- package/dist/types/topic/store.d.ts.map +1 -0
- package/dist/types/topic/store.js +29 -0
- package/dist/types/topic/store.js.map +1 -0
- package/dist/types/workspace/ref.d.ts +7 -0
- package/dist/types/workspace/ref.d.ts.map +1 -1
- package/dist/utils/abort.d.ts.map +1 -1
- package/dist/utils/abort.js +13 -1
- package/dist/utils/abort.js.map +1 -1
- package/dist/utils/hash.d.ts +10 -0
- package/dist/utils/hash.d.ts.map +1 -1
- package/dist/utils/hash.js +15 -0
- package/dist/utils/hash.js.map +1 -1
- package/dist/utils/id.d.ts +90 -2
- package/dist/utils/id.d.ts.map +1 -1
- package/dist/utils/id.js +113 -5
- package/dist/utils/id.js.map +1 -1
- package/dist/utils/log/attributes.d.ts +17 -0
- package/dist/utils/log/attributes.d.ts.map +1 -0
- package/dist/utils/log/attributes.js +2 -0
- package/dist/utils/log/attributes.js.map +1 -0
- package/dist/utils/log/caps.d.ts +27 -0
- package/dist/utils/log/caps.d.ts.map +1 -0
- package/dist/utils/log/caps.js +107 -0
- package/dist/utils/log/caps.js.map +1 -0
- package/dist/utils/log/create-logger.d.ts +28 -0
- package/dist/utils/log/create-logger.d.ts.map +1 -0
- package/dist/utils/log/create-logger.js +168 -0
- package/dist/utils/log/create-logger.js.map +1 -0
- package/dist/utils/log/exception.d.ts +11 -0
- package/dist/utils/log/exception.d.ts.map +1 -0
- package/dist/utils/log/exception.js +108 -0
- package/dist/utils/log/exception.js.map +1 -0
- package/dist/utils/log/index.d.ts +7 -0
- package/dist/utils/log/index.d.ts.map +1 -0
- package/dist/utils/log/index.js +15 -0
- package/dist/utils/log/index.js.map +1 -0
- package/dist/utils/log/process-sink.d.ts +28 -0
- package/dist/utils/log/process-sink.d.ts.map +1 -0
- package/dist/utils/log/process-sink.js +56 -0
- package/dist/utils/log/process-sink.js.map +1 -0
- package/dist/utils/log/redact.d.ts +3 -0
- package/dist/utils/log/redact.d.ts.map +1 -0
- package/dist/utils/log/redact.js +71 -0
- package/dist/utils/log/redact.js.map +1 -0
- package/dist/utils/log/sinks.d.ts +43 -0
- package/dist/utils/log/sinks.d.ts.map +1 -0
- package/dist/utils/log/sinks.js +184 -0
- package/dist/utils/log/sinks.js.map +1 -0
- package/dist/utils/log/templates.d.ts +63 -0
- package/dist/utils/log/templates.d.ts.map +1 -0
- package/dist/utils/log/templates.js +119 -0
- package/dist/utils/log/templates.js.map +1 -0
- package/dist/utils/log/types.d.ts +183 -0
- package/dist/utils/log/types.d.ts.map +1 -0
- package/dist/utils/log/types.js +55 -0
- package/dist/utils/log/types.js.map +1 -0
- package/dist/utils/logger.d.ts +44 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +102 -2
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/renamed-field.d.ts +19 -0
- package/dist/utils/renamed-field.d.ts.map +1 -0
- package/dist/utils/renamed-field.js +29 -0
- package/dist/utils/renamed-field.js.map +1 -0
- package/dist/vault/CredentialProvider.d.ts +89 -0
- package/dist/vault/CredentialProvider.d.ts.map +1 -0
- package/dist/vault/CredentialProvider.js +64 -0
- package/dist/vault/CredentialProvider.js.map +1 -0
- package/dist/vault/InMemoryCredentialVault.d.ts +2 -1
- package/dist/vault/InMemoryCredentialVault.d.ts.map +1 -1
- package/dist/vault/InMemoryCredentialVault.js +15 -5
- package/dist/vault/InMemoryCredentialVault.js.map +1 -1
- package/dist/vault/index.d.ts +3 -0
- package/dist/vault/index.d.ts.map +1 -1
- package/dist/vault/index.js +5 -0
- package/dist/vault/index.js.map +1 -1
- package/dist/vault/instrumentation.d.ts +18 -2
- package/dist/vault/instrumentation.d.ts.map +1 -1
- package/dist/vault/instrumentation.js +47 -0
- package/dist/vault/instrumentation.js.map +1 -1
- package/package.json +4 -4
- package/src/advisory/executor.ts +14 -12
- package/src/advisory/registry.ts +2 -2
- package/src/agents/AGENTS.md +91 -0
- package/src/agents/AbstractAgent.ts +67 -14
- package/src/agents/PipelineAgent.ts +46 -12
- package/src/agents/ReactiveAgent.ts +27 -13
- package/src/agents/RouterAgent.ts +33 -21
- package/src/agents/SupervisorAgent.ts +51 -26
- package/src/agents/handle.ts +149 -0
- package/src/agents/runAgent.ts +14 -7
- package/src/{verification → authorization}/gate.ts +39 -32
- package/src/authorization/index.ts +26 -0
- package/src/authorization/permission-presets.ts +215 -0
- package/src/{verification → authorization}/presets.ts +15 -3
- package/src/{verification → authorization}/rules.ts +16 -3
- package/src/bridge/a2a/client.ts +369 -0
- package/src/bridge/a2a/mapper.ts +17 -0
- package/src/bridge/acp/filesystem.ts +63 -0
- package/src/bridge/acp/index.ts +11 -0
- package/src/bridge/acp/permission.ts +71 -0
- package/src/bridge/acp/server.ts +500 -0
- package/src/bridge/acp/update.ts +109 -0
- package/src/bridge/mcp/connector/adapter.ts +8 -4
- package/src/bridge/sse/mapper.ts +30 -0
- package/src/bus/breaker.ts +15 -10
- package/src/bus/index.ts +10 -8
- package/src/bus/lock.ts +36 -19
- package/src/bus/ownership.ts +17 -9
- package/src/compaction/context-window.ts +23 -1
- package/src/compaction/index.ts +6 -0
- package/src/compaction/manual.ts +177 -0
- package/src/compaction/plan.ts +226 -0
- package/src/compaction/summary.ts +31 -0
- package/src/compaction/verifier.ts +2 -2
- package/src/config/registry.ts +208 -0
- package/src/config/runtime.ts +27 -0
- package/src/connector/BaseConnector.ts +8 -3
- package/src/connector/builtins/http.ts +12 -2
- package/src/connector/builtins/webhook.ts +6 -2
- package/src/connector/index.ts +45 -29
- package/src/connector/mcp/adapter.ts +51 -1
- package/src/connector/mcp/client.ts +32 -20
- package/src/connector/mcp/discovery.ts +31 -20
- package/src/connector/mcp/http-sse.ts +12 -6
- package/src/connector/mcp/index.ts +8 -7
- package/src/connector/mcp/reconnect.ts +194 -0
- package/src/connector/mcp/server/index.ts +32 -0
- package/src/connector/mcp/{server-stdio.ts → server/server-stdio.ts} +5 -4
- package/src/connector/mcp/{server.ts → server/server.ts} +17 -11
- package/src/connector/mcp/stdio.ts +18 -9
- package/src/connector/mcp/streamable-http.ts +8 -4
- package/src/{bridge/tools/connector → connector/tools}/adapter.ts +5 -5
- package/src/{bridge/tools/connector → connector/tools}/definitions.ts +4 -4
- package/src/{bridge/tools/connector → connector/tools}/router.ts +17 -9
- package/src/connector/web/guarded-fetch.ts +288 -0
- package/src/connector/web/index.ts +17 -0
- package/src/connector/web/types.ts +99 -0
- package/src/constants/acp/index.ts +104 -0
- package/src/constants/credential-env-keys.ts +63 -0
- package/src/constants/index.ts +3 -1
- package/src/constants/secret-patterns.ts +102 -0
- package/src/constants/telemetry/index.ts +98 -0
- package/src/contracts/api.ts +11 -0
- package/src/deprecated-aliases.ts +86 -0
- package/src/eval/judge.ts +2 -2
- package/src/execution/base.ts +18 -7
- package/src/execution/code-runtime/types.ts +116 -0
- package/src/execution/code-runtime/worker.ts +266 -0
- package/src/{connector/execution → execution}/factory.ts +3 -3
- package/src/{connector/execution → execution}/hybrid.ts +13 -7
- package/src/execution/index.ts +24 -0
- package/src/execution/local.ts +4 -2
- package/src/{connector/execution → execution}/remote.ts +15 -8
- package/src/index.ts +17 -0
- package/src/invariants/index.ts +201 -0
- package/src/manager/agent/lifecycle.ts +172 -58
- package/src/manager/connector/environment.ts +22 -11
- package/src/manager/connector/lifecycle.ts +30 -11
- package/src/manager/connector/tenant.ts +33 -14
- package/src/manager/index.ts +16 -2
- package/src/manager/project/lifecycle.ts +1 -1
- package/src/manager/run/emergency.ts +9 -7
- package/src/manager/run/persistence.ts +110 -8
- package/src/manager/topic/lifecycle.ts +235 -0
- package/src/manager/topic/objective.ts +203 -0
- package/src/persona/assembler.ts +14 -3
- package/src/plugin/lifecycle.ts +156 -20
- package/src/plugin/loader.ts +67 -16
- package/src/probe/index.ts +1 -0
- package/src/probe/registry.ts +41 -5
- package/src/process/kill-tree.ts +52 -0
- package/src/prompt/contributions.ts +173 -0
- package/src/prompt/index.ts +15 -0
- package/src/provider/attribution.ts +57 -0
- package/src/provider/{collect.ts → collect-chat-completion.ts} +4 -2
- package/src/provider/conformance.ts +189 -0
- package/src/provider/errors.ts +27 -12
- package/src/provider/fallback.ts +32 -10
- package/src/provider/idle-timeout.ts +112 -0
- package/src/provider/instrumentation.ts +4 -2
- package/src/provider/retry.ts +63 -21
- package/src/public-runtime.ts +378 -14
- package/src/public-tools.ts +41 -1
- package/src/public-types.ts +101 -4
- package/src/rag/rag-tool.ts +4 -2
- package/src/read-model/index.ts +14 -0
- package/src/read-model/registry.ts +152 -0
- package/src/read-model/run-status.ts +127 -0
- package/src/registry/{Registry.ts → BaseRegistry.ts} +1 -1
- package/src/registry/ManagedRegistry.ts +26 -9
- package/src/registry/command/index-exports.ts +4 -0
- package/src/registry/command/index.ts +105 -0
- package/src/registry/command/kernel-commands.ts +110 -0
- package/src/registry/connector/scoped.ts +6 -5
- package/src/registry/index.ts +7 -1
- package/src/registry/tool/execute.ts +52 -13
- package/src/registry/tool/presentation.ts +116 -0
- package/src/registry/tool/screen.ts +132 -0
- package/src/run/drain.ts +13 -3
- package/src/run/reporter.ts +208 -153
- package/src/run-query/index.ts +108 -0
- package/src/runtime/bidi/session.ts +7 -2
- package/src/runtime/decision/fallback.ts +6 -3
- package/src/runtime/decision/parser.ts +10 -9
- package/src/runtime/jobs/registry.ts +346 -0
- package/src/runtime/query/approval-policy.ts +78 -0
- package/src/runtime/query/checkpoint.ts +6 -6
- package/src/runtime/query/context.ts +120 -30
- package/src/runtime/query/events.ts +19 -11
- package/src/runtime/query/executor.ts +287 -66
- package/src/runtime/query/guardrail-presets.ts +61 -14
- package/src/runtime/query/guardrails.ts +16 -12
- package/src/runtime/query/index.ts +579 -96
- package/src/runtime/query/iteration/index.ts +269 -87
- package/src/runtime/query/iteration/phases/advisory.ts +17 -16
- package/src/runtime/query/iteration/phases/compaction.ts +235 -187
- package/src/runtime/query/iteration/phases/context.ts +82 -21
- package/src/runtime/query/iteration/phases/tool-review.ts +28 -9
- package/src/runtime/query/iteration/phases/working-memory.ts +3 -2
- package/src/runtime/query/iteration/stream-turn.ts +14 -14
- package/src/runtime/query/{context-cache.ts → prompt-cache.ts} +23 -3
- package/src/runtime/query/prompt.ts +104 -4
- package/src/runtime/query/repeat-call.ts +130 -0
- package/src/runtime/query/replay/mutate.ts +6 -0
- package/src/runtime/query/result.ts +47 -10
- package/src/runtime/query/resume-pending.ts +19 -17
- package/src/runtime/query/resume-run.ts +2 -2
- package/src/runtime/query/run-state.ts +5 -5
- package/src/runtime/query/tool-grants.ts +1 -1
- package/src/runtime/query/tool-output-budget.ts +36 -3
- package/src/runtime/query/tool-pause.ts +2 -1
- package/src/runtime/query/tooling.ts +17 -2
- package/src/sandbox/provider/local.ts +94 -21
- package/src/sandbox/terminal.ts +197 -0
- package/src/{gateway → scheduler}/completion-inbox.ts +20 -10
- package/src/scheduler/delegating.ts +297 -0
- package/src/{gateway → scheduler}/local.ts +24 -15
- package/src/session/actor-scope.ts +121 -0
- package/src/session/errors.ts +30 -8
- package/src/session/handoff/assignment.ts +5 -5
- package/src/session/handoff/broadcast.ts +9 -9
- package/src/session/handoff/single.ts +8 -8
- package/src/session/migration/filesystem.ts +46 -2
- package/src/session/migration/id-prefix.ts +60 -22
- package/src/session/migration/index.ts +5 -0
- package/src/session/migration/marker.ts +19 -4
- package/src/session/retention/archive.ts +32 -12
- package/src/session/workspace/git-worktree.ts +17 -8
- package/src/skills/loader.ts +39 -9
- package/src/skills/registry.ts +177 -20
- package/src/store/attachment/index.ts +182 -0
- package/src/store/config/index.ts +74 -0
- package/src/store/feedback/conformance.ts +193 -0
- package/src/store/feedback/disk.ts +184 -0
- package/src/store/feedback/index.ts +13 -0
- package/src/store/feedback/memory.ts +0 -0
- package/src/store/feedback/types.ts +107 -0
- package/src/store/index.ts +5 -0
- package/src/store/kv/record-store.ts +91 -0
- package/src/store/memory/disk.ts +35 -32
- package/src/store/run/checkpoint-disk.ts +27 -6
- package/src/store/run/checkpoint-memory.ts +8 -8
- package/src/store/run/claim-disk.ts +58 -13
- package/src/store/run/conformance.ts +11 -10
- package/src/store/run/disk.ts +77 -5
- package/src/store/run/listing.ts +6 -6
- package/src/store/run/memory.ts +24 -1
- package/src/store/session/canonical-path.ts +45 -0
- package/src/store/session/disk.ts +216 -191
- package/src/store/session/memory.ts +43 -5
- package/src/store/task/disk.ts +77 -67
- package/src/store/topic/index.ts +33 -0
- package/src/store/topic/memory.ts +111 -0
- package/src/store/topic/objective.ts +290 -0
- package/src/store/topic/state.ts +204 -0
- package/src/streaming/coalesce.ts +19 -5
- package/src/telemetry/runtime-accessors.ts +45 -1
- package/src/test-support/ids.ts +117 -0
- package/src/testing.ts +40 -0
- package/src/tools/builtins/bash.ts +82 -3
- package/src/tools/builtins/edit.ts +36 -0
- package/src/tools/builtins/index.ts +29 -1
- package/src/tools/builtins/job.ts +133 -0
- package/src/tools/builtins/lsp.ts +214 -0
- package/src/tools/builtins/run-code.ts +154 -0
- package/src/tools/builtins/skill.ts +134 -0
- package/src/tools/builtins/web-guidance.ts +46 -0
- package/src/tools/builtins/web.ts +156 -0
- package/src/tools/builtins/write-file.ts +37 -1
- package/src/tools/coordinator/agent.ts +2 -2
- package/src/tools/coordinator/index.ts +144 -40
- package/src/tools/coordinator/outcome.ts +2 -2
- package/src/tools/coordinator/wait-with-idle-bound.ts +3 -3
- package/src/tools/defineTool.ts +14 -0
- package/src/tools/env-scrub.ts +91 -0
- package/src/tools/memory/read.ts +5 -2
- package/src/tools/task/create.ts +2 -1
- package/src/tools/task/update.ts +7 -4
- package/src/types/acp/index.ts +163 -0
- package/src/types/agent/base.ts +67 -5
- package/src/types/agent/delegate.ts +110 -0
- package/src/types/agent/index.ts +1 -1
- package/src/types/agent/manager.ts +7 -1
- package/src/types/agent/reactive.ts +27 -3
- package/src/types/agent/{gateway.ts → scheduler.ts} +41 -4
- package/src/types/agent/supervisor.ts +26 -5
- package/src/types/agent/task.ts +31 -9
- package/src/types/agent/working-memory.ts +1 -1
- package/src/types/{verification → authorization}/index.ts +79 -10
- package/src/types/bus/index.ts +30 -1
- package/src/types/code-navigation/index.ts +99 -0
- package/src/types/command/index.ts +68 -0
- package/src/types/common/index.ts +26 -2
- package/src/types/connector/mcp.ts +8 -0
- package/src/types/guardrail/index.ts +72 -1
- package/src/types/hitl/policy.ts +83 -0
- package/src/types/ids/brand.ts +58 -0
- package/src/types/ids/index.ts +109 -42
- package/src/types/message/index.ts +25 -1
- package/src/types/project/entity.ts +22 -2
- package/src/types/provider/interface.ts +45 -2
- package/src/types/provider/model.ts +16 -2
- package/src/types/run/audit.ts +164 -0
- package/src/types/run/cancel-cause.ts +60 -0
- package/src/types/run/checkpoint-store.ts +31 -11
- package/src/types/run/config.ts +25 -4
- package/src/types/run/derive-status.ts +3 -3
- package/src/types/run/entity.ts +2 -4
- package/src/types/run/event-cursor.ts +3 -3
- package/src/types/run/events.ts +165 -6
- package/src/types/run/index.ts +2 -0
- package/src/types/run/metadata.ts +2 -2
- package/src/types/run/prepare-step.ts +33 -0
- package/src/types/run/state.ts +78 -11
- package/src/types/run/stop-reason.ts +9 -0
- package/src/types/run/store.ts +40 -0
- package/src/types/sandbox/index.ts +37 -0
- package/src/types/session/actor.ts +10 -2
- package/src/types/session/entity.ts +9 -7
- package/src/types/session/ids.ts +2 -0
- package/src/types/session/index.ts +2 -0
- package/src/types/session/store.ts +53 -22
- package/src/types/session/sub-session.ts +50 -9
- package/src/types/skills/index.ts +50 -0
- package/src/types/tool/index.ts +171 -1
- package/src/types/tool/presentation.ts +48 -0
- package/src/types/{thread → topic}/entity.ts +34 -26
- package/src/types/topic/index.ts +23 -0
- package/src/types/topic/objective.ts +93 -0
- package/src/types/topic/state.ts +60 -0
- package/src/types/topic/store.ts +101 -0
- package/src/types/workspace/ref.ts +7 -0
- package/src/utils/abort.ts +16 -1
- package/src/utils/hash.ts +16 -0
- package/src/utils/id.ts +172 -12
- package/src/utils/log/attributes.ts +47 -0
- package/src/utils/log/caps.ts +118 -0
- package/src/utils/log/create-logger.ts +198 -0
- package/src/utils/log/exception.ts +124 -0
- package/src/utils/log/index.ts +24 -0
- package/src/utils/log/process-sink.ts +76 -0
- package/src/utils/log/redact.ts +77 -0
- package/src/utils/log/sinks.ts +205 -0
- package/src/utils/log/templates.ts +161 -0
- package/src/utils/log/types.ts +195 -0
- package/src/utils/logger.ts +121 -2
- package/src/utils/renamed-field.ts +35 -0
- package/src/vault/CredentialProvider.ts +147 -0
- package/src/vault/InMemoryCredentialVault.ts +16 -5
- package/src/vault/index.ts +16 -0
- package/src/vault/instrumentation.ts +63 -2
- package/dist/bridge/tools/connector/adapter.d.ts.map +0 -1
- package/dist/bridge/tools/connector/adapter.js.map +0 -1
- package/dist/bridge/tools/connector/definitions.d.ts.map +0 -1
- package/dist/bridge/tools/connector/definitions.js.map +0 -1
- package/dist/bridge/tools/connector/index.d.ts.map +0 -1
- package/dist/bridge/tools/connector/index.js.map +0 -1
- package/dist/bridge/tools/connector/router.d.ts.map +0 -1
- package/dist/bridge/tools/connector/router.js.map +0 -1
- package/dist/connector/execution/factory.d.ts.map +0 -1
- package/dist/connector/execution/factory.js.map +0 -1
- package/dist/connector/execution/hybrid.d.ts.map +0 -1
- package/dist/connector/execution/hybrid.js.map +0 -1
- package/dist/connector/execution/index.d.ts +0 -6
- package/dist/connector/execution/index.d.ts.map +0 -1
- package/dist/connector/execution/index.js +0 -4
- package/dist/connector/execution/index.js.map +0 -1
- package/dist/connector/execution/remote.d.ts.map +0 -1
- package/dist/connector/execution/remote.js.map +0 -1
- package/dist/connector/mcp/server-stdio.d.ts.map +0 -1
- package/dist/connector/mcp/server-stdio.js.map +0 -1
- package/dist/connector/mcp/server.d.ts.map +0 -1
- package/dist/connector/mcp/server.js.map +0 -1
- package/dist/constants/verification/index.d.ts.map +0 -1
- package/dist/constants/verification/index.js.map +0 -1
- package/dist/gateway/completion-inbox.d.ts.map +0 -1
- package/dist/gateway/completion-inbox.js.map +0 -1
- package/dist/gateway/local.d.ts.map +0 -1
- package/dist/gateway/local.js.map +0 -1
- package/dist/manager/thread/lifecycle.d.ts +0 -105
- package/dist/manager/thread/lifecycle.d.ts.map +0 -1
- package/dist/manager/thread/lifecycle.js.map +0 -1
- package/dist/provider/collect.d.ts.map +0 -1
- package/dist/provider/collect.js.map +0 -1
- package/dist/registry/Registry.d.ts.map +0 -1
- package/dist/registry/Registry.js.map +0 -1
- package/dist/router/task-router.d.ts.map +0 -1
- package/dist/router/task-router.js.map +0 -1
- package/dist/runtime/query/context-cache.d.ts.map +0 -1
- package/dist/runtime/query/context-cache.js.map +0 -1
- package/dist/store/thread/disk.d.ts +0 -41
- package/dist/store/thread/disk.d.ts.map +0 -1
- package/dist/store/thread/disk.js +0 -238
- package/dist/store/thread/disk.js.map +0 -1
- package/dist/store/thread/index.d.ts +0 -4
- package/dist/store/thread/index.d.ts.map +0 -1
- package/dist/store/thread/index.js +0 -6
- package/dist/store/thread/index.js.map +0 -1
- package/dist/store/thread/memory.d.ts +0 -23
- package/dist/store/thread/memory.d.ts.map +0 -1
- package/dist/store/thread/memory.js +0 -90
- package/dist/store/thread/memory.js.map +0 -1
- package/dist/types/agent/gateway.d.ts.map +0 -1
- package/dist/types/agent/gateway.js +0 -2
- package/dist/types/agent/gateway.js.map +0 -1
- package/dist/types/thread/entity.d.ts.map +0 -1
- package/dist/types/thread/index.d.ts +0 -3
- package/dist/types/thread/index.d.ts.map +0 -1
- package/dist/types/thread/index.js +0 -5
- package/dist/types/thread/index.js.map +0 -1
- package/dist/types/thread/store.d.ts +0 -86
- package/dist/types/thread/store.d.ts.map +0 -1
- package/dist/types/thread/store.js +0 -22
- package/dist/types/thread/store.js.map +0 -1
- package/dist/types/verification/index.d.ts +0 -317
- package/dist/types/verification/index.d.ts.map +0 -1
- package/dist/types/verification/index.js +0 -53
- package/dist/types/verification/index.js.map +0 -1
- package/dist/verification/gate.d.ts.map +0 -1
- package/dist/verification/gate.js.map +0 -1
- package/dist/verification/index.d.ts +0 -4
- package/dist/verification/index.d.ts.map +0 -1
- package/dist/verification/index.js +0 -4
- package/dist/verification/index.js.map +0 -1
- package/dist/verification/presets.d.ts.map +0 -1
- package/dist/verification/presets.js.map +0 -1
- package/dist/verification/rules.d.ts +0 -4
- package/dist/verification/rules.d.ts.map +0 -1
- package/dist/verification/rules.js.map +0 -1
- package/src/connector/execution/index.ts +0 -5
- package/src/manager/thread/lifecycle.ts +0 -217
- package/src/store/thread/disk.ts +0 -272
- package/src/store/thread/index.ts +0 -7
- package/src/store/thread/memory.ts +0 -104
- package/src/types/thread/index.ts +0 -6
- package/src/types/thread/store.ts +0 -92
- package/src/verification/index.ts +0 -3
- /package/dist/{bridge/tools/connector → connector/tools}/index.d.ts +0 -0
- /package/dist/{bridge/tools/connector → connector/tools}/index.js +0 -0
- /package/dist/constants/{verification → authorization}/index.d.ts +0 -0
- /package/dist/constants/{verification → authorization}/index.js +0 -0
- /package/dist/{router → model-router}/task-router.d.ts +0 -0
- /package/dist/{router → model-router}/task-router.js +0 -0
- /package/dist/types/{thread → topic}/entity.js +0 -0
- /package/src/{bridge/tools/connector → connector/tools}/index.ts +0 -0
- /package/src/constants/{verification → authorization}/index.ts +0 -0
- /package/src/{router → model-router}/task-router.ts +0 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { RunId, TenantId, TopicId } from '../ids/index.js'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Work that outlives one run.
|
|
5
|
+
*
|
|
6
|
+
* Nothing in this kernel survived a single `query()` call. `stopWhen` and
|
|
7
|
+
* `prepareStep` shape one loop, the completion inbox holds one run open for
|
|
8
|
+
* a worker, and the topic manager owned a container with no work state in
|
|
9
|
+
* it at all — so a host wanting "keep going until X is done, stop safely if
|
|
10
|
+
* it stalls or runs long, let a human pause and inspect" had to hand-roll
|
|
11
|
+
* the store, the round cap and the compare-and-set outside the SDK.
|
|
12
|
+
*
|
|
13
|
+
* The Topic's own docstring already called it "one per objective or
|
|
14
|
+
* line-of-work". This is that objective, written down.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export type ObjectivePhase = 'active' | 'paused' | 'blocked' | 'complete'
|
|
18
|
+
|
|
19
|
+
/** Why an objective stopped, in a form a caller can branch on. */
|
|
20
|
+
export interface ObjectiveBlock {
|
|
21
|
+
/**
|
|
22
|
+
* A code, not just prose. `round_cap` and "the model gave up" are
|
|
23
|
+
* different situations with different next moves, and a message alone
|
|
24
|
+
* makes a host parse English to tell them apart.
|
|
25
|
+
*/
|
|
26
|
+
readonly code: 'round_cap' | 'runner_failed' | 'external'
|
|
27
|
+
readonly message: string
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface TopicObjective {
|
|
31
|
+
readonly id: string
|
|
32
|
+
readonly topicId: TopicId
|
|
33
|
+
readonly tenantId: TenantId
|
|
34
|
+
/** Compare-and-set counter, `0` before the first write. */
|
|
35
|
+
readonly revision: number
|
|
36
|
+
readonly objective: string
|
|
37
|
+
readonly phase: ObjectivePhase
|
|
38
|
+
readonly blockedReason?: ObjectiveBlock
|
|
39
|
+
/**
|
|
40
|
+
* The hard stop.
|
|
41
|
+
*
|
|
42
|
+
* Not a suggestion and not a timeout: an objective that cannot tell it
|
|
43
|
+
* is stuck will keep spending money on rounds that make no progress, and
|
|
44
|
+
* a wall-clock bound stops a slow objective rather than a stalled one.
|
|
45
|
+
*/
|
|
46
|
+
readonly maxRounds: number
|
|
47
|
+
/**
|
|
48
|
+
* Rounds BEGUN, not rounds finished.
|
|
49
|
+
*
|
|
50
|
+
* Debited before the work runs, so a round that crashes still counts. A
|
|
51
|
+
* counter that only advanced on success lets an objective failing every
|
|
52
|
+
* round spin forever, which is precisely the runaway the cap exists to
|
|
53
|
+
* stop.
|
|
54
|
+
*/
|
|
55
|
+
readonly roundsStarted: number
|
|
56
|
+
readonly lastRunId?: RunId
|
|
57
|
+
readonly updatedAt: number
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/** A write whose `revision` no longer matches what is stored. */
|
|
61
|
+
export class StaleObjectiveError extends Error {
|
|
62
|
+
readonly details: { id: string; expectedRevision: number; actualRevision: number }
|
|
63
|
+
|
|
64
|
+
constructor(details: { id: string; expectedRevision: number; actualRevision: number }) {
|
|
65
|
+
super(
|
|
66
|
+
`Stale objective ${details.id}: expected revision=${details.expectedRevision}, actual=${details.actualRevision}`,
|
|
67
|
+
)
|
|
68
|
+
this.name = 'StaleObjectiveError'
|
|
69
|
+
this.details = details
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/** Why an `advanceObjective` did nothing. */
|
|
74
|
+
export interface ObjectiveRefusal {
|
|
75
|
+
readonly kind: 'refused'
|
|
76
|
+
readonly reason: string
|
|
77
|
+
readonly phase: ObjectivePhase
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export interface ObjectiveAdvance {
|
|
81
|
+
readonly kind: 'advanced'
|
|
82
|
+
readonly objective: TopicObjective
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export type ObjectiveAdvanceResult = ObjectiveAdvance | ObjectiveRefusal
|
|
86
|
+
|
|
87
|
+
/** What one round decided. */
|
|
88
|
+
export interface ObjectiveRoundVerdict {
|
|
89
|
+
/** `undefined` leaves the phase alone: the round ran and said nothing. */
|
|
90
|
+
readonly phase?: Extract<ObjectivePhase, 'complete' | 'blocked'>
|
|
91
|
+
readonly blockedReason?: ObjectiveBlock
|
|
92
|
+
readonly runId?: RunId
|
|
93
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { TenantId, TopicId } from '../ids/index.js'
|
|
2
|
+
import type { PermissionMode } from '../permission/index.js'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* State that outlives a run but belongs to the conversation, not to a run.
|
|
6
|
+
*
|
|
7
|
+
* `PermissionMode` was resolved once per run and copied into the executor,
|
|
8
|
+
* so leaving plan mode meant ending the run and starting a fresh one with
|
|
9
|
+
* `permissionMode: 'auto'` — discarding the in-flight step and the
|
|
10
|
+
* tool-schema context with it. The look-around, propose, get-approval,
|
|
11
|
+
* continue-in-the-SAME-conversation flow could not be built on that, and
|
|
12
|
+
* `approve_plan` already existed with its approval changing nothing about
|
|
13
|
+
* the mode.
|
|
14
|
+
*
|
|
15
|
+
* Its own record beside the Topic rather than a field on it, with its own
|
|
16
|
+
* schema version. The Topic record is identity and ownership; this is
|
|
17
|
+
* mutable session state that changes several times within one conversation
|
|
18
|
+
* and whose writers are not the Topic's writers. Merging them would make
|
|
19
|
+
* every mode toggle a CAS conflict against a title rename.
|
|
20
|
+
*/
|
|
21
|
+
export interface TopicState {
|
|
22
|
+
readonly topicId: TopicId
|
|
23
|
+
readonly tenantId: TenantId
|
|
24
|
+
/**
|
|
25
|
+
* Compare-and-set counter, starting at 0 for a record's first write.
|
|
26
|
+
*
|
|
27
|
+
* Separate from the Topic's `ownerVersion` on purpose — see above. A
|
|
28
|
+
* host toggling the mode and a manager renaming the topic must not
|
|
29
|
+
* invalidate each other.
|
|
30
|
+
*/
|
|
31
|
+
readonly revision: number
|
|
32
|
+
readonly permissionMode: PermissionMode
|
|
33
|
+
/**
|
|
34
|
+
* Messages left for the run that has not started yet.
|
|
35
|
+
*
|
|
36
|
+
* On the same record as the mode and under the same revision, so a host
|
|
37
|
+
* queueing a message and one toggling the mode cannot silently overwrite
|
|
38
|
+
* each other — they collide loudly instead, which is what a shared
|
|
39
|
+
* conversation needs.
|
|
40
|
+
*/
|
|
41
|
+
readonly queuedMessages?: readonly import('../message/index.js').Message[]
|
|
42
|
+
readonly updatedAt: number
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/** A write whose `revision` no longer matches what is stored. */
|
|
46
|
+
export class StaleTopicStateError extends Error {
|
|
47
|
+
readonly details: {
|
|
48
|
+
topicId: TopicId
|
|
49
|
+
expectedRevision: number
|
|
50
|
+
actualRevision: number
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
constructor(details: { topicId: TopicId; expectedRevision: number; actualRevision: number }) {
|
|
54
|
+
super(
|
|
55
|
+
`Stale topic state for ${details.topicId}: expected revision=${details.expectedRevision}, actual=${details.actualRevision}`,
|
|
56
|
+
)
|
|
57
|
+
this.name = 'StaleTopicStateError'
|
|
58
|
+
this.details = details
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TopicStore — canonical persistence contract for the Topic layer
|
|
3
|
+
* (Project → **Topic** → Session → SubSession → Run).
|
|
4
|
+
*
|
|
5
|
+
* Topics are pure containers (Phase 0 decision B.1). They have no own
|
|
6
|
+
* message stream and no fan-in `deriveStatus()` — status is owner-managed
|
|
7
|
+
* (`'open' | 'archived'`). Every accessor takes explicit {@link TenantId};
|
|
8
|
+
* cross-tenant access rejects with `TenantIsolationError` (Convention #17).
|
|
9
|
+
*
|
|
10
|
+
* Read accessors return `null` when the resource does not exist for the
|
|
11
|
+
* supplied tenant (deny-by-default surface). Callers branch on missing
|
|
12
|
+
* explicitly — no fallback substitution.
|
|
13
|
+
*
|
|
14
|
+
* `deleteTopic` is intentionally a dumb record-delete at this layer:
|
|
15
|
+
* it does NOT walk session ownership. The "reject when sessions attached"
|
|
16
|
+
* precondition lives in {@link import('../../manager/topic/lifecycle.js').TopicManager}
|
|
17
|
+
* where both stores are in scope. Keeping TopicStore free of cross-store
|
|
18
|
+
* awareness preserves the single-boundary ownership boundary that Phase 2
|
|
19
|
+
* has just introduced for this layer (Convention #0).
|
|
20
|
+
*
|
|
21
|
+
* NZ-TOPIC-01 renamed this from `ThreadStore`/`createThread` etc, leaving
|
|
22
|
+
* the `threadId` parameter below alone — it is the FK field a Session
|
|
23
|
+
* carries to its owning Topic, and that rename had its own data-migration
|
|
24
|
+
* story (persisted `session.json` records already on disk, see
|
|
25
|
+
* `store/session/disk.ts`). NZ-TOPIC-03 lands it: the parameter below is
|
|
26
|
+
* `topicId` now, matching the `Session.topicId` it identifies.
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
import type { Topic } from '../../types/topic/entity.js'
|
|
30
|
+
import type { TenantId } from '../ids/index.js'
|
|
31
|
+
import type { ProjectId, TopicId } from '../session/ids.js'
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Params for {@link TopicStore.createTopic}. The store owns id generation,
|
|
35
|
+
* `ownerVersion` initialization (0 at create), and timestamps.
|
|
36
|
+
*/
|
|
37
|
+
export interface CreateTopicParams {
|
|
38
|
+
projectId: ProjectId
|
|
39
|
+
/**
|
|
40
|
+
* User-facing display label. Not unique within the project — see
|
|
41
|
+
* {@link Topic} JSDoc. Empty strings are permitted; callers that require
|
|
42
|
+
* a label should validate at the API layer.
|
|
43
|
+
*/
|
|
44
|
+
title: string
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Canonical persistence contract for the Topic layer. Every accessor takes
|
|
49
|
+
* explicit `tenantId`; cross-tenant reads/writes reject with
|
|
50
|
+
* `TenantIsolationError` (`session/errors.ts`, Convention #17).
|
|
51
|
+
*/
|
|
52
|
+
export interface TopicStore {
|
|
53
|
+
/**
|
|
54
|
+
* Persist a new Topic under the given project. Returns the minted
|
|
55
|
+
* {@link Topic} with `ownerVersion: 0` and freshly-generated
|
|
56
|
+
* {@link import('../ids/index.js').TopicId}. Callers must ensure the parent
|
|
57
|
+
* project exists and belongs to the same tenant — the store does not
|
|
58
|
+
* validate project ownership (that is a cross-store precondition owned by
|
|
59
|
+
* the manager).
|
|
60
|
+
*/
|
|
61
|
+
createTopic(params: CreateTopicParams, tenantId: TenantId): Promise<Topic>
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Read a Topic by id. Returns `null` when absent. Cross-tenant reads
|
|
65
|
+
* reject with `TenantIsolationError`.
|
|
66
|
+
*/
|
|
67
|
+
getTopic(topicId: TopicId, tenantId: TenantId): Promise<Topic | null>
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Persist a mutation to a Topic record. CAS on `ownerVersion`: if the
|
|
71
|
+
* supplied `topic.ownerVersion` does not match the persisted version,
|
|
72
|
+
* rejects with {@link import('../../session/errors.js').StaleThreadError}
|
|
73
|
+
* (class name unchanged this release). On success the write commits with
|
|
74
|
+
* `ownerVersion + 1` and a refreshed `updatedAt`.
|
|
75
|
+
*
|
|
76
|
+
* Archival transition (`status: 'open' → 'archived'`) shares this path;
|
|
77
|
+
* the caller is responsible for verifying that no non-terminal Sessions
|
|
78
|
+
* are attached before flipping (see TopicManager.archive).
|
|
79
|
+
*/
|
|
80
|
+
updateTopic(topic: Topic, tenantId: TenantId): Promise<void>
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Hard-delete a Topic record. Idempotent — absent topics succeed as a
|
|
84
|
+
* no-op. Rejects with `TenantIsolationError` on cross-tenant access.
|
|
85
|
+
*
|
|
86
|
+
* **Does NOT cascade to child Sessions** — the caller (typically
|
|
87
|
+
* TopicManager) enforces the precondition that no Sessions reference
|
|
88
|
+
* this topic. Convention #5: deny-by-default, no implicit cascade.
|
|
89
|
+
*/
|
|
90
|
+
deleteTopic(topicId: TopicId, tenantId: TenantId): Promise<void>
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* List all Topics under a project for the given tenant, ordered by
|
|
94
|
+
* `createdAt` ascending. Returns an empty array when none exist.
|
|
95
|
+
* Cross-tenant reads reject with `TenantIsolationError`.
|
|
96
|
+
*
|
|
97
|
+
* The return shape is a concrete snapshot — callers that mutate the
|
|
98
|
+
* result array do not affect store state.
|
|
99
|
+
*/
|
|
100
|
+
listTopics(projectId: ProjectId, tenantId: TenantId): Promise<readonly Topic[]>
|
|
101
|
+
}
|
|
@@ -42,6 +42,13 @@ export type WorkspaceBackendMeta = GitWorktreeBackendMeta
|
|
|
42
42
|
* Persisted ref to a provisioned workspace. Every {@link Session} with a
|
|
43
43
|
* running Run persists a {@link WorkspaceRef} so recovery after process
|
|
44
44
|
* restart is possible (session-hierarchy.md §7.1).
|
|
45
|
+
*
|
|
46
|
+
* NOT `Project.rootPath`. This is per-RUN provisioning — a git worktree cut
|
|
47
|
+
* for one run and discarded after it, which may be a different directory
|
|
48
|
+
* entirely. `Project.rootPath` is the durable binding a host uses to answer
|
|
49
|
+
* "which project is this directory" across sessions and process restarts.
|
|
50
|
+
* The two words are close enough that the distinction has been rediscovered
|
|
51
|
+
* more than once; it is written here so it does not have to be again.
|
|
45
52
|
*/
|
|
46
53
|
export interface WorkspaceRef {
|
|
47
54
|
id: WorkspaceId
|
package/src/utils/abort.ts
CHANGED
|
@@ -27,7 +27,22 @@ import { toErrorMessage } from './error.js'
|
|
|
27
27
|
*/
|
|
28
28
|
export function abortReasonText(reason: unknown): string | undefined {
|
|
29
29
|
if (!(reason instanceof Error)) return undefined
|
|
30
|
-
|
|
30
|
+
// `RunCancelled` carries a machine-readable CAUSE ('user' | 'parent' |
|
|
31
|
+
// 'budget' | 'hook'), and rendering it here would print "was cancelled:
|
|
32
|
+
// run cancelled by parent" — the same noise the two names above are
|
|
33
|
+
// suppressed for. A reader wanting the cause asks `cancelCauseOf`.
|
|
34
|
+
//
|
|
35
|
+
// By name, not by class, for the reason this whole function is: a reason
|
|
36
|
+
// crosses a package boundary where `instanceof` stops holding across
|
|
37
|
+
// duplicate copies. Importing the class here would also close a cycle
|
|
38
|
+
// between `utils/` and `types/run/`.
|
|
39
|
+
if (
|
|
40
|
+
reason.name === 'AbortError' ||
|
|
41
|
+
reason.name === 'TimeoutError' ||
|
|
42
|
+
reason.name === 'RunCancelled'
|
|
43
|
+
) {
|
|
44
|
+
return undefined
|
|
45
|
+
}
|
|
31
46
|
const text = toErrorMessage(reason).trim()
|
|
32
47
|
return text.length > 0 ? text : undefined
|
|
33
48
|
}
|
package/src/utils/hash.ts
CHANGED
|
@@ -14,3 +14,19 @@ export function buildToolResultHashes(
|
|
|
14
14
|
}
|
|
15
15
|
return hashes
|
|
16
16
|
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* A short, stable digest of any JSON-able value.
|
|
20
|
+
*
|
|
21
|
+
* `JSON.stringify` is not stable across key insertion order, so callers
|
|
22
|
+
* that need two equal-by-content values to hash alike must normalise
|
|
23
|
+
* first. The one caller that does — the request envelope — sorts its tool
|
|
24
|
+
* list before hashing, because the ORDER of the tool array is itself part
|
|
25
|
+
* of what the model sees and a re-ordered catalogue is a real change.
|
|
26
|
+
*/
|
|
27
|
+
export function stableDigest(value: unknown): string {
|
|
28
|
+
return createHash('sha256')
|
|
29
|
+
.update(JSON.stringify(value) ?? 'null')
|
|
30
|
+
.digest('hex')
|
|
31
|
+
.slice(0, 16)
|
|
32
|
+
}
|
package/src/utils/id.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { randomBytes } from 'node:crypto'
|
|
2
|
+
import { unsafeId } from '../types/ids/brand.js'
|
|
2
3
|
import type {
|
|
3
4
|
ActivityId,
|
|
4
5
|
AdvisoryCallId,
|
|
5
6
|
AdvisoryId,
|
|
7
|
+
AgentId,
|
|
8
|
+
AuditEventId,
|
|
6
9
|
CheckpointId,
|
|
7
10
|
ChunkId,
|
|
8
11
|
ConnectorId,
|
|
@@ -15,10 +18,13 @@ import type {
|
|
|
15
18
|
ExecutionContextId,
|
|
16
19
|
HandoffId,
|
|
17
20
|
KnowledgeBaseId,
|
|
21
|
+
KnowledgeBaseRef,
|
|
22
|
+
LockId,
|
|
18
23
|
MCPClientId,
|
|
19
24
|
MCPServerId,
|
|
20
25
|
MCPSessionId,
|
|
21
26
|
MemoryId,
|
|
27
|
+
MemoryStoreRef,
|
|
22
28
|
MessageId,
|
|
23
29
|
PlanId,
|
|
24
30
|
PluginId,
|
|
@@ -30,8 +36,10 @@ import type {
|
|
|
30
36
|
SummaryId,
|
|
31
37
|
TaskId,
|
|
32
38
|
TenantId,
|
|
33
|
-
ThreadId,
|
|
34
39
|
ToolCallId,
|
|
40
|
+
TopicId,
|
|
41
|
+
UserId,
|
|
42
|
+
VaultRef,
|
|
35
43
|
WorkspaceId,
|
|
36
44
|
} from '../types/ids/index.js'
|
|
37
45
|
|
|
@@ -39,7 +47,25 @@ const ALPHABET = '0123456789abcdefghijklmnopqrstuvwxyz'
|
|
|
39
47
|
const ALPHABET_LEN = ALPHABET.length
|
|
40
48
|
const MAX_UNIFORM_BYTE = Math.floor(256 / ALPHABET_LEN) * ALPHABET_LEN
|
|
41
49
|
|
|
42
|
-
|
|
50
|
+
/**
|
|
51
|
+
* Mints an id, with the PREFIX checked against the id's own type.
|
|
52
|
+
*
|
|
53
|
+
* The two type parameters are what keeps that check alive now the ids are
|
|
54
|
+
* nominal (NZ-SURF-11). `T` is inferred from the caller's declared return
|
|
55
|
+
* type, `P` from the literal prefix, and the constraint `T extends
|
|
56
|
+
* `${P}${string}`` is what makes `generateRunId` unable to return
|
|
57
|
+
* `generateId('ses_')`: a branded `RunId` is assignable to `` `run_${string}` ``
|
|
58
|
+
* but not to `` `ses_${string}` ``, so the wrong prefix fails to compile.
|
|
59
|
+
*
|
|
60
|
+
* Without the constraint the brand would have COST a check — `unsafeId<T>`
|
|
61
|
+
* accepts any string, so `T` alone would let every generator mint any
|
|
62
|
+
* prefix. That is the docker `sandbox_`/`sbx_` defect, one layer up, which
|
|
63
|
+
* is why this is written the awkward way rather than the short way.
|
|
64
|
+
*/
|
|
65
|
+
function generateId<T extends `${P}${string}`, P extends string = string>(
|
|
66
|
+
prefix: P,
|
|
67
|
+
length = 12,
|
|
68
|
+
): T {
|
|
43
69
|
let suffix = ''
|
|
44
70
|
let remaining = length
|
|
45
71
|
while (remaining > 0) {
|
|
@@ -52,17 +78,26 @@ function generateId<T extends string>(prefix: T, length = 12): `${T}${string}` {
|
|
|
52
78
|
}
|
|
53
79
|
}
|
|
54
80
|
}
|
|
55
|
-
return `${prefix}${suffix}`
|
|
81
|
+
return unsafeId<T>(`${prefix}${suffix}`)
|
|
56
82
|
}
|
|
57
83
|
|
|
58
84
|
export function generateProjectId(): ProjectId {
|
|
59
85
|
return generateId('prj_')
|
|
60
86
|
}
|
|
61
87
|
|
|
62
|
-
export function
|
|
63
|
-
return generateId('
|
|
88
|
+
export function generateTopicId(): TopicId {
|
|
89
|
+
return generateId('top_')
|
|
64
90
|
}
|
|
65
91
|
|
|
92
|
+
/**
|
|
93
|
+
* @deprecated Use {@link generateTopicId}. Removal is NZ-TOPIC-05.
|
|
94
|
+
*
|
|
95
|
+
* Mints `top_` from NZ-TOPIC-04 on — an alias that kept minting `thd_`
|
|
96
|
+
* would hand two different id spaces to one program depending on which
|
|
97
|
+
* name the caller happened to import.
|
|
98
|
+
*/
|
|
99
|
+
export const generateThreadId = generateTopicId
|
|
100
|
+
|
|
66
101
|
export function generateRunId(): RunId {
|
|
67
102
|
return generateId('run_')
|
|
68
103
|
}
|
|
@@ -151,6 +186,10 @@ export function generateAdvisoryCallId(): AdvisoryCallId {
|
|
|
151
186
|
return generateId('advc_')
|
|
152
187
|
}
|
|
153
188
|
|
|
189
|
+
export function generateAuditEventId(): AuditEventId {
|
|
190
|
+
return generateId('aud_')
|
|
191
|
+
}
|
|
192
|
+
|
|
154
193
|
export function generateEmergencySaveId(): EmergencySaveId {
|
|
155
194
|
return generateId('esave_')
|
|
156
195
|
}
|
|
@@ -187,25 +226,146 @@ export function generateDeliverableId(): DeliverableId {
|
|
|
187
226
|
return generateId('del_')
|
|
188
227
|
}
|
|
189
228
|
|
|
190
|
-
function parseId<T extends string
|
|
229
|
+
function parseId<T extends `${P}${string}`, P extends string = string>(
|
|
230
|
+
raw: string,
|
|
231
|
+
prefix: P,
|
|
232
|
+
typeName: string,
|
|
233
|
+
): T {
|
|
191
234
|
if (!raw.startsWith(prefix)) {
|
|
192
235
|
throw new Error(`Invalid ${typeName}: expected "${prefix}" prefix, got "${raw}"`)
|
|
193
236
|
}
|
|
194
|
-
return raw
|
|
237
|
+
return unsafeId<T>(raw)
|
|
195
238
|
}
|
|
196
239
|
|
|
197
240
|
export function parseProjectId(raw: string): ProjectId {
|
|
198
|
-
return parseId
|
|
241
|
+
return parseId(raw, 'prj_', 'ProjectId')
|
|
199
242
|
}
|
|
200
243
|
export function parseRunId(raw: string): RunId {
|
|
201
|
-
return parseId
|
|
244
|
+
return parseId(raw, 'run_', 'RunId')
|
|
202
245
|
}
|
|
203
246
|
export function parseConnectorInstanceId(raw: string): ConnectorInstanceId {
|
|
204
|
-
return parseId
|
|
247
|
+
return parseId(raw, 'ci_', 'ConnectorInstanceId')
|
|
205
248
|
}
|
|
206
249
|
export function parsePluginId(raw: string): PluginId {
|
|
207
|
-
return parseId
|
|
250
|
+
return parseId(raw, 'plg_', 'PluginId')
|
|
208
251
|
}
|
|
209
252
|
export function parseSandboxId(raw: string): SandboxId {
|
|
210
|
-
return parseId
|
|
253
|
+
return parseId(raw, 'sbx_', 'SandboxId')
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// ─── validating constructors ─────────────────────────────────────────────
|
|
257
|
+
//
|
|
258
|
+
// There is no runtime prefix check anywhere in this tree. The 700-odd
|
|
259
|
+
// `as RunId` casts in it assert without verifying, so a `ses_` value cast to
|
|
260
|
+
// `RunId` reaches a store key unremarked and the first sign of it is a
|
|
261
|
+
// lookup that finds nothing.
|
|
262
|
+
//
|
|
263
|
+
// These are the check. One per id type rather than a single generic
|
|
264
|
+
// `asId(prefix, value)`, and the repetition is the point: a generic loses
|
|
265
|
+
// the return type, so the call site stops type-checking and the whole
|
|
266
|
+
// exercise buys nothing. The implementations are one function.
|
|
267
|
+
|
|
268
|
+
/** A string that does not carry the prefix the id type requires. */
|
|
269
|
+
export class InvalidIdError extends Error {
|
|
270
|
+
constructor(
|
|
271
|
+
readonly value: string,
|
|
272
|
+
readonly expectedPrefix: string,
|
|
273
|
+
) {
|
|
274
|
+
super(
|
|
275
|
+
`Not a valid id: ${JSON.stringify(value)} does not start with ${JSON.stringify(expectedPrefix)}. Ids are minted by the matching generate*Id() factory; a literal from a log or a URL has to be checked before it is used as one.`,
|
|
276
|
+
)
|
|
277
|
+
this.name = 'InvalidIdError'
|
|
278
|
+
}
|
|
211
279
|
}
|
|
280
|
+
|
|
281
|
+
/**
|
|
282
|
+
* Builds one prefix check.
|
|
283
|
+
*
|
|
284
|
+
* Throws rather than returning `undefined`, per `refuse-do-not-degrade`: a
|
|
285
|
+
* caller holding a malformed id has no correct fallback available, and the
|
|
286
|
+
* value is on its way to becoming a store key. Returning the input
|
|
287
|
+
* unchanged on the happy path is also load-bearing — a constructor that
|
|
288
|
+
* allocated a copy would silently break `===` on ids used as map keys.
|
|
289
|
+
*
|
|
290
|
+
* The trailing underscore in every prefix is what makes them unambiguous:
|
|
291
|
+
* `mcpc_x` does not start with `mcp_`, and `advc_x` does not start with
|
|
292
|
+
* `adv_`, so no id type can swallow another's values.
|
|
293
|
+
*/
|
|
294
|
+
/**
|
|
295
|
+
* What a checked constructor is, named so the id type can be supplied by
|
|
296
|
+
* ANNOTATION rather than as a type argument.
|
|
297
|
+
*
|
|
298
|
+
* That distinction is load-bearing and was got wrong once. `makeIdParser<
|
|
299
|
+
* RunId>('ses_')` compiles: supplying one of two type parameters explicitly
|
|
300
|
+
* makes the other fall back to its DEFAULT rather than be inferred, so `P`
|
|
301
|
+
* became `string`, the constraint read `RunId extends string`, and the
|
|
302
|
+
* prefix check evaporated. Caught by mutating `asRunId`'s prefix and finding
|
|
303
|
+
* the build still green — a check that cannot fail. With the type on the
|
|
304
|
+
* const instead, `T` comes from the contextual type and `P` is inferred from
|
|
305
|
+
* the argument, so the same mutation is a compile error.
|
|
306
|
+
*/
|
|
307
|
+
type IdParser<T extends string> = (value: string) => T
|
|
308
|
+
|
|
309
|
+
function makeIdParser<T extends `${P}${string}`, P extends string = string>(
|
|
310
|
+
prefix: P,
|
|
311
|
+
): IdParser<T> {
|
|
312
|
+
return (value: string): T => {
|
|
313
|
+
if (!value.startsWith(prefix)) throw new InvalidIdError(value, prefix)
|
|
314
|
+
return unsafeId<T>(value)
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
export const asRunId: IdParser<RunId> = makeIdParser('run_')
|
|
319
|
+
export const asMessageId: IdParser<MessageId> = makeIdParser('msg_')
|
|
320
|
+
export const asSessionId: IdParser<SessionId> = makeIdParser('ses_')
|
|
321
|
+
export const asToolCallId: IdParser<ToolCallId> = makeIdParser('call_')
|
|
322
|
+
export const asActivityId: IdParser<ActivityId> = makeIdParser('act_')
|
|
323
|
+
export const asTaskId: IdParser<TaskId> = makeIdParser('task_')
|
|
324
|
+
export const asPlanId: IdParser<PlanId> = makeIdParser('plan_')
|
|
325
|
+
export const asKnowledgeBaseId: IdParser<KnowledgeBaseId> = makeIdParser('kb_')
|
|
326
|
+
export const asDocumentId: IdParser<DocumentId> = makeIdParser('doc_')
|
|
327
|
+
export const asChunkId: IdParser<ChunkId> = makeIdParser('chk_')
|
|
328
|
+
export const asConnectorId: IdParser<ConnectorId> = makeIdParser('conn_')
|
|
329
|
+
export const asConnectorInstanceId: IdParser<ConnectorInstanceId> = makeIdParser('ci_')
|
|
330
|
+
export const asTenantId: IdParser<TenantId> = makeIdParser('tnt_')
|
|
331
|
+
export const asCredentialId: IdParser<CredentialId> = makeIdParser('cred_')
|
|
332
|
+
export const asExecutionContextId: IdParser<ExecutionContextId> = makeIdParser('ectx_')
|
|
333
|
+
export const asMCPServerId: IdParser<MCPServerId> = makeIdParser('mcp_')
|
|
334
|
+
export const asMCPClientId: IdParser<MCPClientId> = makeIdParser('mcpc_')
|
|
335
|
+
export const asMCPSessionId: IdParser<MCPSessionId> = makeIdParser('mcps_')
|
|
336
|
+
export const asEnvironmentId: IdParser<EnvironmentId> = makeIdParser('env_')
|
|
337
|
+
export const asCheckpointId: IdParser<CheckpointId> = makeIdParser('cp_')
|
|
338
|
+
export const asLockId: IdParser<LockId> = makeIdParser('lock_')
|
|
339
|
+
export const asAdvisoryId: IdParser<AdvisoryId> = makeIdParser('adv_')
|
|
340
|
+
export const asAdvisoryCallId: IdParser<AdvisoryCallId> = makeIdParser('advc_')
|
|
341
|
+
export const asEmergencySaveId: IdParser<EmergencySaveId> = makeIdParser('esave_')
|
|
342
|
+
export const asMemoryId: IdParser<MemoryId> = makeIdParser('mem_')
|
|
343
|
+
export const asPluginId: IdParser<PluginId> = makeIdParser('plg_')
|
|
344
|
+
export const asSandboxId: IdParser<SandboxId> = makeIdParser('sbx_')
|
|
345
|
+
export const asAuditEventId: IdParser<AuditEventId> = makeIdParser('aud_')
|
|
346
|
+
export const asUserId: IdParser<UserId> = makeIdParser('usr_')
|
|
347
|
+
/**
|
|
348
|
+
* @deprecated Nothing in this kernel mints an `agt_` id, so this constructor
|
|
349
|
+
* throws on every agent identifier the kernel actually produces — an agent is
|
|
350
|
+
* named by its registry key. See {@link AgentId}. Removal is a later major.
|
|
351
|
+
*/
|
|
352
|
+
export const asAgentId: IdParser<AgentId> = makeIdParser('agt_')
|
|
353
|
+
export const asMemoryStoreRef: IdParser<MemoryStoreRef> = makeIdParser('mms_')
|
|
354
|
+
export const asVaultRef: IdParser<VaultRef> = makeIdParser('vlt_')
|
|
355
|
+
export const asKnowledgeBaseRef: IdParser<KnowledgeBaseRef> = makeIdParser('kbs_')
|
|
356
|
+
export const asProjectId: IdParser<ProjectId> = makeIdParser('prj_')
|
|
357
|
+
export const asTopicId: IdParser<TopicId> = makeIdParser('top_')
|
|
358
|
+
export const asSubSessionId: IdParser<SubSessionId> = makeIdParser('sub_')
|
|
359
|
+
export const asHandoffId: IdParser<HandoffId> = makeIdParser('hof_')
|
|
360
|
+
export const asWorkspaceId: IdParser<WorkspaceId> = makeIdParser('wsp_')
|
|
361
|
+
export const asSummaryId: IdParser<SummaryId> = makeIdParser('sum_')
|
|
362
|
+
export const asDeliverableId: IdParser<DeliverableId> = makeIdParser('del_')
|
|
363
|
+
|
|
364
|
+
// No `asThreadId`, deliberately. `ThreadId` is an alias of `TopicId` from
|
|
365
|
+
// the Topic rename, so `asTopicId` already accepts every value one can hold
|
|
366
|
+
// — and a parser shipped `@deprecated` on the day it is written is a name
|
|
367
|
+
// that exists only to be removed. `declared-but-undriven`.
|
|
368
|
+
|
|
369
|
+
// `ToolUseId` is a bare `string` — it comes from a provider, which chooses
|
|
370
|
+
// its own shape, so there is no prefix to check and a constructor here would
|
|
371
|
+
// be a check that cannot fail.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// The allowlist for a hand-built attribute bag. `LogContext` on
|
|
2
|
+
// `../logger.ts` stays exactly what it is — `Record<string, unknown>` —
|
|
3
|
+
// because `Logger.child(context: LogContext)` is in INPUT position on the
|
|
4
|
+
// public surface (`logger?: Logger` on `RunConfig` and tool config:
|
|
5
|
+
// `types/run/config.ts:156`, `types/tool/index.ts:396`): narrowing it would
|
|
6
|
+
// break every host that already implemented `Logger` correctly, for a type
|
|
7
|
+
// change with no payoff to them. `LogAttributes` is instead a type a caller
|
|
8
|
+
// builds TOWARD — construct the variable half of a log call with this type
|
|
9
|
+
// and hand the result to `Logger.info`/`.child()` where `LogContext` is
|
|
10
|
+
// expected. That direction always compiles: every `LogAttributes` value is
|
|
11
|
+
// already a valid `LogContext` value, never the reverse.
|
|
12
|
+
//
|
|
13
|
+
// Two things this closes as a compile error rather than leaving to review:
|
|
14
|
+
// a key outside the four prefixes the rest of the telemetry surface already
|
|
15
|
+
// uses (`serverId`, `label`, `apiKey` — anything un-namespaced), and a
|
|
16
|
+
// nested object value (the shape a splatted `AuthConfig`, `ResolvedConfig`
|
|
17
|
+
// or `process.env` would need, and the OTel `AnyValue` subset below has no
|
|
18
|
+
// room for one).
|
|
19
|
+
//
|
|
20
|
+
// What it does NOT close: `{ 'namzu.connector.auth': JSON.stringify(auth) }`
|
|
21
|
+
// is a namespaced key holding a string, and passes every rule in this file.
|
|
22
|
+
// A secret in string form is not a shape this type can see — closing THAT
|
|
23
|
+
// is the record-boundary redaction scan's job (`redact.ts`), which runs on
|
|
24
|
+
// every record regardless of what built its attributes. Say so wherever
|
|
25
|
+
// this type is documented; it narrows what a caller can express, it does
|
|
26
|
+
// not make leakage inexpressible.
|
|
27
|
+
type AttributeValue = string | number | boolean | readonly (string | number | boolean)[]
|
|
28
|
+
|
|
29
|
+
type AttributeKey =
|
|
30
|
+
| `namzu.${string}`
|
|
31
|
+
| `gen_ai.${string}`
|
|
32
|
+
| `service.${string}`
|
|
33
|
+
| `exception.${string}`
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* A namespaced, shape-safe attribute bag. Deliberately NOT
|
|
37
|
+
* `Partial<Record<...>>`: `Partial` would type every property as
|
|
38
|
+
* `AttributeValue | undefined`, and this repo's tsconfig does not set
|
|
39
|
+
* `exactOptionalPropertyTypes` — so a `Partial` version would let
|
|
40
|
+
* `{ 'namzu.x.y': undefined }` compile, an attribute that is present and
|
|
41
|
+
* holds nothing. Plain `Record` over a template-literal key domain does not
|
|
42
|
+
* require every possible key to appear — there is no finite set of keys to
|
|
43
|
+
* require — so dropping `Partial` costs a caller nothing: it still supplies
|
|
44
|
+
* only the keys it has, and gains that an explicit `undefined` is rejected
|
|
45
|
+
* the same way `null` and a nested object already are.
|
|
46
|
+
*/
|
|
47
|
+
export type LogAttributes = Readonly<Record<AttributeKey, AttributeValue>>
|