@namzu/sdk 46.0.0 → 48.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 +325 -8
- package/README.md +7 -8
- package/dist/advisory/history.d.ts.map +1 -1
- package/dist/advisory/history.js +21 -1
- package/dist/advisory/history.js.map +1 -1
- package/dist/advisory/index.d.ts +1 -1
- package/dist/advisory/index.d.ts.map +1 -1
- package/dist/advisory/index.js +1 -1
- package/dist/advisory/index.js.map +1 -1
- package/dist/advisory/registry.d.ts +17 -0
- package/dist/advisory/registry.d.ts.map +1 -1
- package/dist/advisory/registry.js +26 -0
- package/dist/advisory/registry.js.map +1 -1
- package/dist/agents/PipelineAgent.d.ts +2 -46
- package/dist/agents/PipelineAgent.d.ts.map +1 -1
- package/dist/agents/PipelineAgent.js +2 -242
- package/dist/agents/PipelineAgent.js.map +1 -1
- package/dist/agents/QueryAgent.d.ts +21 -0
- package/dist/agents/QueryAgent.d.ts.map +1 -0
- package/dist/agents/QueryAgent.js +214 -0
- package/dist/agents/QueryAgent.js.map +1 -0
- package/dist/agents/ReactiveAgent.d.ts +4 -16
- package/dist/agents/ReactiveAgent.d.ts.map +1 -1
- package/dist/agents/ReactiveAgent.js +4 -183
- package/dist/agents/ReactiveAgent.js.map +1 -1
- package/dist/agents/RouterAgent.d.ts +2 -20
- package/dist/agents/RouterAgent.d.ts.map +1 -1
- package/dist/agents/RouterAgent.js +2 -266
- package/dist/agents/RouterAgent.js.map +1 -1
- package/dist/agents/SupervisorAgent.d.ts +3 -43
- package/dist/agents/SupervisorAgent.d.ts.map +1 -1
- package/dist/agents/SupervisorAgent.js +3 -418
- package/dist/agents/SupervisorAgent.js.map +1 -1
- package/dist/agents/defineAgent.d.ts +2 -1
- package/dist/agents/defineAgent.d.ts.map +1 -1
- package/dist/agents/defineAgent.js +6 -1
- package/dist/agents/defineAgent.js.map +1 -1
- package/dist/agents/examples/PipelineAgent.d.ts +46 -0
- package/dist/agents/examples/PipelineAgent.d.ts.map +1 -0
- package/dist/agents/examples/PipelineAgent.js +242 -0
- package/dist/agents/examples/PipelineAgent.js.map +1 -0
- package/dist/agents/examples/RouterAgent.d.ts +22 -0
- package/dist/agents/examples/RouterAgent.d.ts.map +1 -0
- package/dist/agents/examples/RouterAgent.js +268 -0
- package/dist/agents/examples/RouterAgent.js.map +1 -0
- package/dist/agents/examples/SupervisorAgent.d.ts +45 -0
- package/dist/agents/examples/SupervisorAgent.d.ts.map +1 -0
- package/dist/agents/examples/SupervisorAgent.js +406 -0
- package/dist/agents/examples/SupervisorAgent.js.map +1 -0
- package/dist/agents/explore.d.ts +6 -3
- package/dist/agents/explore.d.ts.map +1 -1
- package/dist/agents/explore.js +6 -3
- package/dist/agents/explore.js.map +1 -1
- package/dist/agents/forward-options.d.ts +11 -0
- package/dist/agents/forward-options.d.ts.map +1 -0
- package/dist/agents/forward-options.js +15 -0
- package/dist/agents/forward-options.js.map +1 -0
- package/dist/agents/index.d.ts +1 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +2 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/runAgent.d.ts +19 -8
- package/dist/agents/runAgent.d.ts.map +1 -1
- package/dist/agents/runAgent.js +99 -29
- package/dist/agents/runAgent.js.map +1 -1
- package/dist/authorization/command-line.d.ts +2 -0
- package/dist/authorization/command-line.d.ts.map +1 -1
- package/dist/authorization/command-line.js +2 -2
- package/dist/authorization/command-line.js.map +1 -1
- package/dist/authorization/gate.d.ts +8 -0
- package/dist/authorization/gate.d.ts.map +1 -1
- package/dist/authorization/gate.js +12 -1
- package/dist/authorization/gate.js.map +1 -1
- package/dist/authorization/program.d.ts +151 -0
- package/dist/authorization/program.d.ts.map +1 -0
- package/dist/authorization/program.js +713 -0
- package/dist/authorization/program.js.map +1 -0
- package/dist/authorization/reexec-wrapper.d.ts +106 -0
- package/dist/authorization/reexec-wrapper.d.ts.map +1 -0
- package/dist/authorization/reexec-wrapper.js +532 -0
- package/dist/authorization/reexec-wrapper.js.map +1 -0
- package/dist/authorization/rules.d.ts +9 -0
- package/dist/authorization/rules.d.ts.map +1 -1
- package/dist/authorization/rules.js +8 -1
- package/dist/authorization/rules.js.map +1 -1
- package/dist/authorization/shell-lexer.d.ts +19 -4
- package/dist/authorization/shell-lexer.d.ts.map +1 -1
- package/dist/authorization/shell-lexer.js +91 -65
- package/dist/authorization/shell-lexer.js.map +1 -1
- package/dist/bridge/sse/mapper.d.ts.map +1 -1
- package/dist/bridge/sse/mapper.js +6 -0
- package/dist/bridge/sse/mapper.js.map +1 -1
- package/dist/capabilities/index.d.ts +54 -0
- package/dist/capabilities/index.d.ts.map +1 -0
- package/dist/capabilities/index.js +92 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/config/registry.d.ts +2 -1
- package/dist/config/registry.d.ts.map +1 -1
- package/dist/config/registry.js +3 -2
- package/dist/config/registry.js.map +1 -1
- package/dist/connector/index.d.ts +4 -4
- package/dist/connector/index.d.ts.map +1 -1
- package/dist/connector/index.js +3 -3
- package/dist/connector/index.js.map +1 -1
- package/dist/connector/mcp/adapter.d.ts +16 -1
- package/dist/connector/mcp/adapter.d.ts.map +1 -1
- package/dist/connector/mcp/adapter.js +60 -4
- package/dist/connector/mcp/adapter.js.map +1 -1
- package/dist/connector/mcp/client.d.ts +13 -4
- package/dist/connector/mcp/client.d.ts.map +1 -1
- package/dist/connector/mcp/client.js +20 -3
- package/dist/connector/mcp/client.js.map +1 -1
- package/dist/connector/mcp/discovery.d.ts +24 -1
- package/dist/connector/mcp/discovery.d.ts.map +1 -1
- package/dist/connector/mcp/discovery.js +44 -0
- package/dist/connector/mcp/discovery.js.map +1 -1
- package/dist/connector/mcp/index.d.ts +2 -0
- package/dist/connector/mcp/index.d.ts.map +1 -1
- package/dist/connector/mcp/index.js +11 -0
- package/dist/connector/mcp/index.js.map +1 -1
- package/dist/connector/mcp/mcp-toolset.d.ts +133 -0
- package/dist/connector/mcp/mcp-toolset.d.ts.map +1 -0
- package/dist/connector/mcp/mcp-toolset.js +399 -0
- package/dist/connector/mcp/mcp-toolset.js.map +1 -0
- package/dist/connector/tools/index.d.ts +2 -2
- package/dist/connector/tools/index.d.ts.map +1 -1
- package/dist/connector/tools/index.js +1 -1
- package/dist/connector/tools/index.js.map +1 -1
- package/dist/connector/tools/router.d.ts +15 -13
- package/dist/connector/tools/router.d.ts.map +1 -1
- package/dist/connector/tools/router.js +30 -51
- package/dist/connector/tools/router.js.map +1 -1
- package/dist/contracts/a2a.d.ts +2 -2
- package/dist/directory/derive-supervisor.d.ts +2 -2
- package/dist/directory/derive-supervisor.d.ts.map +1 -1
- package/dist/directory/derive-supervisor.js +6 -7
- package/dist/directory/derive-supervisor.js.map +1 -1
- package/dist/directory/derive.d.ts.map +1 -1
- package/dist/directory/derive.js +5 -5
- package/dist/directory/derive.js.map +1 -1
- package/dist/execution/code-runtime/types.d.ts +2 -2
- package/dist/execution/code-runtime/types.js +1 -1
- package/dist/invariants/index.d.ts +2 -1
- package/dist/invariants/index.d.ts.map +1 -1
- package/dist/invariants/index.js +3 -2
- package/dist/invariants/index.js.map +1 -1
- package/dist/manager/agent/lifecycle.d.ts.map +1 -1
- package/dist/manager/agent/lifecycle.js +9 -0
- package/dist/manager/agent/lifecycle.js.map +1 -1
- package/dist/manager/connector/environment.d.ts +6 -0
- package/dist/manager/connector/environment.d.ts.map +1 -1
- package/dist/manager/connector/environment.js +11 -4
- package/dist/manager/connector/environment.js.map +1 -1
- package/dist/manager/connector/index.d.ts +2 -2
- package/dist/manager/connector/index.d.ts.map +1 -1
- package/dist/manager/connector/index.js +2 -2
- package/dist/manager/connector/index.js.map +1 -1
- package/dist/manager/connector/tenant.d.ts +6 -0
- package/dist/manager/connector/tenant.d.ts.map +1 -1
- package/dist/manager/connector/tenant.js +11 -4
- package/dist/manager/connector/tenant.js.map +1 -1
- package/dist/manager/index.d.ts +2 -2
- package/dist/manager/index.d.ts.map +1 -1
- package/dist/manager/index.js +2 -2
- package/dist/manager/index.js.map +1 -1
- package/dist/manager/resident/learning-observation.d.ts +4 -4
- package/dist/manager/resident/learning.d.ts +36 -36
- package/dist/manager/session/attribution.d.ts +22 -0
- package/dist/manager/session/attribution.d.ts.map +1 -0
- package/dist/manager/session/attribution.js +64 -0
- package/dist/manager/session/attribution.js.map +1 -0
- package/dist/manager/session/turn-recorder.d.ts +14 -0
- package/dist/manager/session/turn-recorder.d.ts.map +1 -1
- package/dist/manager/session/turn-recorder.js +208 -55
- package/dist/manager/session/turn-recorder.js.map +1 -1
- package/dist/peers/address.d.ts +36 -0
- package/dist/peers/address.d.ts.map +1 -0
- package/dist/peers/address.js +52 -0
- package/dist/peers/address.js.map +1 -0
- package/dist/peers/client.d.ts +47 -0
- package/dist/peers/client.d.ts.map +1 -0
- package/dist/peers/client.js +132 -0
- package/dist/peers/client.js.map +1 -0
- package/dist/peers/dir.d.ts +88 -0
- package/dist/peers/dir.d.ts.map +1 -0
- package/dist/peers/dir.js +139 -0
- package/dist/peers/dir.js.map +1 -0
- package/dist/peers/endpoint.d.ts +144 -0
- package/dist/peers/endpoint.d.ts.map +1 -0
- package/dist/peers/endpoint.js +420 -0
- package/dist/peers/endpoint.js.map +1 -0
- package/dist/peers/envelope.d.ts +42 -0
- package/dist/peers/envelope.d.ts.map +1 -0
- package/dist/peers/envelope.js +110 -0
- package/dist/peers/envelope.js.map +1 -0
- package/dist/peers/index.d.ts +30 -0
- package/dist/peers/index.d.ts.map +1 -0
- package/dist/peers/index.js +22 -0
- package/dist/peers/index.js.map +1 -0
- package/dist/peers/protocol.d.ts +645 -0
- package/dist/peers/protocol.d.ts.map +1 -0
- package/dist/peers/protocol.js +151 -0
- package/dist/peers/protocol.js.map +1 -0
- package/dist/peers/record.d.ts +71 -0
- package/dist/peers/record.d.ts.map +1 -0
- package/dist/peers/record.js +45 -0
- package/dist/peers/record.js.map +1 -0
- package/dist/peers/registry.d.ts +54 -0
- package/dist/peers/registry.d.ts.map +1 -0
- package/dist/peers/registry.js +213 -0
- package/dist/peers/registry.js.map +1 -0
- package/dist/plugin/define.d.ts +24 -0
- package/dist/plugin/define.d.ts.map +1 -0
- package/dist/plugin/define.js +42 -0
- package/dist/plugin/define.js.map +1 -0
- package/dist/plugin/index.d.ts +2 -0
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +1 -0
- package/dist/plugin/index.js.map +1 -1
- package/dist/plugin/lifecycle.d.ts +27 -3
- package/dist/plugin/lifecycle.d.ts.map +1 -1
- package/dist/plugin/lifecycle.js +242 -92
- package/dist/plugin/lifecycle.js.map +1 -1
- package/dist/plugin/resolver.d.ts +2 -2
- package/dist/plugin/resolver.d.ts.map +1 -1
- package/dist/plugin/resolver.js.map +1 -1
- package/dist/plugin/shell-hook.d.ts.map +1 -1
- package/dist/plugin/shell-hook.js +17 -3
- package/dist/plugin/shell-hook.js.map +1 -1
- package/dist/probe/errors.d.ts +2 -1
- package/dist/probe/errors.d.ts.map +1 -1
- package/dist/probe/errors.js +3 -2
- package/dist/probe/errors.js.map +1 -1
- package/dist/prompt/coding-agent-doctrine.d.ts +18 -7
- package/dist/prompt/coding-agent-doctrine.d.ts.map +1 -1
- package/dist/prompt/coding-agent-doctrine.js +11 -6
- package/dist/prompt/coding-agent-doctrine.js.map +1 -1
- package/dist/prompt/contributions.d.ts +4 -1
- package/dist/prompt/contributions.d.ts.map +1 -1
- package/dist/prompt/contributions.js +7 -2
- package/dist/prompt/contributions.js.map +1 -1
- package/dist/prompt/index.d.ts +1 -1
- package/dist/prompt/index.d.ts.map +1 -1
- package/dist/prompt/index.js +1 -1
- package/dist/prompt/index.js.map +1 -1
- package/dist/provider/collect-chat-completion.d.ts +6 -1
- package/dist/provider/collect-chat-completion.d.ts.map +1 -1
- package/dist/provider/collect-chat-completion.js +88 -10
- package/dist/provider/collect-chat-completion.js.map +1 -1
- package/dist/provider/mock.d.ts.map +1 -1
- package/dist/provider/mock.js +23 -6
- package/dist/provider/mock.js.map +1 -1
- package/dist/provider/registry.d.ts +2 -1
- package/dist/provider/registry.d.ts.map +1 -1
- package/dist/provider/registry.js +3 -2
- package/dist/provider/registry.js.map +1 -1
- package/dist/provider/tool-call-framing.d.ts +164 -0
- package/dist/provider/tool-call-framing.d.ts.map +1 -0
- package/dist/provider/tool-call-framing.js +163 -0
- package/dist/provider/tool-call-framing.js.map +1 -0
- package/dist/public-runtime.d.ts +24 -11
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +45 -9
- package/dist/public-runtime.js.map +1 -1
- package/dist/public-tools.d.ts +6 -4
- package/dist/public-tools.d.ts.map +1 -1
- package/dist/public-tools.js +8 -3
- package/dist/public-tools.js.map +1 -1
- package/dist/public-types.d.ts +13 -2
- package/dist/public-types.d.ts.map +1 -1
- package/dist/read-model/registry.d.ts +2 -1
- package/dist/read-model/registry.d.ts.map +1 -1
- package/dist/read-model/registry.js +3 -2
- package/dist/read-model/registry.js.map +1 -1
- package/dist/registry/ManagedRegistry.d.ts +30 -0
- package/dist/registry/ManagedRegistry.d.ts.map +1 -1
- package/dist/registry/ManagedRegistry.js +45 -6
- package/dist/registry/ManagedRegistry.js.map +1 -1
- package/dist/registry/collision.d.ts +57 -0
- package/dist/registry/collision.d.ts.map +1 -0
- package/dist/registry/collision.js +41 -0
- package/dist/registry/collision.js.map +1 -0
- package/dist/registry/command/index.d.ts +5 -3
- package/dist/registry/command/index.d.ts.map +1 -1
- package/dist/registry/command/index.js +6 -4
- package/dist/registry/command/index.js.map +1 -1
- package/dist/registry/index.d.ts +3 -4
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +2 -2
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/plugin/index.d.ts.map +1 -1
- package/dist/registry/plugin/index.js +14 -1
- package/dist/registry/plugin/index.js.map +1 -1
- package/dist/registry/tool/callable.d.ts +7 -7
- package/dist/registry/tool/callable.d.ts.map +1 -1
- package/dist/registry/tool/callable.js +6 -7
- package/dist/registry/tool/callable.js.map +1 -1
- package/dist/registry/tool/execute.d.ts +14 -77
- package/dist/registry/tool/execute.d.ts.map +1 -1
- package/dist/registry/tool/execute.js +15 -727
- package/dist/registry/tool/execute.js.map +1 -1
- package/dist/registry/tool/portable.d.ts +25 -0
- package/dist/registry/tool/portable.d.ts.map +1 -1
- package/dist/registry/tool/portable.js +50 -0
- package/dist/registry/tool/portable.js.map +1 -1
- package/dist/registry/tool/presentation.d.ts +6 -5
- package/dist/registry/tool/presentation.d.ts.map +1 -1
- package/dist/registry/tool/presentation.js +3 -3
- package/dist/registry/tool/presentation.js.map +1 -1
- package/dist/runtime/bidi/session.d.ts +5 -4
- package/dist/runtime/bidi/session.d.ts.map +1 -1
- package/dist/runtime/bidi/session.js +18 -1
- package/dist/runtime/bidi/session.js.map +1 -1
- package/dist/runtime/query/executor/tool-call-admission.d.ts +45 -2
- package/dist/runtime/query/executor/tool-call-admission.d.ts.map +1 -1
- package/dist/runtime/query/executor/tool-call-admission.js +189 -5
- package/dist/runtime/query/executor/tool-call-admission.js.map +1 -1
- package/dist/runtime/query/executor.d.ts +33 -3
- package/dist/runtime/query/executor.d.ts.map +1 -1
- package/dist/runtime/query/executor.js +86 -10
- package/dist/runtime/query/executor.js.map +1 -1
- package/dist/runtime/query/file-evidence-replay.d.ts +1 -1
- package/dist/runtime/query/file-evidence-replay.d.ts.map +1 -1
- package/dist/runtime/query/file-evidence-replay.js +8 -7
- package/dist/runtime/query/file-evidence-replay.js.map +1 -1
- package/dist/runtime/query/fork/prepare.d.ts +4 -1
- package/dist/runtime/query/fork/prepare.d.ts.map +1 -1
- package/dist/runtime/query/fork/prepare.js +4 -0
- package/dist/runtime/query/fork/prepare.js.map +1 -1
- package/dist/runtime/query/guardrail-presets.d.ts +4 -3
- package/dist/runtime/query/guardrail-presets.d.ts.map +1 -1
- package/dist/runtime/query/guardrail-presets.js +4 -3
- package/dist/runtime/query/guardrail-presets.js.map +1 -1
- package/dist/runtime/query/index.d.ts +23 -10
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +149 -70
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js +8 -1
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
- package/dist/runtime/query/iteration/phases/context.d.ts +2 -2
- package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.js +55 -2
- package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.js +342 -116
- package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
- package/dist/runtime/query/iteration/tool-input.d.ts +79 -0
- package/dist/runtime/query/iteration/tool-input.d.ts.map +1 -0
- package/dist/runtime/query/iteration/tool-input.js +291 -0
- package/dist/runtime/query/iteration/tool-input.js.map +1 -0
- package/dist/runtime/query/observation-context.d.ts +2 -2
- package/dist/runtime/query/observation-context.d.ts.map +1 -1
- package/dist/runtime/query/observation-context.js.map +1 -1
- package/dist/runtime/query/prelude-lease.d.ts +18 -0
- package/dist/runtime/query/prelude-lease.d.ts.map +1 -0
- package/dist/runtime/query/prelude-lease.js +121 -0
- package/dist/runtime/query/prelude-lease.js.map +1 -0
- package/dist/runtime/query/prepare-turn.d.ts.map +1 -1
- package/dist/runtime/query/prepare-turn.js +386 -187
- package/dist/runtime/query/prepare-turn.js.map +1 -1
- package/dist/runtime/query/prompt-cache.d.ts +2 -2
- package/dist/runtime/query/prompt-cache.d.ts.map +1 -1
- package/dist/runtime/query/prompt.d.ts +2 -2
- package/dist/runtime/query/prompt.d.ts.map +1 -1
- package/dist/runtime/query/prompt.js +1 -1
- package/dist/runtime/query/prompt.js.map +1 -1
- package/dist/runtime/query/resume-session.d.ts.map +1 -1
- package/dist/runtime/query/resume-session.js +37 -2
- package/dist/runtime/query/resume-session.js.map +1 -1
- package/dist/runtime/query/review-policy.d.ts +22 -3
- package/dist/runtime/query/review-policy.d.ts.map +1 -1
- package/dist/runtime/query/review-policy.js +84 -6
- package/dist/runtime/query/review-policy.js.map +1 -1
- package/dist/runtime/query/tooling.d.ts +3 -2
- package/dist/runtime/query/tooling.d.ts.map +1 -1
- package/dist/runtime/query/tooling.js.map +1 -1
- package/dist/runtime/query/turn-state.d.ts.map +1 -1
- package/dist/runtime/query/turn-state.js +5 -0
- package/dist/runtime/query/turn-state.js.map +1 -1
- package/dist/runtime/system-events.d.ts +112 -0
- package/dist/runtime/system-events.d.ts.map +1 -0
- package/dist/runtime/system-events.js +183 -0
- package/dist/runtime/system-events.js.map +1 -0
- package/dist/scheduler/delegating.d.ts +2 -1
- package/dist/scheduler/delegating.d.ts.map +1 -1
- package/dist/scheduler/delegating.js +3 -2
- package/dist/scheduler/delegating.js.map +1 -1
- package/dist/skills/index.d.ts +1 -1
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +1 -1
- package/dist/skills/index.js.map +1 -1
- package/dist/skills/registry.d.ts +12 -0
- package/dist/skills/registry.d.ts.map +1 -1
- package/dist/skills/registry.js +19 -0
- package/dist/skills/registry.js.map +1 -1
- package/dist/store/evidence/index-page.d.ts +2 -2
- package/dist/store/session-log/conformance.d.ts +1 -1
- package/dist/store/session-log/conformance.d.ts.map +1 -1
- package/dist/store/session-log/conformance.js +49 -8
- package/dist/store/session-log/conformance.js.map +1 -1
- package/dist/store/session-log/core.d.ts +8 -3
- package/dist/store/session-log/core.d.ts.map +1 -1
- package/dist/store/session-log/core.js +2 -1
- package/dist/store/session-log/core.js.map +1 -1
- package/dist/store/session-log/fold.d.ts +12 -0
- package/dist/store/session-log/fold.d.ts.map +1 -1
- package/dist/store/session-log/fold.js +57 -7
- package/dist/store/session-log/fold.js.map +1 -1
- package/dist/store/session-log/index.d.ts +2 -2
- package/dist/store/session-log/index.d.ts.map +1 -1
- package/dist/store/session-log/index.js +1 -1
- package/dist/store/session-log/index.js.map +1 -1
- package/dist/test-support/toolset.d.ts +19 -0
- package/dist/test-support/toolset.d.ts.map +1 -0
- package/dist/test-support/toolset.js +20 -0
- package/dist/test-support/toolset.js.map +1 -0
- package/dist/tools/builtins/bash.d.ts +29 -0
- package/dist/tools/builtins/bash.d.ts.map +1 -1
- package/dist/tools/builtins/bash.js +19 -9
- package/dist/tools/builtins/bash.js.map +1 -1
- package/dist/tools/builtins/browser-url.d.ts +1 -1
- package/dist/tools/builtins/browser-url.js +1 -1
- package/dist/tools/builtins/browser.d.ts +6 -6
- package/dist/tools/builtins/computer-use.d.ts.map +1 -1
- package/dist/tools/builtins/computer-use.js +19 -11
- package/dist/tools/builtins/computer-use.js.map +1 -1
- package/dist/tools/builtins/edit.d.ts.map +1 -1
- package/dist/tools/builtins/edit.js +9 -1
- package/dist/tools/builtins/edit.js.map +1 -1
- package/dist/tools/builtins/json-string-hint.d.ts +15 -0
- package/dist/tools/builtins/json-string-hint.d.ts.map +1 -0
- package/dist/tools/builtins/json-string-hint.js +17 -0
- package/dist/tools/builtins/json-string-hint.js.map +1 -0
- package/dist/tools/builtins/search-tools.d.ts.map +1 -1
- package/dist/tools/builtins/search-tools.js +7 -15
- package/dist/tools/builtins/search-tools.js.map +1 -1
- package/dist/tools/builtins/write-file.d.ts.map +1 -1
- package/dist/tools/builtins/write-file.js +11 -0
- package/dist/tools/builtins/write-file.js.map +1 -1
- package/dist/tools/command-shell.d.ts +10 -0
- package/dist/tools/command-shell.d.ts.map +1 -1
- package/dist/tools/command-shell.js +45 -1
- package/dist/tools/command-shell.js.map +1 -1
- package/dist/tools/coordinator/agent.d.ts.map +1 -1
- package/dist/tools/coordinator/agent.js +5 -0
- package/dist/tools/coordinator/agent.js.map +1 -1
- package/dist/tools/coordinator/ask-user-question.d.ts.map +1 -1
- package/dist/tools/coordinator/ask-user-question.js +26 -13
- package/dist/tools/coordinator/ask-user-question.js.map +1 -1
- package/dist/tools/coordinator/index.d.ts.map +1 -1
- package/dist/tools/coordinator/index.js +5 -0
- package/dist/tools/coordinator/index.js.map +1 -1
- package/dist/tools/coordinator/question-options.d.ts +78 -0
- package/dist/tools/coordinator/question-options.d.ts.map +1 -0
- package/dist/tools/coordinator/question-options.js +153 -0
- package/dist/tools/coordinator/question-options.js.map +1 -0
- package/dist/tools/defineTool.d.ts +10 -0
- package/dist/tools/defineTool.d.ts.map +1 -1
- package/dist/tools/defineTool.js +17 -0
- package/dist/tools/defineTool.js.map +1 -1
- package/dist/tools/memory/search.d.ts.map +1 -1
- package/dist/tools/memory/search.js +4 -1
- package/dist/tools/memory/search.js.map +1 -1
- package/dist/tools/memory/update.d.ts.map +1 -1
- package/dist/tools/memory/update.js +8 -5
- package/dist/tools/memory/update.js.map +1 -1
- package/dist/tools/render-nonce.d.ts +47 -0
- package/dist/tools/render-nonce.d.ts.map +1 -0
- package/dist/tools/render-nonce.js +63 -0
- package/dist/tools/render-nonce.js.map +1 -0
- package/dist/tools/roster.d.ts +46 -19
- package/dist/tools/roster.d.ts.map +1 -1
- package/dist/tools/roster.js +63 -33
- package/dist/tools/roster.js.map +1 -1
- package/dist/tools/schedules/schedule-tool.d.ts.map +1 -1
- package/dist/tools/schedules/schedule-tool.js +94 -14
- package/dist/tools/schedules/schedule-tool.js.map +1 -1
- package/dist/tools/schedules/types.d.ts +52 -6
- package/dist/tools/schedules/types.d.ts.map +1 -1
- package/dist/tools/trusted-read-only.d.ts +9 -5
- package/dist/tools/trusted-read-only.d.ts.map +1 -1
- package/dist/tools/trusted-read-only.js +14 -10
- package/dist/tools/trusted-read-only.js.map +1 -1
- package/dist/tools/untrusted-envelope.d.ts +67 -28
- package/dist/tools/untrusted-envelope.d.ts.map +1 -1
- package/dist/tools/untrusted-envelope.js +108 -59
- package/dist/tools/untrusted-envelope.js.map +1 -1
- package/dist/toolsets/combine.d.ts +44 -0
- package/dist/toolsets/combine.d.ts.map +1 -0
- package/dist/toolsets/combine.js +153 -0
- package/dist/toolsets/combine.js.map +1 -0
- package/dist/toolsets/manager.d.ts +201 -0
- package/dist/toolsets/manager.d.ts.map +1 -0
- package/dist/toolsets/manager.js +837 -0
- package/dist/toolsets/manager.js.map +1 -0
- package/dist/toolsets/source-glob.d.ts +15 -0
- package/dist/toolsets/source-glob.d.ts.map +1 -0
- package/dist/toolsets/source-glob.js +23 -0
- package/dist/toolsets/source-glob.js.map +1 -0
- package/dist/toolsets/toolset.d.ts +20 -0
- package/dist/toolsets/toolset.d.ts.map +1 -0
- package/dist/toolsets/toolset.js +28 -0
- package/dist/toolsets/toolset.js.map +1 -0
- package/dist/toolsets/types.d.ts +128 -0
- package/dist/toolsets/types.d.ts.map +1 -0
- package/dist/toolsets/types.js +33 -0
- package/dist/toolsets/types.js.map +1 -0
- package/dist/toolsets/wrappers.d.ts +59 -0
- package/dist/toolsets/wrappers.d.ts.map +1 -0
- package/dist/toolsets/wrappers.js +165 -0
- package/dist/toolsets/wrappers.js.map +1 -0
- package/dist/types/agent/base.d.ts +27 -16
- package/dist/types/agent/base.d.ts.map +1 -1
- package/dist/types/agent/index.d.ts +1 -0
- package/dist/types/agent/index.d.ts.map +1 -1
- package/dist/types/agent/index.js +1 -0
- package/dist/types/agent/index.js.map +1 -1
- package/dist/types/agent/pipeline.d.ts +2 -0
- package/dist/types/agent/pipeline.d.ts.map +1 -1
- package/dist/types/agent/query.d.ts +117 -0
- package/dist/types/agent/query.d.ts.map +1 -0
- package/dist/types/agent/query.js +2 -0
- package/dist/types/agent/query.js.map +1 -0
- package/dist/types/agent/reactive.d.ts +2 -129
- package/dist/types/agent/reactive.d.ts.map +1 -1
- package/dist/types/agent/router.d.ts +2 -0
- package/dist/types/agent/router.d.ts.map +1 -1
- package/dist/types/agent/supervisor.d.ts +5 -2
- package/dist/types/agent/supervisor.d.ts.map +1 -1
- package/dist/types/authorization/index.d.ts +49 -12
- package/dist/types/authorization/index.d.ts.map +1 -1
- package/dist/types/authorization/index.js +6 -0
- package/dist/types/authorization/index.js.map +1 -1
- package/dist/types/connector/mcp.d.ts +32 -0
- package/dist/types/connector/mcp.d.ts.map +1 -1
- package/dist/types/errors/index.d.ts +15 -0
- package/dist/types/errors/index.d.ts.map +1 -1
- package/dist/types/errors/index.js.map +1 -1
- package/dist/types/hitl/index.d.ts +57 -0
- package/dist/types/hitl/index.d.ts.map +1 -1
- package/dist/types/hitl/index.js.map +1 -1
- package/dist/types/message/index.d.ts +130 -9
- package/dist/types/message/index.d.ts.map +1 -1
- package/dist/types/message/index.js +4 -1
- package/dist/types/message/index.js.map +1 -1
- package/dist/types/plugin/index.d.ts +22 -4
- package/dist/types/plugin/index.d.ts.map +1 -1
- package/dist/types/plugin/index.js +1 -0
- package/dist/types/plugin/index.js.map +1 -1
- package/dist/types/provider/chat.d.ts +5 -0
- package/dist/types/provider/chat.d.ts.map +1 -1
- package/dist/types/provider/config.d.ts +8 -3
- package/dist/types/provider/config.d.ts.map +1 -1
- package/dist/types/provider/stream.d.ts +39 -0
- package/dist/types/provider/stream.d.ts.map +1 -1
- package/dist/types/sandbox/index.d.ts +1 -1
- package/dist/types/session/events.d.ts +14 -3
- package/dist/types/session/events.d.ts.map +1 -1
- package/dist/types/session/events.js.map +1 -1
- package/dist/types/tool/index.d.ts +152 -91
- package/dist/types/tool/index.d.ts.map +1 -1
- package/dist/types/tool/index.js.map +1 -1
- package/dist/types/toolset/index.d.ts +10 -40
- package/dist/types/toolset/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/advisory/history.ts +27 -2
- package/src/advisory/index.ts +1 -1
- package/src/advisory/registry.ts +33 -0
- package/src/agents/AGENTS.md +14 -7
- package/src/agents/PipelineAgent.ts +2 -303
- package/src/agents/QueryAgent.ts +269 -0
- package/src/agents/ReactiveAgent.ts +6 -216
- package/src/agents/RouterAgent.ts +2 -337
- package/src/agents/SupervisorAgent.ts +3 -476
- package/src/agents/defineAgent.ts +13 -2
- package/src/agents/examples/PipelineAgent.ts +302 -0
- package/src/agents/examples/RouterAgent.ts +338 -0
- package/src/agents/examples/SupervisorAgent.ts +472 -0
- package/src/agents/explore.ts +6 -3
- package/src/agents/forward-options.ts +37 -0
- package/src/agents/index.ts +2 -0
- package/src/agents/runAgent.ts +144 -37
- package/src/authorization/command-line.ts +2 -2
- package/src/authorization/gate.ts +21 -1
- package/src/authorization/program.ts +773 -0
- package/src/authorization/reexec-wrapper.ts +589 -0
- package/src/authorization/rules.ts +18 -1
- package/src/authorization/shell-lexer.ts +104 -59
- package/src/bridge/sse/mapper.ts +6 -0
- package/src/capabilities/index.ts +157 -0
- package/src/config/registry.ts +4 -1
- package/src/connector/index.ts +9 -2
- package/src/connector/mcp/adapter.ts +58 -3
- package/src/connector/mcp/client.ts +20 -4
- package/src/connector/mcp/discovery.ts +60 -0
- package/src/connector/mcp/index.ts +13 -0
- package/src/connector/mcp/mcp-toolset.ts +515 -0
- package/src/connector/tools/index.ts +2 -2
- package/src/connector/tools/router.ts +35 -58
- package/src/directory/derive-supervisor.ts +12 -8
- package/src/directory/derive.ts +8 -5
- package/src/execution/code-runtime/types.ts +2 -2
- package/src/invariants/index.ts +4 -1
- package/src/manager/agent/lifecycle.ts +9 -0
- package/src/manager/connector/environment.ts +17 -4
- package/src/manager/connector/index.ts +2 -2
- package/src/manager/connector/tenant.ts +17 -4
- package/src/manager/index.ts +2 -2
- package/src/manager/session/attribution.ts +79 -0
- package/src/manager/session/turn-recorder.ts +211 -55
- package/src/peers/address.ts +58 -0
- package/src/peers/client.ts +202 -0
- package/src/peers/dir.ts +176 -0
- package/src/peers/endpoint.ts +564 -0
- package/src/peers/envelope.ts +121 -0
- package/src/peers/index.ts +96 -0
- package/src/peers/protocol.ts +196 -0
- package/src/peers/record.ts +56 -0
- package/src/peers/registry.ts +241 -0
- package/src/plugin/define.ts +68 -0
- package/src/plugin/index.ts +2 -0
- package/src/plugin/lifecycle.ts +286 -106
- package/src/plugin/resolver.ts +6 -3
- package/src/plugin/shell-hook.ts +21 -5
- package/src/probe/errors.ts +4 -1
- package/src/prompt/coding-agent-doctrine.ts +22 -10
- package/src/prompt/contributions.ts +12 -2
- package/src/prompt/index.ts +1 -0
- package/src/provider/collect-chat-completion.ts +96 -11
- package/src/provider/mock.ts +24 -6
- package/src/provider/registry.ts +4 -1
- package/src/provider/tool-call-framing.ts +226 -0
- package/src/public-runtime.ts +136 -7
- package/src/public-tools.ts +24 -4
- package/src/public-types.ts +60 -6
- package/src/read-model/registry.ts +7 -2
- package/src/registry/ManagedRegistry.ts +57 -6
- package/src/registry/collision.ts +64 -0
- package/src/registry/command/index.ts +7 -3
- package/src/registry/index.ts +3 -9
- package/src/registry/plugin/index.ts +14 -1
- package/src/registry/tool/callable.ts +8 -9
- package/src/registry/tool/execute.ts +16 -846
- package/src/registry/tool/portable.ts +59 -0
- package/src/registry/tool/presentation.ts +6 -5
- package/src/runtime/bidi/session.ts +24 -5
- package/src/runtime/query/executor/tool-call-admission.ts +228 -6
- package/src/runtime/query/executor.ts +110 -12
- package/src/runtime/query/file-evidence-replay.ts +8 -7
- package/src/runtime/query/fork/prepare.ts +6 -1
- package/src/runtime/query/guardrail-presets.ts +4 -3
- package/src/runtime/query/index.ts +199 -101
- package/src/runtime/query/iteration/index.ts +13 -3
- package/src/runtime/query/iteration/phases/compaction.ts +1 -1
- package/src/runtime/query/iteration/phases/context.ts +2 -2
- package/src/runtime/query/iteration/phases/tool-review.ts +59 -2
- package/src/runtime/query/iteration/stream-turn.ts +390 -136
- package/src/runtime/query/iteration/tool-input.ts +284 -0
- package/src/runtime/query/observation-context.ts +2 -2
- package/src/runtime/query/prelude-lease.ts +132 -0
- package/src/runtime/query/prepare-turn.ts +477 -198
- package/src/runtime/query/prompt-cache.ts +2 -2
- package/src/runtime/query/prompt.ts +4 -4
- package/src/runtime/query/resume-session.ts +42 -3
- package/src/runtime/query/review-policy.ts +87 -9
- package/src/runtime/query/tooling.ts +3 -6
- package/src/runtime/query/turn-state.ts +4 -0
- package/src/runtime/system-events.ts +246 -0
- package/src/scheduler/delegating.ts +7 -2
- package/src/skills/index.ts +1 -1
- package/src/skills/registry.ts +25 -0
- package/src/store/session-log/conformance.ts +51 -8
- package/src/store/session-log/core.ts +10 -4
- package/src/store/session-log/fold.ts +33 -7
- package/src/store/session-log/index.ts +2 -0
- package/src/test-support/toolset.ts +23 -0
- package/src/tools/builtins/bash.ts +27 -10
- package/src/tools/builtins/browser-url.ts +1 -1
- package/src/tools/builtins/computer-use.ts +21 -11
- package/src/tools/builtins/edit.ts +12 -2
- package/src/tools/builtins/json-string-hint.ts +16 -0
- package/src/tools/builtins/search-tools.ts +7 -20
- package/src/tools/builtins/write-file.ts +12 -0
- package/src/tools/command-shell.ts +46 -1
- package/src/tools/coordinator/agent.ts +6 -0
- package/src/tools/coordinator/ask-user-question.ts +29 -15
- package/src/tools/coordinator/index.ts +6 -0
- package/src/tools/coordinator/question-options.ts +195 -0
- package/src/tools/defineTool.ts +28 -0
- package/src/tools/memory/search.ts +4 -1
- package/src/tools/memory/update.ts +8 -5
- package/src/tools/render-nonce.ts +69 -0
- package/src/tools/roster.ts +84 -33
- package/src/tools/schedules/schedule-tool.ts +107 -14
- package/src/tools/schedules/types.ts +52 -6
- package/src/tools/trusted-read-only.ts +19 -10
- package/src/tools/untrusted-envelope.ts +121 -57
- package/src/toolsets/combine.ts +181 -0
- package/src/toolsets/manager.ts +996 -0
- package/src/toolsets/source-glob.ts +22 -0
- package/src/toolsets/toolset.ts +31 -0
- package/src/toolsets/types.ts +154 -0
- package/src/toolsets/wrappers.ts +191 -0
- package/src/types/agent/base.ts +29 -16
- package/src/types/agent/index.ts +1 -0
- package/src/types/agent/pipeline.ts +2 -0
- package/src/types/agent/query.ts +129 -0
- package/src/types/agent/reactive.ts +5 -142
- package/src/types/agent/router.ts +2 -0
- package/src/types/agent/supervisor.ts +5 -2
- package/src/types/authorization/index.ts +12 -0
- package/src/types/connector/mcp.ts +32 -0
- package/src/types/errors/index.ts +15 -0
- package/src/types/hitl/index.ts +57 -0
- package/src/types/message/index.ts +135 -7
- package/src/types/plugin/index.ts +44 -21
- package/src/types/provider/chat.ts +5 -0
- package/src/types/provider/config.ts +8 -3
- package/src/types/provider/stream.ts +39 -0
- package/src/types/sandbox/index.ts +1 -1
- package/src/types/session/events.ts +14 -3
- package/src/types/tool/index.ts +154 -105
- package/src/types/toolset/index.ts +10 -47
- package/dist/registry/toolset/catalog.d.ts +0 -42
- package/dist/registry/toolset/catalog.d.ts.map +0 -1
- package/dist/registry/toolset/catalog.js +0 -234
- package/dist/registry/toolset/catalog.js.map +0 -1
- package/src/registry/toolset/catalog.ts +0 -308
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
import { mergeTokenUsage } from '../types/common/index.js';
|
|
2
2
|
import { StreamTextAccumulator } from './stream-text.js';
|
|
3
|
+
import { INTERLEAVED_TOOL_INPUT_PARSE_ERROR, ToolCallIndexer, describeToolCallFramingViolation, isUnindexedFragment, toolCallFramingViolation, } from './tool-call-framing.js';
|
|
4
|
+
/**
|
|
5
|
+
* Whether a streamed argument buffer could still be receiving more of a
|
|
6
|
+
* call's arguments right now: empty, or not yet a complete JSON value. Used
|
|
7
|
+
* only by `ToolCallIndexer.placeUnindexedFragment` to tell which open calls
|
|
8
|
+
* could still be an id-less fragment's target — not to validate a finished
|
|
9
|
+
* call, so it does not need the offset-finding `parseToolArguments` the turn
|
|
10
|
+
* loop uses for the message a model is shown.
|
|
11
|
+
*/
|
|
12
|
+
function canAcceptMoreText(buffer) {
|
|
13
|
+
if (!buffer)
|
|
14
|
+
return true;
|
|
15
|
+
try {
|
|
16
|
+
JSON.parse(buffer);
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
3
23
|
/**
|
|
4
24
|
* Drains a {@link StreamChunk} async iterable into the equivalent
|
|
5
25
|
* non-streaming {@link ChatCompletionResponse}.
|
|
@@ -14,7 +34,12 @@ import { StreamTextAccumulator } from './stream-text.js';
|
|
|
14
34
|
* - ordinary text is concatenated in delta order; identified public text
|
|
15
35
|
* items are preserved and explicit final-answer items select the settled text;
|
|
16
36
|
* - tool calls are bucketed by `index` into the existing
|
|
17
|
-
* `Array<{ id, function: { name, arguments } }>` shape
|
|
37
|
+
* `Array<{ id, function: { name, arguments } }>` shape. Arguments that
|
|
38
|
+
* arrive before the call's id belong to the call at their index and are
|
|
39
|
+
* kept; the id is filled in when it arrives. A stream that puts a second
|
|
40
|
+
* call id on an index is refused with an error naming the violation, as
|
|
41
|
+
* the turn loop refuses it: the second call's arguments used to be
|
|
42
|
+
* appended to the first's, which left one call no tool could run;
|
|
18
43
|
* - reasoning blocks are bucketed by `index` the same way, because the
|
|
19
44
|
* assembled message is the thing a caller replays and
|
|
20
45
|
* {@link ReasoningBlock} is documented as replayed verbatim. This was
|
|
@@ -35,6 +60,7 @@ export async function collectChatCompletion(stream) {
|
|
|
35
60
|
const text = new StreamTextAccumulator();
|
|
36
61
|
let replayState;
|
|
37
62
|
let finishReason = 'stop';
|
|
63
|
+
let finishDetail;
|
|
38
64
|
let usage = {
|
|
39
65
|
promptTokens: 0,
|
|
40
66
|
completionTokens: 0,
|
|
@@ -43,6 +69,8 @@ export async function collectChatCompletion(stream) {
|
|
|
43
69
|
cacheWriteTokens: 0,
|
|
44
70
|
};
|
|
45
71
|
const toolBuckets = new Map();
|
|
72
|
+
// Places a fragment that came without an index; see `ToolCallIndexer`.
|
|
73
|
+
const toolIndexer = new ToolCallIndexer();
|
|
46
74
|
// Same bucketing rule the turn loop uses (`runtime/query/iteration/
|
|
47
75
|
// stream-turn.ts`), so a message assembled here and a message assembled
|
|
48
76
|
// there carry the same blocks in the same order.
|
|
@@ -73,21 +101,51 @@ export async function collectChatCompletion(stream) {
|
|
|
73
101
|
reasoningBuckets.set(reasoning.index, bucket);
|
|
74
102
|
}
|
|
75
103
|
for (const tc of chunk.delta.toolCalls ?? []) {
|
|
76
|
-
|
|
77
|
-
id:
|
|
78
|
-
|
|
79
|
-
argsBuf
|
|
80
|
-
|
|
81
|
-
|
|
104
|
+
if (isUnindexedFragment(tc)) {
|
|
105
|
+
// Neither an id nor an index: never a guess. Evaluated fresh for
|
|
106
|
+
// THIS fragment, not decided once when some call opened.
|
|
107
|
+
const placement = toolIndexer.placeUnindexedFragment((i) => canAcceptMoreText(toolBuckets.get(i)?.argsBuf ?? ''));
|
|
108
|
+
if (typeof placement === 'number') {
|
|
109
|
+
const bucket = toolBuckets.get(placement) ?? { id: '', name: '', argsBuf: '' };
|
|
110
|
+
if (tc.function?.name)
|
|
111
|
+
bucket.name = tc.function.name;
|
|
112
|
+
if (tc.function?.arguments)
|
|
113
|
+
bucket.argsBuf += tc.function.arguments;
|
|
114
|
+
toolBuckets.set(placement, bucket);
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
// More than one open call could still have taken this
|
|
118
|
+
// fragment, or none could: every candidate is unreadable, and
|
|
119
|
+
// the fragment itself is attributed to none of them —
|
|
120
|
+
// appending it to a guess is exactly the splice this exists
|
|
121
|
+
// to refuse.
|
|
122
|
+
for (const candidate of placement.candidates) {
|
|
123
|
+
const bucket = toolBuckets.get(candidate.index);
|
|
124
|
+
if (bucket)
|
|
125
|
+
bucket.unreadable = true;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
continue;
|
|
129
|
+
}
|
|
130
|
+
const index = toolIndexer.indexOf(tc);
|
|
131
|
+
const open = toolBuckets.get(index);
|
|
132
|
+
const violation = toolCallFramingViolation(open, tc, index);
|
|
133
|
+
if (violation) {
|
|
134
|
+
throw new Error(`Provider stream error: ${describeToolCallFramingViolation(violation)}`);
|
|
135
|
+
}
|
|
136
|
+
const bucket = open ?? { id: '', name: '', argsBuf: '' };
|
|
137
|
+
if (tc.id && !bucket.id)
|
|
82
138
|
bucket.id = tc.id;
|
|
83
139
|
if (tc.function?.name)
|
|
84
140
|
bucket.name = tc.function.name;
|
|
85
141
|
if (tc.function?.arguments)
|
|
86
142
|
bucket.argsBuf += tc.function.arguments;
|
|
87
|
-
toolBuckets.set(
|
|
143
|
+
toolBuckets.set(index, bucket);
|
|
88
144
|
}
|
|
89
|
-
if (chunk.finishReason)
|
|
145
|
+
if (chunk.finishReason) {
|
|
90
146
|
finishReason = chunk.finishReason;
|
|
147
|
+
finishDetail = chunk.finishReason === 'length' ? chunk.finishDetail : undefined;
|
|
148
|
+
}
|
|
91
149
|
// Merge (per-field max), not last-write-wins: a late frame that omits
|
|
92
150
|
// input/cache tokens must not zero the counts captured earlier in the stream.
|
|
93
151
|
if (chunk.usage)
|
|
@@ -98,7 +156,26 @@ export async function collectChatCompletion(stream) {
|
|
|
98
156
|
.map(([, b]) => ({
|
|
99
157
|
id: b.id,
|
|
100
158
|
type: 'function',
|
|
101
|
-
|
|
159
|
+
// An interleaved call is never returned with the buffer it
|
|
160
|
+
// accumulated: that buffer may hold another call's spliced-in
|
|
161
|
+
// fragments, or may simply be missing whatever an id-less
|
|
162
|
+
// fragment carried elsewhere instead. Normalized to `{}`, exactly
|
|
163
|
+
// as the turn loop normalizes any other unreadable call.
|
|
164
|
+
function: { name: b.name, arguments: b.unreadable ? '{}' : b.argsBuf },
|
|
165
|
+
...(b.unreadable
|
|
166
|
+
? {
|
|
167
|
+
metadata: {
|
|
168
|
+
inputTruncated: true,
|
|
169
|
+
partialArguments: b.argsBuf,
|
|
170
|
+
inputError: {
|
|
171
|
+
reason: 'malformed',
|
|
172
|
+
parseError: INTERLEAVED_TOOL_INPUT_PARSE_ERROR,
|
|
173
|
+
length: b.argsBuf.length,
|
|
174
|
+
precedingLength: 0,
|
|
175
|
+
},
|
|
176
|
+
},
|
|
177
|
+
}
|
|
178
|
+
: {}),
|
|
102
179
|
}));
|
|
103
180
|
const reasoningBlocks = [...reasoningBuckets.entries()]
|
|
104
181
|
.sort(([a], [b]) => a - b)
|
|
@@ -115,6 +192,7 @@ export async function collectChatCompletion(stream) {
|
|
|
115
192
|
...(replayState !== undefined ? { replayState } : {}),
|
|
116
193
|
},
|
|
117
194
|
finishReason,
|
|
195
|
+
...(finishDetail ? { finishDetail } : {}),
|
|
118
196
|
usage,
|
|
119
197
|
};
|
|
120
198
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect-chat-completion.js","sourceRoot":"","sources":["../../src/provider/collect-chat-completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAI1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"collect-chat-completion.js","sourceRoot":"","sources":["../../src/provider/collect-chat-completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/provider/mock.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,oBAAoB,EACpB,WAAW,EACX,UAAU,EAEV,oBAAoB,EACpB,WAAW,EACX,MAAM,4BAA4B,CAAA;AAUnC;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,eAAgB,YAAW,WAAW;IAClD,QAAQ,CAAC,EAAE,UAAS;IACpB,QAAQ,CAAC,IAAI,uBAAsB;IACnC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,GAAG,SAAS,CAAA;IAEvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAA+D;IACzF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAwC;IACnE,OAAO,CAAC,SAAS,CAAI;IAErB,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,EAAE,CAAK;gBAElC,MAAM,GAAE,UAAe;IASnC,oEAAoE;IACpE,KAAK,IAAI,IAAI;YAKC,KAAK;IAKnB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAMZ,UAAU,CAAC,MAAM,EAAE,oBAAoB,GAAG,aAAa,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/provider/mock.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,oBAAoB,EACpB,WAAW,EACX,UAAU,EAEV,oBAAoB,EACpB,WAAW,EACX,MAAM,4BAA4B,CAAA;AAUnC;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,eAAgB,YAAW,WAAW;IAClD,QAAQ,CAAC,EAAE,UAAS;IACpB,QAAQ,CAAC,IAAI,uBAAsB;IACnC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,GAAG,SAAS,CAAA;IAEvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAA+D;IACzF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAwC;IACnE,OAAO,CAAC,SAAS,CAAI;IAErB,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,EAAE,CAAK;gBAElC,MAAM,GAAE,UAAe;IASnC,oEAAoE;IACpE,KAAK,IAAI,IAAI;YAKC,KAAK;IAKnB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAMZ,UAAU,CAAC,MAAM,EAAE,oBAAoB,GAAG,aAAa,CAAC,WAAW,CAAC;IA6FrE,UAAU;;;;;;;;;;IAeV,WAAW;CAIjB"}
|
package/dist/provider/mock.js
CHANGED
|
@@ -105,8 +105,14 @@ export class MockLLMProvider {
|
|
|
105
105
|
},
|
|
106
106
|
};
|
|
107
107
|
// Arguments arrive as JSON fragments, which is what forces the
|
|
108
|
-
// consumer's partial-JSON buffering to be exercised.
|
|
109
|
-
|
|
108
|
+
// consumer's partial-JSON buffering to be exercised. A truncated
|
|
109
|
+
// call stops halfway, as the output limit stops a real one: it
|
|
110
|
+
// used to send every fragment and only withhold the block close,
|
|
111
|
+
// so the arguments parsed and nothing was truncated at all.
|
|
112
|
+
const fullArgs = call.rawArguments ?? JSON.stringify(call.args ?? {});
|
|
113
|
+
const args = call.truncateArguments === true
|
|
114
|
+
? fullArgs.slice(0, Math.max(1, Math.floor(fullArgs.length / 2)))
|
|
115
|
+
: fullArgs;
|
|
110
116
|
const step = call.argChunkSize ?? Math.max(1, Math.ceil(args.length / 3));
|
|
111
117
|
for (let i = 0; i < args.length; i += step) {
|
|
112
118
|
yield {
|
|
@@ -117,14 +123,25 @@ export class MockLLMProvider {
|
|
|
117
123
|
if (call.throwAfterArguments !== undefined) {
|
|
118
124
|
throw new Error(call.throwAfterArguments);
|
|
119
125
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
126
|
+
// An output limit stops the response where it is, so nothing the
|
|
127
|
+
// script puts after a truncated call is streamed. It used to go on
|
|
128
|
+
// to the next call, which made the cut call one the model had
|
|
129
|
+
// moved on from: malformed, not truncated.
|
|
130
|
+
if (call.truncateArguments === true)
|
|
131
|
+
break;
|
|
132
|
+
yield { id, delta: { toolCallEnd: { index, id: callId } } };
|
|
123
133
|
}
|
|
124
134
|
yield {
|
|
125
135
|
id,
|
|
126
136
|
delta: {},
|
|
127
|
-
finishReason: turn.finishReason ??
|
|
137
|
+
finishReason: turn.finishReason ??
|
|
138
|
+
// A call cut off mid-JSON is what the output limit does, and the
|
|
139
|
+
// finish reason is how a consumer tells that from malformed JSON.
|
|
140
|
+
(toolCalls.some((call) => call.truncateArguments === true)
|
|
141
|
+
? 'length'
|
|
142
|
+
: toolCalls.length > 0
|
|
143
|
+
? 'tool_calls'
|
|
144
|
+
: 'stop'),
|
|
128
145
|
usage: { ...EMPTY_USAGE, ...turn.usage },
|
|
129
146
|
};
|
|
130
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../../src/provider/mock.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../../src/provider/mock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { RegistryCollisionError } from '../registry/collision.js';
|
|
1
2
|
import type { LLMProvider, LLMProviderConstructor, LazyProviderLoader, ProviderCapabilities, ProviderConfigRegistry, ProviderFactoryConfig, ProviderFactoryResult, ProviderType, RegisterLazyOptions, RegisterOptions } from '../types/provider/index.js';
|
|
2
3
|
export declare class UnknownProviderError extends Error {
|
|
3
4
|
readonly providerType: string;
|
|
4
5
|
constructor(providerType: string);
|
|
5
6
|
}
|
|
6
|
-
export declare class DuplicateProviderError extends
|
|
7
|
+
export declare class DuplicateProviderError extends RegistryCollisionError {
|
|
7
8
|
readonly providerType: string;
|
|
8
9
|
constructor(providerType: string);
|
|
9
10
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/provider/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,sBAAsB,EACtB,kBAAkB,EAElB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,MAAM,4BAA4B,CAAA;AAGnC,qBAAa,oBAAqB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;gBAEjB,YAAY,EAAE,MAAM;CAKhC;AAED,qBAAa,sBAAuB,SAAQ,
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/provider/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,EACX,WAAW,EACX,sBAAsB,EACtB,kBAAkB,EAElB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,MAAM,4BAA4B,CAAA;AAGnC,qBAAa,oBAAqB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;gBAEjB,YAAY,EAAE,MAAM;CAKhC;AAED,qBAAa,sBAAuB,SAAQ,sBAAsB;IACjE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;gBAEjB,YAAY,EAAE,MAAM;CAShC;AAED;;;;;;;GAOG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;gBAEjB,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CAMhD;AAED;;;;;GAKG;AACH,qBAAa,2BAA4B,SAAQ,KAAK;IACrD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;gBAEjB,YAAY,EAAE,MAAM;CAOhC;AA2DD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,qBAAa,gBAAgB;IAC5B,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,YAAY,EACrC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,EACvD,IAAI,EAAE,oBAAoB,EAC1B,OAAO,CAAC,EAAE,eAAe,GACvB,IAAI;IASP;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,YAAY,EACzC,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,EACrD,OAAO,CAAC,EAAE,mBAAmB,GAC3B,IAAI;IAYP,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAqB,GAAG,qBAAqB;IAMnE;;;;OAIG;WACU,WAAW,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQvF,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,qBAAqB,GAAG,WAAW;WAWpD,mBAAmB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;IAarF;;;;;;;;OAQG;IACH,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB;IAW1D,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,YAAY;IAItD,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO;IAM9C,MAAM,CAAC,SAAS,IAAI,YAAY,EAAE;CAGlC;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,IAAI,CAItD"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { RegistryCollisionError } from '../registry/collision.js';
|
|
1
2
|
import { PERMISSIVE_PROVIDER_CAPABILITIES } from './capabilities.js';
|
|
2
3
|
export class UnknownProviderError extends Error {
|
|
3
4
|
providerType;
|
|
@@ -7,10 +8,10 @@ export class UnknownProviderError extends Error {
|
|
|
7
8
|
this.providerType = providerType;
|
|
8
9
|
}
|
|
9
10
|
}
|
|
10
|
-
export class DuplicateProviderError extends
|
|
11
|
+
export class DuplicateProviderError extends RegistryCollisionError {
|
|
11
12
|
providerType;
|
|
12
13
|
constructor(providerType) {
|
|
13
|
-
super(`Provider type "${providerType}" is already registered. Pass { replace: true } to override an existing registration.`);
|
|
14
|
+
super('ProviderRegistry', providerType, `Provider type "${providerType}" is already registered. Pass { replace: true } to override an existing registration.`);
|
|
14
15
|
this.name = 'DuplicateProviderError';
|
|
15
16
|
this.providerType = providerType;
|
|
16
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/provider/registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/provider/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import type { StreamChunk } from '../types/provider/stream.js';
|
|
2
|
+
type ToolCallDelta = NonNullable<StreamChunk['delta']['toolCalls']>[number];
|
|
3
|
+
/**
|
|
4
|
+
* A stream that broke tool-call framing: a second call id on an `index`
|
|
5
|
+
* another call holds.
|
|
6
|
+
*
|
|
7
|
+
* The index is what groups a call's fragments, so after this no buffer can be
|
|
8
|
+
* trusted to hold one call's arguments. The second call's arguments used to be
|
|
9
|
+
* appended to the first's; the buffer that reached `JSON.parse` was then not
|
|
10
|
+
* what the model sent, and the model was told its call had been cut off.
|
|
11
|
+
*
|
|
12
|
+
* Nothing else about a call's framing is a violation. Arguments that arrive
|
|
13
|
+
* before the call's id belong to the call at their index and are kept, and a
|
|
14
|
+
* call whose id never arrives is still one call.
|
|
15
|
+
*/
|
|
16
|
+
export interface ToolCallFramingViolation {
|
|
17
|
+
readonly kind: 'index_reused';
|
|
18
|
+
readonly index: number;
|
|
19
|
+
readonly openId: string;
|
|
20
|
+
readonly newId: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Whether this tool-call delta puts a new call on an index another call
|
|
24
|
+
* holds, or `undefined` when it does not.
|
|
25
|
+
*
|
|
26
|
+
* The same id repeated on every fragment is fine: some wires send it each
|
|
27
|
+
* time. Only a different one is a second call.
|
|
28
|
+
*/
|
|
29
|
+
export declare function toolCallFramingViolation(open: {
|
|
30
|
+
readonly id: string;
|
|
31
|
+
} | undefined, delta: ToolCallDelta,
|
|
32
|
+
/** The index the fragment was placed on, when it came without one. */
|
|
33
|
+
index?: number): ToolCallFramingViolation | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Whether a fragment carries neither an index nor an id — the one shape
|
|
36
|
+
* `ToolCallIndexer.indexOf` cannot place by itself, and the only shape
|
|
37
|
+
* {@link ToolCallIndexer.placeUnindexedFragment} is for. A fragment with
|
|
38
|
+
* either goes through `indexOf` instead, unaffected by anything below.
|
|
39
|
+
*/
|
|
40
|
+
export declare function isUnindexedFragment(delta: {
|
|
41
|
+
readonly index?: number;
|
|
42
|
+
readonly id?: string;
|
|
43
|
+
}): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* The index each tool-call fragment of one stream belongs to.
|
|
46
|
+
*
|
|
47
|
+
* A driver sets `index`, and the index is what groups a call's fragments.
|
|
48
|
+
* Some servers leave it out of their `tool_calls` fragments, and a driver
|
|
49
|
+
* that passes the wire value through then sends none. Every such fragment used
|
|
50
|
+
* to land on one `undefined` index: two parallel calls were refused as a
|
|
51
|
+
* reused index, and the turn paused on a stream that had nothing wrong with
|
|
52
|
+
* it but the missing field.
|
|
53
|
+
*
|
|
54
|
+
* A fragment that carries an id, with or without an index, is placed by
|
|
55
|
+
* {@link indexOf}: an id seen before continues its call; a new id names the
|
|
56
|
+
* call the latest fragment went to when that call has no id yet, and starts a
|
|
57
|
+
* call on the next free index otherwise. A fragment that carries an index
|
|
58
|
+
* keeps it, so a well-formed stream is read exactly as before and a real
|
|
59
|
+
* reuse of an index is still refused.
|
|
60
|
+
*
|
|
61
|
+
* A fragment with NEITHER an id nor an index — see
|
|
62
|
+
* {@link isUnindexedFragment} — goes through {@link placeUnindexedFragment}
|
|
63
|
+
* instead, which is never a guess: nothing in such a fragment says which call
|
|
64
|
+
* it continues, so the caller is asked, for every call opened so far,
|
|
65
|
+
* whether it could still be receiving more of its arguments right now, and
|
|
66
|
+
* the fragment is placed only when the answer says exactly one call.
|
|
67
|
+
*/
|
|
68
|
+
export declare class ToolCallIndexer {
|
|
69
|
+
private readonly byId;
|
|
70
|
+
private readonly idOf;
|
|
71
|
+
private readonly named;
|
|
72
|
+
private readonly opened;
|
|
73
|
+
private latest;
|
|
74
|
+
private next;
|
|
75
|
+
/** The index this id- or index-bearing fragment belongs to. */
|
|
76
|
+
indexOf(delta: {
|
|
77
|
+
readonly index?: number;
|
|
78
|
+
readonly id?: string;
|
|
79
|
+
}): number;
|
|
80
|
+
private placed;
|
|
81
|
+
/**
|
|
82
|
+
* Where a fragment with neither an id nor an index belongs — see
|
|
83
|
+
* {@link isUnindexedFragment}.
|
|
84
|
+
*
|
|
85
|
+
* Evaluated fresh for every such fragment, never decided once and
|
|
86
|
+
* remembered from when a call opened: a call's buffer can go from
|
|
87
|
+
* accepting more text to not (once it completes) and stay that way, so
|
|
88
|
+
* only the state right now, at each fragment, says which calls could
|
|
89
|
+
* still be its target. `canAccept(index)` is asked for every call opened
|
|
90
|
+
* so far and answers exactly that: true while its buffer is empty or is
|
|
91
|
+
* not yet a complete JSON value (it could still be receiving more), false
|
|
92
|
+
* once the buffer already parses as one complete value (nothing more is
|
|
93
|
+
* missing from it).
|
|
94
|
+
*
|
|
95
|
+
* - No call has opened yet: this fragment starts the first one. An id
|
|
96
|
+
* for it, if the stream sends one, arrives on a later fragment and
|
|
97
|
+
* attaches to it — the ordinary "arguments before the id" case,
|
|
98
|
+
* unchanged.
|
|
99
|
+
* - Exactly one open call can still accept: it is unambiguously that
|
|
100
|
+
* one.
|
|
101
|
+
* - Zero, or more than one, open call can: there is no way to tell which
|
|
102
|
+
* one this fragment was for, or none could take it at all. Every call
|
|
103
|
+
* that could have is returned in `candidates` (empty when none could),
|
|
104
|
+
* and the fragment belongs to none of them — appending it to a guess
|
|
105
|
+
* is exactly the splice this method exists to refuse.
|
|
106
|
+
*/
|
|
107
|
+
placeUnindexedFragment(canAccept: (index: number) => boolean): number | {
|
|
108
|
+
readonly candidates: ReadonlyArray<{
|
|
109
|
+
readonly index: number;
|
|
110
|
+
readonly id?: string;
|
|
111
|
+
}>;
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* The index a block close belongs to: its own, or, when it has none, the
|
|
115
|
+
* call its id names, or the call the latest fragment went to.
|
|
116
|
+
*/
|
|
117
|
+
closedIndex(end: {
|
|
118
|
+
readonly index?: number;
|
|
119
|
+
readonly id?: string;
|
|
120
|
+
}): number | undefined;
|
|
121
|
+
}
|
|
122
|
+
/** One sentence naming the violation, for an error's detail. */
|
|
123
|
+
export declare function describeToolCallFramingViolation(violation: ToolCallFramingViolation): string;
|
|
124
|
+
/**
|
|
125
|
+
* A stream sent a fragment with neither an id nor an index while more than
|
|
126
|
+
* one open call could still have been its target, or while none could.
|
|
127
|
+
*
|
|
128
|
+
* {@link ToolCallIndexer.placeUnindexedFragment} places such a fragment only
|
|
129
|
+
* when exactly one open call can still accept more text right now (its
|
|
130
|
+
* buffer empty, or not yet a complete JSON value). Once two calls are both
|
|
131
|
+
* in that state — the ordinary shape of a chat-completions "open" fragment,
|
|
132
|
+
* name and id with empty arguments, sent for one call right after another,
|
|
133
|
+
* before either has streamed any argument text — a later fragment naming
|
|
134
|
+
* neither could belong to either, and there is no field in it that says
|
|
135
|
+
* which. Guessing (placing it on whichever call was merely most recently
|
|
136
|
+
* active) can splice one call's JSON into the other's, and the splice can
|
|
137
|
+
* still happen to parse, so the wrong call runs with no error at all.
|
|
138
|
+
*
|
|
139
|
+
* `candidates` names every call that could have accepted the fragment: more
|
|
140
|
+
* than one when ambiguous, empty when the fragment matched no open call
|
|
141
|
+
* (nothing to route it to, and nothing to blame for it either).
|
|
142
|
+
*/
|
|
143
|
+
export interface ToolCallInterleaving {
|
|
144
|
+
readonly kind: 'interleaved_without_index';
|
|
145
|
+
readonly candidates: ReadonlyArray<{
|
|
146
|
+
readonly index: number;
|
|
147
|
+
readonly id?: string;
|
|
148
|
+
}>;
|
|
149
|
+
}
|
|
150
|
+
/** One sentence naming the interleaving, for an error's detail or log line. */
|
|
151
|
+
export declare function describeToolCallInterleaving(interleaving: ToolCallInterleaving): string;
|
|
152
|
+
/**
|
|
153
|
+
* The `ToolInputError.parseError` given to every call an interleaving names.
|
|
154
|
+
* Reported `reason: 'malformed'`, never `'truncated'`: nothing here says the
|
|
155
|
+
* response was cut off, and "the model moved on to more text, reasoning or
|
|
156
|
+
* another call" — the only other case {@link ToolInputError} models — is
|
|
157
|
+
* exactly what opening a second call means. A call this leaves open may
|
|
158
|
+
* genuinely have gone on to carry valid JSON, if by chance no ambiguous
|
|
159
|
+
* fragment ever decided its fate; it is still reported unreadable rather
|
|
160
|
+
* than risk having guessed right by luck on some other stream.
|
|
161
|
+
*/
|
|
162
|
+
export declare const INTERLEAVED_TOOL_INPUT_PARSE_ERROR = "its fragments arrived interleaved with another call's, with neither carrying an index to tell them apart";
|
|
163
|
+
export {};
|
|
164
|
+
//# sourceMappingURL=tool-call-framing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-call-framing.d.ts","sourceRoot":"","sources":["../../src/provider/tool-call-framing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE9D,KAAK,aAAa,GAAG,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAE3E;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACvC,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,EACzC,KAAK,EAAE,aAAa;AACpB,sEAAsE;AACtE,KAAK,GAAE,MAAoB,GACzB,wBAAwB,GAAG,SAAS,CAKtC;AAMD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CACpB,GAAG,OAAO,CAEV;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,eAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA4B;IACjD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA4B;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,IAAI,CAAI;IAEhB,+DAA+D;IAC/D,OAAO,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAazE,OAAO,CAAC,MAAM;IAOd;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,sBAAsB,CACrB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,GAEnC,MAAM,GACN;QAAE,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;YAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE;IAqB3F;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,GAAG,SAAS;CAIvF;AAED,gEAAgE;AAChE,wBAAgB,gCAAgC,CAAC,SAAS,EAAE,wBAAwB,GAAG,MAAM,CAE5F;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,2BAA2B,CAAA;IAC1C,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACpF;AAED,+EAA+E;AAC/E,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,oBAAoB,GAAG,MAAM,CAQvF;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,kCAAkC,6GAC4D,CAAA"}
|