@evalops/maestro 0.10.18 → 0.10.21
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/README.md +56 -1
- package/dist/agent/action-approval.d.ts +12 -2
- package/dist/agent/action-approval.d.ts.map +1 -1
- package/dist/agent/action-approval.js +19 -32
- package/dist/agent/action-approval.js.map +1 -1
- package/dist/agent/agent.d.ts +1 -0
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/agent.js +26 -0
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/compaction.d.ts +2 -0
- package/dist/agent/compaction.d.ts.map +1 -1
- package/dist/agent/compaction.js +4 -2
- package/dist/agent/compaction.js.map +1 -1
- package/dist/agent/index.d.ts +1 -1
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +1 -1
- package/dist/agent/index.js.map +1 -1
- package/dist/agent/modes.d.ts +56 -4
- package/dist/agent/modes.d.ts.map +1 -1
- package/dist/agent/modes.js +163 -2
- package/dist/agent/modes.js.map +1 -1
- package/dist/agent/prompt-recovery.d.ts.map +1 -1
- package/dist/agent/prompt-recovery.js +1 -3
- package/dist/agent/prompt-recovery.js.map +1 -1
- package/dist/agent/providers/anthropic.d.ts.map +1 -1
- package/dist/agent/providers/anthropic.js +9 -1
- package/dist/agent/providers/anthropic.js.map +1 -1
- package/dist/agent/providers/codex-app-server.d.ts +12 -0
- package/dist/agent/providers/codex-app-server.d.ts.map +1 -0
- package/dist/agent/providers/codex-app-server.js +788 -0
- package/dist/agent/providers/codex-app-server.js.map +1 -0
- package/dist/agent/providers/google-gemini-cli.js +14 -3
- package/dist/agent/providers/google.js +22 -3
- package/dist/agent/providers/scripted.d.ts +11 -0
- package/dist/agent/providers/scripted.d.ts.map +1 -0
- package/dist/agent/providers/scripted.js +399 -0
- package/dist/agent/providers/scripted.js.map +1 -0
- package/dist/agent/providers/vertex.js +14 -3
- package/dist/agent/scenario-source.d.ts +19 -0
- package/dist/agent/scenario-source.d.ts.map +1 -0
- package/dist/agent/scenario-source.js +112 -0
- package/dist/agent/scenario-source.js.map +1 -0
- package/dist/agent/subagent-specs.d.ts +1 -1
- package/dist/agent/subagent-specs.js +1 -1
- package/dist/agent/subagent-specs.js.map +1 -1
- package/dist/agent/swarm/executor.d.ts +25 -0
- package/dist/agent/swarm/executor.d.ts.map +1 -1
- package/dist/agent/swarm/executor.js +795 -20
- package/dist/agent/swarm/executor.js.map +1 -1
- package/dist/agent/swarm/runtime-events.d.ts +11 -0
- package/dist/agent/swarm/runtime-events.d.ts.map +1 -0
- package/dist/agent/swarm/runtime-events.js +26 -0
- package/dist/agent/swarm/runtime-events.js.map +1 -0
- package/dist/agent/swarm/types.d.ts +78 -0
- package/dist/agent/swarm/types.d.ts.map +1 -1
- package/dist/agent/swarm/types.js.map +1 -1
- package/dist/agent/tracing.d.ts +1 -1
- package/dist/agent/tracing.d.ts.map +1 -1
- package/dist/agent/tracing.js +17 -9
- package/dist/agent/tracing.js.map +1 -1
- package/dist/agent/transport/create-provider-stream.d.ts.map +1 -1
- package/dist/agent/transport/create-provider-stream.js +14 -0
- package/dist/agent/transport/create-provider-stream.js.map +1 -1
- package/dist/agent/transport/stable-stringify.d.ts +2 -0
- package/dist/agent/transport/stable-stringify.d.ts.map +1 -0
- package/dist/agent/transport/stable-stringify.js +14 -0
- package/dist/agent/transport/stable-stringify.js.map +1 -0
- package/dist/agent/transport/tool-execution-bridge.d.ts.map +1 -1
- package/dist/agent/transport/tool-execution-bridge.js +2 -15
- package/dist/agent/transport/tool-execution-bridge.js.map +1 -1
- package/dist/agent/transport/tool-safety-pipeline.d.ts +5 -1
- package/dist/agent/transport/tool-safety-pipeline.d.ts.map +1 -1
- package/dist/agent/transport/tool-safety-pipeline.js +184 -36
- package/dist/agent/transport/tool-safety-pipeline.js.map +1 -1
- package/dist/agent/transport.d.ts +8 -0
- package/dist/agent/transport.d.ts.map +1 -1
- package/dist/agent/transport.js +1613 -68
- package/dist/agent/transport.js.map +1 -1
- package/dist/agent/types.d.ts +170 -2
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/api/enterprise-routes.d.ts.map +1 -1
- package/dist/api/enterprise-routes.js +34 -3
- package/dist/api/enterprise-routes.js.map +1 -1
- package/dist/app-server/in-process-client.d.ts +32 -0
- package/dist/app-server/in-process-client.d.ts.map +1 -0
- package/dist/app-server/in-process-client.js +73 -0
- package/dist/app-server/in-process-client.js.map +1 -0
- package/dist/app-server/session-api.d.ts +36 -0
- package/dist/app-server/session-api.d.ts.map +1 -0
- package/dist/app-server/session-api.js +713 -0
- package/dist/app-server/session-api.js.map +1 -0
- package/dist/approvals/platform-action-approval.d.ts +3 -1
- package/dist/approvals/platform-action-approval.d.ts.map +1 -1
- package/dist/approvals/platform-action-approval.js +16 -9
- package/dist/approvals/platform-action-approval.js.map +1 -1
- package/dist/approvals/service-client.d.ts.map +1 -1
- package/dist/approvals/service-client.js +7 -7
- package/dist/approvals/service-client.js.map +1 -1
- package/dist/audit/logger.d.ts +4 -4
- package/dist/bootstrap/agent-creation-setup.d.ts +4 -0
- package/dist/bootstrap/agent-creation-setup.d.ts.map +1 -1
- package/dist/bootstrap/agent-creation-setup.js +3 -1
- package/dist/bootstrap/agent-creation-setup.js.map +1 -1
- package/dist/bootstrap/auth-setup.js +1 -1
- package/dist/bootstrap/auth-setup.js.map +1 -1
- package/dist/bootstrap/event-subscriptions-setup.d.ts +6 -0
- package/dist/bootstrap/event-subscriptions-setup.d.ts.map +1 -1
- package/dist/bootstrap/event-subscriptions-setup.js +26 -2
- package/dist/bootstrap/event-subscriptions-setup.js.map +1 -1
- package/dist/bootstrap/model-resolution-setup.d.ts.map +1 -1
- package/dist/bootstrap/model-resolution-setup.js +4 -1
- package/dist/bootstrap/model-resolution-setup.js.map +1 -1
- package/dist/bootstrap/tools-setup.d.ts +2 -1
- package/dist/bootstrap/tools-setup.d.ts.map +1 -1
- package/dist/bootstrap/tools-setup.js +5 -1
- package/dist/bootstrap/tools-setup.js.map +1 -1
- package/dist/cli/args.d.ts +9 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +130 -5
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/commands/a2a.d.ts +9 -0
- package/dist/cli/commands/a2a.d.ts.map +1 -0
- package/dist/cli/commands/a2a.js +1714 -0
- package/dist/cli/commands/a2a.js.map +1 -0
- package/dist/cli/commands/agents.d.ts +16 -2
- package/dist/cli/commands/agents.d.ts.map +1 -1
- package/dist/cli/commands/agents.js +223 -35
- package/dist/cli/commands/agents.js.map +1 -1
- package/dist/cli/commands/codex.d.ts +1 -1
- package/dist/cli/commands/codex.d.ts.map +1 -1
- package/dist/cli/commands/codex.js +145 -39
- package/dist/cli/commands/codex.js.map +1 -1
- package/dist/cli/commands/context.d.ts +10 -0
- package/dist/cli/commands/context.d.ts.map +1 -0
- package/dist/cli/commands/context.js +176 -0
- package/dist/cli/commands/context.js.map +1 -0
- package/dist/cli/commands/hosted-runner.d.ts +1 -0
- package/dist/cli/commands/hosted-runner.d.ts.map +1 -1
- package/dist/cli/commands/hosted-runner.js +9 -1
- package/dist/cli/commands/hosted-runner.js.map +1 -1
- package/dist/cli/commands/modes.d.ts +8 -0
- package/dist/cli/commands/modes.d.ts.map +1 -0
- package/dist/cli/commands/modes.js +151 -0
- package/dist/cli/commands/modes.js.map +1 -0
- package/dist/cli/commands/operating-plane.d.ts +14 -0
- package/dist/cli/commands/operating-plane.d.ts.map +1 -0
- package/dist/cli/commands/operating-plane.js +160 -0
- package/dist/cli/commands/operating-plane.js.map +1 -0
- package/dist/cli/commands/run.d.ts +87 -0
- package/dist/cli/commands/run.d.ts.map +1 -0
- package/dist/cli/commands/run.js +356 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/commands/scenario.d.ts +7 -0
- package/dist/cli/commands/scenario.d.ts.map +1 -0
- package/dist/cli/commands/scenario.js +195 -0
- package/dist/cli/commands/scenario.js.map +1 -0
- package/dist/cli/commands/skill.d.ts +7 -0
- package/dist/cli/commands/skill.d.ts.map +1 -0
- package/dist/cli/commands/skill.js +286 -0
- package/dist/cli/commands/skill.js.map +1 -0
- package/dist/cli/headless-protocol.d.ts +55 -1
- package/dist/cli/headless-protocol.d.ts.map +1 -1
- package/dist/cli/headless-protocol.js +446 -7
- package/dist/cli/headless-protocol.js.map +1 -1
- package/dist/cli/headless-runtime-selection.d.ts +38 -0
- package/dist/cli/headless-runtime-selection.d.ts.map +1 -0
- package/dist/cli/headless-runtime-selection.js +48 -0
- package/dist/cli/headless-runtime-selection.js.map +1 -0
- package/dist/cli/headless.d.ts +5 -1
- package/dist/cli/headless.d.ts.map +1 -1
- package/dist/cli/headless.js +11 -1
- package/dist/cli/headless.js.map +1 -1
- package/dist/cli/help.d.ts +3 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +135 -30
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/system-prompt.d.ts +22 -4
- package/dist/cli/system-prompt.d.ts.map +1 -1
- package/dist/cli/system-prompt.js +224 -127
- package/dist/cli/system-prompt.js.map +1 -1
- package/dist/cli-tui/commands/a2a-handlers.d.ts +7 -0
- package/dist/cli-tui/commands/a2a-handlers.d.ts.map +1 -0
- package/dist/cli-tui/commands/a2a-handlers.js +160 -0
- package/dist/cli-tui/commands/a2a-handlers.js.map +1 -0
- package/dist/cli-tui/commands/command-catalog.d.ts.map +1 -1
- package/dist/cli-tui/commands/command-catalog.js +15 -0
- package/dist/cli-tui/commands/command-catalog.js.map +1 -1
- package/dist/cli-tui/commands/command-registry-adapter.js +10 -1
- package/dist/cli-tui/commands/command-registry-adapter.js.map +1 -1
- package/dist/cli-tui/commands/handlers/mode-handler.d.ts.map +1 -1
- package/dist/cli-tui/commands/handlers/mode-handler.js +22 -10
- package/dist/cli-tui/commands/handlers/mode-handler.js.map +1 -1
- package/dist/cli-tui/commands/mcp-handlers.d.ts.map +1 -1
- package/dist/cli-tui/commands/mcp-handlers.js +6 -5
- package/dist/cli-tui/commands/mcp-handlers.js.map +1 -1
- package/dist/cli-tui/commands/types.d.ts +1 -0
- package/dist/cli-tui/commands/types.d.ts.map +1 -1
- package/dist/cli-tui/commands/types.js.map +1 -1
- package/dist/cli-tui/commands/utility-handlers.d.ts +4 -0
- package/dist/cli-tui/commands/utility-handlers.d.ts.map +1 -1
- package/dist/cli-tui/commands/utility-handlers.js +45 -6
- package/dist/cli-tui/commands/utility-handlers.js.map +1 -1
- package/dist/cli-tui/run/run-shell-command.d.ts.map +1 -1
- package/dist/cli-tui/run/run-shell-command.js +14 -5
- package/dist/cli-tui/run/run-shell-command.js.map +1 -1
- package/dist/cli-tui/run/streaming-shell-command.d.ts.map +1 -1
- package/dist/cli-tui/run/streaming-shell-command.js +14 -5
- package/dist/cli-tui/run/streaming-shell-command.js.map +1 -1
- package/dist/cli-tui/selectors/model-selector.d.ts +1 -0
- package/dist/cli-tui/selectors/model-selector.d.ts.map +1 -1
- package/dist/cli-tui/selectors/model-selector.js +6 -2
- package/dist/cli-tui/selectors/model-selector.js.map +1 -1
- package/dist/cli-tui/tui-renderer/command-registry-options.d.ts.map +1 -1
- package/dist/cli-tui/tui-renderer/command-registry-options.js +5 -0
- package/dist/cli-tui/tui-renderer/command-registry-options.js.map +1 -1
- package/dist/cli-tui/utils/commands/review-prompt.d.ts +1 -1
- package/dist/cli-tui/utils/commands/review-prompt.d.ts.map +1 -1
- package/dist/cli-tui/utils/commands/review-prompt.js +8 -3
- package/dist/cli-tui/utils/commands/review-prompt.js.map +1 -1
- package/dist/cli-tui/utils/runtime-badges.d.ts +1 -0
- package/dist/cli-tui/utils/runtime-badges.d.ts.map +1 -1
- package/dist/cli-tui/utils/runtime-badges.js +7 -0
- package/dist/cli-tui/utils/runtime-badges.js.map +1 -1
- package/dist/cli-tui/utils/text-formatting.d.ts +1 -0
- package/dist/cli-tui/utils/text-formatting.d.ts.map +1 -1
- package/dist/cli-tui/utils/text-formatting.js +5 -0
- package/dist/cli-tui/utils/text-formatting.js.map +1 -1
- package/dist/cli.js +49158 -26161
- package/dist/cli.js.map +1 -1
- package/dist/codex/app-server-client.d.ts +139 -0
- package/dist/codex/app-server-client.d.ts.map +1 -0
- package/dist/codex/app-server-client.js +352 -0
- package/dist/codex/app-server-client.js.map +1 -0
- package/dist/codex/compatibility.d.ts +48 -0
- package/dist/codex/compatibility.d.ts.map +1 -0
- package/dist/codex/compatibility.js +344 -0
- package/dist/codex/compatibility.js.map +1 -0
- package/dist/codex/subagent-dispatch-table.d.ts +66 -0
- package/dist/codex/subagent-dispatch-table.d.ts.map +1 -0
- package/dist/codex/subagent-dispatch-table.js +127 -0
- package/dist/codex/subagent-dispatch-table.js.map +1 -0
- package/dist/codex/subagent-workgraph.d.ts +56 -0
- package/dist/codex/subagent-workgraph.d.ts.map +1 -0
- package/dist/codex/subagent-workgraph.js +89 -0
- package/dist/codex/subagent-workgraph.js.map +1 -0
- package/dist/config/constants.d.ts +3 -1
- package/dist/config/constants.d.ts.map +1 -1
- package/dist/config/constants.js +9 -0
- package/dist/config/constants.js.map +1 -1
- package/dist/config/feature-flags.d.ts +10 -1
- package/dist/config/feature-flags.d.ts.map +1 -1
- package/dist/config/feature-flags.js +17 -6
- package/dist/config/feature-flags.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/config/index.js.map +1 -1
- package/dist/config/toml-config.d.ts +32 -0
- package/dist/config/toml-config.d.ts.map +1 -1
- package/dist/config/toml-config.js +152 -43
- package/dist/config/toml-config.js.map +1 -1
- package/dist/connectors/service-client.d.ts.map +1 -1
- package/dist/connectors/service-client.js +4 -7
- package/dist/connectors/service-client.js.map +1 -1
- package/dist/context/manifest-types.d.ts +59 -0
- package/dist/context/manifest-types.d.ts.map +1 -0
- package/dist/context/manifest-types.js +2 -0
- package/dist/context/manifest-types.js.map +1 -0
- package/dist/context/manifest.d.ts +16 -0
- package/dist/context/manifest.d.ts.map +1 -0
- package/dist/context/manifest.js +503 -0
- package/dist/context/manifest.js.map +1 -0
- package/dist/db/schema.d.ts +10 -1
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js.map +1 -1
- package/dist/evalops/env-aliases.d.ts +13 -0
- package/dist/evalops/env-aliases.d.ts.map +1 -0
- package/dist/evalops/env-aliases.js +60 -0
- package/dist/evalops/env-aliases.js.map +1 -0
- package/dist/evalops/managed-context.d.ts.map +1 -1
- package/dist/evalops/managed-context.js +28 -62
- package/dist/evalops/managed-context.js.map +1 -1
- package/dist/guardian/config.d.ts.map +1 -1
- package/dist/guardian/config.js +1 -0
- package/dist/guardian/config.js.map +1 -1
- package/dist/guardian/runner.d.ts +2 -0
- package/dist/guardian/runner.d.ts.map +1 -1
- package/dist/guardian/runner.js +105 -2
- package/dist/guardian/runner.js.map +1 -1
- package/dist/guardian/types.d.ts +1 -0
- package/dist/guardian/types.d.ts.map +1 -1
- package/dist/guardian/types.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +267 -55
- package/dist/main.js.map +1 -1
- package/dist/mcp/config.d.ts.map +1 -1
- package/dist/mcp/config.js +89 -7
- package/dist/mcp/config.js.map +1 -1
- package/dist/mcp/manager.d.ts +5 -1
- package/dist/mcp/manager.d.ts.map +1 -1
- package/dist/mcp/manager.js +159 -4
- package/dist/mcp/manager.js.map +1 -1
- package/dist/mcp/platform-plugin.d.ts.map +1 -1
- package/dist/mcp/platform-plugin.js +9 -26
- package/dist/mcp/platform-plugin.js.map +1 -1
- package/dist/mcp/schema.d.ts +15 -0
- package/dist/mcp/schema.d.ts.map +1 -1
- package/dist/mcp/schema.js +24 -0
- package/dist/mcp/schema.js.map +1 -1
- package/dist/mcp/tool-bridge.d.ts +39 -10
- package/dist/mcp/tool-bridge.d.ts.map +1 -1
- package/dist/mcp/tool-bridge.js +101 -24
- package/dist/mcp/tool-bridge.js.map +1 -1
- package/dist/mcp/types.d.ts +27 -0
- package/dist/mcp/types.d.ts.map +1 -1
- package/dist/mcp/types.js.map +1 -1
- package/dist/mcp/workspace-trust.d.ts +10 -0
- package/dist/mcp/workspace-trust.d.ts.map +1 -0
- package/dist/mcp/workspace-trust.js +295 -0
- package/dist/mcp/workspace-trust.js.map +1 -0
- package/dist/memory/service-client.d.ts +1 -0
- package/dist/memory/service-client.d.ts.map +1 -1
- package/dist/memory/service-client.js +194 -9
- package/dist/memory/service-client.js.map +1 -1
- package/dist/models/builtin.d.ts.map +1 -1
- package/dist/models/builtin.js +66 -25
- package/dist/models/builtin.js.map +1 -1
- package/dist/models/config-loader.d.ts +10 -10
- package/dist/models/config-loader.d.ts.map +1 -1
- package/dist/models/config-loader.js +2 -0
- package/dist/models/config-loader.js.map +1 -1
- package/dist/models/registry.d.ts +1 -0
- package/dist/models/registry.d.ts.map +1 -1
- package/dist/models/registry.js +1 -0
- package/dist/models/registry.js.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/advisor-effort.d.ts +8 -0
- package/dist/node_modules/@evalops/contracts/dist/advisor-effort.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/advisor-effort.js +35 -0
- package/dist/node_modules/@evalops/contracts/dist/advisor-effort.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/delegation-prompt.d.ts +10 -0
- package/dist/node_modules/@evalops/contracts/dist/delegation-prompt.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/delegation-prompt.js +48 -0
- package/dist/node_modules/@evalops/contracts/dist/delegation-prompt.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/guarded-files-settings.d.ts +20 -0
- package/dist/node_modules/@evalops/contracts/dist/guarded-files-settings.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/guarded-files-settings.js +147 -0
- package/dist/node_modules/@evalops/contracts/dist/guarded-files-settings.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-generated.d.ts +40 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-generated.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-generated.js +122 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-generated.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.d.ts +3273 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.js +666 -0
- package/dist/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/index.d.ts +1124 -0
- package/dist/node_modules/@evalops/contracts/dist/index.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/index.js +65 -0
- package/dist/node_modules/@evalops/contracts/dist/index.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts +593 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js +218 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.d.ts +2217 -0
- package/dist/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.js +879 -0
- package/dist/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-app-server.d.ts +185 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-app-server.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-constraints.d.ts +28 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-constraints.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-constraints.js +71 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-constraints.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-server-request.d.ts +140 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-server-request.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-server-request.js +70 -0
- package/dist/node_modules/@evalops/contracts/dist/runtime-server-request.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/scenario.d.ts +191 -0
- package/dist/node_modules/@evalops/contracts/dist/scenario.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/scenario.js +4 -0
- package/dist/node_modules/@evalops/contracts/dist/scenario.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts +3614 -0
- package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/schemas.js +1082 -0
- package/dist/node_modules/@evalops/contracts/dist/schemas.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/package.json +30 -0
- package/dist/node_modules/@evalops/tui/package.json +58 -0
- package/dist/oauth/device-identity.d.ts.map +1 -1
- package/dist/oauth/device-identity.js +1 -3
- package/dist/oauth/device-identity.js.map +1 -1
- package/dist/oauth/evalops.d.ts.map +1 -1
- package/dist/oauth/evalops.js +2 -5
- package/dist/oauth/evalops.js.map +1 -1
- package/dist/opentelemetry.d.ts.map +1 -1
- package/dist/opentelemetry.js +12 -12
- package/dist/opentelemetry.js.map +1 -1
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +11 -0
- package/dist/package-version.js.map +1 -0
- package/dist/packages/constants.d.ts +3 -0
- package/dist/packages/constants.d.ts.map +1 -0
- package/dist/packages/constants.js +3 -0
- package/dist/packages/constants.js.map +1 -0
- package/dist/packages/inspection.d.ts.map +1 -1
- package/dist/packages/inspection.js +2 -1
- package/dist/packages/inspection.js.map +1 -1
- package/dist/packages/search.d.ts.map +1 -1
- package/dist/packages/search.js +1 -1
- package/dist/packages/search.js.map +1 -1
- package/dist/platform/a2a-capability-market.d.ts +21 -0
- package/dist/platform/a2a-capability-market.d.ts.map +1 -0
- package/dist/platform/a2a-capability-market.js +176 -0
- package/dist/platform/a2a-capability-market.js.map +1 -0
- package/dist/platform/a2a-client.d.ts +119 -0
- package/dist/platform/a2a-client.d.ts.map +1 -1
- package/dist/platform/a2a-client.js +413 -24
- package/dist/platform/a2a-client.js.map +1 -1
- package/dist/platform/a2a-fleet.d.ts +41 -0
- package/dist/platform/a2a-fleet.d.ts.map +1 -0
- package/dist/platform/a2a-fleet.js +109 -0
- package/dist/platform/a2a-fleet.js.map +1 -0
- package/dist/platform/a2a-maestro-peer.d.ts +20 -0
- package/dist/platform/a2a-maestro-peer.d.ts.map +1 -0
- package/dist/platform/a2a-maestro-peer.js +176 -0
- package/dist/platform/a2a-maestro-peer.js.map +1 -0
- package/dist/platform/a2a-peer-pairing.d.ts +107 -0
- package/dist/platform/a2a-peer-pairing.d.ts.map +1 -0
- package/dist/platform/a2a-peer-pairing.js +489 -0
- package/dist/platform/a2a-peer-pairing.js.map +1 -0
- package/dist/platform/a2a-peer-registry.d.ts +68 -0
- package/dist/platform/a2a-peer-registry.d.ts.map +1 -0
- package/dist/platform/a2a-peer-registry.js +320 -0
- package/dist/platform/a2a-peer-registry.js.map +1 -0
- package/dist/platform/a2a-task-ledger.d.ts +86 -0
- package/dist/platform/a2a-task-ledger.d.ts.map +1 -0
- package/dist/platform/a2a-task-ledger.js +546 -0
- package/dist/platform/a2a-task-ledger.js.map +1 -0
- package/dist/platform/a2a-work-graph.d.ts +43 -0
- package/dist/platform/a2a-work-graph.d.ts.map +1 -0
- package/dist/platform/a2a-work-graph.js +267 -0
- package/dist/platform/a2a-work-graph.js.map +1 -0
- package/dist/platform/agent-registry-client.d.ts +327 -0
- package/dist/platform/agent-registry-client.d.ts.map +1 -0
- package/dist/platform/agent-registry-client.js +803 -0
- package/dist/platform/agent-registry-client.js.map +1 -0
- package/dist/platform/agent-runtime-client.d.ts +135 -1
- package/dist/platform/agent-runtime-client.d.ts.map +1 -1
- package/dist/platform/agent-runtime-client.js +467 -10
- package/dist/platform/agent-runtime-client.js.map +1 -1
- package/dist/platform/cerebro-facts-client.d.ts.map +1 -1
- package/dist/platform/cerebro-facts-client.js +4 -7
- package/dist/platform/cerebro-facts-client.js.map +1 -1
- package/dist/platform/client.d.ts.map +1 -1
- package/dist/platform/client.js +3 -12
- package/dist/platform/client.js.map +1 -1
- package/dist/platform/core-services.d.ts +68 -0
- package/dist/platform/core-services.d.ts.map +1 -1
- package/dist/platform/core-services.js +68 -0
- package/dist/platform/core-services.js.map +1 -1
- package/dist/platform/fermata-eval-client.d.ts +195 -0
- package/dist/platform/fermata-eval-client.d.ts.map +1 -0
- package/dist/platform/fermata-eval-client.js +146 -0
- package/dist/platform/fermata-eval-client.js.map +1 -0
- package/dist/platform/fermata-scenario-suite.d.ts +99 -0
- package/dist/platform/fermata-scenario-suite.d.ts.map +1 -0
- package/dist/platform/fermata-scenario-suite.js +459 -0
- package/dist/platform/fermata-scenario-suite.js.map +1 -0
- package/dist/platform/maestro-timeline-client.d.ts.map +1 -1
- package/dist/platform/maestro-timeline-client.js +5 -11
- package/dist/platform/maestro-timeline-client.js.map +1 -1
- package/dist/platform/operating-plane-client.d.ts +156 -0
- package/dist/platform/operating-plane-client.d.ts.map +1 -0
- package/dist/platform/operating-plane-client.js +131 -0
- package/dist/platform/operating-plane-client.js.map +1 -0
- package/dist/platform/operating-plane-summary.d.ts +47 -0
- package/dist/platform/operating-plane-summary.d.ts.map +1 -0
- package/dist/platform/operating-plane-summary.js +209 -0
- package/dist/platform/operating-plane-summary.js.map +1 -0
- package/dist/platform/tool-execution-client.d.ts.map +1 -1
- package/dist/platform/tool-execution-client.js +4 -11
- package/dist/platform/tool-execution-client.js.map +1 -1
- package/dist/prompts/service-client.d.ts.map +1 -1
- package/dist/prompts/service-client.js +3 -5
- package/dist/prompts/service-client.js.map +1 -1
- package/dist/prompts/system-prompt.d.ts +3 -0
- package/dist/prompts/system-prompt.d.ts.map +1 -1
- package/dist/prompts/system-prompt.js +13 -3
- package/dist/prompts/system-prompt.js.map +1 -1
- package/dist/prompts/types.d.ts +2 -0
- package/dist/prompts/types.d.ts.map +1 -1
- package/dist/prompts/types.js.map +1 -1
- package/dist/providers/api-keys.d.ts +1 -1
- package/dist/providers/api-keys.d.ts.map +1 -1
- package/dist/providers/api-keys.js +2 -1
- package/dist/providers/api-keys.js.map +1 -1
- package/dist/providers/auth.d.ts.map +1 -1
- package/dist/providers/auth.js +48 -25
- package/dist/providers/auth.js.map +1 -1
- package/dist/remote-runner/attach-client.d.ts.map +1 -1
- package/dist/remote-runner/attach-client.js +1 -0
- package/dist/remote-runner/attach-client.js.map +1 -1
- package/dist/remote-runner/client.d.ts.map +1 -1
- package/dist/remote-runner/client.js +4 -7
- package/dist/remote-runner/client.js.map +1 -1
- package/dist/rpc/rpc-types.d.ts.map +1 -1
- package/dist/rpc/rpc-types.js +1 -0
- package/dist/rpc/rpc-types.js.map +1 -1
- package/dist/safety/action-firewall.d.ts.map +1 -1
- package/dist/safety/action-firewall.js +69 -6
- package/dist/safety/action-firewall.js.map +1 -1
- package/dist/safety/attack-patterns.d.ts.map +1 -1
- package/dist/safety/attack-patterns.js +31 -14
- package/dist/safety/attack-patterns.js.map +1 -1
- package/dist/safety/bash-parser.d.ts.map +1 -1
- package/dist/safety/bash-parser.js +4 -3
- package/dist/safety/bash-parser.js.map +1 -1
- package/dist/safety/execpolicy.d.ts +15 -3
- package/dist/safety/execpolicy.d.ts.map +1 -1
- package/dist/safety/execpolicy.js +248 -37
- package/dist/safety/execpolicy.js.map +1 -1
- package/dist/safety/governance-service-client.d.ts.map +1 -1
- package/dist/safety/governance-service-client.js +4 -7
- package/dist/safety/governance-service-client.js.map +1 -1
- package/dist/safety/guarded-files.d.ts +34 -0
- package/dist/safety/guarded-files.d.ts.map +1 -0
- package/dist/safety/guarded-files.js +372 -0
- package/dist/safety/guarded-files.js.map +1 -0
- package/dist/safety/loop-detector.d.ts.map +1 -1
- package/dist/safety/loop-detector.js +6 -1
- package/dist/safety/loop-detector.js.map +1 -1
- package/dist/safety/permission-profile.d.ts +47 -0
- package/dist/safety/permission-profile.d.ts.map +1 -0
- package/dist/safety/permission-profile.js +349 -0
- package/dist/safety/permission-profile.js.map +1 -0
- package/dist/safety/safety-middleware.d.ts +5 -1
- package/dist/safety/safety-middleware.d.ts.map +1 -1
- package/dist/safety/safety-middleware.js +3 -2
- package/dist/safety/safety-middleware.js.map +1 -1
- package/dist/safety/suspicious-patterns.d.ts.map +1 -1
- package/dist/safety/suspicious-patterns.js +12 -7
- package/dist/safety/suspicious-patterns.js.map +1 -1
- package/dist/safety/tool-categorization.js +1 -1
- package/dist/safety/tool-categorization.js.map +1 -1
- package/dist/safety/validators/path-policy-validator.d.ts.map +1 -1
- package/dist/safety/validators/path-policy-validator.js +7 -0
- package/dist/safety/validators/path-policy-validator.js.map +1 -1
- package/dist/sandbox/index.d.ts +6 -1
- package/dist/sandbox/index.d.ts.map +1 -1
- package/dist/sandbox/index.js +30 -4
- package/dist/sandbox/index.js.map +1 -1
- package/dist/sandbox/native-sandbox.d.ts +3 -0
- package/dist/sandbox/native-sandbox.d.ts.map +1 -1
- package/dist/sandbox/native-sandbox.js +139 -18
- package/dist/sandbox/native-sandbox.js.map +1 -1
- package/dist/sentry.d.ts +17 -0
- package/dist/sentry.d.ts.map +1 -0
- package/dist/sentry.js +91 -0
- package/dist/sentry.js.map +1 -0
- package/dist/server/agent-runtime-ledger.d.ts +141 -0
- package/dist/server/agent-runtime-ledger.d.ts.map +1 -0
- package/dist/server/agent-runtime-ledger.js +334 -0
- package/dist/server/agent-runtime-ledger.js.map +1 -0
- package/dist/server/agent-trajectory-inspection.d.ts +104 -0
- package/dist/server/agent-trajectory-inspection.d.ts.map +1 -0
- package/dist/server/agent-trajectory-inspection.js +168 -0
- package/dist/server/agent-trajectory-inspection.js.map +1 -0
- package/dist/server/agent-trajectory-replay.d.ts +56 -0
- package/dist/server/agent-trajectory-replay.d.ts.map +1 -0
- package/dist/server/agent-trajectory-replay.js +214 -0
- package/dist/server/agent-trajectory-replay.js.map +1 -0
- package/dist/server/agent-trajectory-scenarios.d.ts +109 -0
- package/dist/server/agent-trajectory-scenarios.d.ts.map +1 -0
- package/dist/server/agent-trajectory-scenarios.js +822 -0
- package/dist/server/agent-trajectory-scenarios.js.map +1 -0
- package/dist/server/agent-trajectory-scorers.d.ts +61 -0
- package/dist/server/agent-trajectory-scorers.d.ts.map +1 -0
- package/dist/server/agent-trajectory-scorers.js +162 -0
- package/dist/server/agent-trajectory-scorers.js.map +1 -0
- package/dist/server/agent-trajectory-validation.d.ts +7 -0
- package/dist/server/agent-trajectory-validation.d.ts.map +1 -0
- package/dist/server/agent-trajectory-validation.js +101 -0
- package/dist/server/agent-trajectory-validation.js.map +1 -0
- package/dist/server/agent-trajectory.d.ts +50 -0
- package/dist/server/agent-trajectory.d.ts.map +1 -0
- package/dist/server/agent-trajectory.js +159 -0
- package/dist/server/agent-trajectory.js.map +1 -0
- package/dist/server/app-context.d.ts +18 -0
- package/dist/server/app-context.d.ts.map +1 -1
- package/dist/server/app-context.js.map +1 -1
- package/dist/server/handlers/headless-sessions.d.ts.map +1 -1
- package/dist/server/handlers/headless-sessions.js +64 -27
- package/dist/server/handlers/headless-sessions.js.map +1 -1
- package/dist/server/handlers/health.d.ts +6 -0
- package/dist/server/handlers/health.d.ts.map +1 -1
- package/dist/server/handlers/health.js +6 -0
- package/dist/server/handlers/health.js.map +1 -1
- package/dist/server/handlers/hosted-runner-drain.d.ts +69 -1
- package/dist/server/handlers/hosted-runner-drain.d.ts.map +1 -1
- package/dist/server/handlers/hosted-runner-drain.js +309 -18
- package/dist/server/handlers/hosted-runner-drain.js.map +1 -1
- package/dist/server/handlers/hosted-runner-identity.d.ts +16 -0
- package/dist/server/handlers/hosted-runner-identity.d.ts.map +1 -1
- package/dist/server/handlers/hosted-runner-identity.js +43 -0
- package/dist/server/handlers/hosted-runner-identity.js.map +1 -1
- package/dist/server/handlers/mode.d.ts.map +1 -1
- package/dist/server/handlers/mode.js +3 -1
- package/dist/server/handlers/mode.js.map +1 -1
- package/dist/server/handlers/pending-requests.d.ts.map +1 -1
- package/dist/server/handlers/pending-requests.js +336 -51
- package/dist/server/handlers/pending-requests.js.map +1 -1
- package/dist/server/handlers/platform-a2a-push.d.ts +6 -0
- package/dist/server/handlers/platform-a2a-push.d.ts.map +1 -0
- package/dist/server/handlers/platform-a2a-push.js +136 -0
- package/dist/server/handlers/platform-a2a-push.js.map +1 -0
- package/dist/server/handlers/sessions.d.ts.map +1 -1
- package/dist/server/handlers/sessions.js +21 -1
- package/dist/server/handlers/sessions.js.map +1 -1
- package/dist/server/headless-runtime-service.d.ts +9 -2
- package/dist/server/headless-runtime-service.d.ts.map +1 -1
- package/dist/server/headless-runtime-service.js +39 -0
- package/dist/server/headless-runtime-service.js.map +1 -1
- package/dist/server/hosted-agent-runtime-progress.d.ts +144 -0
- package/dist/server/hosted-agent-runtime-progress.d.ts.map +1 -0
- package/dist/server/hosted-agent-runtime-progress.js +1650 -0
- package/dist/server/hosted-agent-runtime-progress.js.map +1 -0
- package/dist/server/hosted-runner-lease.d.ts +41 -0
- package/dist/server/hosted-runner-lease.d.ts.map +1 -0
- package/dist/server/hosted-runner-lease.js +140 -0
- package/dist/server/hosted-runner-lease.js.map +1 -0
- package/dist/server/hosted-session-manager.d.ts +16 -8
- package/dist/server/hosted-session-manager.d.ts.map +1 -1
- package/dist/server/hosted-session-manager.js +98 -76
- package/dist/server/hosted-session-manager.js.map +1 -1
- package/dist/server/junit-xml.d.ts +2 -0
- package/dist/server/junit-xml.d.ts.map +1 -0
- package/dist/server/junit-xml.js +9 -0
- package/dist/server/junit-xml.js.map +1 -0
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +6 -0
- package/dist/server/routes.js.map +1 -1
- package/dist/server/scenario-recorder.d.ts +56 -0
- package/dist/server/scenario-recorder.d.ts.map +1 -0
- package/dist/server/scenario-recorder.js +109 -0
- package/dist/server/scenario-recorder.js.map +1 -0
- package/dist/server/scripted-scenario-runner.d.ts +46 -0
- package/dist/server/scripted-scenario-runner.d.ts.map +1 -0
- package/dist/server/scripted-scenario-runner.js +190 -0
- package/dist/server/scripted-scenario-runner.js.map +1 -0
- package/dist/server/server-middlewares.d.ts +6 -2
- package/dist/server/server-middlewares.d.ts.map +1 -1
- package/dist/server/server-middlewares.js +8 -2
- package/dist/server/server-middlewares.js.map +1 -1
- package/dist/server/server-request-manager.d.ts +9 -1
- package/dist/server/server-request-manager.d.ts.map +1 -1
- package/dist/server/server-request-manager.js +49 -4
- package/dist/server/server-request-manager.js.map +1 -1
- package/dist/services/intelligent-router/service.d.ts +2 -0
- package/dist/services/intelligent-router/service.d.ts.map +1 -1
- package/dist/services/intelligent-router/service.js +4 -0
- package/dist/services/intelligent-router/service.js.map +1 -1
- package/dist/services/service-authority.d.ts +25 -0
- package/dist/services/service-authority.d.ts.map +1 -0
- package/dist/services/service-authority.js +143 -0
- package/dist/services/service-authority.js.map +1 -0
- package/dist/services/workspace-config/service.d.ts +2 -0
- package/dist/services/workspace-config/service.d.ts.map +1 -1
- package/dist/services/workspace-config/service.js +4 -0
- package/dist/services/workspace-config/service.js.map +1 -1
- package/dist/session/manager.d.ts +8 -2
- package/dist/session/manager.d.ts.map +1 -1
- package/dist/session/manager.js +19 -4
- package/dist/session/manager.js.map +1 -1
- package/dist/session/session-branch.d.ts.map +1 -1
- package/dist/session/session-branch.js +5 -1
- package/dist/session/session-branch.js.map +1 -1
- package/dist/session/session-catalog.d.ts +7 -2
- package/dist/session/session-catalog.d.ts.map +1 -1
- package/dist/session/session-catalog.js +13 -2
- package/dist/session/session-catalog.js.map +1 -1
- package/dist/session/session-context.d.ts +6 -2
- package/dist/session/session-context.d.ts.map +1 -1
- package/dist/session/session-context.js +44 -4
- package/dist/session/session-context.js.map +1 -1
- package/dist/session/session-graph-projection.d.ts +32 -0
- package/dist/session/session-graph-projection.d.ts.map +1 -0
- package/dist/session/session-graph-projection.js +133 -0
- package/dist/session/session-graph-projection.js.map +1 -0
- package/dist/session/types.d.ts +18 -0
- package/dist/session/types.d.ts.map +1 -1
- package/dist/session/types.js +8 -0
- package/dist/session/types.js.map +1 -1
- package/dist/session/wire-format.generated.d.ts +3 -0
- package/dist/session/wire-format.generated.d.ts.map +1 -1
- package/dist/session/wire-format.generated.js +20 -0
- package/dist/session/wire-format.generated.js.map +1 -1
- package/dist/skills/eval-harness.d.ts +38 -0
- package/dist/skills/eval-harness.d.ts.map +1 -0
- package/dist/skills/eval-harness.js +112 -0
- package/dist/skills/eval-harness.js.map +1 -0
- package/dist/skills/index.d.ts +5 -1
- package/dist/skills/index.d.ts.map +1 -1
- package/dist/skills/index.js +5 -1
- package/dist/skills/index.js.map +1 -1
- package/dist/skills/linter.d.ts +36 -0
- package/dist/skills/linter.d.ts.map +1 -0
- package/dist/skills/linter.js +398 -0
- package/dist/skills/linter.js.map +1 -0
- package/dist/skills/loader.d.ts +36 -6
- package/dist/skills/loader.d.ts.map +1 -1
- package/dist/skills/loader.js +169 -86
- package/dist/skills/loader.js.map +1 -1
- package/dist/skills/package-contract.d.ts +45 -0
- package/dist/skills/package-contract.d.ts.map +1 -0
- package/dist/skills/package-contract.js +153 -0
- package/dist/skills/package-contract.js.map +1 -0
- package/dist/skills/runtime-activation.d.ts +68 -0
- package/dist/skills/runtime-activation.d.ts.map +1 -0
- package/dist/skills/runtime-activation.js +228 -0
- package/dist/skills/runtime-activation.js.map +1 -0
- package/dist/skills/service-client.d.ts.map +1 -1
- package/dist/skills/service-client.js +3 -4
- package/dist/skills/service-client.js.map +1 -1
- package/dist/skills/tool.d.ts.map +1 -1
- package/dist/skills/tool.js +2 -0
- package/dist/skills/tool.js.map +1 -1
- package/dist/skills/types.d.ts +14 -0
- package/dist/skills/types.d.ts.map +1 -1
- package/dist/skills/types.js.map +1 -1
- package/dist/telemetry/agent-operating-plane-context.d.ts +24 -0
- package/dist/telemetry/agent-operating-plane-context.d.ts.map +1 -0
- package/dist/telemetry/agent-operating-plane-context.js +54 -0
- package/dist/telemetry/agent-operating-plane-context.js.map +1 -0
- package/dist/telemetry/beacon.d.ts +24 -0
- package/dist/telemetry/beacon.d.ts.map +1 -0
- package/dist/telemetry/beacon.js +115 -0
- package/dist/telemetry/beacon.js.map +1 -0
- package/dist/telemetry/cli-command-aggregator.d.ts +36 -0
- package/dist/telemetry/cli-command-aggregator.d.ts.map +1 -0
- package/dist/telemetry/cli-command-aggregator.js +251 -0
- package/dist/telemetry/cli-command-aggregator.js.map +1 -0
- package/dist/telemetry/cli-startup.d.ts +21 -0
- package/dist/telemetry/cli-startup.d.ts.map +1 -0
- package/dist/telemetry/cli-startup.js +83 -0
- package/dist/telemetry/cli-startup.js.map +1 -0
- package/dist/telemetry/disablement.d.ts +13 -0
- package/dist/telemetry/disablement.d.ts.map +1 -0
- package/dist/telemetry/disablement.js +19 -0
- package/dist/telemetry/disablement.js.map +1 -0
- package/dist/telemetry/index.d.ts +6 -2
- package/dist/telemetry/index.d.ts.map +1 -1
- package/dist/telemetry/index.js +6 -2
- package/dist/telemetry/index.js.map +1 -1
- package/dist/telemetry/maestro-event-bus.d.ts +52 -0
- package/dist/telemetry/maestro-event-bus.d.ts.map +1 -1
- package/dist/telemetry/maestro-event-bus.js +179 -3
- package/dist/telemetry/maestro-event-bus.js.map +1 -1
- package/dist/telemetry/maestro-event-catalog.d.ts +3 -1
- package/dist/telemetry/maestro-event-catalog.d.ts.map +1 -1
- package/dist/telemetry/maestro-event-catalog.js +2 -0
- package/dist/telemetry/maestro-event-catalog.js.map +1 -1
- package/dist/telemetry/maestro-platform-replay-fixture.d.ts.map +1 -1
- package/dist/telemetry/maestro-platform-replay-fixture.js +74 -9
- package/dist/telemetry/maestro-platform-replay-fixture.js.map +1 -1
- package/dist/telemetry/maestro-publisher-conformance-fixture.d.ts +1 -1
- package/dist/telemetry/maestro-publisher-conformance-fixture.d.ts.map +1 -1
- package/dist/telemetry/maestro-publisher-conformance-fixture.js +46 -11
- package/dist/telemetry/maestro-publisher-conformance-fixture.js.map +1 -1
- package/dist/telemetry/mcp-beacon.d.ts +20 -0
- package/dist/telemetry/mcp-beacon.d.ts.map +1 -0
- package/dist/telemetry/mcp-beacon.js +54 -0
- package/dist/telemetry/mcp-beacon.js.map +1 -0
- package/dist/telemetry/metadata-normalization.d.ts +7 -0
- package/dist/telemetry/metadata-normalization.d.ts.map +1 -0
- package/dist/telemetry/metadata-normalization.js +189 -0
- package/dist/telemetry/metadata-normalization.js.map +1 -0
- package/dist/telemetry/meter-service-client.d.ts.map +1 -1
- package/dist/telemetry/meter-service-client.js +5 -10
- package/dist/telemetry/meter-service-client.js.map +1 -1
- package/dist/telemetry/metrics.d.ts +123 -0
- package/dist/telemetry/metrics.d.ts.map +1 -0
- package/dist/telemetry/metrics.js +184 -0
- package/dist/telemetry/metrics.js.map +1 -0
- package/dist/telemetry/turn-tracker.d.ts +1 -0
- package/dist/telemetry/turn-tracker.d.ts.map +1 -1
- package/dist/telemetry/turn-tracker.js +22 -1
- package/dist/telemetry/turn-tracker.js.map +1 -1
- package/dist/telemetry/wide-events.d.ts +31 -1
- package/dist/telemetry/wide-events.d.ts.map +1 -1
- package/dist/telemetry/wide-events.js +229 -1
- package/dist/telemetry/wide-events.js.map +1 -1
- package/dist/telemetry.d.ts +39 -3
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +160 -3
- package/dist/telemetry.js.map +1 -1
- package/dist/testing/test-verification-hook.d.ts.map +1 -1
- package/dist/testing/test-verification-hook.js +34 -21
- package/dist/testing/test-verification-hook.js.map +1 -1
- package/dist/tools/apply-patch-parser.d.ts +26 -0
- package/dist/tools/apply-patch-parser.d.ts.map +1 -0
- package/dist/tools/apply-patch-parser.js +146 -0
- package/dist/tools/apply-patch-parser.js.map +1 -0
- package/dist/tools/apply-patch.d.ts +42 -0
- package/dist/tools/apply-patch.d.ts.map +1 -0
- package/dist/tools/apply-patch.js +648 -0
- package/dist/tools/apply-patch.js.map +1 -0
- package/dist/tools/ask-user.d.ts +1 -0
- package/dist/tools/ask-user.d.ts.map +1 -1
- package/dist/tools/background/tool-handler.d.ts +1 -0
- package/dist/tools/background/tool-handler.d.ts.map +1 -1
- package/dist/tools/bash.d.ts +1 -0
- package/dist/tools/bash.d.ts.map +1 -1
- package/dist/tools/codesearch.d.ts +1 -0
- package/dist/tools/codesearch.d.ts.map +1 -1
- package/dist/tools/conductor-client.d.ts +1 -0
- package/dist/tools/conductor-client.d.ts.map +1 -1
- package/dist/tools/conductor-client.js +63 -0
- package/dist/tools/conductor-client.js.map +1 -1
- package/dist/tools/diff.d.ts +1 -0
- package/dist/tools/diff.d.ts.map +1 -1
- package/dist/tools/edit.d.ts +1 -0
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/extract-document.d.ts +1 -0
- package/dist/tools/extract-document.d.ts.map +1 -1
- package/dist/tools/find.d.ts +10 -0
- package/dist/tools/find.d.ts.map +1 -1
- package/dist/tools/find.js +236 -27
- package/dist/tools/find.js.map +1 -1
- package/dist/tools/gh.d.ts +3 -0
- package/dist/tools/gh.d.ts.map +1 -1
- package/dist/tools/index.d.ts +50 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/list.d.ts +1 -0
- package/dist/tools/list.d.ts.map +1 -1
- package/dist/tools/notebook.d.ts +1 -0
- package/dist/tools/notebook.d.ts.map +1 -1
- package/dist/tools/oracle.d.ts +1 -0
- package/dist/tools/oracle.d.ts.map +1 -1
- package/dist/tools/oracle.js +17 -32
- package/dist/tools/oracle.js.map +1 -1
- package/dist/tools/parallel-execution.d.ts +13 -2
- package/dist/tools/parallel-execution.d.ts.map +1 -1
- package/dist/tools/parallel-execution.js +178 -7
- package/dist/tools/parallel-execution.js.map +1 -1
- package/dist/tools/parallel-ripgrep.d.ts +1 -0
- package/dist/tools/parallel-ripgrep.d.ts.map +1 -1
- package/dist/tools/pipeline.d.ts +4 -0
- package/dist/tools/pipeline.d.ts.map +1 -1
- package/dist/tools/read.d.ts +1 -0
- package/dist/tools/read.d.ts.map +1 -1
- package/dist/tools/search.d.ts +1 -0
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/status.d.ts +1 -0
- package/dist/tools/status.d.ts.map +1 -1
- package/dist/tools/todo.d.ts +1 -0
- package/dist/tools/todo.d.ts.map +1 -1
- package/dist/tools/tool-dsl.d.ts +5 -1
- package/dist/tools/tool-dsl.d.ts.map +1 -1
- package/dist/tools/tool-dsl.js +1 -0
- package/dist/tools/tool-dsl.js.map +1 -1
- package/dist/tools/tool-result-cache.d.ts.map +1 -1
- package/dist/tools/tool-result-cache.js +1 -0
- package/dist/tools/tool-result-cache.js.map +1 -1
- package/dist/tools/typebox-tool.d.ts.map +1 -1
- package/dist/tools/typebox-tool.js +3 -0
- package/dist/tools/typebox-tool.js.map +1 -1
- package/dist/tools/webfetch.d.ts +1 -0
- package/dist/tools/webfetch.d.ts.map +1 -1
- package/dist/tools/websearch.d.ts +1 -0
- package/dist/tools/websearch.d.ts.map +1 -1
- package/dist/tools/write.d.ts +1 -0
- package/dist/tools/write.d.ts.map +1 -1
- package/dist/utils/abort-error.d.ts +2 -0
- package/dist/utils/abort-error.d.ts.map +1 -0
- package/dist/utils/abort-error.js +7 -0
- package/dist/utils/abort-error.js.map +1 -0
- package/dist/utils/downstream.d.ts.map +1 -1
- package/dist/utils/downstream.js +4 -0
- package/dist/utils/downstream.js.map +1 -1
- package/dist/utils/logger.d.ts +3 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +14 -3
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/path-containment.d.ts +2 -0
- package/dist/utils/path-containment.d.ts.map +1 -0
- package/dist/utils/path-containment.js +14 -0
- package/dist/utils/path-containment.js.map +1 -0
- package/dist/utils/prompt-safe-text.d.ts +7 -0
- package/dist/utils/prompt-safe-text.d.ts.map +1 -0
- package/dist/utils/prompt-safe-text.js +44 -0
- package/dist/utils/prompt-safe-text.js.map +1 -0
- package/dist/version.json +2 -2
- package/dist/web-server.d.ts.map +1 -1
- package/dist/web-server.js +32 -7
- package/dist/web-server.js.map +1 -1
- package/dist/workspace/root-resolver.d.ts +4 -1
- package/dist/workspace/root-resolver.d.ts.map +1 -1
- package/dist/workspace/root-resolver.js +16 -6
- package/dist/workspace/root-resolver.js.map +1 -1
- package/package.json +283 -248
- package/skills/incident-triage/SKILL.md +40 -0
- package/skills/incident-triage/mcp.json +14 -0
- package/skills/incident-triage/reference/triage.md +20 -0
- package/skills/incident-triage/toolbox/incident-timeline +22 -0
- package/skills/incident-triage/toolbox/incident-timeline.cmd +16 -0
- package/skills/pr-review/SKILL.md +40 -0
- package/skills/pr-review/mcp.json +14 -0
- package/skills/pr-review/reference/rubric.md +20 -0
- package/skills/pr-review/toolbox/review-summary +20 -0
- package/skills/pr-review/toolbox/review-summary.cmd +14 -0
- package/skills/release-verification/SKILL.md +40 -0
- package/skills/release-verification/mcp.json +15 -0
- package/skills/release-verification/reference/checklist.md +21 -0
- package/skills/release-verification/toolbox/release-readiness +18 -0
- package/skills/release-verification/toolbox/release-readiness.cmd +12 -0
- package/node_modules/@bufbuild/protobuf/README.md +0 -44
- package/node_modules/@bufbuild/protobuf/dist/cjs/clone.d.ts +0 -6
- package/node_modules/@bufbuild/protobuf/dist/cjs/clone.js +0 -66
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/enum.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/enum.js +0 -31
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/extension.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/extension.js +0 -28
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/file.d.ts +0 -1
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/file.js +0 -18
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/index.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/index.js +0 -39
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/message.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/message.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/service.d.ts +0 -8
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/service.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/symbols.d.ts +0 -135
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/symbols.js +0 -43
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/types.d.ts +0 -75
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv1/types.js +0 -22
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/boot.d.ts +0 -63
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/boot.js +0 -105
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/embed.d.ts +0 -43
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/embed.js +0 -244
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/enum.d.ts +0 -18
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/enum.js +0 -40
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/extension.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/extension.js +0 -28
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/file.d.ts +0 -7
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/file.js +0 -35
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/index.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/index.js +0 -39
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/message.d.ts +0 -15
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/message.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/restore-json-names.d.ts +0 -5
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/restore-json-names.js +0 -29
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/scalar.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/scalar.js +0 -67
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/service.d.ts +0 -8
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/service.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/symbols.d.ts +0 -135
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/symbols.js +0 -72
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/types.d.ts +0 -81
- package/node_modules/@bufbuild/protobuf/dist/cjs/codegenv2/types.js +0 -22
- package/node_modules/@bufbuild/protobuf/dist/cjs/create.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/cjs/create.js +0 -259
- package/node_modules/@bufbuild/protobuf/dist/cjs/descriptors.d.ts +0 -634
- package/node_modules/@bufbuild/protobuf/dist/cjs/descriptors.js +0 -53
- package/node_modules/@bufbuild/protobuf/dist/cjs/equals.d.ts +0 -41
- package/node_modules/@bufbuild/protobuf/dist/cjs/equals.js +0 -204
- package/node_modules/@bufbuild/protobuf/dist/cjs/extensions.d.ts +0 -59
- package/node_modules/@bufbuild/protobuf/dist/cjs/extensions.js +0 -169
- package/node_modules/@bufbuild/protobuf/dist/cjs/fields.d.ts +0 -23
- package/node_modules/@bufbuild/protobuf/dist/cjs/fields.js +0 -45
- package/node_modules/@bufbuild/protobuf/dist/cjs/from-binary.d.ts +0 -34
- package/node_modules/@bufbuild/protobuf/dist/cjs/from-binary.js +0 -241
- package/node_modules/@bufbuild/protobuf/dist/cjs/from-json.d.ts +0 -56
- package/node_modules/@bufbuild/protobuf/dist/cjs/from-json.js +0 -619
- package/node_modules/@bufbuild/protobuf/dist/cjs/index.d.ts +0 -18
- package/node_modules/@bufbuild/protobuf/dist/cjs/index.js +0 -54
- package/node_modules/@bufbuild/protobuf/dist/cjs/is-message.d.ts +0 -7
- package/node_modules/@bufbuild/protobuf/dist/cjs/is-message.js +0 -33
- package/node_modules/@bufbuild/protobuf/dist/cjs/json-value.d.ts +0 -16
- package/node_modules/@bufbuild/protobuf/dist/cjs/json-value.js +0 -15
- package/node_modules/@bufbuild/protobuf/dist/cjs/merge.d.ts +0 -13
- package/node_modules/@bufbuild/protobuf/dist/cjs/merge.js +0 -70
- package/node_modules/@bufbuild/protobuf/dist/cjs/package.json +0 -1
- package/node_modules/@bufbuild/protobuf/dist/cjs/proto-int64.d.ts +0 -98
- package/node_modules/@bufbuild/protobuf/dist/cjs/proto-int64.js +0 -130
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/error.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/error.js +0 -36
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/guard.d.ts +0 -20
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/guard.js +0 -78
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/index.d.ts +0 -8
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/index.js +0 -41
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/names.d.ts +0 -30
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/names.js +0 -115
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/nested-types.d.ts +0 -35
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/nested-types.js +0 -110
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/path.d.ts +0 -107
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/path.js +0 -376
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/reflect-check.d.ts +0 -19
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/reflect-check.js +0 -266
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/reflect-types.d.ts +0 -217
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/reflect-types.js +0 -16
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/reflect.d.ts +0 -43
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/reflect.js +0 -545
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/scalar.d.ts +0 -21
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/scalar.js +0 -102
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/unsafe.d.ts +0 -39
- package/node_modules/@bufbuild/protobuf/dist/cjs/reflect/unsafe.js +0 -149
- package/node_modules/@bufbuild/protobuf/dist/cjs/registry.d.ts +0 -98
- package/node_modules/@bufbuild/protobuf/dist/cjs/registry.js +0 -945
- package/node_modules/@bufbuild/protobuf/dist/cjs/to-binary.d.ts +0 -24
- package/node_modules/@bufbuild/protobuf/dist/cjs/to-binary.js +0 -199
- package/node_modules/@bufbuild/protobuf/dist/cjs/to-json.d.ts +0 -67
- package/node_modules/@bufbuild/protobuf/dist/cjs/to-json.js +0 -391
- package/node_modules/@bufbuild/protobuf/dist/cjs/types.d.ts +0 -128
- package/node_modules/@bufbuild/protobuf/dist/cjs/types.js +0 -15
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/base64-encoding.d.ts +0 -23
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/base64-encoding.js +0 -156
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/binary-encoding.d.ts +0 -266
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/binary-encoding.js +0 -525
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/index.d.ts +0 -5
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/index.js +0 -34
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/size-delimited.d.ts +0 -51
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/size-delimited.js +0 -153
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/text-encoding.d.ts +0 -28
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/text-encoding.js +0 -61
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/text-format.d.ts +0 -13
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/text-format.js +0 -199
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/varint.d.ts +0 -70
- package/node_modules/@bufbuild/protobuf/dist/cjs/wire/varint.js +0 -322
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/any.d.ts +0 -38
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/any.js +0 -75
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/duration.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/duration.js +0 -39
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/any_pb.d.ts +0 -238
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/any_pb.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/api_pb.d.ts +0 -537
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/api_pb.js +0 -39
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/compiler/plugin_pb.d.ts +0 -490
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/compiler/plugin_pb.js +0 -68
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/cpp_features_pb.d.ts +0 -91
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/cpp_features_pb.js +0 -60
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/descriptor_pb.d.ts +0 -4143
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/descriptor_pb.js +0 -892
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/duration_pb.d.ts +0 -161
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/duration_pb.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/empty_pb.d.ts +0 -39
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/empty_pb.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/field_mask_pb.d.ts +0 -424
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/field_mask_pb.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/go_features_pb.d.ts +0 -189
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/go_features_pb.js +0 -126
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/java_features_pb.d.ts +0 -194
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/java_features_pb.js +0 -106
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/source_context_pb.d.ts +0 -43
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/source_context_pb.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/struct_pb.d.ts +0 -195
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/struct_pb.js +0 -59
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/timestamp_pb.d.ts +0 -222
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/timestamp_pb.js +0 -27
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/type_pb.d.ts +0 -722
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/type_pb.js +0 -242
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/wrappers_pb.d.ts +0 -330
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/wrappers_pb.js +0 -67
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/index.d.ts +0 -19
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/index.js +0 -48
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/timestamp.d.ts +0 -21
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/timestamp.js +0 -57
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/wrappers.d.ts +0 -25
- package/node_modules/@bufbuild/protobuf/dist/cjs/wkt/wrappers.js +0 -66
- package/node_modules/@bufbuild/protobuf/dist/esm/clone.d.ts +0 -6
- package/node_modules/@bufbuild/protobuf/dist/esm/clone.js +0 -63
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/enum.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/enum.js +0 -26
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/extension.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/extension.js +0 -25
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/file.d.ts +0 -1
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/file.js +0 -14
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/index.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/index.js +0 -23
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/message.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/message.js +0 -21
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/service.d.ts +0 -8
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/service.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/symbols.d.ts +0 -135
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/symbols.js +0 -40
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/types.d.ts +0 -75
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv1/types.js +0 -21
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/boot.d.ts +0 -63
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/boot.js +0 -101
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/embed.d.ts +0 -43
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/embed.js +0 -239
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/enum.d.ts +0 -18
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/enum.js +0 -36
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/extension.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/extension.js +0 -25
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/file.d.ts +0 -7
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/file.js +0 -32
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/index.d.ts +0 -10
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/index.js +0 -23
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/message.d.ts +0 -15
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/message.js +0 -21
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/restore-json-names.d.ts +0 -5
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/restore-json-names.js +0 -26
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/scalar.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/scalar.js +0 -63
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/service.d.ts +0 -8
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/service.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/symbols.d.ts +0 -135
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/symbols.js +0 -69
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/types.d.ts +0 -81
- package/node_modules/@bufbuild/protobuf/dist/esm/codegenv2/types.js +0 -21
- package/node_modules/@bufbuild/protobuf/dist/esm/create.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/esm/create.js +0 -256
- package/node_modules/@bufbuild/protobuf/dist/esm/descriptors.d.ts +0 -634
- package/node_modules/@bufbuild/protobuf/dist/esm/descriptors.js +0 -50
- package/node_modules/@bufbuild/protobuf/dist/esm/equals.d.ts +0 -41
- package/node_modules/@bufbuild/protobuf/dist/esm/equals.js +0 -201
- package/node_modules/@bufbuild/protobuf/dist/esm/extensions.d.ts +0 -59
- package/node_modules/@bufbuild/protobuf/dist/esm/extensions.js +0 -160
- package/node_modules/@bufbuild/protobuf/dist/esm/fields.d.ts +0 -23
- package/node_modules/@bufbuild/protobuf/dist/esm/fields.js +0 -41
- package/node_modules/@bufbuild/protobuf/dist/esm/from-binary.d.ts +0 -34
- package/node_modules/@bufbuild/protobuf/dist/esm/from-binary.js +0 -236
- package/node_modules/@bufbuild/protobuf/dist/esm/from-json.d.ts +0 -56
- package/node_modules/@bufbuild/protobuf/dist/esm/from-json.js +0 -611
- package/node_modules/@bufbuild/protobuf/dist/esm/index.d.ts +0 -18
- package/node_modules/@bufbuild/protobuf/dist/esm/index.js +0 -28
- package/node_modules/@bufbuild/protobuf/dist/esm/is-message.d.ts +0 -7
- package/node_modules/@bufbuild/protobuf/dist/esm/is-message.js +0 -30
- package/node_modules/@bufbuild/protobuf/dist/esm/json-value.d.ts +0 -16
- package/node_modules/@bufbuild/protobuf/dist/esm/json-value.js +0 -14
- package/node_modules/@bufbuild/protobuf/dist/esm/merge.d.ts +0 -13
- package/node_modules/@bufbuild/protobuf/dist/esm/merge.js +0 -67
- package/node_modules/@bufbuild/protobuf/dist/esm/proto-int64.d.ts +0 -98
- package/node_modules/@bufbuild/protobuf/dist/esm/proto-int64.js +0 -127
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/error.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/error.js +0 -31
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/guard.d.ts +0 -20
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/guard.js +0 -71
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/index.d.ts +0 -8
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/index.js +0 -21
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/names.d.ts +0 -30
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/names.js +0 -109
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/nested-types.d.ts +0 -35
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/nested-types.js +0 -105
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/path.d.ts +0 -107
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/path.js +0 -369
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-check.d.ts +0 -19
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-check.js +0 -260
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-types.d.ts +0 -217
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-types.js +0 -14
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect.d.ts +0 -43
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect.js +0 -540
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/scalar.d.ts +0 -21
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/scalar.js +0 -97
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/unsafe.d.ts +0 -39
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/unsafe.js +0 -140
- package/node_modules/@bufbuild/protobuf/dist/esm/registry.d.ts +0 -98
- package/node_modules/@bufbuild/protobuf/dist/esm/registry.js +0 -939
- package/node_modules/@bufbuild/protobuf/dist/esm/to-binary.d.ts +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/to-binary.js +0 -195
- package/node_modules/@bufbuild/protobuf/dist/esm/to-json.d.ts +0 -67
- package/node_modules/@bufbuild/protobuf/dist/esm/to-json.js +0 -386
- package/node_modules/@bufbuild/protobuf/dist/esm/types.d.ts +0 -128
- package/node_modules/@bufbuild/protobuf/dist/esm/types.js +0 -14
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/base64-encoding.d.ts +0 -23
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/base64-encoding.js +0 -152
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.d.ts +0 -266
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.js +0 -520
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/index.d.ts +0 -5
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/index.js +0 -18
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/size-delimited.d.ts +0 -51
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/size-delimited.js +0 -148
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.d.ts +0 -28
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.js +0 -57
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-format.d.ts +0 -13
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-format.js +0 -195
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/varint.d.ts +0 -70
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/varint.js +0 -313
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/any.d.ts +0 -38
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/any.js +0 -69
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/duration.d.ts +0 -9
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/duration.js +0 -35
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/any_pb.d.ts +0 -238
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/any_pb.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/api_pb.d.ts +0 -537
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/api_pb.js +0 -36
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/compiler/plugin_pb.d.ts +0 -490
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/compiler/plugin_pb.js +0 -65
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/cpp_features_pb.d.ts +0 -91
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/cpp_features_pb.js +0 -57
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/descriptor_pb.d.ts +0 -4143
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/descriptor_pb.js +0 -888
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/duration_pb.d.ts +0 -161
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/duration_pb.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/empty_pb.d.ts +0 -39
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/empty_pb.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/field_mask_pb.d.ts +0 -424
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/field_mask_pb.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/go_features_pb.d.ts +0 -189
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/go_features_pb.js +0 -123
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/java_features_pb.d.ts +0 -194
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/java_features_pb.js +0 -103
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/source_context_pb.d.ts +0 -43
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/source_context_pb.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/struct_pb.d.ts +0 -195
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/struct_pb.js +0 -56
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/timestamp_pb.d.ts +0 -222
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/timestamp_pb.js +0 -24
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/type_pb.d.ts +0 -722
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/type_pb.js +0 -239
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/wrappers_pb.d.ts +0 -330
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/wrappers_pb.js +0 -64
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/index.d.ts +0 -19
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/index.js +0 -32
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/timestamp.d.ts +0 -21
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/timestamp.js +0 -50
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/wrappers.d.ts +0 -25
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/wrappers.js +0 -61
- package/node_modules/@bufbuild/protobuf/package.json +0 -68
- package/node_modules/@evalops/contracts/README.md +0 -69
- package/node_modules/@evalops/contracts/dist/headless-protocol-generated.d.ts +0 -38
- package/node_modules/@evalops/contracts/dist/headless-protocol-generated.d.ts.map +0 -1
- package/node_modules/@evalops/contracts/dist/headless-protocol-generated.js +0 -121
- package/node_modules/@evalops/contracts/dist/headless-protocol-generated.js.map +0 -1
- package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.d.ts +0 -2998
- package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.d.ts.map +0 -1
- package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.js +0 -631
- package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.js.map +0 -1
- package/node_modules/@evalops/contracts/dist/index.d.ts +0 -1110
- package/node_modules/@evalops/contracts/dist/index.d.ts.map +0 -1
- package/node_modules/@evalops/contracts/dist/index.js +0 -59
- package/node_modules/@evalops/contracts/dist/index.js.map +0 -1
- package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.d.ts +0 -2126
- package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.d.ts.map +0 -1
- package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.js +0 -848
- package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.js.map +0 -1
- package/node_modules/@evalops/contracts/dist/runtime-app-server.d.ts +0 -182
- package/node_modules/@evalops/contracts/dist/runtime-app-server.d.ts.map +0 -1
- package/node_modules/@evalops/contracts/dist/runtime-server-request.d.ts +0 -133
- package/node_modules/@evalops/contracts/dist/runtime-server-request.d.ts.map +0 -1
- package/node_modules/@evalops/contracts/dist/runtime-server-request.js +0 -68
- package/node_modules/@evalops/contracts/dist/runtime-server-request.js.map +0 -1
- package/node_modules/@evalops/contracts/dist/schemas.d.ts +0 -3600
- package/node_modules/@evalops/contracts/dist/schemas.d.ts.map +0 -1
- package/node_modules/@evalops/contracts/dist/schemas.js +0 -1066
- package/node_modules/@evalops/contracts/dist/schemas.js.map +0 -1
- package/node_modules/@evalops/contracts/package.json +0 -30
- package/node_modules/@evalops/tui/README.md +0 -255
- package/node_modules/@evalops/tui/dist/testing/index.d.ts +0 -46
- package/node_modules/@evalops/tui/dist/testing/index.d.ts.map +0 -1
- package/node_modules/@evalops/tui/dist/testing/index.js +0 -46
- package/node_modules/@evalops/tui/dist/testing/index.js.map +0 -1
- package/node_modules/@evalops/tui/dist/testing/virtual-terminal.d.ts +0 -147
- package/node_modules/@evalops/tui/dist/testing/virtual-terminal.d.ts.map +0 -1
- package/node_modules/@evalops/tui/dist/testing/virtual-terminal.js +0 -269
- package/node_modules/@evalops/tui/dist/testing/virtual-terminal.js.map +0 -1
- package/node_modules/@evalops/tui/package.json +0 -58
- package/node_modules/@sinclair/typebox/build/cjs/compiler/compiler.d.ts +0 -55
- package/node_modules/@sinclair/typebox/build/cjs/compiler/compiler.js +0 -670
- package/node_modules/@sinclair/typebox/build/cjs/compiler/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/compiler/index.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/errors/errors.d.ts +0 -91
- package/node_modules/@sinclair/typebox/build/cjs/errors/errors.js +0 -599
- package/node_modules/@sinclair/typebox/build/cjs/errors/function.d.ts +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/errors/function.js +0 -153
- package/node_modules/@sinclair/typebox/build/cjs/errors/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/errors/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/index.d.ts +0 -71
- package/node_modules/@sinclair/typebox/build/cjs/index.js +0 -97
- package/node_modules/@sinclair/typebox/build/cjs/parser/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/parser/index.js +0 -39
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/guard.d.ts +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/guard.js +0 -86
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/index.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/index.js +0 -45
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/module.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/module.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/parse.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/parse.js +0 -160
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/token.d.ts +0 -8
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/token.js +0 -230
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/types.d.ts +0 -98
- package/node_modules/@sinclair/typebox/build/cjs/parser/runtime/types.js +0 -71
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/index.js +0 -43
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/parse.d.ts +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/parse.js +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/token.d.ts +0 -108
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/token.js +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/types.d.ts +0 -69
- package/node_modules/@sinclair/typebox/build/cjs/parser/static/types.js +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/syntax/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/syntax/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/syntax/mapping.d.ts +0 -167
- package/node_modules/@sinclair/typebox/build/cjs/syntax/mapping.js +0 -491
- package/node_modules/@sinclair/typebox/build/cjs/syntax/parser.d.ts +0 -162
- package/node_modules/@sinclair/typebox/build/cjs/syntax/parser.js +0 -191
- package/node_modules/@sinclair/typebox/build/cjs/syntax/syntax.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/syntax/syntax.js +0 -54
- package/node_modules/@sinclair/typebox/build/cjs/system/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/system/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/system/policy.d.ts +0 -29
- package/node_modules/@sinclair/typebox/build/cjs/system/policy.js +0 -58
- package/node_modules/@sinclair/typebox/build/cjs/system/system.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/system/system.js +0 -43
- package/node_modules/@sinclair/typebox/build/cjs/type/any/any.d.ts +0 -8
- package/node_modules/@sinclair/typebox/build/cjs/type/any/any.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/any/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/any/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/argument/argument.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/argument/argument.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/argument/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/argument/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/array/array.d.ts +0 -28
- package/node_modules/@sinclair/typebox/build/cjs/type/array/array.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/array/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/array/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/async-iterator/async-iterator.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/async-iterator/async-iterator.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/async-iterator/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/async-iterator/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/awaited/awaited.d.ts +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/awaited/awaited.js +0 -41
- package/node_modules/@sinclair/typebox/build/cjs/type/awaited/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/awaited/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/bigint/bigint.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/bigint/bigint.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/bigint/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/bigint/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/boolean/boolean.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/boolean/boolean.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/boolean/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/boolean/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/clone/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/clone/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/clone/type.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/clone/type.js +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/clone/value.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/clone/value.js +0 -73
- package/node_modules/@sinclair/typebox/build/cjs/type/composite/composite.d.ts +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/composite/composite.js +0 -46
- package/node_modules/@sinclair/typebox/build/cjs/type/composite/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/composite/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/computed/computed.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/computed/computed.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/computed/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/computed/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/const/const.d.ts +0 -27
- package/node_modules/@sinclair/typebox/build/cjs/type/const/const.js +0 -58
- package/node_modules/@sinclair/typebox/build/cjs/type/const/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/const/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor/constructor.d.ts +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor/constructor.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor-parameters/constructor-parameters.d.ts +0 -7
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor-parameters/constructor-parameters.js +0 -44
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor-parameters/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/constructor-parameters/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/create/immutable.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/create/immutable.js +0 -70
- package/node_modules/@sinclair/typebox/build/cjs/type/create/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/create/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/create/type.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/create/type.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/date/date.d.ts +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/date/date.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/date/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/date/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/discard/discard.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/discard/discard.js +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/discard/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/discard/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/enum/enum.d.ts +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/enum/enum.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/enum/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/enum/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/error/error.d.ts +0 -4
- package/node_modules/@sinclair/typebox/build/cjs/type/error/error.js +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/error/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/error/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/exclude-from-mapped-result.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/exclude-from-mapped-result.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/exclude-from-template-literal.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/exclude-from-template-literal.js +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/exclude.d.ts +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/exclude.js +0 -29
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/exclude/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-check.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-check.js +0 -641
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-from-mapped-key.d.ts +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-from-mapped-key.js +0 -29
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-from-mapped-result.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-from-mapped-result.js +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-undefined.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends-undefined.js +0 -24
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/extends.js +0 -27
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/index.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/extends/index.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/extract-from-mapped-result.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/extract-from-mapped-result.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/extract-from-template-literal.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/extract-from-template-literal.js +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/extract.d.ts +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/extract.js +0 -29
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/extract/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/function/function.d.ts +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/function/function.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/function/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/function/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/index.js +0 -40
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/kind.d.ts +0 -147
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/kind.js +0 -320
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/type.d.ts +0 -152
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/type.js +0 -597
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/value.d.ts +0 -34
- package/node_modules/@sinclair/typebox/build/cjs/type/guard/value.js +0 -89
- package/node_modules/@sinclair/typebox/build/cjs/type/helpers/helpers.d.ts +0 -42
- package/node_modules/@sinclair/typebox/build/cjs/type/helpers/helpers.js +0 -8
- package/node_modules/@sinclair/typebox/build/cjs/type/helpers/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/helpers/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/index.d.ts +0 -71
- package/node_modules/@sinclair/typebox/build/cjs/type/index.js +0 -88
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/index.d.ts +0 -4
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/index.js +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed-from-mapped-key.d.ts +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed-from-mapped-key.js +0 -26
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed-from-mapped-result.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed-from-mapped-result.js +0 -24
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed-property-keys.d.ts +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed-property-keys.js +0 -36
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed.d.ts +0 -52
- package/node_modules/@sinclair/typebox/build/cjs/type/indexed/indexed.js +0 -98
- package/node_modules/@sinclair/typebox/build/cjs/type/instance-type/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/instance-type/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/instance-type/instance-type.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/type/instance-type/instance-type.js +0 -44
- package/node_modules/@sinclair/typebox/build/cjs/type/instantiate/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/instantiate/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/instantiate/instantiate.d.ts +0 -50
- package/node_modules/@sinclair/typebox/build/cjs/type/instantiate/instantiate.js +0 -153
- package/node_modules/@sinclair/typebox/build/cjs/type/integer/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/integer/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/integer/integer.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/integer/integer.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect-create.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect-create.js +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect-evaluated.d.ts +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect-evaluated.js +0 -42
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect-type.d.ts +0 -15
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect-type.js +0 -4
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/type/intersect/intersect.js +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/capitalize.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/capitalize.js +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/index.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/index.js +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/intrinsic-from-mapped-key.d.ts +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/intrinsic-from-mapped-key.js +0 -30
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/intrinsic.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/intrinsic.js +0 -68
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/lowercase.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/lowercase.js +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/uncapitalize.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/uncapitalize.js +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/uppercase.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/intrinsic/uppercase.js +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/iterator/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/iterator/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/iterator/iterator.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/iterator/iterator.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/index.d.ts +0 -4
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/index.js +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof-from-mapped-result.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof-from-mapped-result.js +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof-property-entries.d.ts +0 -7
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof-property-entries.js +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof-property-keys.d.ts +0 -24
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof-property-keys.js +0 -78
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof.d.ts +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/keyof/keyof.js +0 -40
- package/node_modules/@sinclair/typebox/build/cjs/type/literal/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/literal/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/literal/literal.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/literal/literal.js +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/mapped-key.d.ts +0 -8
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/mapped-key.js +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/mapped-result.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/mapped-result.js +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/mapped.d.ts +0 -47
- package/node_modules/@sinclair/typebox/build/cjs/type/mapped/mapped.js +0 -107
- package/node_modules/@sinclair/typebox/build/cjs/type/module/compute.d.ts +0 -59
- package/node_modules/@sinclair/typebox/build/cjs/type/module/compute.js +0 -205
- package/node_modules/@sinclair/typebox/build/cjs/type/module/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/module/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/module/infer.d.ts +0 -49
- package/node_modules/@sinclair/typebox/build/cjs/type/module/infer.js +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/module/module.d.ts +0 -27
- package/node_modules/@sinclair/typebox/build/cjs/type/module/module.js +0 -38
- package/node_modules/@sinclair/typebox/build/cjs/type/never/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/never/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/never/never.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/never/never.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/not/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/not/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/not/not.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/not/not.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/null/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/null/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/null/null.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/null/null.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/number/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/number/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/number/number.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/number/number.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/object/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/object/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/object/object.d.ts +0 -51
- package/node_modules/@sinclair/typebox/build/cjs/type/object/object.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/omit-from-mapped-key.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/omit-from-mapped-key.js +0 -26
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/omit-from-mapped-result.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/omit-from-mapped-result.js +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/omit.d.ts +0 -36
- package/node_modules/@sinclair/typebox/build/cjs/type/omit/omit.js +0 -75
- package/node_modules/@sinclair/typebox/build/cjs/type/optional/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/optional/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/optional/optional-from-mapped-result.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/optional/optional-from-mapped-result.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/optional/optional.d.ts +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/optional/optional.js +0 -26
- package/node_modules/@sinclair/typebox/build/cjs/type/parameters/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/parameters/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/parameters/parameters.d.ts +0 -7
- package/node_modules/@sinclair/typebox/build/cjs/type/parameters/parameters.js +0 -44
- package/node_modules/@sinclair/typebox/build/cjs/type/partial/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/partial/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/partial/partial-from-mapped-result.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/partial/partial-from-mapped-result.js +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/partial/partial.d.ts +0 -35
- package/node_modules/@sinclair/typebox/build/cjs/type/partial/partial.js +0 -111
- package/node_modules/@sinclair/typebox/build/cjs/type/patterns/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/patterns/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/patterns/patterns.d.ts +0 -8
- package/node_modules/@sinclair/typebox/build/cjs/type/patterns/patterns.js +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/pick-from-mapped-key.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/pick-from-mapped-key.js +0 -28
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/pick-from-mapped-result.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/pick-from-mapped-result.js +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/pick.d.ts +0 -36
- package/node_modules/@sinclair/typebox/build/cjs/type/pick/pick.js +0 -70
- package/node_modules/@sinclair/typebox/build/cjs/type/promise/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/promise/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/promise/promise.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/promise/promise.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly/readonly-from-mapped-result.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly/readonly-from-mapped-result.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly/readonly.d.ts +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly/readonly.js +0 -26
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly-optional/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly-optional/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly-optional/readonly-optional.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/type/readonly-optional/readonly-optional.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/record/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/record/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/record/record.d.ts +0 -71
- package/node_modules/@sinclair/typebox/build/cjs/type/record/record.js +0 -123
- package/node_modules/@sinclair/typebox/build/cjs/type/recursive/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/recursive/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/recursive/recursive.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/recursive/recursive.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/ref/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/ref/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/ref/ref.d.ts +0 -41
- package/node_modules/@sinclair/typebox/build/cjs/type/ref/ref.js +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/regexp/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/regexp/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/regexp/regexp.d.ts +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/regexp/regexp.js +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/registry/format.d.ts +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/registry/format.js +0 -35
- package/node_modules/@sinclair/typebox/build/cjs/type/registry/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/registry/index.js +0 -39
- package/node_modules/@sinclair/typebox/build/cjs/type/registry/type.d.ts +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/registry/type.js +0 -35
- package/node_modules/@sinclair/typebox/build/cjs/type/required/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/required/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/required/required-from-mapped-result.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/required/required-from-mapped-result.js +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/type/required/required.d.ts +0 -35
- package/node_modules/@sinclair/typebox/build/cjs/type/required/required.js +0 -110
- package/node_modules/@sinclair/typebox/build/cjs/type/rest/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/rest/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/rest/rest.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/rest/rest.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/return-type/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/return-type/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/return-type/return-type.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/type/return-type/return-type.js +0 -44
- package/node_modules/@sinclair/typebox/build/cjs/type/schema/anyschema.d.ts +0 -33
- package/node_modules/@sinclair/typebox/build/cjs/type/schema/anyschema.js +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/schema/index.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/type/schema/index.js +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/schema/schema.d.ts +0 -29
- package/node_modules/@sinclair/typebox/build/cjs/type/schema/schema.js +0 -4
- package/node_modules/@sinclair/typebox/build/cjs/type/sets/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/sets/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/sets/set.d.ts +0 -28
- package/node_modules/@sinclair/typebox/build/cjs/type/sets/set.js +0 -59
- package/node_modules/@sinclair/typebox/build/cjs/type/static/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/static/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/static/static.d.ts +0 -39
- package/node_modules/@sinclair/typebox/build/cjs/type/static/static.js +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/string/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/string/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/string/string.d.ts +0 -25
- package/node_modules/@sinclair/typebox/build/cjs/type/string/string.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/symbol/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/symbol/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/symbol/symbol.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/symbol/symbol.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/symbols/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/symbols/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/symbols/symbols.d.ts +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/symbols/symbols.js +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/finite.d.ts +0 -19
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/finite.js +0 -56
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/generate.d.ts +0 -21
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/generate.js +0 -60
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/index.d.ts +0 -7
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/index.js +0 -24
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/parse.d.ts +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/parse.js +0 -174
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/pattern.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/pattern.js +0 -39
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/syntax.d.ts +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/syntax.js +0 -59
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/template-literal.d.ts +0 -30
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/template-literal.js +0 -17
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/union.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/template-literal/union.js +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/transform/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/transform/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/transform/transform.d.ts +0 -30
- package/node_modules/@sinclair/typebox/build/cjs/type/transform/transform.js +0 -47
- package/node_modules/@sinclair/typebox/build/cjs/type/tuple/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/tuple/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/tuple/tuple.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/type/tuple/tuple.js +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/type/index.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/type/type/index.js +0 -51
- package/node_modules/@sinclair/typebox/build/cjs/type/type/javascript.d.ts +0 -64
- package/node_modules/@sinclair/typebox/build/cjs/type/type/javascript.js +0 -104
- package/node_modules/@sinclair/typebox/build/cjs/type/type/json.d.ts +0 -208
- package/node_modules/@sinclair/typebox/build/cjs/type/type/json.js +0 -226
- package/node_modules/@sinclair/typebox/build/cjs/type/type/type.d.ts +0 -59
- package/node_modules/@sinclair/typebox/build/cjs/type/type/type.js +0 -129
- package/node_modules/@sinclair/typebox/build/cjs/type/uint8array/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/uint8array/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/uint8array/uint8array.d.ts +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/uint8array/uint8array.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/undefined/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/undefined/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/undefined/undefined.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/undefined/undefined.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/union/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/union/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union-create.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union-create.js +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union-evaluated.d.ts +0 -13
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union-evaluated.js +0 -40
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union-type.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union-type.js +0 -4
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/type/union/union.js +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/type/unknown/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/unknown/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/unknown/unknown.d.ts +0 -8
- package/node_modules/@sinclair/typebox/build/cjs/type/unknown/unknown.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/unsafe/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/unsafe/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/unsafe/unsafe.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/type/unsafe/unsafe.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/type/void/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/type/void/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/type/void/void.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/type/void/void.js +0 -10
- package/node_modules/@sinclair/typebox/build/cjs/value/assert/assert.d.ts +0 -15
- package/node_modules/@sinclair/typebox/build/cjs/value/assert/assert.js +0 -55
- package/node_modules/@sinclair/typebox/build/cjs/value/assert/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/assert/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/cast/cast.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/value/cast/cast.js +0 -241
- package/node_modules/@sinclair/typebox/build/cjs/value/cast/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/cast/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/check/check.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/value/check/check.js +0 -476
- package/node_modules/@sinclair/typebox/build/cjs/value/check/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/check/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/clean/clean.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/value/clean/clean.js +0 -149
- package/node_modules/@sinclair/typebox/build/cjs/value/clean/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/clean/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/clone/clone.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/value/clone/clone.js +0 -60
- package/node_modules/@sinclair/typebox/build/cjs/value/clone/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/clone/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/convert/convert.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/value/convert/convert.js +0 -264
- package/node_modules/@sinclair/typebox/build/cjs/value/convert/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/convert/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/create/create.d.ts +0 -11
- package/node_modules/@sinclair/typebox/build/cjs/value/create/create.js +0 -474
- package/node_modules/@sinclair/typebox/build/cjs/value/create/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/create/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/decode/decode.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/value/decode/decode.js +0 -14
- package/node_modules/@sinclair/typebox/build/cjs/value/decode/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/decode/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/default/default.d.ts +0 -5
- package/node_modules/@sinclair/typebox/build/cjs/value/default/default.js +0 -176
- package/node_modules/@sinclair/typebox/build/cjs/value/default/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/default/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/delta/delta.d.ts +0 -32
- package/node_modules/@sinclair/typebox/build/cjs/value/delta/delta.js +0 -178
- package/node_modules/@sinclair/typebox/build/cjs/value/delta/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/delta/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/deref/deref.d.ts +0 -12
- package/node_modules/@sinclair/typebox/build/cjs/value/deref/deref.js +0 -36
- package/node_modules/@sinclair/typebox/build/cjs/value/deref/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/deref/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/encode/encode.d.ts +0 -6
- package/node_modules/@sinclair/typebox/build/cjs/value/encode/encode.js +0 -15
- package/node_modules/@sinclair/typebox/build/cjs/value/encode/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/encode/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/equal/equal.d.ts +0 -2
- package/node_modules/@sinclair/typebox/build/cjs/value/equal/equal.js +0 -50
- package/node_modules/@sinclair/typebox/build/cjs/value/equal/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/equal/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/guard/guard.d.ts +0 -74
- package/node_modules/@sinclair/typebox/build/cjs/value/guard/guard.js +0 -195
- package/node_modules/@sinclair/typebox/build/cjs/value/guard/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/guard/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/hash/hash.d.ts +0 -7
- package/node_modules/@sinclair/typebox/build/cjs/value/hash/hash.js +0 -152
- package/node_modules/@sinclair/typebox/build/cjs/value/hash/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/hash/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/index.d.ts +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/value/index.js +0 -53
- package/node_modules/@sinclair/typebox/build/cjs/value/mutate/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/mutate/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/mutate/mutate.d.ts +0 -9
- package/node_modules/@sinclair/typebox/build/cjs/value/mutate/mutate.js +0 -104
- package/node_modules/@sinclair/typebox/build/cjs/value/parse/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/parse/index.js +0 -18
- package/node_modules/@sinclair/typebox/build/cjs/value/parse/parse.d.ts +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/value/parse/parse.js +0 -87
- package/node_modules/@sinclair/typebox/build/cjs/value/pointer/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/pointer/index.js +0 -38
- package/node_modules/@sinclair/typebox/build/cjs/value/pointer/pointer.d.ts +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/value/pointer/pointer.js +0 -126
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/decode.d.ts +0 -22
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/decode.js +0 -214
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/encode.d.ts +0 -23
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/encode.js +0 -225
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/has.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/has.js +0 -133
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/index.d.ts +0 -3
- package/node_modules/@sinclair/typebox/build/cjs/value/transform/index.js +0 -20
- package/node_modules/@sinclair/typebox/build/cjs/value/value/index.d.ts +0 -1
- package/node_modules/@sinclair/typebox/build/cjs/value/value/index.js +0 -38
- package/node_modules/@sinclair/typebox/build/cjs/value/value/value.d.ts +0 -16
- package/node_modules/@sinclair/typebox/build/cjs/value/value/value.js +0 -39
- package/node_modules/@sinclair/typebox/build/esm/compiler/compiler.d.mts +0 -55
- package/node_modules/@sinclair/typebox/build/esm/compiler/compiler.mjs +0 -663
- package/node_modules/@sinclair/typebox/build/esm/compiler/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/compiler/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/errors/errors.d.mts +0 -91
- package/node_modules/@sinclair/typebox/build/esm/errors/errors.mjs +0 -592
- package/node_modules/@sinclair/typebox/build/esm/errors/function.d.mts +0 -21
- package/node_modules/@sinclair/typebox/build/esm/errors/function.mjs +0 -147
- package/node_modules/@sinclair/typebox/build/esm/errors/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/errors/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/index.d.mts +0 -71
- package/node_modules/@sinclair/typebox/build/esm/index.mjs +0 -80
- package/node_modules/@sinclair/typebox/build/esm/parser/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/parser/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/guard.d.mts +0 -23
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/guard.mjs +0 -72
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/index.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/index.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/module.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/module.mjs +0 -17
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/parse.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/parse.mjs +0 -123
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/token.d.mts +0 -8
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/token.mjs +0 -223
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/types.d.mts +0 -98
- package/node_modules/@sinclair/typebox/build/esm/parser/runtime/types.mjs +0 -55
- package/node_modules/@sinclair/typebox/build/esm/parser/static/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/parser/static/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/parser/static/parse.d.mts +0 -20
- package/node_modules/@sinclair/typebox/build/esm/parser/static/parse.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/parser/static/token.d.mts +0 -108
- package/node_modules/@sinclair/typebox/build/esm/parser/static/token.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/parser/static/types.d.mts +0 -69
- package/node_modules/@sinclair/typebox/build/esm/parser/static/types.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/syntax/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/syntax/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/syntax/mapping.d.mts +0 -167
- package/node_modules/@sinclair/typebox/build/esm/syntax/mapping.mjs +0 -386
- package/node_modules/@sinclair/typebox/build/esm/syntax/parser.d.mts +0 -162
- package/node_modules/@sinclair/typebox/build/esm/syntax/parser.mjs +0 -78
- package/node_modules/@sinclair/typebox/build/esm/syntax/syntax.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/syntax/syntax.mjs +0 -16
- package/node_modules/@sinclair/typebox/build/esm/system/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/system/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/system/policy.d.mts +0 -29
- package/node_modules/@sinclair/typebox/build/esm/system/policy.mjs +0 -54
- package/node_modules/@sinclair/typebox/build/esm/system/system.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/system/system.mjs +0 -37
- package/node_modules/@sinclair/typebox/build/esm/type/any/any.d.mts +0 -8
- package/node_modules/@sinclair/typebox/build/esm/type/any/any.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/any/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/any/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/argument/argument.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/argument/argument.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/argument/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/argument/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/array/array.d.mts +0 -28
- package/node_modules/@sinclair/typebox/build/esm/type/array/array.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/array/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/array/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/async-iterator/async-iterator.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/type/async-iterator/async-iterator.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/async-iterator/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/async-iterator/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/awaited/awaited.d.mts +0 -14
- package/node_modules/@sinclair/typebox/build/esm/type/awaited/awaited.mjs +0 -37
- package/node_modules/@sinclair/typebox/build/esm/type/awaited/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/awaited/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/bigint/bigint.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/type/bigint/bigint.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/bigint/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/bigint/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/boolean/boolean.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/boolean/boolean.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/boolean/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/boolean/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/clone/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/clone/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/clone/type.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/clone/type.mjs +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/clone/value.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/clone/value.mjs +0 -36
- package/node_modules/@sinclair/typebox/build/esm/type/composite/composite.d.mts +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/composite/composite.mjs +0 -42
- package/node_modules/@sinclair/typebox/build/esm/type/composite/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/composite/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/computed/computed.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/computed/computed.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/computed/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/computed/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/const/const.d.mts +0 -27
- package/node_modules/@sinclair/typebox/build/esm/type/const/const.mjs +0 -54
- package/node_modules/@sinclair/typebox/build/esm/type/const/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/const/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/constructor/constructor.d.mts +0 -23
- package/node_modules/@sinclair/typebox/build/esm/type/constructor/constructor.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/constructor/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/constructor/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/constructor-parameters/constructor-parameters.d.mts +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/constructor-parameters/constructor-parameters.mjs +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/constructor-parameters/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/constructor-parameters/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/create/immutable.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/create/immutable.mjs +0 -33
- package/node_modules/@sinclair/typebox/build/esm/type/create/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/create/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/create/type.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/create/type.mjs +0 -15
- package/node_modules/@sinclair/typebox/build/esm/type/date/date.d.mts +0 -21
- package/node_modules/@sinclair/typebox/build/esm/type/date/date.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/date/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/date/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/discard/discard.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/discard/discard.mjs +0 -8
- package/node_modules/@sinclair/typebox/build/esm/type/discard/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/discard/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/enum/enum.d.mts +0 -14
- package/node_modules/@sinclair/typebox/build/esm/type/enum/enum.mjs +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/enum/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/enum/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/error/error.d.mts +0 -4
- package/node_modules/@sinclair/typebox/build/esm/type/error/error.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/error/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/error/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-mapped-result.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-mapped-result.mjs +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-template-literal.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-template-literal.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude.d.mts +0 -21
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude.mjs +0 -25
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/exclude/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-check.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-check.mjs +0 -635
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-key.d.mts +0 -14
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-key.mjs +0 -25
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-result.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-result.mjs +0 -19
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-undefined.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends-undefined.mjs +0 -20
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/type/extends/extends.mjs +0 -23
- package/node_modules/@sinclair/typebox/build/esm/type/extends/index.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/extends/index.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-mapped-result.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-mapped-result.mjs +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-template-literal.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-template-literal.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/extract/extract.d.mts +0 -21
- package/node_modules/@sinclair/typebox/build/esm/type/extract/extract.mjs +0 -25
- package/node_modules/@sinclair/typebox/build/esm/type/extract/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/extract/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/function/function.d.mts +0 -23
- package/node_modules/@sinclair/typebox/build/esm/type/function/function.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/function/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/function/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/guard/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/guard/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/guard/kind.d.mts +0 -147
- package/node_modules/@sinclair/typebox/build/esm/type/guard/kind.mjs +0 -235
- package/node_modules/@sinclair/typebox/build/esm/type/guard/type.d.mts +0 -152
- package/node_modules/@sinclair/typebox/build/esm/type/guard/type.mjs +0 -509
- package/node_modules/@sinclair/typebox/build/esm/type/guard/value.d.mts +0 -34
- package/node_modules/@sinclair/typebox/build/esm/type/guard/value.mjs +0 -70
- package/node_modules/@sinclair/typebox/build/esm/type/helpers/helpers.d.mts +0 -42
- package/node_modules/@sinclair/typebox/build/esm/type/helpers/helpers.mjs +0 -4
- package/node_modules/@sinclair/typebox/build/esm/type/helpers/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/helpers/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/index.d.mts +0 -71
- package/node_modules/@sinclair/typebox/build/esm/type/index.mjs +0 -71
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/index.d.mts +0 -4
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/index.mjs +0 -4
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-key.d.mts +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-key.mjs +0 -22
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-result.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-result.mjs +0 -20
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-property-keys.d.mts +0 -14
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-property-keys.mjs +0 -32
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed.d.mts +0 -52
- package/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed.mjs +0 -91
- package/node_modules/@sinclair/typebox/build/esm/type/instance-type/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/instance-type/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/instance-type/instance-type.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/instance-type/instance-type.mjs +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/instantiate/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/instantiate/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/instantiate/instantiate.d.mts +0 -50
- package/node_modules/@sinclair/typebox/build/esm/type/instantiate/instantiate.mjs +0 -115
- package/node_modules/@sinclair/typebox/build/esm/type/integer/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/integer/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/integer/integer.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/type/integer/integer.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-create.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-create.mjs +0 -19
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-evaluated.d.mts +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-evaluated.mjs +0 -38
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-type.d.mts +0 -15
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-type.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect.mjs +0 -17
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/capitalize.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/capitalize.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/index.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/index.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic-from-mapped-key.d.mts +0 -14
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic-from-mapped-key.mjs +0 -26
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic.mjs +0 -64
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/lowercase.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/lowercase.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uncapitalize.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uncapitalize.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uppercase.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uppercase.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/iterator/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/iterator/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/iterator/iterator.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/type/iterator/iterator.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/index.d.mts +0 -4
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/index.mjs +0 -4
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-from-mapped-result.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-from-mapped-result.mjs +0 -19
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-property-entries.d.mts +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-property-entries.mjs +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-property-keys.d.mts +0 -24
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-property-keys.mjs +0 -73
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof.d.mts +0 -21
- package/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof.mjs +0 -35
- package/node_modules/@sinclair/typebox/build/esm/type/literal/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/literal/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/literal/literal.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/literal/literal.mjs +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped-key.d.mts +0 -8
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped-key.mjs +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped-result.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped-result.mjs +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped.d.mts +0 -47
- package/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped.mjs +0 -102
- package/node_modules/@sinclair/typebox/build/esm/type/module/compute.d.mts +0 -59
- package/node_modules/@sinclair/typebox/build/esm/type/module/compute.mjs +0 -166
- package/node_modules/@sinclair/typebox/build/esm/type/module/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/module/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/module/infer.d.mts +0 -49
- package/node_modules/@sinclair/typebox/build/esm/type/module/infer.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/module/module.d.mts +0 -27
- package/node_modules/@sinclair/typebox/build/esm/type/module/module.mjs +0 -32
- package/node_modules/@sinclair/typebox/build/esm/type/never/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/never/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/never/never.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/never/never.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/not/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/not/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/not/not.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/not/not.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/null/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/null/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/null/null.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/null/null.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/number/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/number/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/number/number.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/type/number/number.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/object/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/object/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/object/object.d.mts +0 -51
- package/node_modules/@sinclair/typebox/build/esm/type/object/object.mjs +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/omit/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/omit/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-key.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-key.mjs +0 -22
- package/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-result.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-result.mjs +0 -19
- package/node_modules/@sinclair/typebox/build/esm/type/omit/omit.d.mts +0 -36
- package/node_modules/@sinclair/typebox/build/esm/type/omit/omit.mjs +0 -71
- package/node_modules/@sinclair/typebox/build/esm/type/optional/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/optional/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/optional/optional-from-mapped-result.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/optional/optional-from-mapped-result.mjs +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/optional/optional.d.mts +0 -20
- package/node_modules/@sinclair/typebox/build/esm/type/optional/optional.mjs +0 -22
- package/node_modules/@sinclair/typebox/build/esm/type/parameters/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/parameters/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/parameters/parameters.d.mts +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/parameters/parameters.mjs +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/partial/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/partial/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/partial/partial-from-mapped-result.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/partial/partial-from-mapped-result.mjs +0 -19
- package/node_modules/@sinclair/typebox/build/esm/type/partial/partial.d.mts +0 -35
- package/node_modules/@sinclair/typebox/build/esm/type/partial/partial.mjs +0 -74
- package/node_modules/@sinclair/typebox/build/esm/type/patterns/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/patterns/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/patterns/patterns.d.mts +0 -8
- package/node_modules/@sinclair/typebox/build/esm/type/patterns/patterns.mjs +0 -8
- package/node_modules/@sinclair/typebox/build/esm/type/pick/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/pick/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-key.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-key.mjs +0 -24
- package/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-result.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-result.mjs +0 -19
- package/node_modules/@sinclair/typebox/build/esm/type/pick/pick.d.mts +0 -36
- package/node_modules/@sinclair/typebox/build/esm/type/pick/pick.mjs +0 -66
- package/node_modules/@sinclair/typebox/build/esm/type/promise/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/promise/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/promise/promise.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/type/promise/promise.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/readonly/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/readonly/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly-from-mapped-result.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly-from-mapped-result.mjs +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly.d.mts +0 -20
- package/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly.mjs +0 -22
- package/node_modules/@sinclair/typebox/build/esm/type/readonly-optional/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/readonly-optional/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/readonly-optional/readonly-optional.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/readonly-optional/readonly-optional.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/record/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/record/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/record/record.d.mts +0 -71
- package/node_modules/@sinclair/typebox/build/esm/type/record/record.mjs +0 -116
- package/node_modules/@sinclair/typebox/build/esm/type/recursive/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/recursive/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/recursive/recursive.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/type/recursive/recursive.mjs +0 -15
- package/node_modules/@sinclair/typebox/build/esm/type/ref/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/ref/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/ref/ref.d.mts +0 -41
- package/node_modules/@sinclair/typebox/build/esm/type/ref/ref.mjs +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/regexp/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/regexp/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/regexp/regexp.d.mts +0 -20
- package/node_modules/@sinclair/typebox/build/esm/type/regexp/regexp.mjs +0 -8
- package/node_modules/@sinclair/typebox/build/esm/type/registry/format.d.mts +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/registry/format.mjs +0 -26
- package/node_modules/@sinclair/typebox/build/esm/type/registry/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/registry/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/registry/type.d.mts +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/registry/type.mjs +0 -26
- package/node_modules/@sinclair/typebox/build/esm/type/required/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/required/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/required/required-from-mapped-result.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/required/required-from-mapped-result.mjs +0 -18
- package/node_modules/@sinclair/typebox/build/esm/type/required/required.d.mts +0 -35
- package/node_modules/@sinclair/typebox/build/esm/type/required/required.mjs +0 -73
- package/node_modules/@sinclair/typebox/build/esm/type/rest/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/rest/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/rest/rest.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/rest/rest.mjs +0 -15
- package/node_modules/@sinclair/typebox/build/esm/type/return-type/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/return-type/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/return-type/return-type.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/return-type/return-type.mjs +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/schema/anyschema.d.mts +0 -33
- package/node_modules/@sinclair/typebox/build/esm/type/schema/anyschema.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/schema/index.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/schema/index.mjs +0 -2
- package/node_modules/@sinclair/typebox/build/esm/type/schema/schema.d.mts +0 -29
- package/node_modules/@sinclair/typebox/build/esm/type/schema/schema.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/sets/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/sets/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/sets/set.d.mts +0 -28
- package/node_modules/@sinclair/typebox/build/esm/type/sets/set.mjs +0 -48
- package/node_modules/@sinclair/typebox/build/esm/type/static/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/static/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/static/static.d.mts +0 -39
- package/node_modules/@sinclair/typebox/build/esm/type/static/static.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/string/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/string/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/string/string.d.mts +0 -25
- package/node_modules/@sinclair/typebox/build/esm/type/string/string.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/symbol/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/symbol/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/symbol/symbol.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/symbol/symbol.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/symbols/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/symbols/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/symbols/symbols.d.mts +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/symbols/symbols.mjs +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/finite.d.mts +0 -19
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/finite.mjs +0 -49
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/generate.d.mts +0 -21
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/generate.mjs +0 -53
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/index.d.mts +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/index.mjs +0 -7
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/parse.d.mts +0 -20
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/parse.mjs +0 -167
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/pattern.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/pattern.mjs +0 -33
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/syntax.d.mts +0 -20
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/syntax.mjs +0 -55
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/template-literal.d.mts +0 -30
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/template-literal.mjs +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/union.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/template-literal/union.mjs +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/transform/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/transform/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/transform/transform.d.mts +0 -30
- package/node_modules/@sinclair/typebox/build/esm/type/transform/transform.mjs +0 -40
- package/node_modules/@sinclair/typebox/build/esm/type/tuple/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/tuple/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/tuple/tuple.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/type/tuple/tuple.mjs +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/type/index.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/type/index.mjs +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/type/javascript.d.mts +0 -64
- package/node_modules/@sinclair/typebox/build/esm/type/type/javascript.mjs +0 -99
- package/node_modules/@sinclair/typebox/build/esm/type/type/json.d.mts +0 -208
- package/node_modules/@sinclair/typebox/build/esm/type/type/json.mjs +0 -221
- package/node_modules/@sinclair/typebox/build/esm/type/type/type.d.mts +0 -59
- package/node_modules/@sinclair/typebox/build/esm/type/type/type.mjs +0 -62
- package/node_modules/@sinclair/typebox/build/esm/type/uint8array/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/uint8array/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/uint8array/uint8array.d.mts +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/uint8array/uint8array.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/undefined/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/undefined/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/undefined/undefined.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/undefined/undefined.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/union/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/union/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/union/union-create.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/type/union/union-create.mjs +0 -5
- package/node_modules/@sinclair/typebox/build/esm/type/union/union-evaluated.d.mts +0 -13
- package/node_modules/@sinclair/typebox/build/esm/type/union/union-evaluated.mjs +0 -36
- package/node_modules/@sinclair/typebox/build/esm/type/union/union-type.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/type/union/union-type.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/union/union.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/union/union.mjs +0 -10
- package/node_modules/@sinclair/typebox/build/esm/type/unknown/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/unknown/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/unknown/unknown.d.mts +0 -8
- package/node_modules/@sinclair/typebox/build/esm/type/unknown/unknown.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/unsafe/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/unsafe/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/unsafe/unsafe.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/type/unsafe/unsafe.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/type/void/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/void/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/type/void/void.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/type/void/void.mjs +0 -6
- package/node_modules/@sinclair/typebox/build/esm/value/assert/assert.d.mts +0 -15
- package/node_modules/@sinclair/typebox/build/esm/value/assert/assert.mjs +0 -49
- package/node_modules/@sinclair/typebox/build/esm/value/assert/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/assert/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/cast/cast.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/value/cast/cast.mjs +0 -235
- package/node_modules/@sinclair/typebox/build/esm/value/cast/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/cast/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/check/check.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/value/check/check.mjs +0 -470
- package/node_modules/@sinclair/typebox/build/esm/value/check/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/check/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/clean/clean.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/value/clean/clean.mjs +0 -145
- package/node_modules/@sinclair/typebox/build/esm/value/clean/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/clean/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/clone/clone.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/value/clone/clone.mjs +0 -56
- package/node_modules/@sinclair/typebox/build/esm/value/clone/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/clone/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/convert/convert.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/value/convert/convert.mjs +0 -260
- package/node_modules/@sinclair/typebox/build/esm/value/convert/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/convert/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/create/create.d.mts +0 -11
- package/node_modules/@sinclair/typebox/build/esm/value/create/create.mjs +0 -468
- package/node_modules/@sinclair/typebox/build/esm/value/create/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/create/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/decode/decode.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/value/decode/decode.mjs +0 -10
- package/node_modules/@sinclair/typebox/build/esm/value/decode/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/decode/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/default/default.d.mts +0 -5
- package/node_modules/@sinclair/typebox/build/esm/value/default/default.mjs +0 -172
- package/node_modules/@sinclair/typebox/build/esm/value/default/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/default/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/delta/delta.d.mts +0 -32
- package/node_modules/@sinclair/typebox/build/esm/value/delta/delta.mjs +0 -171
- package/node_modules/@sinclair/typebox/build/esm/value/delta/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/delta/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/deref/deref.d.mts +0 -12
- package/node_modules/@sinclair/typebox/build/esm/value/deref/deref.mjs +0 -29
- package/node_modules/@sinclair/typebox/build/esm/value/deref/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/deref/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/encode/encode.d.mts +0 -6
- package/node_modules/@sinclair/typebox/build/esm/value/encode/encode.mjs +0 -11
- package/node_modules/@sinclair/typebox/build/esm/value/encode/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/encode/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/equal/equal.d.mts +0 -2
- package/node_modules/@sinclair/typebox/build/esm/value/equal/equal.mjs +0 -46
- package/node_modules/@sinclair/typebox/build/esm/value/equal/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/equal/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/guard/guard.d.mts +0 -74
- package/node_modules/@sinclair/typebox/build/esm/value/guard/guard.mjs +0 -158
- package/node_modules/@sinclair/typebox/build/esm/value/guard/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/guard/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/hash/hash.d.mts +0 -7
- package/node_modules/@sinclair/typebox/build/esm/value/hash/hash.mjs +0 -146
- package/node_modules/@sinclair/typebox/build/esm/value/hash/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/hash/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/index.d.mts +0 -20
- package/node_modules/@sinclair/typebox/build/esm/value/index.mjs +0 -32
- package/node_modules/@sinclair/typebox/build/esm/value/mutate/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/mutate/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/mutate/mutate.d.mts +0 -9
- package/node_modules/@sinclair/typebox/build/esm/value/mutate/mutate.mjs +0 -98
- package/node_modules/@sinclair/typebox/build/esm/value/parse/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/parse/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/parse/parse.d.mts +0 -22
- package/node_modules/@sinclair/typebox/build/esm/value/parse/parse.mjs +0 -81
- package/node_modules/@sinclair/typebox/build/esm/value/pointer/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/pointer/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/pointer/pointer.d.mts +0 -22
- package/node_modules/@sinclair/typebox/build/esm/value/pointer/pointer.mjs +0 -115
- package/node_modules/@sinclair/typebox/build/esm/value/transform/decode.d.mts +0 -22
- package/node_modules/@sinclair/typebox/build/esm/value/transform/decode.mjs +0 -207
- package/node_modules/@sinclair/typebox/build/esm/value/transform/encode.d.mts +0 -23
- package/node_modules/@sinclair/typebox/build/esm/value/transform/encode.mjs +0 -218
- package/node_modules/@sinclair/typebox/build/esm/value/transform/has.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/value/transform/has.mjs +0 -129
- package/node_modules/@sinclair/typebox/build/esm/value/transform/index.d.mts +0 -3
- package/node_modules/@sinclair/typebox/build/esm/value/transform/index.mjs +0 -3
- package/node_modules/@sinclair/typebox/build/esm/value/value/index.d.mts +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/value/index.mjs +0 -1
- package/node_modules/@sinclair/typebox/build/esm/value/value/value.d.mts +0 -16
- package/node_modules/@sinclair/typebox/build/esm/value/value/value.mjs +0 -16
- package/node_modules/@sinclair/typebox/compiler/package.json +0 -4
- package/node_modules/@sinclair/typebox/errors/package.json +0 -4
- package/node_modules/@sinclair/typebox/license +0 -25
- package/node_modules/@sinclair/typebox/package.json +0 -116
- package/node_modules/@sinclair/typebox/parser/package.json +0 -4
- package/node_modules/@sinclair/typebox/readme.md +0 -1865
- package/node_modules/@sinclair/typebox/syntax/package.json +0 -4
- package/node_modules/@sinclair/typebox/system/package.json +0 -4
- package/node_modules/@sinclair/typebox/type/package.json +0 -4
- package/node_modules/@sinclair/typebox/value/package.json +0 -4
- package/node_modules/ansi-regex/index.d.ts +0 -33
- package/node_modules/ansi-regex/index.js +0 -14
- package/node_modules/ansi-regex/license +0 -9
- package/node_modules/ansi-regex/package.json +0 -61
- package/node_modules/ansi-regex/readme.md +0 -66
- package/node_modules/chalk/license +0 -9
- package/node_modules/chalk/package.json +0 -83
- package/node_modules/chalk/readme.md +0 -297
- package/node_modules/chalk/source/index.d.ts +0 -325
- package/node_modules/chalk/source/index.js +0 -225
- package/node_modules/chalk/source/utilities.js +0 -33
- package/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +0 -236
- package/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -223
- package/node_modules/chalk/source/vendor/supports-color/browser.d.ts +0 -1
- package/node_modules/chalk/source/vendor/supports-color/browser.js +0 -34
- package/node_modules/chalk/source/vendor/supports-color/index.d.ts +0 -55
- package/node_modules/chalk/source/vendor/supports-color/index.js +0 -190
- package/node_modules/get-east-asian-width/index.d.ts +0 -60
- package/node_modules/get-east-asian-width/index.js +0 -30
- package/node_modules/get-east-asian-width/license +0 -9
- package/node_modules/get-east-asian-width/lookup-data.js +0 -18
- package/node_modules/get-east-asian-width/lookup.js +0 -135
- package/node_modules/get-east-asian-width/package.json +0 -71
- package/node_modules/get-east-asian-width/readme.md +0 -65
- package/node_modules/get-east-asian-width/utilities.js +0 -24
- package/node_modules/marked/LICENSE.md +0 -44
- package/node_modules/marked/README.md +0 -107
- package/node_modules/marked/bin/main.js +0 -284
- package/node_modules/marked/bin/marked.js +0 -16
- package/node_modules/marked/lib/marked.d.ts +0 -759
- package/node_modules/marked/lib/marked.esm.js +0 -72
- package/node_modules/marked/lib/marked.esm.js.map +0 -7
- package/node_modules/marked/lib/marked.umd.js +0 -74
- package/node_modules/marked/lib/marked.umd.js.map +0 -7
- package/node_modules/marked/man/marked.1 +0 -113
- package/node_modules/marked/man/marked.1.md +0 -93
- package/node_modules/marked/package.json +0 -103
- package/node_modules/string-width/index.d.ts +0 -39
- package/node_modules/string-width/index.js +0 -203
- package/node_modules/string-width/license +0 -9
- package/node_modules/string-width/package.json +0 -65
- package/node_modules/string-width/readme.md +0 -66
- package/node_modules/strip-ansi/index.d.ts +0 -15
- package/node_modules/strip-ansi/index.js +0 -19
- package/node_modules/strip-ansi/license +0 -9
- package/node_modules/strip-ansi/package.json +0 -59
- package/node_modules/strip-ansi/readme.md +0 -37
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/key-value-tokens.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/key-value-tokens.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/key-value-tokens.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/key-value-tokens.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/mcp-settings.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/mcp-settings.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/mcp-settings.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/mcp-settings.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory-utils.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory-utils.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory-utils.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory-utils.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/memory.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/onboarding-utils.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/onboarding-utils.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/onboarding-utils.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/onboarding-utils.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/runtime-app-server.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/runtime-app-server.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/typebox-utils.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/typebox-utils.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/typebox-utils.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/typebox-utils.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/validators.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/validators.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/validators.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/contracts/dist/validators.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/autocomplete.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/autocomplete.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/autocomplete.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/autocomplete.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/editor.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/editor.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/editor.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/editor.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/input.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/input.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/input.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/input.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/layout.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/layout.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/layout.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/layout.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/loader.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/loader.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/loader.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/loader.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/markdown.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/markdown.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/markdown.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/markdown.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/scroll-container.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/scroll-container.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/scroll-container.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/scroll-container.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/select-list.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/select-list.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/select-list.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/select-list.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/spacer.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/spacer.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/spacer.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/spacer.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/status-bar.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/status-bar.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/status-bar.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/status-bar.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/text.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/text.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/text.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/text.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/truncated-text.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/truncated-text.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/truncated-text.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/components/truncated-text.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/index.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/index.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/index.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/index.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/keymap.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/keymap.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/keymap.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/keymap.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/mermaid-renderer.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/mermaid-renderer.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/mermaid-renderer.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/mermaid-renderer.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/style/code-highlighter.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/style/code-highlighter.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/style/code-highlighter.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/style/code-highlighter.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/terminal.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/terminal.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/terminal.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/terminal.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/tui.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/tui.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/tui.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/tui.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils/terminal-features.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils/terminal-features.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils/terminal-features.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils/terminal-features.js.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils.d.ts +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils.d.ts.map +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils.js +0 -0
- /package/{node_modules → dist/node_modules}/@evalops/tui/dist/utils.js.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/agent/transport.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Agent Transport Layer - LLM Communication and Tool Execution Orchestration\n *\n * This module is the heart of the agent's execution loop. It handles:\n * 1. Streaming communication with LLM providers (Anthropic, OpenAI, Google)\n * 2. Concurrent tool execution with configurable parallelism\n * 3. Safety enforcement via action firewall integration\n * 4. Hook system integration for tool lifecycle events\n *\n * ## Architecture Overview\n *\n * ```\n * User Message → Transport.run() → Provider Stream → Parse Tool Calls\n * ↓ ↓\n * Emit Turn Events ←── Tool Results ←── Execute Tools\n * ↓ ↑\n * Continue Loop ───────────────────────────────┘\n * ```\n *\n * ## Concurrent Tool Execution\n *\n * When the LLM returns multiple tool calls in a single response, we execute\n * them concurrently up to `maxConcurrentToolExecutions` limit. This improves\n * latency for independent operations (e.g., reading multiple files).\n *\n * However, tools that affect WorkflowStateTracker (PII tracking) are serialized\n * to maintain consistent state ordering. A warning is logged when this happens.\n *\n * ## Safety Integration Points\n *\n * 1. **Pre-execution**: Action firewall evaluates each tool call\n * 2. **Approval flow**: Dangerous actions trigger user approval\n * 3. **PII tracking**: WorkflowState hooks track data flow for egress prevention\n * 4. **Doom loop detection**: Identical consecutive tool calls are blocked\n * 5. **Rate limiting**: Per-tool rate limits prevent runaway execution\n *\n * ## Event Stream\n *\n * The transport yields AgentEvents that drive the UI:\n * - turn_start/end: Turn boundaries for UI state management\n * - message_start/update/end: Streaming content updates\n * - tool_execution_start/end: Tool lifecycle for progress display\n * - action_approval_required/resolved: Approval UI triggers\n *\n * @module agent/transport\n */\n\nimport { isContextFirewallBlockingEnabled } from \"../config/env-vars.js\";\nimport { type ToolHookService, createToolHookService } from \"../hooks/index.js\";\nimport { getProviderNetworkConfig } from \"../providers/network-config.js\";\nimport { isStreamIdleTimeoutError } from \"../providers/stream-idle-timeout.js\";\nimport { type Clock, systemClock } from \"../utils/clock.js\";\nimport { createLogger } from \"../utils/logger.js\";\n\nconst logger = createLogger(\"transport\");\nimport type { AuthCredential } from \"../providers/auth.js\";\nimport { defaultActionFirewall } from \"../safety/action-firewall.js\";\nimport { AdaptiveThresholds } from \"../safety/adaptive-thresholds.js\";\nimport { checkSessionLimits } from \"../safety/policy.js\";\nimport {\n\ttype SafetyMiddleware,\n\tcreateSafetyMiddleware,\n} from \"../safety/safety-middleware.js\";\nimport { SemanticJudge } from \"../safety/semantic-judge.js\";\nimport {\n\tWorkflowStateError,\n\tWorkflowStateTracker,\n\tapplyWorkflowStateHooks,\n\tisWorkflowTrackedTool,\n} from \"../safety/workflow-state.js\";\nimport {\n\ttype SkillArtifactMetadata,\n\tgetSkillArtifactMetadataFromDetails,\n} from \"../skills/artifact-metadata.js\";\nimport { getOptimalConcurrency } from \"../tools/parallel-execution.js\";\nimport { trackUsage } from \"../tracking/cost-tracker.js\";\nimport { getTrainingHeaders } from \"../training.js\";\nimport type { ActionApprovalService } from \"./action-approval.js\";\nimport { getStoredCredentials } from \"./keys.js\";\nimport type { ToolRetryConfig, ToolRetryService } from \"./tool-retry.js\";\nimport { createProviderStream } from \"./transport/create-provider-stream.js\";\nimport {\n\ttype PlatformToolExecutionBridge,\n\tgetDefaultPlatformToolExecutionBridge,\n} from \"./transport/tool-execution-bridge.js\";\nimport { createToolExecutionPromise } from \"./transport/tool-execution.js\";\nimport {\n\ttype ToolSafetyVerdict,\n\tevaluateToolSafety,\n} from \"./transport/tool-safety-pipeline.js\";\nimport {\n\ttype PendingExecution,\n\tcreateToolUpdateQueue,\n\twaitForNextExecutionOrUpdate,\n} from \"./transport/tool-update-queue.js\";\nimport {\n\ttype SessionTokenCounter,\n\ttype ToolAuditLogger,\n\tcalculateCost,\n\tresolveEnvCredential,\n} from \"./transport/transport-utils.js\";\nimport type {\n\tAgentEvent,\n\tAgentRunConfig,\n\tAgentToolResult,\n\tAgentTransport,\n\tAppMessage,\n\tAssistantMessage,\n\tMessage,\n\tQueuedMessage,\n\tToolCall,\n\tToolResultMessage,\n} from \"./types.js\";\n\ntype GovernedToolOutcome =\n\t| \"approval_required\"\n\t| \"approval_pending\"\n\t| \"authentication_required\"\n\t| \"denied\"\n\t| \"rate_limited\";\n\nfunction getGovernedToolResultEventMetadata(details: unknown): {\n\terrorCode?: string;\n\tapprovalRequestId?: string;\n\tgovernedOutcome?: GovernedToolOutcome;\n} {\n\tif (!details || typeof details !== \"object\") {\n\t\treturn {};\n\t}\n\n\tconst governedOutcome = (details as { governedOutcome?: unknown })\n\t\t.governedOutcome;\n\tif (!governedOutcome || typeof governedOutcome !== \"object\") {\n\t\treturn {};\n\t}\n\n\tconst normalized = governedOutcome as Record<string, unknown>;\n\tconst classification =\n\t\ttypeof normalized.classification === \"string\"\n\t\t\t? (normalized.classification as GovernedToolOutcome)\n\t\t\t: undefined;\n\tconst errorCode =\n\t\ttypeof normalized.code === \"string\" && normalized.code.trim().length > 0\n\t\t\t? normalized.code.trim()\n\t\t\t: classification;\n\tconst approvalRequestId =\n\t\ttypeof normalized.approvalRequestId === \"string\" &&\n\t\tnormalized.approvalRequestId.trim().length > 0\n\t\t\t? normalized.approvalRequestId.trim()\n\t\t\t: undefined;\n\n\treturn {\n\t\terrorCode,\n\t\tapprovalRequestId,\n\t\tgovernedOutcome: classification,\n\t};\n}\n\nfunction getSkillToolResultEventMetadata(details: unknown): {\n\tskillMetadata?: SkillArtifactMetadata;\n} {\n\treturn {\n\t\tskillMetadata: getSkillArtifactMetadataFromDetails(details),\n\t};\n}\n\n// Re-export types for backward compatibility\nexport type {\n\tSessionTokenCounter,\n\tToolAuditLogger,\n} from \"./transport/transport-utils.js\";\n\nexport interface ClientToolExecutionService {\n\trequestExecution: (\n\t\tid: string,\n\t\ttoolName: string,\n\t\targs: Record<string, unknown>,\n\t\tsignal?: AbortSignal,\n\t) => Promise<{ content: AgentToolResult[\"content\"]; isError: boolean }>;\n}\n\nexport interface ProviderTransportOptions {\n\tgetApiKey?: (\n\t\tprovider: string,\n\t) => Promise<string | undefined> | string | undefined;\n\tgetAuthContext?: (\n\t\tprovider: string,\n\t) => AuthCredential | undefined | Promise<AuthCredential | undefined>;\n\tcorsProxyUrl?: string;\n\tapprovalService?: ActionApprovalService;\n\ttoolRetryService?: ToolRetryService;\n\ttoolRetryConfig?: ToolRetryConfig;\n\tclientToolService?: ClientToolExecutionService;\n\tmaxConcurrentToolExecutions?: number;\n\t/** Hook service for tool lifecycle hooks (PreToolUse, PostToolUse, etc.) */\n\thookService?: ToolHookService;\n\t/** Current working directory for hook execution (required if hookService not provided) */\n\tcwd?: string;\n\t/** Clock for timestamps and rate limiting (default: system clock) */\n\tclock?: Clock;\n\t/** Session token counter used for enforcing policy session limits */\n\tsessionTokenCounter?: SessionTokenCounter;\n\t/** Audit logger for sensitive tool execution events */\n\tauditLogger?: ToolAuditLogger;\n\t/** Optional Platform ToolExecution bridge override */\n\tplatformToolExecutionBridge?: PlatformToolExecutionBridge | false;\n}\n\n/**\n * Provider Transport - Multi-provider LLM communication with safety controls\n *\n * The main transport implementation that handles streaming LLM responses,\n * executing tool calls, and enforcing safety policies. Supports Anthropic,\n * OpenAI, and Google providers through a unified interface.\n *\n * ## State Management\n *\n * - **workflowState**: Tracks PII artifacts for egress prevention\n * - **recentToolTimestamps**: Per-tool timestamps for rate limiting\n * - **safetyMiddleware**: Unified security (loop detection, sequence analysis, firewall)\n *\n * ## Safety Mechanisms\n *\n * ### SafetyMiddleware Integration\n * All safety checks are now handled through SafetyMiddleware:\n * - **Loop Detection**: Catches identical consecutive calls (replaces doom loop)\n * - **Sequence Analysis**: Detects suspicious behavioral patterns\n * - **Context Firewall**: Sanitizes arguments and blocks sensitive content\n *\n * ### Rate Limiting\n * Each tool has a per-window rate limit (TOOL_RATE_LIMIT calls per\n * TOOL_RATE_WINDOW_MS). This prevents runaway tool execution that could\n * waste resources or hit external API limits.\n *\n * ### Workflow State Serialization\n * When tools that track PII are present in a batch, concurrent execution\n * is disabled to ensure correct state ordering.\n */\nexport class ProviderTransport implements AgentTransport {\n\t/** Tracks PII artifacts through the workflow for egress prevention */\n\tprivate workflowState = new WorkflowStateTracker();\n\t/** Prevents repeated warnings about serialized workflow execution */\n\tprivate warnedAboutWorkflowConcurrency = false;\n\t/** Per-tool timestamp arrays for rate limiting enforcement */\n\tprivate recentToolTimestamps = new Map<string, number[]>();\n\t/** Safety middleware for sequence analysis and context sanitization */\n\tprivate readonly safetyMiddleware!: SafetyMiddleware;\n\t/** Adaptive thresholds for anomaly-based rate limiting */\n\tprivate readonly adaptiveThresholds!: AdaptiveThresholds;\n\t/** Tool call count in current minute window (for adaptive tracking) */\n\tprivate toolCallsThisMinute = 0;\n\t/** Last minute window start time */\n\tprivate minuteWindowStart = 0;\n\tprivate readonly clock: Clock;\n\tprivate readonly sessionTokenCounter?: SessionTokenCounter;\n\tprivate readonly auditLogger?: ToolAuditLogger;\n\n\t/**\n\t * Rate Limit Window - time window for counting tool invocations\n\t * 10 seconds balances burst protection with legitimate rapid use\n\t */\n\tprivate static readonly TOOL_RATE_WINDOW_MS = 10_000;\n\n\t/**\n\t * Rate Limit Maximum - max calls per tool within the window\n\t * 5 calls in 10 seconds allows fast iteration while preventing abuse\n\t */\n\tprivate static readonly TOOL_RATE_LIMIT = 5;\n\n\tconstructor(private options: ProviderTransportOptions = {}) {\n\t\tthis.clock = options.clock ?? systemClock;\n\t\tthis.sessionTokenCounter = options.sessionTokenCounter;\n\t\tthis.auditLogger = options.auditLogger;\n\t\tthis.minuteWindowStart = this.clock.now();\n\t\t// Initialize adaptive thresholds for anomaly detection\n\t\tthis.adaptiveThresholds = new AdaptiveThresholds({\n\t\t\talpha: 0.3, // Give more weight to recent observations\n\t\t\tanomalyThreshold: 2.5, // 2.5 std devs = more aggressive anomaly detection\n\t\t\tminObservations: 5, // Need at least 5 observations before anomaly detection\n\t\t});\n\t\t// Initialize safety middleware for unified security checks\n\t\tthis.safetyMiddleware = createSafetyMiddleware({\n\t\t\t// Enable loop detection (replaces transport's doom loop detection)\n\t\t\tenableLoopDetection: true,\n\t\t\t// Configure loop detector to match transport's previous behavior\n\t\t\tloopDetector: {\n\t\t\t\tmaxIdenticalCalls: 3, // Match DOOM_LOOP_THRESHOLD\n\t\t\t\tmaxSimilarCalls: 5,\n\t\t\t\tmaxCallsPerMinute: 30, // More aggressive rate limit than TOOL_RATE_LIMIT\n\t\t\t\tautoPause: false, // Transport handles the pause flow\n\t\t\t},\n\t\t\t// Enable sequence analysis for behavioral threat detection\n\t\t\tenableSequenceAnalysis: true,\n\t\t\t// Enable context firewall with blocking for sanitizing audit logs\n\t\t\tenableContextFirewall: true,\n\t\t\t// Configure context firewall blocking (can be disabled via MAESTRO_CONTEXT_FIREWALL_BLOCKING=0)\n\t\t\tcontextFirewall: {\n\t\t\t\t// When blocking is disabled, vault credentials so test keys can pass through safely.\n\t\t\t\tvaultCredentials: !isContextFirewallBlockingEnabled(),\n\t\t\t\tblocking: {\n\t\t\t\t\tenabled: isContextFirewallBlockingEnabled(),\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\t/**\n\t * Continue from current context without a new user message.\n\t *\n\t * This method reuses the run() logic but skips adding a new user message.\n\t * Useful for:\n\t * - Retrying after transient errors (rate limits, overload, 5xx)\n\t * - Continuing after context compaction\n\t * - Resuming interrupted tool execution\n\t *\n\t * @param messages - Current conversation history\n\t * @param config - Runtime configuration\n\t * @param signal - Optional abort signal for cancellation\n\t * @returns Async iterable of agent events\n\t */\n\tasync *continue(\n\t\tmessages: Message[],\n\t\tconfig: AgentRunConfig,\n\t\tsignal?: AbortSignal,\n\t): AsyncGenerator<AgentEvent, void, unknown> {\n\t\t// Create a synthetic \"continuation\" message that signals we're resuming\n\t\t// This doesn't get added to the conversation but satisfies the run() interface\n\t\tconst continuationMessage: Message = {\n\t\t\trole: \"user\",\n\t\t\tcontent: [\n\t\t\t\t{ type: \"text\", text: \"[System: Continuing from previous context]\" },\n\t\t\t],\n\t\t\ttimestamp: this.clock.now(),\n\t\t};\n\n\t\t// Delegate to run() - the continuation message is used internally\n\t\t// but the actual context comes from the messages array\n\t\tyield* this.run(messages, continuationMessage, config, signal);\n\t}\n\n\tasync *run(\n\t\tmessages: Message[],\n\t\tuserMessage: Message,\n\t\tcfg: AgentRunConfig,\n\t\tsignal?: AbortSignal,\n\t): AsyncGenerator<AgentEvent, void, unknown> {\n\t\tconst { systemPrompt, tools } = cfg;\n\t\tlet model = cfg.model;\n\t\tconst firewall = defaultActionFirewall;\n\n\t\t// Configure semantic judge if LLM access is provided\n\t\tif (cfg.runLLM) {\n\t\t\tfirewall.setSemanticJudge(new SemanticJudge(cfg.runLLM));\n\t\t}\n\n\t\t// Initialize hook service for tool lifecycle hooks\n\t\tconst hookService =\n\t\t\tthis.options.hookService ??\n\t\t\t(this.options.cwd\n\t\t\t\t? createToolHookService({\n\t\t\t\t\t\tcwd: this.options.cwd,\n\t\t\t\t\t\tsessionId: cfg.session?.id,\n\t\t\t\t\t\tresolveTool: (toolName) =>\n\t\t\t\t\t\t\tcfg.tools?.find((tool) => tool.name === toolName),\n\t\t\t\t\t})\n\t\t\t\t: undefined);\n\n\t\tthis.workflowState.reset();\n\n\t\tlet credential: AuthCredential | undefined;\n\t\tif (this.options.getAuthContext) {\n\t\t\tcredential = await this.options.getAuthContext(model.provider);\n\t\t}\n\t\tif (!credential && this.options.getApiKey) {\n\t\t\tconst fallbackKey = await this.options.getApiKey(model.provider);\n\t\t\tif (fallbackKey) {\n\t\t\t\tcredential = {\n\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\ttoken: fallbackKey,\n\t\t\t\t\ttype: \"api-key\",\n\t\t\t\t\tsource: \"env\",\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\tif (!credential) {\n\t\t\tconst envCredential = resolveEnvCredential(model.provider);\n\t\t\tif (envCredential) {\n\t\t\t\tcredential = envCredential;\n\t\t\t}\n\t\t}\n\t\tif (!credential) {\n\t\t\tconst stored = getStoredCredentials(model.provider);\n\t\t\tif (stored.apiKey) {\n\t\t\t\tcredential = {\n\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\ttoken: stored.apiKey,\n\t\t\t\t\ttype: stored.authType ?? \"api-key\",\n\t\t\t\t\tsource: \"custom_literal\",\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tconst apiKey = credential?.token;\n\t\tif (!apiKey) {\n\t\t\tthrow new Error(\n\t\t\t\t`No credentials found for provider \"${model.provider}\". Provide an API key or configure getAuthContext.`,\n\t\t\t);\n\t\t}\n\n\t\tyield { type: \"message_start\", message: userMessage };\n\t\tif (cfg.emitUserMessageEnd !== false) {\n\t\t\tyield { type: \"message_end\", message: userMessage };\n\t\t}\n\n\t\tconst context = {\n\t\t\tsystemPrompt,\n\t\t\tmessages,\n\t\t\ttools,\n\t\t};\n\n\t\tif (this.options.corsProxyUrl && model.baseUrl) {\n\t\t\tmodel = {\n\t\t\t\t...model,\n\t\t\t\tbaseUrl: `${this.options.corsProxyUrl}/?url=${encodeURIComponent(model.baseUrl)}`,\n\t\t\t};\n\t\t}\n\n\t\tconst trainingHeaders = getTrainingHeaders();\n\t\tconst headers =\n\t\t\ttrainingHeaders || model.headers || credential?.headers\n\t\t\t\t? {\n\t\t\t\t\t\t...(model.headers ?? {}),\n\t\t\t\t\t\t...(trainingHeaders ?? {}),\n\t\t\t\t\t\t...(credential?.headers ?? {}),\n\t\t\t\t\t}\n\t\t\t\t: undefined;\n\n\t\tconst streamOptions = {\n\t\t\tapiKey,\n\t\t\tmaxTokens: model.maxTokens,\n\t\t\tsignal,\n\t\t\tauthType: credential?.type ?? \"api-key\",\n\t\t\theaders,\n\t\t\trequestBody: credential?.requestBody,\n\t\t\tsessionId: cfg.session?.id,\n\t\t\ttaskBudget: cfg.taskBudget,\n\t\t};\n\n\t\tlet hasMoreToolCalls = true;\n\t\tconst allMessages = [...context.messages];\n\t\tconst getSteeringMessages =\n\t\t\tcfg.getSteeringMessages ?? cfg.getQueuedMessages;\n\t\tconst getFollowUpMessages = cfg.getFollowUpMessages;\n\t\tconst getPromptOnlyMessages = cfg.getPromptOnlyMessages;\n\n\t\tlet pendingMessages = getSteeringMessages\n\t\t\t? await getSteeringMessages<AppMessage>()\n\t\t\t: [];\n\n\t\twhile (hasMoreToolCalls || pendingMessages.length > 0) {\n\t\t\tyield { type: \"turn_start\" };\n\n\t\t\t// Enforce session limits before every turn (duration + tokens)\n\t\t\tif (cfg.session) {\n\t\t\t\tlet tokenCount: number | undefined;\n\t\t\t\tif (this.sessionTokenCounter) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst count = await this.sessionTokenCounter(cfg.session.id);\n\t\t\t\t\t\tif (count !== null) {\n\t\t\t\t\t\t\ttokenCount = count;\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t// Log error but don't throw - let checkSessionLimits handle it.\n\t\t\t\t\t\t// If limits are active, it will fail closed because tokenCount is undefined.\n\t\t\t\t\t\t// If no limits are active, we shouldn't block just because tracking failed.\n\t\t\t\t\t\tlogger.error(\n\t\t\t\t\t\t\t\"Failed to get session token count\",\n\t\t\t\t\t\t\terr instanceof Error ? err : new Error(String(err)),\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst limitCheck = checkSessionLimits(cfg.session, {\n\t\t\t\t\ttokenCount: tokenCount,\n\t\t\t\t});\n\t\t\t\tif (!limitCheck.allowed) {\n\t\t\t\t\tthrow new Error(limitCheck.reason);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (getPromptOnlyMessages) {\n\t\t\t\tconst promptOnlyMessages = await getPromptOnlyMessages();\n\t\t\t\tif (promptOnlyMessages.length > 0) {\n\t\t\t\t\tallMessages.push(...promptOnlyMessages);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (pendingMessages.length > 0) {\n\t\t\t\tfor (const queued of pendingMessages) {\n\t\t\t\t\tyield { type: \"message_start\", message: queued.original };\n\t\t\t\t\tyield { type: \"message_end\", message: queued.original };\n\t\t\t\t\tif (queued.llm) {\n\t\t\t\t\t\tallMessages.push(queued.llm);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpendingMessages = [];\n\t\t\t}\n\n\t\t\tlet currentAssistantMessage: AssistantMessage | null = null;\n\t\t\tlet completedAssistantMessage: AssistantMessage | null = null;\n\t\t\tconst toolCallsToExecute: ToolCall[] = [];\n\t\t\tlet toolResults: ToolResultMessage[] = [];\n\t\t\tlet steeringAfterTools: QueuedMessage<AppMessage>[] | null = null;\n\t\t\tlet pendingNextTurn = false;\n\t\t\tlet encounteredError = false;\n\t\t\tlet firstModelOutputSeen = false;\n\n\t\t\tconst currentMessages = cfg.preprocessMessages\n\t\t\t\t? await cfg.preprocessMessages(\n\t\t\t\t\t\tallMessages,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tsystemPrompt,\n\t\t\t\t\t\t\ttools,\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\tuserMessage,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t)\n\t\t\t\t: allMessages;\n\n\t\t\tconst currentContext = {\n\t\t\t\t...context,\n\t\t\t\tmessages: currentMessages,\n\t\t\t};\n\n\t\t\t// Stream retry logic for idle timeouts\n\t\t\tconst networkConfig = getProviderNetworkConfig(model.provider);\n\t\t\tconst maxStreamRetries = networkConfig.streamMaxRetries;\n\t\t\tlet streamAttempt = 0;\n\t\t\tlet streamSuccess = false;\n\n\t\t\twhile (!streamSuccess && streamAttempt <= maxStreamRetries) {\n\t\t\t\tif (streamAttempt > 0) {\n\t\t\t\t\t// Reset state for retry\n\t\t\t\t\tcurrentAssistantMessage = null;\n\t\t\t\t\ttoolCallsToExecute.length = 0;\n\t\t\t\t\tpendingNextTurn = false;\n\n\t\t\t\t\tconst backoffMs = Math.min(\n\t\t\t\t\t\tnetworkConfig.backoffInitial * 2 ** (streamAttempt - 1),\n\t\t\t\t\t\tnetworkConfig.backoffMax,\n\t\t\t\t\t);\n\t\t\t\t\tlogger.info(\"Retrying stream after idle timeout\", {\n\t\t\t\t\t\tattempt: streamAttempt,\n\t\t\t\t\t\tmaxRetries: maxStreamRetries,\n\t\t\t\t\t\tbackoffMs,\n\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t});\n\t\t\t\t\tawait new Promise((resolve) => setTimeout(resolve, backoffMs));\n\t\t\t\t}\n\t\t\t\tstreamAttempt++;\n\n\t\t\t\tcfg.queryProfiler?.checkpoint(\"model:request:start\", {\n\t\t\t\t\tattempt: streamAttempt,\n\t\t\t\t});\n\t\t\t\tconst stream = createProviderStream(\n\t\t\t\t\tmodel,\n\t\t\t\t\tcurrentContext,\n\t\t\t\t\tstreamOptions,\n\t\t\t\t\t{ reasoning: cfg.reasoning, reasoningSummary: cfg.reasoningSummary },\n\t\t\t\t);\n\n\t\t\t\ttry {\n\t\t\t\t\tfor await (const event of stream) {\n\t\t\t\t\t\tif (event.type === \"start\") {\n\t\t\t\t\t\t\tcurrentAssistantMessage = event.partial;\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\t\t\ttype: \"message_start\",\n\t\t\t\t\t\t\t\t\tmessage: currentAssistantMessage,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tevent.type === \"text_delta\" ||\n\t\t\t\t\t\t\tevent.type === \"thinking_delta\" ||\n\t\t\t\t\t\t\tevent.type === \"toolcall_delta\"\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tif (!firstModelOutputSeen) {\n\t\t\t\t\t\t\t\tcfg.queryProfiler?.checkpoint(\"model:first-token\");\n\t\t\t\t\t\t\t\tfirstModelOutputSeen = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\t\t\ttype: \"message_update\",\n\t\t\t\t\t\t\t\t\tmessage: currentAssistantMessage,\n\t\t\t\t\t\t\t\t\tassistantMessageEvent: event,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"toolcall_end\") {\n\t\t\t\t\t\t\tif (!firstModelOutputSeen) {\n\t\t\t\t\t\t\t\tcfg.queryProfiler?.checkpoint(\"model:first-token\");\n\t\t\t\t\t\t\t\tfirstModelOutputSeen = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst rawArgs = event.toolCall.arguments;\n\t\t\t\t\t\t\tconst normalizedArgs =\n\t\t\t\t\t\t\t\trawArgs &&\n\t\t\t\t\t\t\t\ttypeof rawArgs === \"object\" &&\n\t\t\t\t\t\t\t\t!Array.isArray(rawArgs)\n\t\t\t\t\t\t\t\t\t? (rawArgs as Record<string, unknown>)\n\t\t\t\t\t\t\t\t\t: {};\n\t\t\t\t\t\t\ttoolCallsToExecute.push({\n\t\t\t\t\t\t\t\ttype: \"toolCall\",\n\t\t\t\t\t\t\t\tid: event.toolCall.id,\n\t\t\t\t\t\t\t\tname: event.toolCall.name,\n\t\t\t\t\t\t\t\targuments: normalizedArgs,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"done\") {\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tcompletedAssistantMessage = currentAssistantMessage;\n\t\t\t\t\t\t\t\tyield { type: \"message_end\", message: currentAssistantMessage };\n\t\t\t\t\t\t\t\tif (currentAssistantMessage.usage) {\n\t\t\t\t\t\t\t\t\tconst usage = currentAssistantMessage.usage;\n\t\t\t\t\t\t\t\t\tconst cost = model.cost\n\t\t\t\t\t\t\t\t\t\t? calculateCost(usage, model.cost)\n\t\t\t\t\t\t\t\t\t\t: 0;\n\t\t\t\t\t\t\t\t\tif (credential?.type !== \"anthropic-oauth\") {\n\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\ttrackUsage({\n\t\t\t\t\t\t\t\t\t\t\t\tsessionId: cfg.session?.id,\n\t\t\t\t\t\t\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t\t\t\t\t\t\t\tmodel: model.id,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensInput: usage.input || 0,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensOutput: usage.output || 0,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensCacheRead: usage.cacheRead,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensCacheWrite: usage.cacheWrite,\n\t\t\t\t\t\t\t\t\t\t\t\tcost,\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\t\t\t\tlogger.warn(\"Failed to track usage\", {\n\t\t\t\t\t\t\t\t\t\t\t\terror:\n\t\t\t\t\t\t\t\t\t\t\t\t\terror instanceof Error\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: String(error),\n\t\t\t\t\t\t\t\t\t\t\t\tstack: error instanceof Error ? error.stack : undefined,\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpendingNextTurn = toolCallsToExecute.length > 0;\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"error\") {\n\t\t\t\t\t\t\tcompletedAssistantMessage = event.error;\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tyield { type: \"message_end\", message: currentAssistantMessage };\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpendingNextTurn = false;\n\t\t\t\t\t\t\tencounteredError = true;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tstreamSuccess = true;\n\t\t\t\t} catch (error) {\n\t\t\t\t\tif (\n\t\t\t\t\t\tisStreamIdleTimeoutError(error) &&\n\t\t\t\t\t\tstreamAttempt <= maxStreamRetries\n\t\t\t\t\t) {\n\t\t\t\t\t\tlogger.warn(\"Stream idle timeout, will retry\", {\n\t\t\t\t\t\t\tattempt: streamAttempt,\n\t\t\t\t\t\t\tmaxRetries: maxStreamRetries,\n\t\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t\t\tidleMs: error.idleMs,\n\t\t\t\t\t\t});\n\t\t\t\t\t\tcontinue; // Retry the stream\n\t\t\t\t\t}\n\t\t\t\t\t// Not retryable or exhausted retries - re-throw\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t} // end while retry loop\n\n\t\t\tif (toolCallsToExecute.length > 0) {\n\t\t\t\ttoolResults = [];\n\t\t\t\tconst toolUpdateQueue = createToolUpdateQueue();\n\t\t\t\tconst pendingExecutions: PendingExecution[] = [];\n\t\t\t\tconst rawConcurrency = this.options.maxConcurrentToolExecutions ?? 2;\n\t\t\t\tconst configuredConcurrency = Number.isFinite(rawConcurrency)\n\t\t\t\t\t? Math.max(1, Math.floor(rawConcurrency))\n\t\t\t\t\t: 2;\n\t\t\t\tconst hasWorkflowTrackedTool = toolCallsToExecute.some((call) =>\n\t\t\t\t\tisWorkflowTrackedTool(call.name),\n\t\t\t\t);\n\t\t\t\tconst requiresSerializedTurn =\n\t\t\t\t\thasWorkflowTrackedTool && toolCallsToExecute.length > 1;\n\n\t\t\t\t// Calculate optimal concurrency - higher for read-only batches\n\t\t\t\tlet concurrencyLimit = getOptimalConcurrency(\n\t\t\t\t\ttoolCallsToExecute,\n\t\t\t\t\ttools,\n\t\t\t\t\t{\n\t\t\t\t\t\tbaseConcurrency: configuredConcurrency,\n\t\t\t\t\t\tmaxReadOnlyConcurrency: 8, // Allow up to 8x parallel for read-only\n\t\t\t\t\t\tenabled: true,\n\t\t\t\t\t},\n\t\t\t\t);\n\n\t\t\t\t// Override: workflow-tracked tools require serialization\n\t\t\t\tif (configuredConcurrency > 1 && requiresSerializedTurn) {\n\t\t\t\t\tconcurrencyLimit = 1;\n\t\t\t\t\tif (!this.warnedAboutWorkflowConcurrency) {\n\t\t\t\t\t\tlogger.warn(\n\t\t\t\t\t\t\t\"WorkflowStateTracker requires serialized tool execution; maxConcurrentToolExecutions capped at 1\",\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.warnedAboutWorkflowConcurrency = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet steeringTriggered = false;\n\t\t\t\tlet remainingToolCalls: ToolCall[] = [];\n\n\t\t\t\tconst checkSteering = async (): Promise<void> => {\n\t\t\t\t\tif (steeringTriggered || !getSteeringMessages) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tconst steering = await getSteeringMessages<AppMessage>();\n\t\t\t\t\tif (steering.length > 0) {\n\t\t\t\t\t\tsteeringTriggered = true;\n\t\t\t\t\t\tsteeringAfterTools = steering;\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst buildExecutionEvents = (\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\tmessage: ToolResultMessage,\n\t\t\t\t\tisError: boolean,\n\t\t\t\t\tmetadata?: {\n\t\t\t\t\t\ttoolExecutionId?: string;\n\t\t\t\t\t\tapprovalRequestId?: string;\n\t\t\t\t\t},\n\t\t\t\t): AgentEvent[] => {\n\t\t\t\t\tconst governedMetadata = getGovernedToolResultEventMetadata(\n\t\t\t\t\t\tmessage.details,\n\t\t\t\t\t);\n\t\t\t\t\tconst skillMetadata = getSkillToolResultEventMetadata(\n\t\t\t\t\t\tmessage.details,\n\t\t\t\t\t).skillMetadata;\n\t\t\t\t\treturn [\n\t\t\t\t\t\t{ type: \"message_start\", message } as AgentEvent,\n\t\t\t\t\t\t{ type: \"message_end\", message } as AgentEvent,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"tool_execution_end\",\n\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\ttoolExecutionId: metadata?.toolExecutionId,\n\t\t\t\t\t\t\tapprovalRequestId:\n\t\t\t\t\t\t\t\tmetadata?.approvalRequestId ??\n\t\t\t\t\t\t\t\tgovernedMetadata.approvalRequestId,\n\t\t\t\t\t\t\terrorCode: governedMetadata.errorCode,\n\t\t\t\t\t\t\tgovernedOutcome: governedMetadata.governedOutcome,\n\t\t\t\t\t\t\tskillMetadata,\n\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\tresult: message,\n\t\t\t\t\t\t\tisError,\n\t\t\t\t\t\t} as AgentEvent,\n\t\t\t\t\t];\n\t\t\t\t};\n\t\t\t\tconst emitToolResult = (\n\t\t\t\t\tmessage: ToolResultMessage,\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\tisError: boolean,\n\t\t\t\t\tmetadata?: {\n\t\t\t\t\t\ttoolExecutionId?: string;\n\t\t\t\t\t\tapprovalRequestId?: string;\n\t\t\t\t\t},\n\t\t\t\t) => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tapplyWorkflowStateHooks({\n\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\tresult: message,\n\t\t\t\t\t\t\ttracker: this.workflowState,\n\t\t\t\t\t\t\tisError,\n\t\t\t\t\t\t});\n\t\t\t\t\t\ttoolResults.push(message);\n\t\t\t\t\t\treturn buildExecutionEvents(toolCall, message, isError, metadata);\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tif (error instanceof WorkflowStateError) {\n\t\t\t\t\t\t\tconst workflowErrorResult: ToolResultMessage = {\n\t\t\t\t\t\t\t\trole: \"toolResult\",\n\t\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t\tcontent: [{ type: \"text\", text: error.message }],\n\t\t\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\ttoolResults.push(workflowErrorResult);\n\t\t\t\t\t\t\treturn buildExecutionEvents(\n\t\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\t\tworkflowErrorResult,\n\t\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\t\tmetadata,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\tconst emitSkippedToolCall = (toolCall: ToolCall): AgentEvent[] => {\n\t\t\t\t\tconst sanitizedSkippedArgs = this.safetyMiddleware.sanitizeForLogging(\n\t\t\t\t\t\ttoolCall.arguments as Record<string, unknown>,\n\t\t\t\t\t);\n\t\t\t\t\tconst skippedResult: ToolResultMessage = {\n\t\t\t\t\t\trole: \"toolResult\",\n\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\tcontent: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\ttext: \"Skipped due to queued user message.\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t};\n\t\t\t\t\treturn [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"tool_execution_start\",\n\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\targs: sanitizedSkippedArgs,\n\t\t\t\t\t\t} as AgentEvent,\n\t\t\t\t\t\t...emitToolResult(skippedResult, toolCall, true),\n\t\t\t\t\t];\n\t\t\t\t};\n\n\t\t\t\tconst scheduleResolveIfNeeded = async (): Promise<AgentEvent[]> => {\n\t\t\t\t\tif (pendingExecutions.length < concurrencyLimit) {\n\t\t\t\t\t\treturn [];\n\t\t\t\t\t}\n\t\t\t\t\tconst events: AgentEvent[] = [];\n\t\t\t\t\twhile (pendingExecutions.length >= concurrencyLimit) {\n\t\t\t\t\t\tconst next = await waitForNextExecutionOrUpdate(\n\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\ttoolUpdateQueue,\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (next.kind === \"update\") {\n\t\t\t\t\t\t\tevents.push(next.event);\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst outcome = next.outcome;\n\t\t\t\t\t\tevents.push(\n\t\t\t\t\t\t\t...emitToolResult(\n\t\t\t\t\t\t\t\toutcome.message,\n\t\t\t\t\t\t\t\tnext.execution.toolCall,\n\t\t\t\t\t\t\t\toutcome.isError,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttoolExecutionId: outcome.toolExecutionId,\n\t\t\t\t\t\t\t\t\tapprovalRequestId: outcome.approvalRequestId,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tawait checkSteering();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\treturn events;\n\t\t\t\t};\n\n\t\t\t\tfor (\n\t\t\t\t\tlet toolIndex = 0;\n\t\t\t\t\ttoolIndex < toolCallsToExecute.length;\n\t\t\t\t\ttoolIndex++\n\t\t\t\t) {\n\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tconst toolCall = toolCallsToExecute[toolIndex];\n\t\t\t\t\tif (!toolCall) continue;\n\n\t\t\t\t\t// Run safety pipeline (rate limiting, hooks, firewall, approval, validation)\n\t\t\t\t\tconst safetyIterator = evaluateToolSafety({\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\ttools,\n\t\t\t\t\t\tuserMessage,\n\t\t\t\t\t\tcfg,\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t\tclock: this.clock,\n\t\t\t\t\t\tsafetyMiddleware: this.safetyMiddleware,\n\t\t\t\t\t\tworkflowState: this.workflowState,\n\t\t\t\t\t\tadaptiveThresholds: this.adaptiveThresholds,\n\t\t\t\t\t\tauditLogger: this.auditLogger,\n\t\t\t\t\t\tapprovalService: this.options.approvalService,\n\t\t\t\t\t\ttoolExecutionBridge:\n\t\t\t\t\t\t\tthis.options.platformToolExecutionBridge === false\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: (this.options.platformToolExecutionBridge ??\n\t\t\t\t\t\t\t\t\tgetDefaultPlatformToolExecutionBridge()),\n\t\t\t\t\t\thookService,\n\t\t\t\t\t\tfirewall,\n\t\t\t\t\t\trateLimitState: {\n\t\t\t\t\t\t\trecentToolTimestamps: this.recentToolTimestamps,\n\t\t\t\t\t\t\ttoolCallsThisMinute: this.toolCallsThisMinute,\n\t\t\t\t\t\t\tminuteWindowStart: this.minuteWindowStart,\n\t\t\t\t\t\t\trateWindowMs: ProviderTransport.TOOL_RATE_WINDOW_MS,\n\t\t\t\t\t\t\trateLimit: ProviderTransport.TOOL_RATE_LIMIT,\n\t\t\t\t\t\t},\n\t\t\t\t\t\temitToolResult,\n\t\t\t\t\t});\n\t\t\t\t\tlet safetyVerdict: ToolSafetyVerdict | undefined;\n\t\t\t\t\tlet rateLimitUpdate:\n\t\t\t\t\t\t| { toolCallsThisMinute: number; minuteWindowStart: number }\n\t\t\t\t\t\t| undefined;\n\t\t\t\t\twhile (true) {\n\t\t\t\t\t\tconst safetyStep = await safetyIterator.next();\n\t\t\t\t\t\tif (safetyStep.done) {\n\t\t\t\t\t\t\t({ verdict: safetyVerdict, rateLimitUpdate } = safetyStep.value);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tyield safetyStep.value;\n\t\t\t\t\t}\n\t\t\t\t\tif (!safetyVerdict || !rateLimitUpdate) {\n\t\t\t\t\t\tthrow new Error(\"Safety pipeline did not return a verdict.\");\n\t\t\t\t\t}\n\n\t\t\t\t\t// Apply rate limit state updates\n\t\t\t\t\tthis.toolCallsThisMinute = rateLimitUpdate.toolCallsThisMinute;\n\t\t\t\t\tthis.minuteWindowStart = rateLimitUpdate.minuteWindowStart;\n\n\t\t\t\t\tif (safetyVerdict.outcome === \"blocked\") {\n\t\t\t\t\t\tawait checkSteering();\n\t\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex + 1);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst {\n\t\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\t\ttoolDef: tool,\n\t\t\t\t\t\tsanitizedExecutionArgs,\n\t\t\t\t\t} = safetyVerdict;\n\t\t\t\t\t// Use hook-modified (pre-validation) args for hook inputs\n\n\t\t\t\t\t// For client tools, set up the execution promise first, then emit event\n\t\t\t\t\t// This prevents race conditions where the client responds before we're listening\n\t\t\t\t\tlet clientToolExecPromise:\n\t\t\t\t\t\t| ReturnType<ClientToolExecutionService[\"requestExecution\"]>\n\t\t\t\t\t\t| undefined;\n\t\t\t\t\tif (\n\t\t\t\t\t\ttool.executionLocation === \"client\" &&\n\t\t\t\t\t\tthis.options.clientToolService\n\t\t\t\t\t) {\n\t\t\t\t\t\tclientToolExecPromise =\n\t\t\t\t\t\t\tthis.options.clientToolService.requestExecution(\n\t\t\t\t\t\t\t\ttoolCall.id,\n\t\t\t\t\t\t\t\ttoolCall.name,\n\t\t\t\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\t\t\t\tsignal,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t// Now emit the event - the promise is already waiting for the result\n\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\ttype: \"client_tool_request\",\n\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t// Client tools execute out-of-process; they need the real args.\n\t\t\t\t\t\t\targs: validatedArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\tconst executionPromise = createToolExecutionPromise({\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\t\ttool,\n\t\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\t\tsanitizedExecutionArgs,\n\t\t\t\t\t\tcfg,\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t\tclock: this.clock,\n\t\t\t\t\t\tsafetyMiddleware: this.safetyMiddleware,\n\t\t\t\t\t\tadaptiveThresholds: this.adaptiveThresholds,\n\t\t\t\t\t\tauditLogger: this.auditLogger,\n\t\t\t\t\t\thookService,\n\t\t\t\t\t\ttoolRetryService: this.options.toolRetryService,\n\t\t\t\t\t\ttoolRetryConfig: this.options.toolRetryConfig,\n\t\t\t\t\t\tclientToolService: this.options.clientToolService,\n\t\t\t\t\t\ttoolExecutionBridge:\n\t\t\t\t\t\t\tthis.options.platformToolExecutionBridge === false\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: (this.options.platformToolExecutionBridge ??\n\t\t\t\t\t\t\t\t\tgetDefaultPlatformToolExecutionBridge()),\n\t\t\t\t\t\ttoolExecutionBridgePlan: safetyVerdict.toolExecutionBridgePlan,\n\t\t\t\t\t\ttoolUpdateQueue,\n\t\t\t\t\t\tclientToolExecPromise,\n\t\t\t\t\t});\n\n\t\t\t\t\tpendingExecutions.push({\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\tpromise: executionPromise,\n\t\t\t\t\t});\n\t\t\t\t\tconst events = await scheduleResolveIfNeeded();\n\t\t\t\t\tfor (const event of events) {\n\t\t\t\t\t\tyield event;\n\t\t\t\t\t}\n\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\twhile (pendingExecutions.length > 0) {\n\t\t\t\t\tconst next = await waitForNextExecutionOrUpdate(\n\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\ttoolUpdateQueue,\n\t\t\t\t\t);\n\t\t\t\t\tif (next.kind === \"update\") {\n\t\t\t\t\t\tyield next.event;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tconst outcome = next.outcome;\n\t\t\t\t\tfor (const event of emitToolResult(\n\t\t\t\t\t\toutcome.message,\n\t\t\t\t\t\tnext.execution.toolCall,\n\t\t\t\t\t\toutcome.isError,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttoolExecutionId: outcome.toolExecutionId,\n\t\t\t\t\t\t\tapprovalRequestId: outcome.approvalRequestId,\n\t\t\t\t\t\t},\n\t\t\t\t\t)) {\n\t\t\t\t\t\tyield event;\n\t\t\t\t\t}\n\t\t\t\t\tawait checkSteering();\n\t\t\t\t}\n\n\t\t\t\tthis.safetyMiddleware.clearCredentials();\n\n\t\t\t\tif (steeringTriggered && remainingToolCalls.length > 0) {\n\t\t\t\t\tfor (const toolCall of remainingToolCalls) {\n\t\t\t\t\t\tfor (const event of emitSkippedToolCall(toolCall)) {\n\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (!steeringTriggered && getSteeringMessages) {\n\t\t\t\t\tconst steering = await getSteeringMessages<AppMessage>();\n\t\t\t\t\tif (steering.length > 0) {\n\t\t\t\t\t\tsteeringAfterTools = steering;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (completedAssistantMessage) {\n\t\t\t\tallMessages.push(completedAssistantMessage);\n\t\t\t}\n\t\t\tallMessages.push(...toolResults);\n\n\t\t\tyield {\n\t\t\t\ttype: \"turn_end\",\n\t\t\t\tmessage: completedAssistantMessage ??\n\t\t\t\t\tcurrentAssistantMessage ?? {\n\t\t\t\t\t\trole: \"assistant\",\n\t\t\t\t\t\tcontent: [],\n\t\t\t\t\t\tapi: model.api,\n\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t\tmodel: model.id,\n\t\t\t\t\t\tusage: {\n\t\t\t\t\t\t\tinput: 0,\n\t\t\t\t\t\t\toutput: 0,\n\t\t\t\t\t\t\tcacheRead: 0,\n\t\t\t\t\t\t\tcacheWrite: 0,\n\t\t\t\t\t\t\tcost: {\n\t\t\t\t\t\t\t\tinput: 0,\n\t\t\t\t\t\t\t\toutput: 0,\n\t\t\t\t\t\t\t\tcacheRead: 0,\n\t\t\t\t\t\t\t\tcacheWrite: 0,\n\t\t\t\t\t\t\t\ttotal: 0,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tstopReason: \"error\",\n\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t},\n\t\t\t\ttoolResults,\n\t\t\t};\n\n\t\t\tif (steeringAfterTools && steeringAfterTools.length > 0) {\n\t\t\t\tpendingMessages = steeringAfterTools;\n\t\t\t} else if (getSteeringMessages) {\n\t\t\t\tconst steering = await getSteeringMessages<AppMessage>();\n\t\t\t\tif (steering.length > 0) {\n\t\t\t\t\tpendingMessages = steering;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t!pendingNextTurn &&\n\t\t\t\tpendingMessages.length === 0 &&\n\t\t\t\tgetFollowUpMessages\n\t\t\t) {\n\t\t\t\tconst followUps = await getFollowUpMessages<AppMessage>();\n\t\t\t\tif (followUps.length > 0) {\n\t\t\t\t\tpendingMessages = followUps;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (pendingMessages.length > 0) {\n\t\t\t\tpendingNextTurn = true;\n\t\t\t}\n\n\t\t\thasMoreToolCalls = encounteredError ? false : pendingNextTurn;\n\t\t\tif (encounteredError) {\n\t\t\t\tcfg.queryProfiler?.terminal(\"turn:error\");\n\t\t\t} else if (!hasMoreToolCalls) {\n\t\t\t\tcfg.queryProfiler?.terminal(\"turn:complete\", {\n\t\t\t\t\ttool_results: toolResults.length,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/agent/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,gCAAgC,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAwB,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAc,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;AAEzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAEN,sBAAsB,GACtB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EACN,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,GACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEN,mCAAmC,GACnC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAEN,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,GACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAIN,2BAA2B,EAC3B,qCAAqC,GACrC,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAEN,kBAAkB,GAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAGN,qBAAqB,EACrB,4BAA4B,GAC5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAGN,aAAa,EACb,oBAAoB,GACpB,MAAM,gCAAgC,CAAC;AAgCxC,SAAS,8BAA8B,CAAC,KAAsB;IAC7D,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAW,EAAE,IAAc;IACzD,OAAO,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE;QAChC,GAAG;QACH,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;QACnC,OAAO,EAAE,KAAK;KACd,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAW,EAAE,IAAc;IACvD,OAAO,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACjE,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAW,EAAE,IAAc;IACvD,OAAO,8BAA8B,CAAC,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IAC1C,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,EAAE;QACzC,UAAU;QACV,UAAU;QACV,oBAAoB;QACpB,IAAI;KACJ,CAAC;SACA,QAAQ,CAAC,MAAM,CAAC;SAChB,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,EAAE,CAAC;IACT,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IAC1C,IAAI,CAAC;QACJ,OAAO,CACN,mBAAmB,CAAC,IAAI,EAAE;YACzB,WAAW;YACX,SAAS;YACT,aAAa;YACb,SAAS;YACT,iDAAiD;SACjD,CAAC,CAAC,MAAM,GAAG,CAAC,CACb,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,iCAAiC,CAAC,GAAW;IACrD,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;QACxE,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE;YACxC,QAAQ;YACR,gBAAgB;YAChB,uBAAuB;SACvB,CAAC,CAAC;QACH,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,MAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,EAAE;YAC9C,MAAM;YACN,eAAe;YACf,UAAU;SACV,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,EAAE;YAC5C,MAAM;YACN,UAAU;YACV,eAAe;YACf,UAAU;SACV,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,OAAO,8BAA8B,CAC3C,GAAG,IAAI,KAAK,IAAI,KAAK,MAAM,KAAK,YAAY,KAAK,UAAU,KAAK,SAAS,EAAE,CAC3E,EAAE,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED,MAAM,gCAAgC,GAAG,IAAI,GAAG,CAAC;IAChD,MAAM;IACN,IAAI;IACJ,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,QAAQ;IACR,kBAAkB;IAClB,MAAM;IACN,QAAQ;CACR,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAmB;IAC7D,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/B,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACpC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACtC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,0CAA0C,GAAG,MAAM,CAAC;AAC1D,MAAM,0CAA0C,GAAG,MAAM,CAAC;AAE1D,MAAM,iCAAiC,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AAE1E,SAAS,mBAAmB,CAAC,KAAc;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,EAAE,CAAC;AACX,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAa;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IACC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QACvB,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QACvB,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAC1B,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,EAC9B,CAAC;QACF,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAW,EAAE,QAAgB;IAC1D,IAAI,CAAC;QACJ,mBAAmB,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IACC,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,QAAQ,IAAI,KAAK;YACjB,KAAK,CAAC,MAAM,KAAK,CAAC,EACjB,CAAC;YACF,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,+BAA+B,CAAC,QAAkB;IAC1D,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC;IAChC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,IAA+B,CAAC;IAC/C,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,MAAM,CAAC,cAAc,KAAK,IAAI,IAAI,MAAM,CAAC,eAAe,KAAK,IAAI,CAAC;IAC1E,CAAC;IACD,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,kBAAkB,EAAE,CAAC;QAC9D,OAAO,MAAM,CAAC,YAAY,KAAK,KAAK,IAAI,MAAM,CAAC,cAAc,KAAK,KAAK,CAAC;IACzE,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,8BAA8B,CACtC,QAAkB,EAClB,GAAW;IAEX,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC7C,IAAI,+BAA+B,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,aAAa,GAAG,2BAA2B,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACtE,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC;IAChC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,OAAO,CAAC,iCAAiC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACjD,mBAAmB,CAAE,IAAgC,CAAC,IAAI,CAAC,CAAC,CAC5D,CAAC;IACF,IACC,UAAU,CAAC,MAAM,KAAK,CAAC;QACvB,iCAAiC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAC9C,CAAC;QACF,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,UAAU,CAAC,KAAK,CACtB,CAAC,SAAS,EAAE,EAAE,CACb,0BAA0B,CAAC,SAAS,CAAC;QACrC,CAAC,oBAAoB,CAAC,GAAG,EAAE,SAAS,CAAC,CACtC,CAAC;AACH,CAAC;AAED,SAAS,6BAA6B,CACrC,IAAe,EACf,QAAkB,EAClB,GAAW;IAEX,IACC,IAAI,CAAC,MAAM,KAAK,SAAS;QACzB,IAAI,CAAC,WAAW,EAAE,aAAa,KAAK,IAAI;QACxC,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAClC,CAAC;QACF,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACpE,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,8BAA8B,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACtD,CAAC;AAWD,MAAM,gCAAgC,GAAG,IAAI,OAAO,EAAkB,CAAC;AACvE,IAAI,qCAAqC,GAAG,CAAC,CAAC;AAE9C,SAAS,iCAAiC,CAAC,KAAa;IACvD,MAAM,QAAQ,GAAG,gCAAgC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,qCAAqC,IAAI,CAAC,CAAC;IAC3C,gCAAgC,CAAC,GAAG,CACnC,KAAK,EACL,qCAAqC,CACrC,CAAC;IACF,OAAO,qCAAqC,CAAC;AAC9C,CAAC;AAED,SAAS,+BAA+B,CAAC,KAAc;IACtD,OAAO,OAAO,KAAK,KAAK,UAAU;QACjC,CAAC,CAAC,iCAAiC,CAAC,KAAK,CAAC;QAC1C,CAAC,CAAC,SAAS,CAAC;AACd,CAAC;AAED,SAAS,gCAAgC,CAAC,KAA2B;IACpE,OAAO,eAAe,CACrB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpB,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;QAC3C,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,eAAe,EAAE,+BAA+B,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9D,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,8BAA8B,EAAE,+BAA+B,CAC9D,IAAI,CAAC,sBAAsB,CAC3B;QACD,sBAAsB,EAAE,+BAA+B,CACtD,IAAI,CAAC,cAAc,CACnB;QACD,yBAAyB,EAAE,+BAA+B,CACzD,IAAI,CAAC,iBAAiB,CACtB;QACD,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,mBAAmB,EAAE,+BAA+B,CAAC,IAAI,CAAC,WAAW,CAAC;QACtE,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,YAAY,EAAE,iCAAiC,CAAC,IAAI,CAAC;QACrD,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACvB,CAAC,CAAC,CACH,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC/B,KAAkB,EAClB,qBAAqB,GAAG,OAAO,CAAC,GAAG,EAAE;IAErC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,OAAO;QACN,WAAW;QACX,qBAAqB;QACrB,WAAW,EAAE,CAAC;QACd,GAAG,CAAC,QAAgB;YACnB,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;YACtB,OAAO,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;KACD,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACzB,MAAgD,EAChD,QAAgB;IAEhB,IAAI,KAAK,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,6BAA6B,CACrC,QAAkB,EAClB,KAA+C;IAE/C,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrD,MAAM,GAAG,GACR,uBAAuB,IAAI,KAAK;QAC/B,CAAC,CAAC,KAAK,CAAC,qBAAqB;QAC7B,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAClB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,eAAe,KAAK,IAAI,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,GAAG,QAAQ,CAAC,IAAI,IAAI,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;IAC3E,IAAI,6BAA6B,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;QACxD,OAAO,GAAG,0CAA0C,GAAG,QAAQ,EAAE,CAAC;IACnE,CAAC;IACD,IACC,IAAI,CAAC,MAAM,KAAK,SAAS;QACzB,gCAAgC,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC9C,IAAI,CAAC,WAAW,EAAE,aAAa,KAAK,IAAI;QACxC,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAClC,CAAC;QACF,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,0CAA0C,GAAG,QAAQ,EAAE,CAAC;AACnE,CAAC;AAED,SAAS,sCAAsC,CAC9C,QAAkB,EAClB,KAA+C;IAE/C,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrD,OAAO,IAAI;QACV,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;QAC1D,CAAC,CAAC,KAAK,CAAC;AACV,CAAC;AAED,SAAS,uBAAuB,CAC/B,OAA0B;IAE1B,OAAO;QACN,GAAG,OAAO;QACV,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;KACrD,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC/B,OAA6B,EAC7B,QAAkB,EAClB,SAAiB;IAEjB,OAAO;QACN,OAAO,EAAE;YACR,GAAG,OAAO,CAAC,OAAO;YAClB,UAAU,EAAE,QAAQ,CAAC,EAAE;YACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YAC7D,SAAS;SACT;QACD,OAAO,EAAE,OAAO,CAAC,OAAO;KACxB,CAAC;AACH,CAAC;AAED,SAAS,kCAAkC,CAC1C,MAAuD;IAEvD,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACtB,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,IAAI,qCAAqC,EAAE,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,uCAAuC,CAAC,EACtD,MAAM,EACN,IAAI,EACJ,OAAO,EACP,UAAU,EACV,MAAM,GAON;IACA,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC;IAChB,CAAC;IACD,MAAM,QAAQ,GACb,IAAI,CAAC,IAAI,KAAK,SAAS;QACtB,CAAC,CAAC,MAAM,MAAM,CAAC,iBAAiB,CAC9B,IAAgC,EAChC,OAAO,CAAC,OAAO,EACf,MAAM,CACN;QACF,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,cAAc,GACnB,IAAI,CAAC,IAAI,KAAK,UAAU;QACvB,CAAC,CAAC,MAAM,MAAM,CAAC,oBAAoB,CACjC,IAAI,EACJ,OAAO,CAAC,OAAO,EACf,UAAU,EACV,MAAM,CACN;QACF,CAAC,CAAC,SAAS,CAAC;IACd,OAAO;QACN,GAAG,OAAO;QACV,GAAG,2BAA2B,CAAC,IAAI,EAAE,QAAQ,IAAI,cAAc,CAAC;KAChE,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CAClC,QAAgB,EAChB,KAA2C,EAC3C,OAAmD,EACnD,iBAA8B,EAC9B,mBAAwC;IAExC,OAAO,CACN,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;QACrB,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC/B,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAC5C,CAAC;AACH,CAAC;AAED,SAAS,uCAAuC,CAC/C,QAA4B,EAC5B,mBAAwC;IAExC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO;IACR,CAAC;IACD,mBAAmB,CAAC,GAAG,CACtB,QAAQ,EACR,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAC5C,CAAC;AACH,CAAC;AAED,SAAS,uCAAuC,CAC/C,QAA4B,EAC5B,mBAAwC;IAExC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO;IACR,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/D,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACpB,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrC,OAAO;IACR,CAAC;IACD,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,4BAA4B,CACpC,KAA2C,EAC3C,OAAmD,EACnD,iBAA8B,EAC9B,mBAAwC,EACxC,eAAkD;IAElD,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,OAAO,CAAC,KAAK,EAAE,CAAC;IAChB,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAC1B,mBAAmB,CAAC,KAAK,EAAE,CAAC;IAC5B,eAAe,CAAC,KAAK,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,qCAAqC,CAC7C,KAA2C,EAC3C,OAAmD,EACnD,iBAA8B,EAC9B,mBAAwC,EACxC,eAAkD;IAElD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,IAAI,GAAG,CAAC,UAAU,CAAC,0CAA0C,CAAC,EAAE,CAAC;YAChE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO,GAAG,IAAI,CAAC;QAChB,CAAC;IACF,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QAClC,IAAI,GAAG,CAAC,UAAU,CAAC,0CAA0C,CAAC,EAAE,CAAC;YAChE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACpB,OAAO,GAAG,IAAI,CAAC;QAChB,CAAC;IACF,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACrC,IAAI,GAAG,CAAC,UAAU,CAAC,0CAA0C,CAAC,EAAE,CAAC;YAChE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC9B,OAAO,GAAG,IAAI,CAAC;QAChB,CAAC;IACF,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,IAAI,GAAG,CAAC,UAAU,CAAC,0CAA0C,CAAC,EAAE,CAAC;YAChE,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChC,OAAO,GAAG,IAAI,CAAC;QAChB,CAAC;IACF,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACb,eAAe,CAAC,KAAK,IAAI,CAAC,CAAC;IAC5B,CAAC;AACF,CAAC;AAED,SAAS,0CAA0C,CAClD,QAAkB,EAClB,KAA+C,EAC/C,KAA2C,EAC3C,OAAmD,EACnD,iBAA8B,EAC9B,mBAAwC,EACxC,eAAkD;IAElD,IAAI,sCAAsC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO;IACR,CAAC;IACD,4BAA4B,CAC3B,KAAK,EACL,OAAO,EACP,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,CACf,CAAC;AACH,CAAC;AAED,SAAS,+BAA+B,CACvC,iBAA8C,EAC9C,KAA+C;IAE/C,OAAO,iBAAiB,CAAC,IAAI,CAC5B,CAAC,SAAS,EAAE,EAAE,CACb,CAAC,sCAAsC,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CACnE,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC/B,QAAgB,EAChB,gBAA+C,EAC/C,KAA2C,EAC3C,OAAmD,EACnD,iBAA+B,EAC/B,eAAmD;IAEnD,MAAM,iBAAiB,GAAG,eAAe,EAAE,KAAK,CAAC;IACjD,MAAM,cAAc,GAAG,gBAAgB;SACrC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QACjB,IACC,CAAC,OAAO,CAAC,OAAO;YAChB,OAAO,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI;YAChC,CAAC,eAAe,KAAK,SAAS;gBAC7B,eAAe,CAAC,KAAK,KAAK,iBAAiB,CAAC,EAC5C,CAAC;YACF,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE;gBACnB,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC;aACjD,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QAChB,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,KAAK,CAAC;IACb,CAAC,CAAC;SACD,OAAO,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,cAAc,EAAE,CAAC;YAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACF,CAAC,CAAC,CAAC;IACJ,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACtC,OAAO,cAAc,CAAC;AACvB,CAAC;AAED,MAAM,eAAe;IAArB;QACS,WAAM,GAAiB,EAAE,CAAC;IAkCnC,CAAC;IA9BA,IAAI,CAAC,KAAiB;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACtB,IAAI,EAAE,CAAC;QACR,CAAC;IACF,CAAC;IAED,KAAK;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI;QACH,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAC5C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;YACrB,CAAC,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,kBAAkB;QACjB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;IACvB,CAAC;CACD;AAED,SAAS,0BAA0B,CAAC,KAAiB;IACpD,OAAO,CACN,KAAK,CAAC,IAAI,KAAK,0BAA0B;QACzC,KAAK,CAAC,IAAI,KAAK,0BAA0B,CACzC,CAAC;AACH,CAAC;AAED,SAAS,kCAAkC,CAAC,OAAgB;IAK3D,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC7C,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,eAAe,GAAI,OAAyC;SAChE,eAAe,CAAC;IAClB,IAAI,CAAC,eAAe,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;QAC7D,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,UAAU,GAAG,eAA0C,CAAC;IAC9D,MAAM,cAAc,GACnB,OAAO,UAAU,CAAC,cAAc,KAAK,QAAQ;QAC5C,CAAC,CAAE,UAAU,CAAC,cAAsC;QACpD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,SAAS,GACd,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACvE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE;QACxB,CAAC,CAAC,cAAc,CAAC;IACnB,MAAM,iBAAiB,GACtB,OAAO,UAAU,CAAC,iBAAiB,KAAK,QAAQ;QAChD,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC7C,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE;QACrC,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACN,SAAS;QACT,iBAAiB;QACjB,eAAe,EAAE,cAAc;KAC/B,CAAC;AACH,CAAC;AAED,SAAS,+BAA+B,CAAC,OAAgB;IAGxD,OAAO;QACN,aAAa,EAAE,mCAAmC,CAAC,OAAO,CAAC;KAC3D,CAAC;AACH,CAAC;AA4CD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,OAAO,iBAAiB;IAiC7B;;;OAGG;aACqB,wBAAmB,GAAG,MAAM,AAAT,CAAU;IAErD;;;OAGG;aACqB,oBAAe,GAAG,CAAC,AAAJ,CAAK;IAE5C,YAAoB,UAAoC,EAAE;QAAtC,YAAO,GAAP,OAAO,CAA+B;QA5C1D,sEAAsE;QAC9D,kBAAa,GAAG,IAAI,oBAAoB,EAAE,CAAC;QACnD,qEAAqE;QAC7D,mCAA8B,GAAG,KAAK,CAAC;QAC/C,8DAA8D;QACtD,yBAAoB,GAAG,IAAI,GAAG,EAAoB,CAAC;QAK3D,uEAAuE;QAC/D,wBAAmB,GAAG,CAAC,CAAC;QAChC,oCAAoC;QAC5B,sBAAiB,GAAG,CAAC,CAAC;QAIb,wBAAmB,GAAG,IAAI,GAAG,EAG3C,CAAC;QACa,+BAA0B,GAAG,IAAI,GAAG,EAGlD,CAAC;QACa,wCAAmC,GAAG,IAAI,GAAG,EAAU,CAAC;QACxD,oCAA+B,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5D,sCAAiC,GACjD,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAiBb,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,CAAC;QAC1C,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC1C,uDAAuD;QACvD,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC;YAChD,KAAK,EAAE,GAAG,EAAE,0CAA0C;YACtD,gBAAgB,EAAE,GAAG,EAAE,mDAAmD;YAC1E,eAAe,EAAE,CAAC,EAAE,wDAAwD;SAC5E,CAAC,CAAC;QACH,2DAA2D;QAC3D,IAAI,CAAC,gBAAgB,GAAG,sBAAsB,CAAC;YAC9C,mEAAmE;YACnE,mBAAmB,EAAE,IAAI;YACzB,iEAAiE;YACjE,YAAY,EAAE;gBACb,iBAAiB,EAAE,CAAC,EAAE,4BAA4B;gBAClD,eAAe,EAAE,CAAC;gBAClB,iBAAiB,EAAE,EAAE,EAAE,kDAAkD;gBACzE,SAAS,EAAE,KAAK,EAAE,mCAAmC;aACrD;YACD,2DAA2D;YAC3D,sBAAsB,EAAE,IAAI;YAC5B,kEAAkE;YAClE,qBAAqB,EAAE,IAAI;YAC3B,gGAAgG;YAChG,eAAe,EAAE;gBAChB,qFAAqF;gBACrF,gBAAgB,EAAE,CAAC,gCAAgC,EAAE;gBACrD,QAAQ,EAAE;oBACT,OAAO,EAAE,gCAAgC,EAAE;iBAC3C;aACD;SACD,CAAC,CAAC;IACJ,CAAC;IAEO,8BAA8B,CACrC,KAA2B,EAC3B,GAAW;QAEX,MAAM,iBAAiB,GAAG,gCAAgC,CAAC,KAAK,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,iCAAiC,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,4BAA4B,CAC3B,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,0BAA0B,EAC/B,IAAI,CAAC,mCAAmC,EACxC,IAAI,CAAC,+BAA+B,EACpC,IAAI,CAAC,iCAAiC,CACtC,CAAC;YACF,IAAI,CAAC,0BAA0B,GAAG,SAAS,CAAC;YAC5C,IAAI,CAAC,6BAA6B,GAAG,iBAAiB,CAAC;YACvD,OAAO;QACR,CAAC;QACD,IACC,IAAI,CAAC,0BAA0B,KAAK,QAAQ;YAC5C,CAAC,IAAI,CAAC,6BAA6B,KAAK,SAAS;gBAChD,IAAI,CAAC,6BAA6B,KAAK,iBAAiB,CAAC,EACzD,CAAC;YACF,4BAA4B,CAC3B,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,0BAA0B,EAC/B,IAAI,CAAC,mCAAmC,EACxC,IAAI,CAAC,+BAA+B,EACpC,IAAI,CAAC,iCAAiC,CACtC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,0BAA0B,GAAG,QAAQ,CAAC;QAC3C,IAAI,CAAC,6BAA6B,GAAG,iBAAiB,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,CAAC,QAAQ,CACd,QAAmB,EACnB,MAAsB,EACtB,MAAoB;QAEpB,wEAAwE;QACxE,+EAA+E;QAC/E,MAAM,mBAAmB,GAAY;YACpC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACR,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4CAA4C,EAAE;aACpE;YACD,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;SAC3B,CAAC;QAEF,kEAAkE;QAClE,uDAAuD;QACvD,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,CAAC,GAAG,CACT,QAAmB,EACnB,WAAoB,EACpB,GAAmB,EACnB,MAAoB;QAEpB,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;QACpC,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QACtB,MAAM,QAAQ,GAAG,qBAAqB,CAAC;QAEvC,qDAAqD;QACrD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAChB,QAAQ,CAAC,gBAAgB,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1D,CAAC;QAED,mDAAmD;QACnD,MAAM,WAAW,GAChB,IAAI,CAAC,OAAO,CAAC,WAAW;YACxB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG;gBAChB,CAAC,CAAC,qBAAqB,CAAC;oBACtB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;oBACrB,SAAS,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE;oBAC1B,WAAW,EAAE,CAAC,QAAQ,EAAE,EAAE,CACzB,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;iBAClD,CAAC;gBACH,CAAC,CAAC,SAAS,CAAC,CAAC;QAEf,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAE3B,MAAM,iBAAiB,GAAG,KAAK,CAAC,QAAQ,KAAK,iBAAiB,CAAC;QAC/D,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,KAAK,yBAAyB,CAAC;QAClE,IAAI,UAAsC,CAAC;QAC3C,IACC,IAAI,CAAC,OAAO,CAAC,cAAc;YAC3B,CAAC,iBAAiB;YAClB,CAAC,iBAAiB,EACjB,CAAC;YACF,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAC3C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,WAAW,EAAE,CAAC;gBACjB,UAAU,GAAG;oBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,KAAK;iBACb,CAAC;YACH,CAAC;QACF,CAAC;QACD,IAAI,CAAC,UAAU,IAAI,iBAAiB,EAAE,CAAC;YACtC,UAAU,GAAG;gBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,KAAK;aACb,CAAC;QACH,CAAC;QACD,IAAI,CAAC,UAAU,IAAI,iBAAiB,EAAE,CAAC;YACtC,UAAU,GAAG;gBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK,EAAE,kBAAkB;gBACzB,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,KAAK;aACb,CAAC;QACH,CAAC;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3D,IAAI,aAAa,EAAE,CAAC;gBACnB,UAAU,GAAG,aAAa,CAAC;YAC5B,CAAC;QACF,CAAC;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACpD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnB,UAAU,GAAG;oBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,KAAK,EAAE,MAAM,CAAC,MAAM;oBACpB,IAAI,EAAE,MAAM,CAAC,QAAQ,IAAI,SAAS;oBAClC,MAAM,EAAE,gBAAgB;iBACxB,CAAC;YACH,CAAC;QACF,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,EAAE,KAAK,CAAC;QACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACd,sCAAsC,KAAK,CAAC,QAAQ,oDAAoD,CACxG,CAAC;QACH,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QACtD,IAAI,GAAG,CAAC,kBAAkB,KAAK,KAAK,EAAE,CAAC;YACtC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QACrD,CAAC;QAED,MAAM,OAAO,GAAG;YACf,YAAY;YACZ,QAAQ;YACR,KAAK;SACL,CAAC;QAEF,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAChD,KAAK,GAAG;gBACP,GAAG,KAAK;gBACR,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,SAAS,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;aACjF,CAAC;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,IAAI,eAAe,EAAE,CAAC;QACpD,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChE,MAAM,iBAAiB,GAAG,uBAAuB,CAChD,KAAK,EACL,qBAAqB,CACrB,CAAC;QACF,IAAI,CAAC,8BAA8B,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;QAClE,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrD,MAAM,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,CAAC;QACnE,MAAM,mCAAmC,GACxC,IAAI,CAAC,mCAAmC,CAAC;QAC1C,MAAM,+BAA+B,GACpC,IAAI,CAAC,+BAA+B,CAAC;QACtC,MAAM,iCAAiC,GACtC,IAAI,CAAC,iCAAiC,CAAC;QACxC,qCAAqC,CACpC,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,+BAA+B,EAC/B,iCAAiC,CACjC,CAAC;QACF,MAAM,4BAA4B,GAAuB,EAAE,CAAC;QAC5D,MAAM,2BAA2B,GAAG,kCAAkC,CACrE,IAAI,CAAC,OAAO,CAAC,2BAA2B,CACxC,CAAC;QACF,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;QAC7C,MAAM,OAAO,GACZ,eAAe,IAAI,KAAK,CAAC,OAAO,IAAI,UAAU,EAAE,OAAO;YACtD,CAAC,CAAC;gBACA,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;gBACxB,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;gBAC1B,GAAG,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;aAC9B;YACF,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,kBAAkB,GAAG,KAAK,EAC/B,QAAkB,EACS,EAAE;YAC7B,MAAM,eAAe,GAA2B,EAAE,CAAC;YACnD,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAmB,EAAE,CAAC,CAAC;gBAC/D,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAC1C,OAAO,EAAE,IAAI;aACb,CAAC,CAAC;YACH,MAAM,iBAAiB,GAAG,CACzB,OAA6D,EAC3C,EAAE;gBACpB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,OAAO,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;gBAC/D,CAAC;gBACD,MAAM,OAAO,GAAG,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;gBACjE,OAAO;oBACN,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,OAAO,EAAE,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO;oBACjE,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,GAAG,CAAC,SAAS,IAAI,OAAO,IAAI,OAAO,CAAC,eAAe;wBAClD,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE;wBAC9C,CAAC,CAAC,EAAE,CAAC;oBACN,GAAG,CAAC,SAAS,IAAI,OAAO,IAAI,OAAO,CAAC,iBAAiB;wBACpD,CAAC,CAAC,EAAE,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,EAAE;wBAClD,CAAC,CAAC,EAAE,CAAC;iBACN,CAAC;YACH,CAAC,CAAC;YACF,MAAM,qBAAqB,GAAG,CAC7B,OAA0B,EAC1B,iBAA2B,EAC3B,OAAgB,EAChB,QAGC,EACc,EAAE;gBACjB,IAAI,CAAC;oBACJ,uBAAuB,CAAC;wBACvB,QAAQ,EAAE,iBAAiB;wBAC3B,MAAM,EAAE,OAAO;wBACf,OAAO,EAAE,IAAI,CAAC,aAAa;wBAC3B,OAAO;qBACP,CAAC,CAAC;oBACH,eAAe,CAAC,IAAI,CAAC;wBACpB,OAAO;wBACP,OAAO;wBACP,GAAG,QAAQ;qBACX,CAAC,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;wBACzC,eAAe,CAAC,IAAI,CAAC;4BACpB,OAAO,EAAE;gCACR,IAAI,EAAE,YAAY;gCAClB,UAAU,EAAE,iBAAiB,CAAC,EAAE;gCAChC,QAAQ,EAAE,iBAAiB,CAAC,IAAI;gCAChC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;gCAChD,OAAO,EAAE,IAAI;gCACb,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;6BAC3B;4BACD,OAAO,EAAE,IAAI;4BACb,GAAG,QAAQ;yBACX,CAAC,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACP,MAAM,KAAK,CAAC;oBACb,CAAC;gBACF,CAAC;gBACD,OAAO,EAAE,CAAC;YACX,CAAC,CAAC;YAEF,IAAI,CAAC;gBACJ,MAAM,qBAAqB,GAAG,6BAA6B,CAC1D,QAAQ,EACR,iBAAiB,CACjB,CAAC;gBACF,MAAM,iCAAiC,GACtC,qBAAqB,KAAK,SAAS;oBACnC,0BAA0B,CACzB,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,+BAA+B,CAC/B,CAAC;gBACH,uCAAuC,CACtC,qBAAqB,EACrB,+BAA+B,CAC/B,CAAC;gBACF,MAAM,uBAAuB,GAAG,CAC/B,iBAA2B,EACjB,EAAE;oBACZ,MAAM,YAAY,GAAG,6BAA6B,CACjD,iBAAiB,EACjB,iBAAiB,CACjB,CAAC;oBACF,OAAO,CACN,YAAY,KAAK,SAAS;wBAC1B,YAAY,KAAK,qBAAqB;wBACtC,iCAAiC;wBACjC,CAAC,+BAA+B,CAC/B,4BAA4B,EAC5B,iBAAiB,CACjB;wBACD,0BAA0B,CACzB,YAAY,EACZ,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,+BAA+B,CAC/B,CACD,CAAC;gBACH,CAAC,CAAC;gBACF,IAAI,aAA4C,CAAC;gBACjD,IAAI,eAEQ,CAAC;gBACb,IAAI,CAAC;oBACJ,MAAM,cAAc,GAAG,kBAAkB,CAAC;wBACzC,QAAQ;wBACR,KAAK;wBACL,WAAW;wBACX,GAAG;wBACH,MAAM;wBACN,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;wBACvC,aAAa,EAAE,IAAI,CAAC,aAAa;wBACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;wBAC3C,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;wBAC7C,mBAAmB,EAAE,2BAA2B;wBAChD,WAAW;wBACX,QAAQ;wBACR,cAAc,EAAE;4BACf,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;4BAC/C,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;4BAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;4BACzC,YAAY,EAAE,iBAAiB,CAAC,mBAAmB;4BACnD,SAAS,EAAE,iBAAiB,CAAC,eAAe;yBAC5C;wBACD,uBAAuB;wBACvB,cAAc,EAAE,qBAAqB;qBACrC,CAAC,CAAC;oBACH,OAAO,IAAI,EAAE,CAAC;wBACb,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;wBAC/C,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;4BACrB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;4BACjE,MAAM;wBACP,CAAC;wBACD,IAAI,0BAA0B,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;4BAClD,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;wBAC9C,CAAC;oBACF,CAAC;gBACF,CAAC;wBAAS,CAAC;oBACV,uCAAuC,CACtC,qBAAqB,EACrB,+BAA+B,CAC/B,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;oBACxC,OAAO,gBAAgB,CAAC,2CAA2C,CAAC,CAAC;gBACtE,CAAC;gBACD,IAAI,CAAC,mBAAmB,GAAG,eAAe,CAAC,mBAAmB,CAAC;gBAC/D,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC,iBAAiB,CAAC;gBAC3D,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACzC,OAAO,iBAAiB,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,CAAC;gBAED,MAAM,EACL,iBAAiB,EACjB,aAAa,EACb,OAAO,EAAE,IAAI,EACb,sBAAsB,GACtB,GAAG,aAAa,CAAC;gBAClB,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;oBACzC,OAAO,gBAAgB,CACtB,kFAAkF,IAAI,CAAC,IAAI,IAAI,CAC/F,CAAC;gBACH,CAAC;gBACD,MAAM,kCAAkC,GACvC,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;gBACrE,MAAM,kBAAkB,GACvB,qBAAqB,KAAK,SAAS;oBACnC,kCAAkC,KAAK,qBAAqB,CAAC;gBAC9D,IAAI,kBAAkB,IAAI,qBAAqB,EAAE,CAAC;oBACjD,mCAAmC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBAChE,CAAC;gBACD,MAAM,0BAA0B,GAC/B,kBAAkB;oBAClB,CAAC,+BAA+B,CAC/B,4BAA4B,EAC5B,iBAAiB,CACjB,CAAC;gBACH,IAAI,0BAA0B,EAAE,CAAC;oBAChC,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;oBACnE,IAAI,WAAW,EAAE,CAAC;wBACjB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;wBACvC,MAAM,aAAa,GAAG,MAAM,uCAAuC,CAClE;4BACC,MAAM,EAAE,2BAA2B;4BACnC,IAAI,EAAE,aAAa,CAAC,uBAAuB;4BAC3C,OAAO,EAAE;gCACR,OAAO,EAAE;oCACR,GAAG,WAAW,CAAC,OAAO;oCACtB,UAAU,EAAE,QAAQ,CAAC,EAAE;oCACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;oCACvB,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wCACnD,GAAG,IAAI;qCACP,CAAC,CAAC;oCACH,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;iCAC3B;gCACD,OAAO,EAAE,KAAK;6BACd;4BACD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,aAAa;4BAC5C,MAAM;yBACN,CACD,CAAC;wBACF,qBAAqB,CACpB,aAAa,CAAC,OAAO,EACrB,iBAAiB,EACjB,aAAa,CAAC,OAAO,EACrB;4BACC,eAAe,EAAE,aAAa,CAAC,eAAe;4BAC9C,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;yBAClD,CACD,CAAC;wBACF,OAAO,iBAAiB,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC;oBACnE,CAAC;oBACD,MAAM,eAAe,GAAG,0BAA0B,CAAC,GAAG,CACrD,qBAAqB,CACrB,CAAC;oBACF,IAAI,eAAe,EAAE,CAAC;wBACrB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;wBACvC,MAAM,aAAa,GAAG,MAAM,uCAAuC,CAClE;4BACC,MAAM,EAAE,2BAA2B;4BACnC,IAAI,EAAE,aAAa,CAAC,uBAAuB;4BAC3C,OAAO,EAAE,uBAAuB,CAC/B,MAAM,eAAe,EACrB,QAAQ,EACR,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAChB;4BACD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,aAAa;4BAC5C,MAAM;yBACN,CACD,CAAC;wBACF,qBAAqB,CACpB,aAAa,CAAC,OAAO,EACrB,iBAAiB,EACjB,aAAa,CAAC,OAAO,EACrB;4BACC,eAAe,EAAE,aAAa,CAAC,eAAe;4BAC9C,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;yBAClD,CACD,CAAC;wBACF,OAAO,iBAAiB,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC;oBACnE,CAAC;gBACF,CAAC;gBACD,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAC;gBAChD,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;oBACnD,QAAQ;oBACR,iBAAiB;oBACjB,IAAI;oBACJ,aAAa;oBACb,sBAAsB;oBACtB,GAAG;oBACH,MAAM;oBACN,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;oBACvC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;oBAC3C,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,WAAW;oBACX,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB;oBAC/C,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;oBAC7C,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB;oBACjD,mBAAmB,EAAE,2BAA2B;oBAChD,uBAAuB,EAAE,aAAa,CAAC,uBAAuB;oBAC9D,eAAe;iBACf,CAAC,CAAC;gBACH,MAAM,uBAAuB,GAC5B,kBAAkB,IAAI,qBAAqB;oBAC1C,CAAC,CAAC,uBAAuB,CACvB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,iCAAiC,CACjC;oBACF,CAAC,CAAC,gBAAgB,CAAC;gBACrB,MAAM,gBAAgB,GAAqB;oBAC1C,QAAQ,EAAE,iBAAiB;oBAC3B,OAAO,EAAE,uBAAuB;iBAChC,CAAC;gBACF,4BAA4B,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACpD,MAAM,iBAAiB,GAAuB,CAAC,gBAAgB,CAAC,CAAC;gBACjE,IAAI,OAAqD,CAAC;gBAC1D,IAAI,CAAC;oBACJ,OAAO,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrC,MAAM,IAAI,GAAG,MAAM,4BAA4B,CAC9C,iBAAiB,EACjB,eAAe,CACf,CAAC;wBACF,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gCAC/C,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EACrB,iEAAiE,EACjE,SAAS,CACT,CAAC;4BACH,CAAC;4BACD,SAAS;wBACV,CAAC;wBACD,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;oBACxB,CAAC;gBACF,CAAC;wBAAS,CAAC;oBACV,MAAM,YAAY,GACjB,4BAA4B,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;oBACxD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;wBACvB,4BAA4B,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBACtD,CAAC;gBACF,CAAC;gBACD,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,OAAO,gBAAgB,CAAC,0CAA0C,CAAC,CAAC;gBACrE,CAAC;gBACD,0CAA0C,CACzC,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,+BAA+B,EAC/B,iCAAiC,CACjC,CAAC;gBACF,IAAI,CAAC;oBACJ,uBAAuB,CAAC;wBACvB,QAAQ,EAAE,iBAAiB;wBAC3B,MAAM,EAAE,OAAO,CAAC,OAAO;wBACvB,OAAO,EAAE,IAAI,CAAC,aAAa;wBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;qBACxB,CAAC,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;wBACzC,OAAO,iBAAiB,CAAC;4BACxB,OAAO,EAAE;gCACR,IAAI,EAAE,YAAY;gCAClB,UAAU,EAAE,iBAAiB,CAAC,EAAE;gCAChC,QAAQ,EAAE,iBAAiB,CAAC,IAAI;gCAChC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;gCAChD,OAAO,EAAE,IAAI;gCACb,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;6BAC3B;4BACD,OAAO,EAAE,IAAI;4BACb,eAAe,EAAE,OAAO,CAAC,eAAe;4BACxC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;yBAC5C,CAAC,CAAC;oBACJ,CAAC;oBACD,MAAM,KAAK,CAAC;gBACb,CAAC;gBACD,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;oBAAS,CAAC;gBACV,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;YAC1C,CAAC;QACF,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG;YACrB,MAAM;YACN,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,MAAM;YACN,QAAQ,EAAE,UAAU,EAAE,IAAI,IAAI,SAAS;YACvC,OAAO;YACP,WAAW,EAAE,UAAU,EAAE,WAAW;YACpC,SAAS,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE;YAC1B,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;YACrB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,kBAAkB;SAClB,CAAC;QAEF,IAAI,gBAAgB,GAAG,IAAI,CAAC;QAC5B,MAAM,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1C,MAAM,mBAAmB,GACxB,GAAG,CAAC,mBAAmB,IAAI,GAAG,CAAC,iBAAiB,CAAC;QAClD,MAAM,mBAAmB,GAAG,GAAG,CAAC,mBAAmB,CAAC;QACpD,MAAM,qBAAqB,GAAG,GAAG,CAAC,qBAAqB,CAAC;QAExD,IAAI,eAAe,GAAG,mBAAmB;YACxC,CAAC,CAAC,MAAM,mBAAmB,EAAc;YACzC,CAAC,CAAC,EAAE,CAAC;QAEN,OAAO,gBAAgB,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvD,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;YAE7B,+DAA+D;YAC/D,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACjB,IAAI,UAA8B,CAAC;gBACnC,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC9B,IAAI,CAAC;wBACJ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;wBAC7D,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;4BACpB,UAAU,GAAG,KAAK,CAAC;wBACpB,CAAC;oBACF,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACd,gEAAgE;wBAChE,6EAA6E;wBAC7E,4EAA4E;wBAC5E,MAAM,CAAC,KAAK,CACX,mCAAmC,EACnC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CACnD,CAAC;oBACH,CAAC;gBACF,CAAC;gBAED,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE;oBAClD,UAAU,EAAE,UAAU;iBACtB,CAAC,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACpC,CAAC;YACF,CAAC;YAED,IAAI,qBAAqB,EAAE,CAAC;gBAC3B,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,EAAE,CAAC;gBACzD,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACnC,WAAW,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,CAAC;gBACzC,CAAC;YACF,CAAC;YAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;oBACtC,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAC1D,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACxD,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;wBAChB,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC9B,CAAC;gBACF,CAAC;gBACD,eAAe,GAAG,EAAE,CAAC;YACtB,CAAC;YAED,IAAI,uBAAuB,GAA4B,IAAI,CAAC;YAC5D,IAAI,yBAAyB,GAA4B,IAAI,CAAC;YAC9D,MAAM,kBAAkB,GAAe,EAAE,CAAC;YAC1C,MAAM,WAAW,GAAwB,EAAE,CAAC;YAC5C,MAAM,iCAAiC,GAAwB,EAAE,CAAC;YAClE,IAAI,kBAAkB,GAAuC,IAAI,CAAC;YAClE,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAC7B,IAAI,oBAAoB,GAAG,KAAK,CAAC;YAEjC,MAAM,eAAe,GAAG,GAAG,CAAC,kBAAkB;gBAC7C,CAAC,CAAC,MAAM,GAAG,CAAC,kBAAkB,CAC5B,WAAW,EACX;oBACC,YAAY;oBACZ,KAAK;oBACL,KAAK;oBACL,WAAW;iBACX,EACD,MAAM,CACN;gBACF,CAAC,CAAC,WAAW,CAAC;YAEf,MAAM,cAAc,GAAG;gBACtB,GAAG,OAAO;gBACV,QAAQ,EAAE,eAAe;aACzB,CAAC;YAEF,uCAAuC;YACvC,MAAM,aAAa,GAAG,wBAAwB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC/D,MAAM,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC;YACxD,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,aAAa,GAAG,KAAK,CAAC;YAE1B,OAAO,CAAC,aAAa,IAAI,aAAa,IAAI,gBAAgB,EAAE,CAAC;gBAC5D,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;oBACvB,wBAAwB;oBACxB,uBAAuB,GAAG,IAAI,CAAC;oBAC/B,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC9B,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;oBACvB,iCAAiC,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC7C,eAAe,GAAG,KAAK,CAAC;oBAExB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACzB,aAAa,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,EACvD,aAAa,CAAC,UAAU,CACxB,CAAC;oBACF,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;wBACjD,OAAO,EAAE,aAAa;wBACtB,UAAU,EAAE,gBAAgB;wBAC5B,SAAS;wBACT,QAAQ,EAAE,KAAK,CAAC,QAAQ;qBACxB,CAAC,CAAC;oBACH,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;gBAChE,CAAC;gBACD,aAAa,EAAE,CAAC;gBAEhB,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,qBAAqB,EAAE;oBACpD,OAAO,EAAE,aAAa;iBACtB,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,oBAAoB,CAClC,KAAK,EACL,cAAc,EACd,aAAa,EACb,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,EAAE,CACpE,CAAC;gBACF,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;gBACtD,IAAI,eAAe,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;gBAE5C,IAAI,CAAC;oBACJ,OAAO,IAAI,EAAE,CAAC;wBACb,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,KAAK,EAAE,CAAC;wBAC7D,IAAI,sBAAsB,EAAE,CAAC;4BAC5B,MAAM,sBAAsB,CAAC;4BAC7B,SAAS;wBACV,CAAC;wBACD,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,IAAI,EAAE,CAAC;wBAC3D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;4BACpC,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gCACjC,IAAI,EAAE,aAAsB;6BAC5B,CAAC,CAAC;4BACH,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gCACjC,IAAI,EAAE,UAAmB;gCACzB,MAAM;6BACN,CAAC,CAAC;yBACH,CAAC,CAAC;wBACH,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;4BACtC,SAAS;wBACV,CAAC;wBACD,qBAAqB,CAAC,kBAAkB,EAAE,CAAC;wBAC3C,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;4BAC3B,MAAM;wBACP,CAAC;wBACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;wBACrC,eAAe,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;wBACxC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BAC5B,uBAAuB,GAAG,KAAK,CAAC,OAAO,CAAC;4BACxC,IAAI,uBAAuB,EAAE,CAAC;gCAC7B,MAAM;oCACL,IAAI,EAAE,eAAe;oCACrB,OAAO,EAAE,uBAAuB;iCAChC,CAAC;4BACH,CAAC;4BACD,SAAS;wBACV,CAAC;wBAED,IACC,KAAK,CAAC,IAAI,KAAK,YAAY;4BAC3B,KAAK,CAAC,IAAI,KAAK,gBAAgB;4BAC/B,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAC9B,CAAC;4BACF,IAAI,CAAC,oBAAoB,EAAE,CAAC;gCAC3B,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;gCACnD,oBAAoB,GAAG,IAAI,CAAC;4BAC7B,CAAC;4BACD,IAAI,uBAAuB,EAAE,CAAC;gCAC7B,MAAM;oCACL,IAAI,EAAE,gBAAgB;oCACtB,OAAO,EAAE,uBAAuB;oCAChC,qBAAqB,EAAE,KAAK;iCAC5B,CAAC;4BACH,CAAC;4BACD,SAAS;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,+BAA+B,EAAE,CAAC;4BACpD,IAAI,CAAC,oBAAoB,EAAE,CAAC;gCAC3B,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;gCACnD,oBAAoB,GAAG,IAAI,CAAC;4BAC7B,CAAC;4BACD,MAAM;gCACL,IAAI,EAAE,sBAAsB;gCAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;gCAC5B,eAAe,EAAE,KAAK,CAAC,eAAe;gCACtC,QAAQ,EAAE,KAAK,CAAC,QAAQ;gCACxB,WAAW,EAAE,KAAK,CAAC,WAAW;gCAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gCAChC,IAAI,EAAE,KAAK,CAAC,IAAI;6BAChB,CAAC;4BACF,SAAS;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,gCAAgC,EAAE,CAAC;4BACrD,MAAM;gCACL,IAAI,EAAE,uBAAuB;gCAC7B,UAAU,EAAE,KAAK,CAAC,UAAU;gCAC5B,eAAe,EAAE,KAAK,CAAC,eAAe;gCACtC,QAAQ,EAAE,KAAK,CAAC,QAAQ;gCACxB,WAAW,EAAE,KAAK,CAAC,WAAW;gCAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gCAChC,IAAI,EAAE,KAAK,CAAC,IAAI;gCAChB,aAAa,EAAE,KAAK,CAAC,aAAa;6BAClC,CAAC;4BACF,SAAS;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,6BAA6B,EAAE,CAAC;4BAClD,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;4BAC/B,iCAAiC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;4BACrD,MAAM;gCACL,IAAI,EAAE,oBAAoB;gCAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;gCAC5B,eAAe,EAAE,KAAK,CAAC,eAAe;gCACtC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gCAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ;gCACxB,WAAW,EAAE,KAAK,CAAC,WAAW;gCAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gCAChC,MAAM,EAAE,KAAK,CAAC,MAAM;gCACpB,OAAO,EAAE,KAAK,CAAC,OAAO;6BACtB,CAAC;4BACF,SAAS;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;4BACnC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gCAC3B,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;gCACnD,oBAAoB,GAAG,IAAI,CAAC;4BAC7B,CAAC;4BACD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;4BACzC,MAAM,cAAc,GACnB,OAAO;gCACP,OAAO,OAAO,KAAK,QAAQ;gCAC3B,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gCACtB,CAAC,CAAE,OAAmC;gCACtC,CAAC,CAAC,EAAE,CAAC;4BACP,kBAAkB,CAAC,IAAI,CAAC;gCACvB,IAAI,EAAE,UAAU;gCAChB,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE;gCACrB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;gCACzB,SAAS,EAAE,cAAc;6BACzB,CAAC,CAAC;4BACH,SAAS;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;4BAC3B,IAAI,uBAAuB,EAAE,CAAC;gCAC7B,yBAAyB,GAAG,uBAAuB,CAAC;gCACpD,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;gCAChE,IAAI,uBAAuB,CAAC,KAAK,EAAE,CAAC;oCACnC,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC;oCAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI;wCACtB,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC;wCAClC,CAAC,CAAC,CAAC,CAAC;oCACL,IAAI,UAAU,EAAE,IAAI,KAAK,iBAAiB,EAAE,CAAC;wCAC5C,IAAI,CAAC;4CACJ,UAAU,CAAC;gDACV,SAAS,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE;gDAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gDACxB,KAAK,EAAE,KAAK,CAAC,EAAE;gDACf,WAAW,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC;gDAC7B,YAAY,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC;gDAC/B,eAAe,EAAE,KAAK,CAAC,SAAS;gDAChC,gBAAgB,EAAE,KAAK,CAAC,UAAU;gDAClC,IAAI;6CACJ,CAAC,CAAC;wCACJ,CAAC;wCAAC,OAAO,KAAK,EAAE,CAAC;4CAChB,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;gDACpC,KAAK,EACJ,KAAK,YAAY,KAAK;oDACrB,CAAC,CAAC,KAAK,CAAC,OAAO;oDACf,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gDACjB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;6CACvD,CAAC,CAAC;wCACJ,CAAC;oCACF,CAAC;gCACF,CAAC;4BACF,CAAC;4BACD,KAAK,MAAM,OAAO,IAAI,iCAAiC,EAAE,CAAC;gCACzD,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC;gCACzC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;4BACxC,CAAC;4BACD,iCAAiC,CAAC,MAAM,GAAG,CAAC,CAAC;4BAC7C,eAAe,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;4BAChD,SAAS;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BAC5B,yBAAyB,GAAG,KAAK,CAAC,KAAK,CAAC;4BACxC,IAAI,uBAAuB,EAAE,CAAC;gCAC7B,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;4BACjE,CAAC;4BACD,eAAe,GAAG,KAAK,CAAC;4BACxB,gBAAgB,GAAG,IAAI,CAAC;4BACxB,MAAM;wBACP,CAAC;oBACF,CAAC;oBACD,KACC,IAAI,KAAK,GAAG,qBAAqB,CAAC,KAAK,EAAE,EACzC,KAAK,EACL,KAAK,GAAG,qBAAqB,CAAC,KAAK,EAAE,EACpC,CAAC;wBACF,MAAM,KAAK,CAAC;oBACb,CAAC;oBACD,qBAAqB,CAAC,kBAAkB,EAAE,CAAC;oBAC3C,aAAa,GAAG,IAAI,CAAC;gBACtB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,qBAAqB,CAAC,KAAK,EAAE,EAAE,CAAC;wBACtC,qEAAqE;oBACtE,CAAC;oBACD,qBAAqB,CAAC,kBAAkB,EAAE,CAAC;oBAC3C,IACC,wBAAwB,CAAC,KAAK,CAAC;wBAC/B,aAAa,IAAI,gBAAgB,EAChC,CAAC;wBACF,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;4BAC9C,OAAO,EAAE,aAAa;4BACtB,UAAU,EAAE,gBAAgB;4BAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;4BACxB,MAAM,EAAE,KAAK,CAAC,MAAM;yBACpB,CAAC,CAAC;wBACH,SAAS,CAAC,mBAAmB;oBAC9B,CAAC;oBACD,gDAAgD;oBAChD,MAAM,KAAK,CAAC;gBACb,CAAC;YACF,CAAC,CAAC,uBAAuB;YAEzB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAC;gBAChD,MAAM,iBAAiB,GAAuB,EAAE,CAAC;gBACjD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,IAAI,CAAC,CAAC;gBACrE,MAAM,qBAAqB,GAAG,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;oBAC5D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC,CAAC;gBACL,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC/D,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAChC,CAAC;gBACF,MAAM,sBAAsB,GAC3B,sBAAsB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;gBAEzD,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,WAAW,CAAC;gBAC5D,MAAM,kBAAkB,GAAG,CAAC,QAAkB,EAAW,EAAE;oBAC1D,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACzD,OAAO,OAAO;wBACb,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;wBACnE,CAAC,CAAC,KAAK,CAAC;gBACV,CAAC,CAAC;gBACF,MAAM,sBAAsB,GAAG,CAC9B,QAAkB,EAClB,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EACxC,EAAE,CACZ,OAAO;oBACN,CAAC,CAAC,kBAAkB,CAClB,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,MAAM,CACd;oBACF,CAAC,CAAC,KAAK,CAAC;gBACV,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBACxE,MAAM,wBAAwB,GAC7B,iBAAiB,CAAC,MAAM,GAAG,CAAC;oBAC3B,CAAC,CAAC,IAAI,CAAC,GAAG,CACR,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,MAAM,CAAC,CACzD;oBACF,CAAC,CAAC,qBAAqB,CAAC;gBAC1B,MAAM,oCAAoC,GAAG,IAAI,CAAC,GAAG,CACpD,CAAC,EACD,qBAAqB,CACrB,CAAC;gBACF,MAAM,uBAAuB,GAAG,CAC/B,YAAoB,EACpB,OAAmB,EACV,EAAE;oBACX,MAAM,oBAAoB,GACzB,OAAO,EAAE,MAAM,EAAE,IAAI,KAAK,KAAK;wBAC9B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,sBAAsB;wBACvC,CAAC,CAAC,SAAS,CAAC;oBACd,OAAO,IAAI,CAAC,GAAG,CACd,YAAY,EACZ,OAAO,oBAAoB,KAAK,QAAQ;wBACvC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;wBACrC,oBAAoB,GAAG,CAAC;wBACxB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC;wBAClC,CAAC,CAAC,YAAY,CACf,CAAC;gBACH,CAAC,CAAC;gBACF,MAAM,+BAA+B,GAAG,CAAC,OAAmB,EAAU,EAAE,CACvE,uBAAuB,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;gBAC5D,MAAM,2CAA2C,GAAG,CACnD,OAAmB,EACV,EAAE,CACX,uBAAuB,CACtB,oCAAoC,EACpC,OAAO,CACP,CAAC;gBACH,IAAI,gBAAgB,GAAG,qBAAqB,CAAC;gBAC7C,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAGlC,CAAC;gBACJ,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAA4B,CAAC;gBACxE,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAGvC,CAAC;gBACJ,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAGpC,CAAC;gBACJ,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBAC1C,IAAI,gBAAgB,GAAG,CAAC,CAAC;gBACzB,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAC3D,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAGnC,CAAC;gBAEJ,MAAM,aAAa,GAAG,GAAW,EAAE;oBAClC,gBAAgB,IAAI,CAAC,CAAC;oBACtB,OAAO,gBAAgB,CAAC;gBACzB,CAAC,CAAC;gBAEF,MAAM,gBAAgB,GAAG,GAAW,EAAE,CACrC,iBAAiB,CAAC,MAAM,GAAG,CAAC;oBAC3B,CAAC,CAAC,CAAC,2BAA2B,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAE,CAAC;wBACxD,gBAAgB,CAAC;oBAClB,CAAC,CAAC,aAAa,EAAE,CAAC;gBAEpB,MAAM,eAAe,GAAG,GAAW,EAAE,CACpC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,CAAC;gBAElD,MAAM,kBAAkB,GAAG,CAAC,OAAkB,EAAW,EAAE,CAC1D,OAAO,CAAC,MAAM,EAAE,IAAI,KAAK,KAAK;oBAC9B,OAAO,CAAC,MAAM,CAAC,yBAAyB,KAAK,IAAI;oBACjD,OAAO,CAAC,WAAW,EAAE,eAAe,KAAK,IAAI,CAAC;gBAE/C,MAAM,qBAAqB,GAAG,GAEjB,EAAE;oBACd,MAAM,YAAY,GAAG,CAAC,GAAG,uBAAuB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC9D,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CACvD,CAAC;oBACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC/B,OAAO,SAAS,CAAC;oBAClB,CAAC;oBACD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;oBAC7C,KAAK,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;wBACrC,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;4BACtC,UAAU,CAAC,GAAG,CACb,QAAQ,CAAC,SAAS,EAClB,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAC7C,CAAC;wBACH,CAAC;oBACF,CAAC;oBACD,MAAM,SAAS,GAGE,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;wBAC9C,MAAM,qBAAqB,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC;wBACxD,MAAM,QAAQ,GACb,QAAQ,CAAC,SAAS,KAAK,SAAS;4BAC/B,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;4BAC3C,CAAC,CAAC,CAAC,CAAC;wBACN,MAAM,OAAO,GACZ,QAAQ,CAAC,QAAQ,KAAK,IAAI;4BACzB,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS;gCAChC,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS;oCAC/B,QAAQ,CAAC,iBAAiB,KAAK,IAAI;oCACpC,CAAC,CAAC,SAAS;oCACX,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAK,cAAc;wCACpC,CAAC,QAAQ,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,KAAK,WAAW,CAAC;wCACpD,CAAC,CAAC,cAAc;wCAChB,CAAC,CAAC,YAAY,CAAC;wBACpB,MAAM,MAAM,GACX,OAAO,KAAK,QAAQ;4BACnB,CAAC,CAAC,WAAW;4BACb,CAAC,CAAC,QAAQ,CAAC,iBAAiB,KAAK,IAAI;gCACpC,CAAC,CAAC,QAAQ,CAAC,MAAM;gCACjB,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,2BAA2B;oCAChD,CAAC,CAAC,2BAA2B;oCAC7B,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI;wCAC3B,CAAC,CAAC,qBAAqB;wCACvB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC;4CACxC,CAAC,CAAC,OAAO,KAAK,cAAc;gDAC3B,CAAC,CAAC,yBAAyB;gDAC3B,CAAC,CAAC,qBAAqB;oDACtB,CAAC,CAAC,uBAAuB;oDACzB,CAAC,CAAC,QAAQ,CAAC,MAAM;4CACnB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,sBAAsB,CAAC;gDACnD,CAAC,CAAC,sBAAsB;gDACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;wBACzB,OAAO;4BACN,UAAU,EAAE,QAAQ,CAAC,MAAM;4BAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;4BAC3B,YAAY,EAAE,QAAQ,CAAC,YAAY;4BACnC,OAAO;4BACP,QAAQ,EAAE,OAAO;4BACjB,MAAM;4BACN,SAAS,EACR,QAAQ,CAAC,SAAS,KAAK,SAAS;gCAC/B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC;gCACrC,CAAC,CAAC,SAAS;4BACb,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;4BAC9D,eAAe,EAAE,IAAI,CAAC,GAAG,CACxB,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC,CAAC,CACzC;4BACD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;4BAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;4BAC3B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;yBAC7C,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM,qBAAqB,GAAG,SAAS,CAAC,MAAM,CAC7C,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,KAAK,cAAc,CACjD,CAAC,MAAM,CAAC;oBACT,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,CACxC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,CAC5C,CAAC,MAAM,CAAC;oBACT,MAAM,oBAAoB,GACzB,SAAS,CAAC,MAAM,KAAK,CAAC;wBACtB,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,uBAAuB;wBAC/C,CAAC,CAAC;4BACA,kBAAkB,EAAE,IAAI;4BACxB,MAAM,EAAE,uBAAuB;4BAC/B,IAAI,EAAE,oIAAoI;yBAC1I;wBACF,CAAC,CAAC,SAAS,CAAC;oBACd,MAAM,oBAAoB,GAAG,MAAM,CAAC,WAAW,CAC9C,CAAC,GAAG,SAAS,CAAC;yBACZ,MAAM,CACN,CAAC,QAAQ,EAAE,EAAE,CACZ,QAAQ,CAAC,OAAO,KAAK,YAAY;wBACjC,QAAQ,CAAC,OAAO,KAAK,SAAS,CAC/B;yBACA,MAAM,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;wBAC5B,MAAM,CAAC,GAAG,CACT,QAAQ,CAAC,MAAM,EACf,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CACtC,CAAC;wBACF,OAAO,MAAM,CAAC;oBACf,CAAC,EAAE,IAAI,GAAG,EAAkB,CAAC,CAC9B,CAAC;oBAEF,OAAO;wBACN,IAAI,EAAE,oBAAoB;wBAC1B,kBAAkB,EAAE,YAAY,CAAC,MAAM;wBACvC,yBAAyB,EAAE,YAAY,CAAC,MAAM;wBAC9C,oBAAoB,EAAE,UAAU,CAAC,IAAI;wBACrC,qBAAqB;wBACrB,6BAA6B,EAAE,qBAAqB;wBACpD,mBAAmB,EAAE,SAAS,CAAC,MAAM,CACpC,CAAC,QAAQ,EAAE,EAAE,CACZ,QAAQ,CAAC,OAAO,KAAK,YAAY;4BACjC,QAAQ,CAAC,OAAO,KAAK,SAAS,CAC/B,CAAC,MAAM;wBACR,gBAAgB;wBAChB,sBAAsB,EAAE,SAAS,CAAC,MAAM,CACvC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,iBAAiB,KAAK,IAAI,CACjD,CAAC,MAAM;wBACR,iBAAiB,EAAE,SAAS,CAAC,MAAM,CAClC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CACxC,CAAC,MAAM;wBACR,gBAAgB,EAAE,SAAS,CAAC,MAAM,CACjC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CACxC,CAAC,MAAM;wBACR,aAAa,EAAE,SAAS,CAAC,MAAM,CAC9B,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CACxC,CAAC,MAAM;wBACR,eAAe,EAAE,SAAS,CAAC,MAAM,CAChC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,EAC5C,CAAC,CACD;wBACD,cAAc,EAAE,SAAS,CAAC,MAAM,CAC/B,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,EAC5C,CAAC,CACD;wBACD,oBAAoB;wBACpB,SAAS;wBACT,oBAAoB;qBACpB,CAAC;gBACH,CAAC,CAAC;gBAEF,MAAM,gBAAgB,GAAG,CACxB,QAAkB,EAClB,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EACb,EAAE,CACnC,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;gBAE5D,MAAM,iBAAiB,GAAG,CACzB,IAAoC,EACpC,KAAqC,EAC3B,EAAE;oBACZ,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACrB,OAAO,IAAI,KAAK,KAAK,CAAC;oBACvB,CAAC;oBACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;oBACjD,MAAM,iBAAiB,GAAG,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;oBACnD,OAAO,CACN,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;wBAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM;wBACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBAC9D,gBAAgB,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM;wBACpD,gBAAgB,CAAC,KAAK,CACrB,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,KAAK,iBAAiB,CAAC,KAAK,CAAC,CAChE,CACD,CAAC;gBACH,CAAC,CAAC;gBAEF,MAAM,oBAAoB,GAAG,GAAW,EAAE,CACzC,iBAAiB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;oBACtC,MAAM,OAAO,GAAG,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAChD,SAAS,CAAC,QAAQ,CAAC,IAAI,CACvB,CAAC;oBACF,OAAO,CACN,CAAC,CAAC,OAAO;wBACT,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAClE,CAAC;gBACH,CAAC,CAAC,CAAC,MAAM,CAAC;gBAEX,MAAM,2BAA2B,GAAG,CACnC,UAAkB,EAClB,QAAgC,EACP,EAAE;oBAC3B,sBAAsB,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;oBACjD,OAAO,QAAQ,CAAC;gBACjB,CAAC,CAAC;gBAEF,MAAM,yBAAyB,GAAG,CACjC,KAAyB,EACzB,gBAAyB,EACU,EAAE;oBACrC,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;wBACpE,OAAO,sBAAsB,CAAC;oBAC/B,CAAC;oBACD,IAAI,gBAAgB,EAAE,CAAC;wBACtB,OAAO,qBAAqB,CAAC;oBAC9B,CAAC;oBACD,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;wBAC3D,MAAM,YAAY,GAAG,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC1D,OAAO,YAAY;4BAClB,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC;4BACxC,CAAC,CAAC,KAAK,CAAC;oBACV,CAAC,CAAC,CAAC;oBACH,OAAO,cAAc,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,kBAAkB,CAAC;gBACnE,CAAC,CAAC;gBAEF,MAAM,2BAA2B,GAAG,CAAC,EACpC,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,oBAAoB,GAAG,gBAAgB,GASvC,EAA0B,EAAE;oBAC5B,MAAM,gBAAgB,GAAG,oBAAoB,EAAE,CAAC;oBAChD,MAAM,IAAI,GAA2B;wBACpC,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,cAAc;wBACtB,gBAAgB,EAAE,oBAAoB;wBACtC,UAAU,EAAE,iBAAiB,CAAC,MAAM;wBACpC,gBAAgB;wBAChB,KAAK;qBACL,CAAC;oBACF,IAAI,CAAC,OAAO,EAAE,CAAC;wBACd,OAAO,IAAI,CAAC;oBACb,CAAC;oBACD,IAAI,sBAAsB,EAAE,CAAC;wBAC5B,OAAO;4BACN,GAAG,IAAI;4BACP,cAAc,EAAE,qBAAqB;4BACrC,MAAM,EAAE,wBAAwB;yBAChC,CAAC;oBACH,CAAC;oBACD,IAAI,QAAQ,EAAE,CAAC;wBACd,OAAO;4BACN,GAAG,IAAI;4BACP,cAAc,EAAE,WAAW;4BAC3B,MAAM,EAAE,gBAAgB;yBACxB,CAAC;oBACH,CAAC;oBACD,IAAI,KAAK,EAAE,CAAC;wBACX,OAAO;4BACN,GAAG,IAAI;4BACP,cAAc,EAAE,sBAAsB;4BACtC,MAAM,EAAE,yBAAyB,CAAC,KAAK,EAAE,gBAAgB,CAAC;4BAC1D,SAAS,EAAE,KAAK,CAAC,KAAK;4BACtB,eAAe,EAAE,KAAK,CAAC,MAAM;4BAC7B,gBAAgB,EAAE,KAAK,CAAC,YAAY;yBACpC,CAAC;oBACH,CAAC;oBACD,IAAI,YAAY,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAC/B,OAAO;4BACN,GAAG,IAAI;4BACP,cAAc,EAAE,wBAAwB;4BACxC,MAAM,EAAE,qBAAqB;yBAC7B,CAAC;oBACH,CAAC;oBACD,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;wBAC1B,OAAO;4BACN,GAAG,IAAI;4BACP,cAAc,EAAE,qBAAqB;4BACrC,MAAM,EAAE,kBAAkB;yBAC1B,CAAC;oBACH,CAAC;oBACD,OAAO;wBACN,GAAG,IAAI;wBACP,cAAc,EAAE,qBAAqB;wBACrC,MAAM,EAAE,eAAe;qBACvB,CAAC;gBACH,CAAC,CAAC;gBAEF,MAAM,0BAA0B,GAAG,GAAY,EAAE,CAChD,iBAAiB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;oBACpC,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC/D,OAAO,CACN,CAAC,CAAC,OAAO;wBACT,CAAC,cAAc,CACd,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,MAAM,CACd;wBACD,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CACrC,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEJ,MAAM,mBAAmB,GAAG,CAC3B,KAAqC,EAC5B,EAAE,CACX,KAAK,IAAI,CAAC,0BAA0B,EAAE;oBACrC,CAAC,CAAC,wBAAwB;oBAC1B,CAAC,CAAC,4BAA4B,CAAC;gBAEjC,MAAM,6BAA6B,GAAG,CACrC,SAA2B,EACjB,EAAE;oBACZ,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC/D,OAAO,CACN,CAAC,CAAC,OAAO;wBACT,CAAC,cAAc,CACd,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,MAAM,CACd;wBACD,kBAAkB,CACjB,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,MAAM,CACd;wBACD,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CACrC,CAAC;gBACH,CAAC,CAAC;gBAEF,MAAM,+BAA+B,GAAG,CACvC,QAAkB,EAClB,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EACpC,EAAE,CACZ,CAAC,CAAC,OAAO;oBACT,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;oBAClE,kBAAkB,CACjB,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,MAAM,CACd;oBACD,iBAAiB,CAAC,MAAM,GAAG,CAAC;oBAC5B,iBAAiB,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBAExD,MAAM,+BAA+B,GAAG,CACvC,KAAqC,EACP,EAAE,CAChC,CAAC,CAAC,KAAK;oBACP,iBAAiB,CAAC,MAAM,GAAG,CAAC;oBAC5B,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE;wBACrC,MAAM,YAAY,GAAG,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC1D,OAAO,YAAY;4BAClB,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC;4BACzC,CAAC,CAAC,KAAK,CAAC;oBACV,CAAC,CAAC,CAAC;gBACJ,MAAM,oBAAoB,GAAG,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,OAAO,GAMP,EAAU,EAAE,CACZ,sBAAsB;oBACrB,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,QAAQ;wBACT,CAAC,CAAC,+BAA+B,CAAC,OAAO,CAAC;wBAC1C,CAAC,CAAC,KAAK;4BACN,CAAC,CAAC,qBAAqB;4BACvB,CAAC,CAAC,YAAY;gCACb,CAAC,CAAC,2CAA2C,CAAC,OAAO,CAAC;gCACtD,CAAC,CAAC,CAAC,CAAC;gBAET,yDAAyD;gBACzD,IAAI,qBAAqB,GAAG,CAAC,IAAI,sBAAsB,EAAE,CAAC;oBACzD,gBAAgB,GAAG,CAAC,CAAC;oBACrB,IAAI,CAAC,IAAI,CAAC,8BAA8B,EAAE,CAAC;wBAC1C,MAAM,CAAC,IAAI,CACV,kGAAkG,CAClG,CAAC;wBACF,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC;oBAC5C,CAAC;gBACF,CAAC;gBAED,IAAI,iBAAiB,GAAG,KAAK,CAAC;gBAC9B,IAAI,kBAAkB,GAAe,EAAE,CAAC;gBACxC,IAAI,mCAAmC,GAAG,KAAK,CAAC;gBAEhD,MAAM,aAAa,GAAG,KAAK,IAAmB,EAAE;oBAC/C,IAAI,iBAAiB,IAAI,CAAC,mBAAmB,EAAE,CAAC;wBAC/C,OAAO;oBACR,CAAC;oBACD,MAAM,QAAQ,GAAG,MAAM,mBAAmB,EAAc,CAAC;oBACzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,iBAAiB,GAAG,IAAI,CAAC;wBACzB,kBAAkB,GAAG,QAAQ,CAAC;oBAC/B,CAAC;gBACF,CAAC,CAAC;gBAEF,MAAM,oBAAoB,GAAG,CAC5B,QAAkB,EAClB,OAA0B,EAC1B,OAAgB,EAChB,QAGC,EACc,EAAE;oBACjB,MAAM,gBAAgB,GAAG,kCAAkC,CAC1D,OAAO,CAAC,OAAO,CACf,CAAC;oBACF,MAAM,aAAa,GAAG,+BAA+B,CACpD,OAAO,CAAC,OAAO,CACf,CAAC,aAAa,CAAC;oBAChB,OAAO;wBACN,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAgB;wBAChD,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAgB;wBAC9C;4BACC,IAAI,EAAE,oBAAoB;4BAC1B,UAAU,EAAE,QAAQ,CAAC,EAAE;4BACvB,eAAe,EAAE,QAAQ,EAAE,eAAe;4BAC1C,iBAAiB,EAChB,QAAQ,EAAE,iBAAiB;gCAC3B,gBAAgB,CAAC,iBAAiB;4BACnC,SAAS,EAAE,gBAAgB,CAAC,SAAS;4BACrC,eAAe,EAAE,gBAAgB,CAAC,eAAe;4BACjD,aAAa;4BACb,QAAQ,EAAE,QAAQ,CAAC,IAAI;4BACvB,MAAM,EAAE,OAAO;4BACf,OAAO;4BACP,UAAU,EAAE,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;yBACrC;qBACf,CAAC;gBACH,CAAC,CAAC;gBACF,MAAM,cAAc,GAAG,CACtB,OAA0B,EAC1B,QAAkB,EAClB,OAAgB,EAChB,QAGC,EACA,EAAE;oBACH,IAAI,CAAC;wBACJ,uBAAuB,CAAC;4BACvB,QAAQ;4BACR,MAAM,EAAE,OAAO;4BACf,OAAO,EAAE,IAAI,CAAC,aAAa;4BAC3B,OAAO;yBACP,CAAC,CAAC;wBACH,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC1B,OAAO,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;oBACnE,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;4BACzC,MAAM,mBAAmB,GAAsB;gCAC9C,IAAI,EAAE,YAAY;gCAClB,UAAU,EAAE,QAAQ,CAAC,EAAE;gCACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;gCACvB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;gCAChD,OAAO,EAAE,IAAI;gCACb,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;6BAC3B,CAAC;4BACF,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;4BACtC,OAAO,oBAAoB,CAC1B,QAAQ,EACR,mBAAmB,EACnB,IAAI,EACJ,QAAQ,CACR,CAAC;wBACH,CAAC;wBACD,MAAM,KAAK,CAAC;oBACb,CAAC;gBACF,CAAC,CAAC;gBACF,MAAM,uBAAuB,GAAG,CAAC,QAAkB,EAAU,EAAE;oBAC9D,MAAM,YAAY,GAAG,kBAAkB,CAAC,SAAS,CAChD,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,CAC3C,CAAC;oBACF,OAAO,YAAY,IAAI,CAAC;wBACvB,CAAC,CAAC,YAAY;wBACd,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC;gBACjC,CAAC,CAAC;gBACF,MAAM,mBAAmB,GAAG,CAAC,QAAkB,EAAgB,EAAE;oBAChE,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CACpE,QAAQ,CAAC,SAAoC,CAC7C,CAAC;oBACF,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBACnE,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACrD,MAAM,uBAAuB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;oBAC7D,MAAM,2BAA2B,GAAG,sBAAsB,CACzD,QAAQ,EACR,OAAO,CACP,CAAC;oBACF,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAC1D,MAAM,qBAAqB,GAAG,6BAA6B,CAC1D,QAAQ,EACR,iBAAiB,CACjB,CAAC;oBACF,MAAM,kBAAkB,GAAG,2BAA2B,CACrD,QAAQ,CAAC,EAAE,EACX,kBAAkB;wBACjB,2BAA2B,CAAC;4BAC3B,OAAO;4BACP,QAAQ,EAAE,uBAAuB;4BACjC,YAAY,EAAE,2BAA2B;4BACzC,KAAK,EAAE,aAAa;4BACpB,KAAK,EACJ,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;4BAC1D,gBAAgB,EACf,+BAA+B,CAAC,aAAa,CAAC;4BAC/C,oBAAoB,EAAE,oBAAoB,CAAC;gCAC1C,QAAQ,EAAE,uBAAuB;gCACjC,YAAY,EAAE,2BAA2B;gCACzC,KAAK,EAAE,aAAa;gCACpB,OAAO;6BACP,CAAC;yBACF,CAAC,CACH,CAAC;oBACF,MAAM,kBAAkB,GAA2B;wBAClD,MAAM,EAAE,QAAQ,CAAC,EAAE;wBACnB,QAAQ,EAAE,QAAQ,CAAC,IAAI;wBACvB,YAAY,EAAE,uBAAuB,CAAC,QAAQ,CAAC;wBAC/C,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,sBAAsB;wBAC9B,eAAe,EAAE,eAAe,EAAE;qBAClC,CAAC;oBACF,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC;oBAC7D,MAAM,aAAa,GAAsB;wBACxC,IAAI,EAAE,YAAY;wBAClB,UAAU,EAAE,QAAQ,CAAC,EAAE;wBACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;wBACvB,OAAO,EAAE;4BACR;gCACC,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,qCAAqC;6BAC3C;yBACD;wBACD,OAAO,EAAE,IAAI;wBACb,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;qBAC3B,CAAC;oBACF,OAAO;wBACN;4BACC,IAAI,EAAE,sBAAsB;4BAC5B,UAAU,EAAE,QAAQ,CAAC,EAAE;4BACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;4BACvB,IAAI,EAAE,oBAAoB;4BAC1B,UAAU,EAAE,kBAAkB;yBAChB;wBACf,GAAG,cAAc,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC;qBAChD,CAAC;gBACH,CAAC,CAAC;gBACF,MAAM,2BAA2B,GAAG,CACnC,QAAkB,EACO,EAAE;oBAC3B,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAC1D,IAAI,QAAQ,EAAE,CAAC;wBACd,OAAO,QAAQ,CAAC;oBACjB,CAAC;oBACD,MAAM,UAAU,GAA2B;wBAC1C,MAAM,EAAE,QAAQ,CAAC,EAAE;wBACnB,QAAQ,EAAE,QAAQ,CAAC,IAAI;wBACvB,YAAY,EAAE,uBAAuB,CAAC,QAAQ,CAAC;wBAC/C,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,gBAAgB;wBACxB,eAAe,EAAE,eAAe,EAAE;qBAClC,CAAC;oBACF,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;oBACrD,OAAO,UAAU,CAAC;gBACnB,CAAC,CAAC;gBACF,MAAM,4BAA4B,GAAG,CACpC,OAA0B,EAC1B,QAAkB,EAClB,OAAgB,EAChB,QAGC,EACc,EAAE;oBACjB,IAAI,OAAO,EAAE,CAAC;wBACb,2BAA2B,CAAC,QAAQ,CAAC,CAAC;oBACvC,CAAC;oBACD,OAAO,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC7D,CAAC,CAAC;gBACF,MAAM,2BAA2B,GAAG,KAAK,IAA2B,EAAE;oBACrE,MAAM,MAAM,GAAiB,EAAE,CAAC;oBAChC,OAAO,IAAI,EAAE,CAAC;wBACb,MAAM,IAAI,GAAG,MAAM,4BAA4B,CAC9C,iBAAiB,EACjB,eAAe,CACf,CAAC;wBACF,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BACxB,SAAS;wBACV,CAAC;wBACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;wBAC7B,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC7C,2BAA2B,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACnD,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAClD,MAAM,wBAAwB,GAC7B,6BAA6B,CAC5B,IAAI,CAAC,SAAS,CAAC,QAAQ,EACvB,iBAAiB,CACjB,KAAK,SAAS,CAAC;wBACjB,0CAA0C,CACzC,IAAI,CAAC,SAAS,CAAC,QAAQ,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,+BAA+B,EAC/B,iCAAiC,CACjC,CAAC;wBACF,mCAAmC,KAAK,wBAAwB,CAAC;wBACjE,MAAM,CAAC,IAAI,CACV,GAAG,cAAc,CAChB,OAAO,CAAC,OAAO,EACf,IAAI,CAAC,SAAS,CAAC,QAAQ,EACvB,OAAO,CAAC,OAAO,EACf;4BACC,eAAe,EAAE,OAAO,CAAC,eAAe;4BACxC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;yBAC5C,CACD,CACD,CAAC;wBACF,MAAM,aAAa,EAAE,CAAC;wBACtB,OAAO,MAAM,CAAC;oBACf,CAAC;gBACF,CAAC,CAAC;gBACF,MAAM,sBAAsB,GAAG,KAAK,EACnC,kBAAkB,GAAG,CAAC,EACE,EAAE;oBAC1B,MAAM,MAAM,GAAiB,EAAE,CAAC;oBAChC,OAAO,iBAAiB,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;wBACtD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,2BAA2B,EAAE,CAAC,CAAC,CAAC;oBACvD,CAAC;oBACD,OAAO,MAAM,CAAC;gBACf,CAAC,CAAC;gBACF,MAAM,uBAAuB,GAAG,KAAK,IAA2B,EAAE;oBACjE,IAAI,iBAAiB,CAAC,MAAM,GAAG,gBAAgB,EAAE,CAAC;wBACjD,OAAO,EAAE,CAAC;oBACX,CAAC;oBACD,OAAO,sBAAsB,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;gBACrD,CAAC,CAAC;gBAEF,KACC,IAAI,SAAS,GAAG,CAAC,EACjB,SAAS,GAAG,kBAAkB,CAAC,MAAM,EACrC,SAAS,EAAE,EACV,CAAC;oBACF,IAAI,iBAAiB,EAAE,CAAC;wBACvB,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;wBACzD,MAAM;oBACP,CAAC;oBACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;oBAC/C,IAAI,CAAC,QAAQ;wBAAE,SAAS;oBACxB,IAAI,qBAAyC,CAAC;oBAC9C,IAAI,iBAAiB,GAAG,KAAK,CAAC;oBAC9B,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAQ,EAAE;wBAClD,qBAAqB,KAAK,MAAM,CAAC;wBACjC,iBAAiB,GAAG,IAAI,CAAC;oBAC1B,CAAC,CAAC;oBACF,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;oBAC9D,MAAM,qBAAqB,GAAG,wBAAwB;wBACrD,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oBAC9B,MAAM,eAAe,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACjE,MAAM,4BAA4B,GAAG,sBAAsB,CAC1D,QAAQ,EACR,eAAe,CACf,CAAC;oBACF,MAAM,wBAAwB,GAAG,+BAA+B,CAC/D,qBAAqB,CACrB,CAAC;oBACF,MAAM,qCAAqC,GAC1C,CAAC,wBAAwB;wBACzB,+BAA+B,CAAC,QAAQ,CAAC,CAAC;oBAC3C,IAAI,0BAA8D,CAAC;oBACnE,IACC,CAAC,wBAAwB;wBACzB,iBAAiB,CAAC,MAAM,GAAG,CAAC;wBAC5B,oBAAoB,EAAE,GAAG,CAAC;wBAC1B,CAAC,wBAAwB;wBACzB,CAAC,qCAAqC,EACrC,CAAC;wBACF,0BAA0B,GAAG,2BAA2B,CAAC;4BACxD,OAAO,EAAE,eAAe;4BACxB,QAAQ,EAAE,wBAAwB;4BAClC,YAAY,EAAE,4BAA4B;4BAC1C,KAAK,EAAE,qBAAqB;4BAC5B,KAAK,EAAE,UAAU;4BACjB,gBAAgB,EAAE,wBAAwB;4BAC1C,oBAAoB,EAAE,oBAAoB,CAAC;gCAC1C,QAAQ,EAAE,wBAAwB;gCAClC,YAAY,EAAE,4BAA4B;gCAC1C,KAAK,EAAE,qBAAqB;gCAC5B,OAAO,EAAE,eAAe;6BACxB,CAAC;yBACF,CAAC,CAAC;wBACH,IACC,+BAA+B,CAC9B,iBAAiB,EACjB,iBAAiB,CACjB,EACA,CAAC;4BACF,iBAAiB,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAC,CAAC;wBAC/D,CAAC;wBACD,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;wBAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;4BAC5B,MAAM,KAAK,CAAC;wBACb,CAAC;wBACD,IAAI,iBAAiB,EAAE,CAAC;4BACvB,IAAI,0BAA0B,EAAE,CAAC;gCAChC,2BAA2B,CAC1B,QAAQ,CAAC,EAAE,EACX,0BAA0B,CAC1B,CAAC;4BACH,CAAC;4BACD,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;4BACzD,MAAM;wBACP,CAAC;oBACF,CAAC;oBACD,MAAM,qBAAqB,GAAG,6BAA6B,CAC1D,QAAQ,EACR,iBAAiB,CACjB,CAAC;oBACF,MAAM,iCAAiC,GACtC,qBAAqB,KAAK,SAAS;wBACnC,0BAA0B,CACzB,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,+BAA+B,CAC/B,CAAC;oBACH,uCAAuC,CACtC,qBAAqB,EACrB,+BAA+B,CAC/B,CAAC;oBACF,MAAM,uBAAuB,GAAG,CAC/B,iBAA2B,EACjB,EAAE;wBACZ,MAAM,YAAY,GAAG,6BAA6B,CACjD,iBAAiB,EACjB,iBAAiB,CACjB,CAAC;wBACF,OAAO,CACN,YAAY,KAAK,SAAS;4BAC1B,YAAY,KAAK,qBAAqB;4BACtC,iCAAiC;4BACjC,CAAC,+BAA+B,CAC/B,iBAAiB,EACjB,iBAAiB,CACjB;4BACD,CAAC,mCAAmC;4BACpC,0BAA0B,CACzB,YAAY,EACZ,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,+BAA+B,CAC/B,CACD,CAAC;oBACH,CAAC,CAAC;oBACF,MAAM,6BAA6B,GAAG,2BAA2B,CAAC;wBACjE,OAAO,EAAE,eAAe;wBACxB,QAAQ,EAAE,wBAAwB;wBAClC,YAAY,EAAE,4BAA4B;wBAC1C,KAAK,EAAE,qBAAqB;wBAC5B,KAAK,EACJ,qBAAqB,KAAK,SAAS;4BAClC,CAAC,CAAC,UAAU;4BACZ,CAAC,CAAC,iCAAiC;gCAClC,CAAC,CAAC,WAAW;gCACb,CAAC,CAAC,MAAM;wBACX,gBAAgB,EAAE,+BAA+B,CAChD,qBAAqB,CACrB;wBACD,oBAAoB,EAAE,oBAAoB,CAAC;4BAC1C,QAAQ,EAAE,wBAAwB;4BAClC,YAAY,EAAE,4BAA4B;4BAC1C,KAAK,EAAE,qBAAqB;4BAC5B,OAAO,EAAE,eAAe;yBACxB,CAAC;qBACF,CAAC,CAAC;oBACH,MAAM,yBAAyB,GAAG,2BAA2B,CAC5D,QAAQ,CAAC,EAAE,EACX,0BAA0B;wBACzB,CAAC,CAAC;4BACA,GAAG,6BAA6B;4BAChC,cAAc,EAAE,0BAA0B,CAAC,cAAc;4BACzD,MAAM,EAAE,0BAA0B,CAAC,MAAM;4BACzC,UAAU,EAAE,0BAA0B,CAAC,UAAU;4BACjD,gBAAgB,EAAE,0BAA0B,CAAC,gBAAgB;yBAC7D;wBACF,CAAC,CAAC,6BAA6B,CAChC,CAAC;oBAEF,6EAA6E;oBAC7E,IAAI,aAA4C,CAAC;oBACjD,IAAI,eAEQ,CAAC;oBACb,IAAI,CAAC;wBACJ,MAAM,cAAc,GAAG,kBAAkB,CAAC;4BACzC,QAAQ;4BACR,KAAK;4BACL,WAAW;4BACX,GAAG;4BACH,MAAM;4BACN,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;4BACvC,aAAa,EAAE,IAAI,CAAC,aAAa;4BACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;4BAC3C,WAAW,EAAE,IAAI,CAAC,WAAW;4BAC7B,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;4BAC7C,mBAAmB,EAAE,2BAA2B;4BAChD,WAAW;4BACX,QAAQ;4BACR,cAAc,EAAE;gCACf,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;gCAC/C,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;gCAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gCACzC,YAAY,EAAE,iBAAiB,CAAC,mBAAmB;gCACnD,SAAS,EAAE,iBAAiB,CAAC,eAAe;6BAC5C;4BACD,uBAAuB;4BACvB,kBAAkB,EAAE,yBAAyB;4BAC7C,cAAc,EAAE,4BAA4B;yBAC5C,CAAC,CAAC;wBACH,OAAO,IAAI,EAAE,CAAC;4BACb,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;4BAC/C,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;gCACrB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE;oCAC3C,UAAU,CAAC,KAAK,CAAC,CAAC;gCACnB,MAAM;4BACP,CAAC;4BACD,MAAM,UAAU,CAAC,KAAK,CAAC;wBACxB,CAAC;oBACF,CAAC;4BAAS,CAAC;wBACV,uCAAuC,CACtC,qBAAqB,EACrB,+BAA+B,CAC/B,CAAC;oBACH,CAAC;oBACD,IAAI,CAAC,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;wBACxC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;oBAC9D,CAAC;oBAED,iCAAiC;oBACjC,IAAI,CAAC,mBAAmB,GAAG,eAAe,CAAC,mBAAmB,CAAC;oBAC/D,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC,iBAAiB,CAAC;oBAE3D,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACzC,MAAM,aAAa,EAAE,CAAC;wBACtB,IAAI,iBAAiB,EAAE,CAAC;4BACvB,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;4BAC7D,MAAM;wBACP,CAAC;wBACD,SAAS;oBACV,CAAC;oBAED,MAAM,EACL,iBAAiB,EACjB,aAAa,EACb,OAAO,EAAE,IAAI,EACb,sBAAsB,GACtB,GAAG,aAAa,CAAC;oBAClB,MAAM,yBAAyB,GAC9B,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;wBACxD,IAAI,CAAC,WAAW,EAAE,eAAe,KAAK,IAAI,CAAC;oBAC5C,MAAM,6BAA6B,GAAG,kBAAkB,CACvD,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,MAAM,CACX,CAAC;oBACF,IACC,yBAAyB;wBACzB,+BAA+B,CAC9B,iBAAiB,EACjB,iBAAiB,CACjB,EACA,CAAC;wBACF,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;wBACtC,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;wBAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;4BAC5B,MAAM,KAAK,CAAC;wBACb,CAAC;wBACD,IAAI,iBAAiB,EAAE,CAAC;4BACvB,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;4BACzD,MAAM;wBACP,CAAC;oBACF,CAAC;oBACD,MAAM,sBAAsB,GAAG,yBAAyB;wBACvD,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;oBAC7C,MAAM,6BAA6B,GAClC,CAAC,sBAAsB;wBACvB,+BAA+B,CAAC,sBAAsB,CAAC,CAAC;oBACzD,MAAM,6BAA6B,GAClC,CAAC,sBAAsB;wBACvB,CAAC,yBAAyB;wBAC1B,+BAA+B,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;oBAC1D,IACC,CAAC,yBAAyB;wBAC1B,iBAAiB,CAAC,MAAM,GAAG,CAAC;wBAC5B,CAAC,6BAA6B;wBAC9B,CAAC,6BAA6B,EAC7B,CAAC;wBACF,IACC,+BAA+B,CAC9B,iBAAiB,EACjB,iBAAiB,CACjB,EACA,CAAC;4BACF,iBAAiB,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC,CAAC;wBAChE,CAAC;wBACD,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;wBAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;4BAC5B,MAAM,KAAK,CAAC;wBACb,CAAC;wBACD,IAAI,iBAAiB,EAAE,CAAC;4BACvB,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;4BACzD,MAAM;wBACP,CAAC;oBACF,CAAC;oBACD,gBAAgB,GAAG,sBAAsB;wBACxC,CAAC,CAAC,CAAC;wBACH,CAAC,CAAC,yBAAyB;4BAC1B,CAAC,CAAC,+BAA+B,CAAC,IAAI,CAAC;4BACvC,CAAC,CAAC,sBAAsB;gCACvB,CAAC,CAAC,qBAAqB;gCACvB,CAAC,CAAC,6BAA6B;oCAC9B,CAAC,CAAC,2CAA2C,CAAC,IAAI,CAAC;oCACnD,CAAC,CAAC,CAAC,CAAC;oBACR,MAAM,2BAA2B,GAAG,2BAA2B,CAAC;wBAC/D,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,yBAAyB;wBACnC,YAAY,EAAE,6BAA6B;wBAC3C,KAAK,EAAE,sBAAsB;wBAC7B,KAAK,EACJ,qBAAqB,KAAK,SAAS;4BAClC,CAAC,CAAC,UAAU;4BACZ,CAAC,CAAC,iCAAiC;gCAClC,CAAC,CAAC,WAAW;gCACb,CAAC,CAAC,MAAM;wBACX,gBAAgB,EAAE,6BAA6B;wBAC/C,oBAAoB,EAAE,oBAAoB,CAAC;4BAC1C,QAAQ,EAAE,yBAAyB;4BACnC,YAAY,EAAE,6BAA6B;4BAC3C,KAAK,EAAE,sBAAsB;4BAC7B,OAAO,EAAE,IAAI;yBACb,CAAC;qBACF,CAAC,CAAC;oBACH,MAAM,0BAA0B,GAAG,sBAAsB,CAAC,GAAG,CAC5D,QAAQ,CAAC,EAAE,CACX,CAAC;oBACF,MAAM,sCAAsC,GAC3C,CAAC,0BAA0B,EAAE,MAAM,KAAK,oBAAoB;wBAC3D,0BAA0B,EAAE,MAAM,KAAK,kBAAkB,CAAC;wBAC3D,iBAAiB,CAAC,qBAAqB,EAAE,sBAAsB,CAAC,CAAC;oBAClE,2BAA2B,CAC1B,QAAQ,CAAC,EAAE,EACX,sCAAsC;wBACrC,CAAC,CAAC;4BACA,GAAG,2BAA2B;4BAC9B,cAAc,EAAE,0BAA0B,CAAC,cAAc;4BACzD,MAAM,EAAE,0BAA0B,CAAC,MAAM;4BACzC,UAAU,EAAE,0BAA0B,CAAC,UAAU;4BACjD,gBAAgB,EAAE,0BAA0B,CAAC,gBAAgB;yBAC7D;wBACF,CAAC,CAAC,2BAA2B,CAC9B,CAAC;oBACF,0DAA0D;oBAC1D,MAAM,kCAAkC,GACvC,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;oBACrE,MAAM,kBAAkB,GACvB,qBAAqB,KAAK,SAAS;wBACnC,kCAAkC,KAAK,qBAAqB,CAAC;oBAC9D,IAAI,kBAAkB,IAAI,qBAAqB,EAAE,CAAC;wBACjD,mCAAmC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;oBAChE,CAAC;oBACD,MAAM,0BAA0B,GAC/B,kBAAkB;wBAClB,CAAC,+BAA+B,CAC/B,iBAAiB,EACjB,iBAAiB,CACjB;wBACD,CAAC,mCAAmC,CAAC;oBACtC,IAAI,0BAA0B,EAAE,CAAC;wBAChC,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;wBACnE,IAAI,WAAW,EAAE,CAAC;4BACjB,MAAM,UAAU,GAA2B;gCAC1C,MAAM,EAAE,QAAQ,CAAC,EAAE;gCACnB,QAAQ,EAAE,QAAQ,CAAC,IAAI;gCACvB,YAAY,EAAE,SAAS;gCACvB,QAAQ,EAAE,QAAQ;gCAClB,MAAM,EAAE,4BAA4B;gCACpC,eAAe,EAAE,eAAe,EAAE;gCAClC,QAAQ,EAAE,IAAI;6BACd,CAAC;4BACF,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;4BACrD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;4BACvC,MAAM,aAAa,GAClB,MAAM,uCAAuC,CAAC;gCAC7C,MAAM,EAAE,2BAA2B;gCACnC,IAAI,EAAE,aAAa,CAAC,uBAAuB;gCAC3C,OAAO,EAAE;oCACR,OAAO,EAAE;wCACR,GAAG,WAAW,CAAC,OAAO;wCACtB,UAAU,EAAE,QAAQ,CAAC,EAAE;wCACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;wCACvB,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4CACnD,GAAG,IAAI;yCACP,CAAC,CAAC;wCACH,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;qCAC3B;oCACD,OAAO,EAAE,KAAK;iCACd;gCACD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,aAAa;gCAC5C,MAAM;6BACN,CAAC,CAAC;4BACJ,2BAA2B,CAAC,QAAQ,CAAC,EAAE,EAAE;gCACxC,cAAc,EAAE,aAAa;gCAC7B,MAAM,EAAE,WAAW;gCACnB,gBAAgB;gCAChB,UAAU,EAAE,iBAAiB,CAAC,MAAM;gCACpC,gBAAgB,EAAE,oBAAoB,EAAE;gCACxC,KAAK,EAAE,KAAK;6BACZ,CAAC,CAAC;4BACH,KAAK,MAAM,KAAK,IAAI,cAAc,CACjC,aAAa,CAAC,OAAO,EACrB,QAAQ,EACR,aAAa,CAAC,OAAO,EACrB;gCACC,eAAe,EAAE,aAAa,CAAC,eAAe;gCAC9C,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;6BAClD,CACD,EAAE,CAAC;gCACH,MAAM,KAAK,CAAC;4BACb,CAAC;4BACD,MAAM,aAAa,EAAE,CAAC;4BACtB,IAAI,iBAAiB,EAAE,CAAC;gCACvB,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gCAC7D,MAAM;4BACP,CAAC;4BACD,SAAS;wBACV,CAAC;wBACD,MAAM,eAAe,GAAG,0BAA0B,CAAC,GAAG,CACrD,qBAAqB,CACrB,CAAC;wBACF,IAAI,eAAe,EAAE,CAAC;4BACrB,2BAA2B,CAAC,QAAQ,CAAC,EAAE,EAAE;gCACxC,cAAc,EAAE,aAAa;gCAC7B,MAAM,EAAE,eAAe;gCACvB,gBAAgB;gCAChB,UAAU,EAAE,iBAAiB,CAAC,MAAM;gCACpC,gBAAgB,EAAE,oBAAoB,EAAE;gCACxC,KAAK,EAAE,aAAa;6BACpB,CAAC,CAAC;4BACH,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;4BACrC,MAAM,UAAU,GAA2B;gCAC1C,MAAM,EAAE,QAAQ,CAAC,EAAE;gCACnB,QAAQ,EAAE,QAAQ,CAAC,IAAI;gCACvB,YAAY,EAAE,SAAS;gCACvB,SAAS;gCACT,QAAQ,EAAE,QAAQ;gCAClB,MAAM,EAAE,8BAA8B;gCACtC,eAAe,EAAE,eAAe,EAAE;gCAClC,QAAQ,EAAE,IAAI;6BACd,CAAC;4BACF,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;4BACrD,MAAM,gBAAgB,GAAqB;gCAC1C,QAAQ;gCACR,OAAO,EAAE,CAAC,KAAK,IAAI,EAAE;oCACpB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;oCACvC,OAAO,uCAAuC,CAAC;wCAC9C,MAAM,EAAE,2BAA2B;wCACnC,IAAI,EAAE,aAAa,CAAC,uBAAuB;wCAC3C,OAAO,EAAE,uBAAuB,CAC/B,MAAM,eAAe,EACrB,QAAQ,EACR,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAChB;wCACD,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,aAAa;wCAC5C,MAAM;qCACN,CAAC,CAAC;gCACJ,CAAC,CAAC,EAAE;6BACJ,CAAC;4BACF,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;4BACzC,2BAA2B,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;4BAC7D,0BAA0B,CAAC,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;4BAC7D,MAAM,MAAM,GAAG,MAAM,uBAAuB,EAAE,CAAC;4BAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCAC5B,MAAM,KAAK,CAAC;4BACb,CAAC;4BACD,IAAI,iBAAiB,EAAE,CAAC;gCACvB,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gCAC7D,MAAM;4BACP,CAAC;4BACD,SAAS;wBACV,CAAC;oBACF,CAAC;oBAED,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,MAAM,CAAC;oBACvD,MAAM,SAAS,GACd,qBAAqB,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;oBAClE,MAAM,QAAQ,GACb,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC;oBACxD,MAAM,QAAQ,GACb,qBAAqB,KAAK,SAAS;wBAClC,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,qBAAqB,GAAG,CAAC;4BAC1B,CAAC,CAAC,cAAc;4BAChB,CAAC,CAAC,sBAAsB;gCACtB,CAAC,CAAC,yBAAyB;oCAC1B,CAAC,sBAAsB;oCACvB,CAAC,6BAA6B,CAAC;gCACjC,CAAC,CAAC,YAAY;gCACd,CAAC,CAAC,WAAW,CAAC;oBAClB,MAAM,MAAM,GACX,qBAAqB;wBACrB,CAAC,yBAAyB;4BACzB,CAAC,CAAC,sBAAsB;gCACvB,CAAC,CAAC,2BAA2B;gCAC7B,CAAC,CAAC,qBAAqB,GAAG,CAAC;oCAC1B,CAAC,CAAC,gBAAgB;oCAClB,CAAC,CAAC,sBAAsB;4BAC1B,CAAC,CAAC,sBAAsB;gCACvB,CAAC,CAAC,2BAA2B;gCAC7B,CAAC,CAAC,6BAA6B;oCAC9B,CAAC,CAAC,+BAA+B;oCACjC,CAAC,CAAC,6BAA6B,IAAI,QAAQ;wCAC1C,CAAC,CAAC,qBAAqB;wCACvB,CAAC,CAAC,6BAA6B;4CAC9B,CAAC,CAAC,6BAA6B;4CAC/B,CAAC,CAAC,QAAQ;gDACT,CAAC,CAAC,qBAAqB,GAAG,CAAC;oDAC1B,CAAC,CAAC,qBAAqB;oDACvB,CAAC,CAAC,gCAAgC;gDACnC,CAAC,CAAC,sBAAsB;oDACvB,CAAC,CAAC,iCAAiC;oDACnC,CAAC,CAAC,iBAAiB,CAAC,CAAC;oBAC7B,MAAM,UAAU,GAA2B;wBAC1C,MAAM,EAAE,QAAQ,CAAC,EAAE;wBACnB,QAAQ,EAAE,QAAQ,CAAC,IAAI;wBACvB,YAAY,EAAE,SAAS;wBACvB,SAAS;wBACT,QAAQ;wBACR,MAAM;wBACN,eAAe,EAAE,eAAe,EAAE;wBAClC,QAAQ;wBACR,iBAAiB;qBACjB,CAAC;oBACF,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;oBAErD,wEAAwE;oBACxE,iFAAiF;oBACjF,IAAI,qBAEQ,CAAC;oBACb,IACC,IAAI,CAAC,iBAAiB,KAAK,QAAQ;wBACnC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAC7B,CAAC;wBACF,qBAAqB;4BACpB,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,gBAAgB,CAC9C,QAAQ,CAAC,EAAE,EACX,QAAQ,CAAC,IAAI,EACb,aAAa,EACb,MAAM,CACN,CAAC;wBACH,qEAAqE;wBACrE,MAAM;4BACL,IAAI,EAAE,qBAAqB;4BAC3B,UAAU,EAAE,QAAQ,CAAC,EAAE;4BACvB,QAAQ,EAAE,QAAQ,CAAC,IAAI;4BACvB,gEAAgE;4BAChE,IAAI,EAAE,aAAa;yBACnB,CAAC;oBACH,CAAC;oBAED,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;wBACnD,QAAQ;wBACR,iBAAiB;wBACjB,IAAI;wBACJ,aAAa;wBACb,sBAAsB;wBACtB,GAAG;wBACH,MAAM;wBACN,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;wBACvC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;wBAC3C,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,WAAW;wBACX,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB;wBAC/C,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;wBAC7C,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB;wBACjD,mBAAmB,EAAE,2BAA2B;wBAChD,uBAAuB,EAAE,aAAa,CAAC,uBAAuB;wBAC9D,eAAe;wBACf,qBAAqB;qBACrB,CAAC,CAAC;oBACH,MAAM,uBAAuB,GAC5B,kBAAkB,IAAI,qBAAqB;wBAC1C,CAAC,CAAC,uBAAuB,CACvB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,mCAAmC,EACnC,iCAAiC,CACjC;wBACF,CAAC,CAAC,gBAAgB,CAAC;oBAErB,MAAM,gBAAgB,GAAqB;wBAC1C,QAAQ;wBACR,OAAO,EAAE,uBAAuB;qBAChC,CAAC;oBACF,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACzC,2BAA2B,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;oBAC7D,0BAA0B,CAAC,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;oBAC7D,IAAI,sBAAsB,EAAE,CAAC;wBAC5B,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,CAAC;oBACrE,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,uBAAuB,EAAE,CAAC;oBAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC5B,MAAM,KAAK,CAAC;oBACb,CAAC;oBACD,IAAI,iBAAiB,EAAE,CAAC;wBACvB,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;wBAC7D,MAAM;oBACP,CAAC;gBACF,CAAC;gBAED,OAAO,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,KAAK,MAAM,KAAK,IAAI,MAAM,2BAA2B,EAAE,EAAE,CAAC;wBACzD,MAAM,KAAK,CAAC;oBACb,CAAC;gBACF,CAAC;gBAED,IAAI,iBAAiB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxD,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;wBAC3C,KAAK,MAAM,KAAK,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACnD,MAAM,KAAK,CAAC;wBACb,CAAC;oBACF,CAAC;gBACF,CAAC;gBAED,MAAM,gBAAgB,GAAG,qBAAqB,EAAE,CAAC;gBACjD,IAAI,gBAAgB,EAAE,CAAC;oBACtB,MAAM,gBAAgB,CAAC;gBACxB,CAAC;gBAED,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;gBAEzC,IAAI,CAAC,iBAAiB,IAAI,mBAAmB,EAAE,CAAC;oBAC/C,MAAM,QAAQ,GAAG,MAAM,mBAAmB,EAAc,CAAC;oBACzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,kBAAkB,GAAG,QAAQ,CAAC;oBAC/B,CAAC;gBACF,CAAC;YACF,CAAC;YAED,IAAI,yBAAyB,EAAE,CAAC;gBAC/B,WAAW,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC7C,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;YAEjC,MAAM;gBACL,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,yBAAyB;oBACjC,uBAAuB,IAAI;oBAC1B,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,EAAE;oBACX,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,KAAK,EAAE,KAAK,CAAC,EAAE;oBACf,KAAK,EAAE;wBACN,KAAK,EAAE,CAAC;wBACR,MAAM,EAAE,CAAC;wBACT,SAAS,EAAE,CAAC;wBACZ,UAAU,EAAE,CAAC;wBACb,IAAI,EAAE;4BACL,KAAK,EAAE,CAAC;4BACR,MAAM,EAAE,CAAC;4BACT,SAAS,EAAE,CAAC;4BACZ,UAAU,EAAE,CAAC;4BACb,KAAK,EAAE,CAAC;yBACR;qBACD;oBACD,UAAU,EAAE,OAAO;oBACnB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;iBAC3B;gBACF,WAAW;aACX,CAAC;YAEF,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzD,eAAe,GAAG,kBAAkB,CAAC;YACtC,CAAC;iBAAM,IAAI,mBAAmB,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,MAAM,mBAAmB,EAAc,CAAC;gBACzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,eAAe,GAAG,QAAQ,CAAC;gBAC5B,CAAC;YACF,CAAC;YAED,IACC,CAAC,eAAe;gBAChB,eAAe,CAAC,MAAM,KAAK,CAAC;gBAC5B,mBAAmB,EAClB,CAAC;gBACF,MAAM,SAAS,GAAG,MAAM,mBAAmB,EAAc,CAAC;gBAC1D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,eAAe,GAAG,SAAS,CAAC;gBAC7B,CAAC;YACF,CAAC;YAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,eAAe,GAAG,IAAI,CAAC;YACxB,CAAC;YAED,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9D,IAAI,gBAAgB,EAAE,CAAC;gBACtB,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC3C,CAAC;iBAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC9B,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,eAAe,EAAE;oBAC5C,YAAY,EAAE,WAAW,CAAC,MAAM;iBAChC,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;IACF,CAAC","sourcesContent":["/**\n * Agent Transport Layer - LLM Communication and Tool Execution Orchestration\n *\n * This module is the heart of the agent's execution loop. It handles:\n * 1. Streaming communication with LLM providers (Anthropic, OpenAI, Google)\n * 2. Concurrent tool execution with configurable parallelism\n * 3. Safety enforcement via action firewall integration\n * 4. Hook system integration for tool lifecycle events\n *\n * ## Architecture Overview\n *\n * ```\n * User Message → Transport.run() → Provider Stream → Parse Tool Calls\n * ↓ ↓\n * Emit Turn Events ←── Tool Results ←── Execute Tools\n * ↓ ↑\n * Continue Loop ───────────────────────────────┘\n * ```\n *\n * ## Concurrent Tool Execution\n *\n * When the LLM returns multiple tool calls in a single response, we execute\n * them concurrently up to `maxConcurrentToolExecutions` limit. This improves\n * latency for independent operations (e.g., reading multiple files).\n *\n * However, tools that affect WorkflowStateTracker (PII tracking) are serialized\n * to maintain consistent state ordering. A warning is logged when this happens.\n *\n * ## Safety Integration Points\n *\n * 1. **Pre-execution**: Action firewall evaluates each tool call\n * 2. **Approval flow**: Dangerous actions trigger user approval\n * 3. **PII tracking**: WorkflowState hooks track data flow for egress prevention\n * 4. **Doom loop detection**: Identical consecutive tool calls are blocked\n * 5. **Rate limiting**: Per-tool rate limits prevent runaway execution\n *\n * ## Event Stream\n *\n * The transport yields AgentEvents that drive the UI:\n * - turn_start/end: Turn boundaries for UI state management\n * - message_start/update/end: Streaming content updates\n * - tool_execution_start/end: Tool lifecycle for progress display\n * - action_approval_required/resolved: Approval UI triggers\n *\n * @module agent/transport\n */\n\nimport { execFileSync } from \"node:child_process\";\nimport { createHash } from \"node:crypto\";\nimport { readFileSync } from \"node:fs\";\nimport { resolve as resolvePath } from \"node:path\";\nimport { isContextFirewallBlockingEnabled } from \"../config/env-vars.js\";\nimport { type ToolHookService, createToolHookService } from \"../hooks/index.js\";\nimport { getProviderNetworkConfig } from \"../providers/network-config.js\";\nimport { isStreamIdleTimeoutError } from \"../providers/stream-idle-timeout.js\";\nimport { type Clock, systemClock } from \"../utils/clock.js\";\nimport { createLogger } from \"../utils/logger.js\";\n\nconst logger = createLogger(\"transport\");\nimport type { AuthCredential } from \"../providers/auth.js\";\nimport { defaultActionFirewall } from \"../safety/action-firewall.js\";\nimport { AdaptiveThresholds } from \"../safety/adaptive-thresholds.js\";\nimport { checkSessionLimits } from \"../safety/policy.js\";\nimport {\n\ttype SafetyMiddleware,\n\tcreateSafetyMiddleware,\n} from \"../safety/safety-middleware.js\";\nimport { SemanticJudge } from \"../safety/semantic-judge.js\";\nimport {\n\tWorkflowStateError,\n\tWorkflowStateTracker,\n\tapplyWorkflowStateHooks,\n\tisWorkflowTrackedTool,\n} from \"../safety/workflow-state.js\";\nimport {\n\ttype SkillArtifactMetadata,\n\tgetSkillArtifactMetadataFromDetails,\n} from \"../skills/artifact-metadata.js\";\nimport {\n\ttype PathScopedMutation,\n\tgetPathScopedMutation,\n\tisParallelSafeTool,\n\tisReadOnlyTool,\n\tpathScopesOverlap,\n} from \"../tools/parallel-execution.js\";\nimport { trackUsage } from \"../tracking/cost-tracker.js\";\nimport { getTrainingHeaders } from \"../training.js\";\nimport type { ActionApprovalService } from \"./action-approval.js\";\nimport { getStoredCredentials } from \"./keys.js\";\nimport type { ToolRetryConfig, ToolRetryService } from \"./tool-retry.js\";\nimport { createProviderStream } from \"./transport/create-provider-stream.js\";\nimport { stableStringify } from \"./transport/stable-stringify.js\";\nimport {\n\ttype ObserveToolExecutionPlan,\n\ttype PlatformToolExecutionBridge,\n\ttype ToolExecutionBridgePlan,\n\tbuildObservedResultMetadata,\n\tgetDefaultPlatformToolExecutionBridge,\n} from \"./transport/tool-execution-bridge.js\";\nimport { createToolExecutionPromise } from \"./transport/tool-execution.js\";\nimport {\n\ttype ToolSafetyVerdict,\n\tevaluateToolSafety,\n} from \"./transport/tool-safety-pipeline.js\";\nimport {\n\ttype PendingExecution,\n\ttype ToolExecutionOutcome,\n\tcreateToolUpdateQueue,\n\twaitForNextExecutionOrUpdate,\n} from \"./transport/tool-update-queue.js\";\nimport {\n\ttype SessionTokenCounter,\n\ttype ToolAuditLogger,\n\tcalculateCost,\n\tresolveEnvCredential,\n} from \"./transport/transport-utils.js\";\nimport type {\n\tAgentEvent,\n\tAgentRunConfig,\n\tAgentTool,\n\tAgentToolResult,\n\tAgentTransport,\n\tAppMessage,\n\tAssistantMessage,\n\tMessage,\n\tQueuedMessage,\n\tToolCall,\n\tToolResultMessage,\n\tToolSchedulingDecision,\n\tToolSchedulingMetadata,\n} from \"./types.js\";\n\ntype GovernedToolOutcome =\n\t| \"approval_required\"\n\t| \"approval_pending\"\n\t| \"authentication_required\"\n\t| \"denied\"\n\t| \"rate_limited\";\n\ntype ReusableToolResultEntry = {\n\tmessage: ToolResultMessage;\n};\n\ntype ReusableToolResultCacheGeneration = {\n\tvalue: number;\n};\n\nfunction hashReusableToolResultSnapshot(value: string | Buffer): string {\n\treturn createHash(\"sha256\").update(value).digest(\"hex\");\n}\n\nfunction readGitSnapshotBuffer(cwd: string, args: string[]): Buffer {\n\treturn execFileSync(\"git\", args, {\n\t\tcwd,\n\t\tstdio: [\"ignore\", \"pipe\", \"ignore\"],\n\t\ttimeout: 1_000,\n\t});\n}\n\nfunction readGitSnapshotPart(cwd: string, args: string[]): string {\n\treturn readGitSnapshotBuffer(cwd, args).toString(\"utf8\").trim();\n}\n\nfunction hashGitSnapshotPart(cwd: string, args: string[]): string {\n\treturn hashReusableToolResultSnapshot(readGitSnapshotBuffer(cwd, args));\n}\n\nfunction hashUntrackedGitFiles(root: string): string {\n\tconst files = readGitSnapshotBuffer(root, [\n\t\t\"ls-files\",\n\t\t\"--others\",\n\t\t\"--exclude-standard\",\n\t\t\"-z\",\n\t])\n\t\t.toString(\"utf8\")\n\t\t.split(\"\\0\")\n\t\t.filter(Boolean)\n\t\t.sort();\n\tconst hash = createHash(\"sha256\");\n\tfor (const file of files) {\n\t\thash.update(file);\n\t\thash.update(\"\\0\");\n\t\thash.update(readFileSync(resolvePath(root, file)));\n\t\thash.update(\"\\0\");\n\t}\n\treturn hash.digest(\"hex\");\n}\n\nfunction hasDirtyGitSubmodules(root: string): boolean {\n\ttry {\n\t\treturn (\n\t\t\treadGitSnapshotPart(root, [\n\t\t\t\t\"submodule\",\n\t\t\t\t\"foreach\",\n\t\t\t\t\"--recursive\",\n\t\t\t\t\"--quiet\",\n\t\t\t\t\"git status --porcelain=v1 --untracked-files=all\",\n\t\t\t]).length > 0\n\t\t);\n\t} catch {\n\t\treturn true;\n\t}\n}\n\nfunction computeReusableToolResultSnapshot(cwd: string): string | undefined {\n\ttry {\n\t\tconst root = readGitSnapshotPart(cwd, [\"rev-parse\", \"--show-toplevel\"]);\n\t\tconst head = readGitSnapshotPart(cwd, [\"rev-parse\", \"--verify\", \"HEAD\"]);\n\t\tconst status = readGitSnapshotPart(root, [\n\t\t\t\"status\",\n\t\t\t\"--porcelain=v1\",\n\t\t\t\"--untracked-files=all\",\n\t\t]);\n\t\tif (hasDirtyGitSubmodules(root)) {\n\t\t\treturn undefined;\n\t\t}\n\t\tconst unstagedDiff = hashGitSnapshotPart(root, [\n\t\t\t\"diff\",\n\t\t\t\"--no-ext-diff\",\n\t\t\t\"--binary\",\n\t\t]);\n\t\tconst stagedDiff = hashGitSnapshotPart(root, [\n\t\t\t\"diff\",\n\t\t\t\"--cached\",\n\t\t\t\"--no-ext-diff\",\n\t\t\t\"--binary\",\n\t\t]);\n\t\tconst untracked = hashUntrackedGitFiles(root);\n\t\treturn `git:${hashReusableToolResultSnapshot(\n\t\t\t`${root}\\n${head}\\n${status}\\n${unstagedDiff}\\n${stagedDiff}\\n${untracked}`,\n\t\t)}`;\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\nconst GIT_SNAPSHOT_REUSABLE_TOOL_NAMES = new Set([\n\t\"read\",\n\t\"ls\",\n\t\"list\",\n\t\"glob\",\n\t\"find\",\n\t\"grep\",\n\t\"search\",\n\t\"parallel_ripgrep\",\n\t\"diff\",\n\t\"status\",\n]);\n\nconst REPO_PATH_ARGUMENTS_BY_TOOL = new Map<string, string[]>([\n\t[\"read\", [\"path\", \"file_path\"]],\n\t[\"ls\", [\"path\", \"dir\", \"directory\"]],\n\t[\"list\", [\"path\", \"dir\", \"directory\"]],\n\t[\"glob\", [\"path\", \"cwd\", \"root\", \"glob\"]],\n\t[\"find\", [\"path\", \"cwd\", \"root\", \"glob\"]],\n\t[\"grep\", [\"path\", \"paths\", \"glob\"]],\n\t[\"search\", [\"path\", \"paths\", \"glob\"]],\n\t[\"parallel_ripgrep\", [\"path\", \"paths\", \"glob\"]],\n\t[\"diff\", [\"path\", \"paths\", \"cwd\"]],\n\t[\"status\", [\"path\", \"paths\", \"cwd\"]],\n]);\n\nconst GIT_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX = \"git:\";\nconst RUN_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX = \"run:\";\n\nconst REQUIRED_REPO_PATH_ARGUMENT_TOOLS = new Set([\"read\", \"ls\", \"list\"]);\n\nfunction collectStringValues(value: unknown): string[] {\n\tif (typeof value === \"string\") {\n\t\treturn [value];\n\t}\n\tif (Array.isArray(value)) {\n\t\treturn value.flatMap((item) => collectStringValues(item));\n\t}\n\treturn [];\n}\n\nfunction isRepoRelativePathArgument(value: string): boolean {\n\tconst trimmed = value.trim();\n\tif (trimmed.length === 0) {\n\t\treturn false;\n\t}\n\tif (\n\t\ttrimmed.startsWith(\"/\") ||\n\t\ttrimmed.startsWith(\"~\") ||\n\t\ttrimmed.startsWith(\"\\\\\\\\\") ||\n\t\t/^[A-Za-z]:[\\\\/]/.test(trimmed)\n\t) {\n\t\treturn false;\n\t}\n\treturn !trimmed.split(/[\\\\/]+/).includes(\"..\");\n}\n\nfunction isGitIgnoredRepoPath(cwd: string, repoPath: string): boolean {\n\ttry {\n\t\treadGitSnapshotPart(cwd, [\"check-ignore\", \"--quiet\", \"--\", repoPath]);\n\t\treturn true;\n\t} catch (error) {\n\t\tif (\n\t\t\ttypeof error === \"object\" &&\n\t\t\terror !== null &&\n\t\t\t\"status\" in error &&\n\t\t\terror.status === 1\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t}\n}\n\nfunction isToolCallIncludingIgnoredPaths(toolCall: ToolCall): boolean {\n\tconst toolName = toolCall.name.toLowerCase();\n\tconst args = toolCall.arguments;\n\tif (!args || typeof args !== \"object\" || Array.isArray(args)) {\n\t\treturn false;\n\t}\n\tconst record = args as Record<string, unknown>;\n\tif (toolName === \"status\") {\n\t\treturn record.includeIgnored === true || record.include_ignored === true;\n\t}\n\tif (toolName === \"search\" || toolName === \"parallel_ripgrep\") {\n\t\treturn record.useGitIgnore === false || record.use_git_ignore === false;\n\t}\n\treturn false;\n}\n\nfunction hasRepoScopedReusableArguments(\n\ttoolCall: ToolCall,\n\tcwd: string,\n): boolean {\n\tconst toolName = toolCall.name.toLowerCase();\n\tif (isToolCallIncludingIgnoredPaths(toolCall)) {\n\t\treturn false;\n\t}\n\tconst argumentNames = REPO_PATH_ARGUMENTS_BY_TOOL.get(toolName) ?? [];\n\tif (argumentNames.length === 0) {\n\t\treturn true;\n\t}\n\tconst args = toolCall.arguments;\n\tif (!args || typeof args !== \"object\" || Array.isArray(args)) {\n\t\treturn !REQUIRED_REPO_PATH_ARGUMENT_TOOLS.has(toolName);\n\t}\n\tconst pathValues = argumentNames.flatMap((name) =>\n\t\tcollectStringValues((args as Record<string, unknown>)[name]),\n\t);\n\tif (\n\t\tpathValues.length === 0 &&\n\t\tREQUIRED_REPO_PATH_ARGUMENT_TOOLS.has(toolName)\n\t) {\n\t\treturn false;\n\t}\n\treturn pathValues.every(\n\t\t(pathValue) =>\n\t\t\tisRepoRelativePathArgument(pathValue) &&\n\t\t\t!isGitIgnoredRepoPath(cwd, pathValue),\n\t);\n}\n\nfunction isGitSnapshotReusableToolCall(\n\ttool: AgentTool,\n\ttoolCall: ToolCall,\n\tcwd: string,\n): boolean {\n\tif (\n\t\ttool.source !== undefined ||\n\t\ttool.annotations?.openWorldHint === true ||\n\t\ttool.executionLocation === \"client\"\n\t) {\n\t\treturn false;\n\t}\n\tif (!GIT_SNAPSHOT_REUSABLE_TOOL_NAMES.has(tool.name.toLowerCase())) {\n\t\treturn false;\n\t}\n\tif (!isReadOnlyTool(tool.name, tool.annotations, tool.source)) {\n\t\treturn false;\n\t}\n\treturn hasRepoScopedReusableArguments(toolCall, cwd);\n}\n\ntype ToolDefinitionLookup = ReadonlyMap<string, AgentTool> | AgentTool[];\n\ntype ToolMetadataCache = {\n\treadonly definitions: ReadonlyMap<string, AgentTool>;\n\treadonly reusableToolResultCwd: string;\n\tlookupCount: number;\n\tget(toolName: string): AgentTool | undefined;\n};\n\nconst reusableToolDefinitionIdentities = new WeakMap<object, number>();\nlet reusableToolDefinitionIdentityCounter = 0;\n\nfunction getReusableToolDefinitionIdentity(value: object): number {\n\tconst existing = reusableToolDefinitionIdentities.get(value);\n\tif (existing !== undefined) {\n\t\treturn existing;\n\t}\n\treusableToolDefinitionIdentityCounter += 1;\n\treusableToolDefinitionIdentities.set(\n\t\tvalue,\n\t\treusableToolDefinitionIdentityCounter,\n\t);\n\treturn reusableToolDefinitionIdentityCounter;\n}\n\nfunction getReusableToolFunctionIdentity(value: unknown): number | undefined {\n\treturn typeof value === \"function\"\n\t\t? getReusableToolDefinitionIdentity(value)\n\t\t: undefined;\n}\n\nfunction getReusableToolRegistrySignature(tools: readonly AgentTool[]): string {\n\treturn stableStringify(\n\t\ttools.map((tool) => ({\n\t\t\tallowedCallers: tool.allowedCallers,\n\t\t\tannotations: tool.annotations,\n\t\t\tdeferApiDefinition: tool.deferApiDefinition,\n\t\t\tdescription: tool.description,\n\t\t\texecuteIdentity: getReusableToolFunctionIdentity(tool.execute),\n\t\t\texecutionLocation: tool.executionLocation,\n\t\t\tgetActivityDescriptionIdentity: getReusableToolFunctionIdentity(\n\t\t\t\ttool.getActivityDescription,\n\t\t\t),\n\t\t\tgetDisplayNameIdentity: getReusableToolFunctionIdentity(\n\t\t\t\ttool.getDisplayName,\n\t\t\t),\n\t\t\tgetToolUseSummaryIdentity: getReusableToolFunctionIdentity(\n\t\t\t\ttool.getToolUseSummary,\n\t\t\t),\n\t\t\tinputExamples: tool.inputExamples,\n\t\t\tlabel: tool.label,\n\t\t\tmaxRetries: tool.maxRetries,\n\t\t\tname: tool.name,\n\t\t\tparameters: tool.parameters,\n\t\t\tretryDelayMs: tool.retryDelayMs,\n\t\t\tshouldRetryIdentity: getReusableToolFunctionIdentity(tool.shouldRetry),\n\t\t\tsource: tool.source,\n\t\t\ttoolIdentity: getReusableToolDefinitionIdentity(tool),\n\t\t\ttoolType: tool.toolType,\n\t\t})),\n\t);\n}\n\nfunction createToolMetadataCache(\n\ttools: AgentTool[],\n\treusableToolResultCwd = process.cwd(),\n): ToolMetadataCache {\n\tconst definitions = new Map(tools.map((tool) => [tool.name, tool]));\n\treturn {\n\t\tdefinitions,\n\t\treusableToolResultCwd,\n\t\tlookupCount: 0,\n\t\tget(toolName: string): AgentTool | undefined {\n\t\t\tthis.lookupCount += 1;\n\t\t\treturn definitions.get(toolName);\n\t\t},\n\t};\n}\n\nfunction getToolDefinition(\n\tlookup: ToolDefinitionLookup | ToolMetadataCache,\n\ttoolName: string,\n): AgentTool | undefined {\n\tif (\"get\" in lookup && !Array.isArray(lookup)) {\n\t\treturn lookup.get(toolName);\n\t}\n\treturn lookup.find((candidate) => candidate.name === toolName);\n}\n\nfunction getReusableToolResultCacheKey(\n\ttoolCall: ToolCall,\n\ttools: ToolDefinitionLookup | ToolMetadataCache,\n): string | undefined {\n\tconst tool = getToolDefinition(tools, toolCall.name);\n\tconst cwd =\n\t\t\"reusableToolResultCwd\" in tools\n\t\t\t? tools.reusableToolResultCwd\n\t\t\t: process.cwd();\n\tif (!tool || tool.annotations?.destructiveHint === true) {\n\t\treturn undefined;\n\t}\n\tif (!isReadOnlyTool(tool.name, tool.annotations, tool.source)) {\n\t\treturn undefined;\n\t}\n\tconst toolName = tool.name.toLowerCase();\n\tconst cacheKey = `${toolCall.name}:${stableStringify(toolCall.arguments)}`;\n\tif (isGitSnapshotReusableToolCall(tool, toolCall, cwd)) {\n\t\treturn `${GIT_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX}${cacheKey}`;\n\t}\n\tif (\n\t\ttool.source !== undefined ||\n\t\tGIT_SNAPSHOT_REUSABLE_TOOL_NAMES.has(toolName) ||\n\t\ttool.annotations?.openWorldHint === true ||\n\t\ttool.executionLocation === \"client\"\n\t) {\n\t\treturn undefined;\n\t}\n\treturn `${RUN_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX}${cacheKey}`;\n}\n\nfunction isReadOnlyToolCallForCacheInvalidation(\n\ttoolCall: ToolCall,\n\ttools: ToolDefinitionLookup | ToolMetadataCache,\n): boolean {\n\tconst tool = getToolDefinition(tools, toolCall.name);\n\treturn tool\n\t\t? isReadOnlyTool(tool.name, tool.annotations, tool.source)\n\t\t: false;\n}\n\nfunction cloneToolResultForCache(\n\tmessage: ToolResultMessage,\n): ToolResultMessage {\n\treturn {\n\t\t...message,\n\t\tcontent: message.content.map((item) => ({ ...item })),\n\t};\n}\n\nfunction cloneToolOutcomeForCall(\n\toutcome: ToolExecutionOutcome,\n\ttoolCall: ToolCall,\n\ttimestamp: number,\n): ToolExecutionOutcome {\n\treturn {\n\t\tmessage: {\n\t\t\t...outcome.message,\n\t\t\ttoolCallId: toolCall.id,\n\t\t\ttoolName: toolCall.name,\n\t\t\tcontent: outcome.message.content.map((item) => ({ ...item })),\n\t\t\ttimestamp,\n\t\t},\n\t\tisError: outcome.isError,\n\t};\n}\n\nfunction resolvePlatformToolExecutionBridge(\n\toption: PlatformToolExecutionBridge | false | undefined,\n): PlatformToolExecutionBridge | undefined {\n\tif (option === false) {\n\t\treturn undefined;\n\t}\n\treturn option ?? getDefaultPlatformToolExecutionBridge();\n}\n\nasync function recordReusableToolExecutionBridgeOutput({\n\tbridge,\n\tplan,\n\toutcome,\n\tdurationMs,\n\tsignal,\n}: {\n\tbridge?: PlatformToolExecutionBridge;\n\tplan?: ToolExecutionBridgePlan;\n\toutcome: ToolExecutionOutcome;\n\tdurationMs: number;\n\tsignal?: AbortSignal;\n}): Promise<ToolExecutionOutcome> {\n\tif (!bridge || !plan) {\n\t\treturn outcome;\n\t}\n\tconst observed =\n\t\tplan.kind === \"observe\"\n\t\t\t? await bridge.recordObservation(\n\t\t\t\t\tplan as ObserveToolExecutionPlan,\n\t\t\t\t\toutcome.message,\n\t\t\t\t\tsignal,\n\t\t\t\t)\n\t\t\t: undefined;\n\tconst governedOutput =\n\t\tplan.kind === \"governed\"\n\t\t\t? await bridge.recordGovernedOutput(\n\t\t\t\t\tplan,\n\t\t\t\t\toutcome.message,\n\t\t\t\t\tdurationMs,\n\t\t\t\t\tsignal,\n\t\t\t\t)\n\t\t\t: undefined;\n\treturn {\n\t\t...outcome,\n\t\t...buildObservedResultMetadata(plan, observed ?? governedOutput),\n\t};\n}\n\nfunction hasReusableToolResultState(\n\tcacheKey: string,\n\tcache: Map<string, ReusableToolResultEntry>,\n\tpending: Map<string, Promise<ToolExecutionOutcome>>,\n\tpolicyCheckedKeys: Set<string>,\n\tpendingSafetyChecks: Map<string, number>,\n): boolean {\n\treturn (\n\t\tcache.has(cacheKey) ||\n\t\tpending.has(cacheKey) ||\n\t\tpolicyCheckedKeys.has(cacheKey) ||\n\t\t(pendingSafetyChecks.get(cacheKey) ?? 0) > 0\n\t);\n}\n\nfunction incrementPendingReusableToolSafetyCheck(\n\tcacheKey: string | undefined,\n\tpendingSafetyChecks: Map<string, number>,\n): void {\n\tif (!cacheKey) {\n\t\treturn;\n\t}\n\tpendingSafetyChecks.set(\n\t\tcacheKey,\n\t\t(pendingSafetyChecks.get(cacheKey) ?? 0) + 1,\n\t);\n}\n\nfunction decrementPendingReusableToolSafetyCheck(\n\tcacheKey: string | undefined,\n\tpendingSafetyChecks: Map<string, number>,\n): void {\n\tif (!cacheKey) {\n\t\treturn;\n\t}\n\tconst nextCount = (pendingSafetyChecks.get(cacheKey) ?? 0) - 1;\n\tif (nextCount <= 0) {\n\t\tpendingSafetyChecks.delete(cacheKey);\n\t\treturn;\n\t}\n\tpendingSafetyChecks.set(cacheKey, nextCount);\n}\n\nfunction clearReusableToolResultState(\n\tcache: Map<string, ReusableToolResultEntry>,\n\tpending: Map<string, Promise<ToolExecutionOutcome>>,\n\tpolicyCheckedKeys: Set<string>,\n\tpendingSafetyChecks: Map<string, number>,\n\tcacheGeneration: ReusableToolResultCacheGeneration,\n): void {\n\tcache.clear();\n\tpending.clear();\n\tpolicyCheckedKeys.clear();\n\tpendingSafetyChecks.clear();\n\tcacheGeneration.value += 1;\n}\n\nfunction clearRunScopedReusableToolResultState(\n\tcache: Map<string, ReusableToolResultEntry>,\n\tpending: Map<string, Promise<ToolExecutionOutcome>>,\n\tpolicyCheckedKeys: Set<string>,\n\tpendingSafetyChecks: Map<string, number>,\n\tcacheGeneration: ReusableToolResultCacheGeneration,\n): void {\n\tlet cleared = false;\n\tfor (const key of cache.keys()) {\n\t\tif (key.startsWith(RUN_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX)) {\n\t\t\tcache.delete(key);\n\t\t\tcleared = true;\n\t\t}\n\t}\n\tfor (const key of pending.keys()) {\n\t\tif (key.startsWith(RUN_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX)) {\n\t\t\tpending.delete(key);\n\t\t\tcleared = true;\n\t\t}\n\t}\n\tfor (const key of policyCheckedKeys) {\n\t\tif (key.startsWith(RUN_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX)) {\n\t\t\tpolicyCheckedKeys.delete(key);\n\t\t\tcleared = true;\n\t\t}\n\t}\n\tfor (const key of pendingSafetyChecks.keys()) {\n\t\tif (key.startsWith(RUN_SCOPED_REUSABLE_TOOL_RESULT_KEY_PREFIX)) {\n\t\t\tpendingSafetyChecks.delete(key);\n\t\t\tcleared = true;\n\t\t}\n\t}\n\tif (cleared) {\n\t\tcacheGeneration.value += 1;\n\t}\n}\n\nfunction invalidateReusableToolResultsAfterMutation(\n\ttoolCall: ToolCall,\n\ttools: ToolDefinitionLookup | ToolMetadataCache,\n\tcache: Map<string, ReusableToolResultEntry>,\n\tpending: Map<string, Promise<ToolExecutionOutcome>>,\n\tpolicyCheckedKeys: Set<string>,\n\tpendingSafetyChecks: Map<string, number>,\n\tcacheGeneration: ReusableToolResultCacheGeneration,\n): void {\n\tif (isReadOnlyToolCallForCacheInvalidation(toolCall, tools)) {\n\t\treturn;\n\t}\n\tclearReusableToolResultState(\n\t\tcache,\n\t\tpending,\n\t\tpolicyCheckedKeys,\n\t\tpendingSafetyChecks,\n\t\tcacheGeneration,\n\t);\n}\n\nfunction hasPendingMutatingToolExecution(\n\tpendingExecutions: readonly PendingExecution[],\n\ttools: ToolDefinitionLookup | ToolMetadataCache,\n): boolean {\n\treturn pendingExecutions.some(\n\t\t(execution) =>\n\t\t\t!isReadOnlyToolCallForCacheInvalidation(execution.toolCall, tools),\n\t);\n}\n\nfunction trackReusableToolResult(\n\tcacheKey: string,\n\texecutionPromise: Promise<ToolExecutionOutcome>,\n\tcache: Map<string, ReusableToolResultEntry>,\n\tpending: Map<string, Promise<ToolExecutionOutcome>>,\n\tpolicyCheckedKeys?: Set<string>,\n\tcacheGeneration?: ReusableToolResultCacheGeneration,\n): Promise<ToolExecutionOutcome> {\n\tconst trackedGeneration = cacheGeneration?.value;\n\tconst trackedPromise = executionPromise\n\t\t.then((outcome) => {\n\t\t\tif (\n\t\t\t\t!outcome.isError &&\n\t\t\t\toutcome.message.isError !== true &&\n\t\t\t\t(cacheGeneration === undefined ||\n\t\t\t\t\tcacheGeneration.value === trackedGeneration)\n\t\t\t) {\n\t\t\t\tcache.set(cacheKey, {\n\t\t\t\t\tmessage: cloneToolResultForCache(outcome.message),\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tpolicyCheckedKeys?.delete(cacheKey);\n\t\t\t}\n\t\t\treturn outcome;\n\t\t})\n\t\t.catch((error) => {\n\t\t\tpolicyCheckedKeys?.delete(cacheKey);\n\t\t\tthrow error;\n\t\t})\n\t\t.finally(() => {\n\t\t\tif (pending.get(cacheKey) === trackedPromise) {\n\t\t\t\tpending.delete(cacheKey);\n\t\t\t}\n\t\t});\n\tpending.set(cacheKey, trackedPromise);\n\treturn trackedPromise;\n}\n\nclass AgentEventQueue {\n\tprivate events: AgentEvent[] = [];\n\tprivate pending?: Promise<void>;\n\tprivate wake?: () => void;\n\n\tpush(event: AgentEvent): void {\n\t\tthis.events.push(event);\n\t\tif (this.wake) {\n\t\t\tconst wake = this.wake;\n\t\t\tthis.pending = undefined;\n\t\t\tthis.wake = undefined;\n\t\t\twake();\n\t\t}\n\t}\n\n\tshift(): AgentEvent | undefined {\n\t\treturn this.events.shift();\n\t}\n\n\twait(): Promise<void> {\n\t\tif (this.events.length > 0) {\n\t\t\treturn Promise.resolve();\n\t\t}\n\t\tif (!this.pending) {\n\t\t\tthis.pending = new Promise<void>((resolve) => {\n\t\t\t\tthis.wake = resolve;\n\t\t\t});\n\t\t}\n\t\treturn this.pending;\n\t}\n\n\tclearPendingWaiter(): void {\n\t\tthis.pending = undefined;\n\t\tthis.wake = undefined;\n\t}\n}\n\nfunction isDynamicToolApprovalEvent(event: AgentEvent): boolean {\n\treturn (\n\t\tevent.type === \"action_approval_required\" ||\n\t\tevent.type === \"action_approval_resolved\"\n\t);\n}\n\nfunction getGovernedToolResultEventMetadata(details: unknown): {\n\terrorCode?: string;\n\tapprovalRequestId?: string;\n\tgovernedOutcome?: GovernedToolOutcome;\n} {\n\tif (!details || typeof details !== \"object\") {\n\t\treturn {};\n\t}\n\n\tconst governedOutcome = (details as { governedOutcome?: unknown })\n\t\t.governedOutcome;\n\tif (!governedOutcome || typeof governedOutcome !== \"object\") {\n\t\treturn {};\n\t}\n\n\tconst normalized = governedOutcome as Record<string, unknown>;\n\tconst classification =\n\t\ttypeof normalized.classification === \"string\"\n\t\t\t? (normalized.classification as GovernedToolOutcome)\n\t\t\t: undefined;\n\tconst errorCode =\n\t\ttypeof normalized.code === \"string\" && normalized.code.trim().length > 0\n\t\t\t? normalized.code.trim()\n\t\t\t: classification;\n\tconst approvalRequestId =\n\t\ttypeof normalized.approvalRequestId === \"string\" &&\n\t\tnormalized.approvalRequestId.trim().length > 0\n\t\t\t? normalized.approvalRequestId.trim()\n\t\t\t: undefined;\n\n\treturn {\n\t\terrorCode,\n\t\tapprovalRequestId,\n\t\tgovernedOutcome: classification,\n\t};\n}\n\nfunction getSkillToolResultEventMetadata(details: unknown): {\n\tskillMetadata?: SkillArtifactMetadata;\n} {\n\treturn {\n\t\tskillMetadata: getSkillArtifactMetadataFromDetails(details),\n\t};\n}\n\n// Re-export types for backward compatibility\nexport type {\n\tSessionTokenCounter,\n\tToolAuditLogger,\n} from \"./transport/transport-utils.js\";\n\nexport interface ClientToolExecutionService {\n\trequestExecution: (\n\t\tid: string,\n\t\ttoolName: string,\n\t\targs: Record<string, unknown>,\n\t\tsignal?: AbortSignal,\n\t) => Promise<{ content: AgentToolResult[\"content\"]; isError: boolean }>;\n}\n\nexport interface ProviderTransportOptions {\n\tgetApiKey?: (\n\t\tprovider: string,\n\t) => Promise<string | undefined> | string | undefined;\n\tgetAuthContext?: (\n\t\tprovider: string,\n\t) => AuthCredential | undefined | Promise<AuthCredential | undefined>;\n\tcorsProxyUrl?: string;\n\tapprovalService?: ActionApprovalService;\n\ttoolRetryService?: ToolRetryService;\n\ttoolRetryConfig?: ToolRetryConfig;\n\tclientToolService?: ClientToolExecutionService;\n\tmaxConcurrentToolExecutions?: number;\n\t/** Hook service for tool lifecycle hooks (PreToolUse, PostToolUse, etc.) */\n\thookService?: ToolHookService;\n\t/** Current working directory for hook execution (required if hookService not provided) */\n\tcwd?: string;\n\t/** Clock for timestamps and rate limiting (default: system clock) */\n\tclock?: Clock;\n\t/** Session token counter used for enforcing policy session limits */\n\tsessionTokenCounter?: SessionTokenCounter;\n\t/** Audit logger for sensitive tool execution events */\n\tauditLogger?: ToolAuditLogger;\n\t/** Optional Platform ToolExecution bridge override */\n\tplatformToolExecutionBridge?: PlatformToolExecutionBridge | false;\n}\n\n/**\n * Provider Transport - Multi-provider LLM communication with safety controls\n *\n * The main transport implementation that handles streaming LLM responses,\n * executing tool calls, and enforcing safety policies. Supports Anthropic,\n * OpenAI, and Google providers through a unified interface.\n *\n * ## State Management\n *\n * - **workflowState**: Tracks PII artifacts for egress prevention\n * - **recentToolTimestamps**: Per-tool timestamps for rate limiting\n * - **safetyMiddleware**: Unified security (loop detection, sequence analysis, firewall)\n *\n * ## Safety Mechanisms\n *\n * ### SafetyMiddleware Integration\n * All safety checks are now handled through SafetyMiddleware:\n * - **Loop Detection**: Catches identical consecutive calls (replaces doom loop)\n * - **Sequence Analysis**: Detects suspicious behavioral patterns\n * - **Context Firewall**: Sanitizes arguments and blocks sensitive content\n *\n * ### Rate Limiting\n * Each tool has a per-window rate limit (TOOL_RATE_LIMIT calls per\n * TOOL_RATE_WINDOW_MS). This prevents runaway tool execution that could\n * waste resources or hit external API limits.\n *\n * ### Workflow State Serialization\n * When tools that track PII are present in a batch, concurrent execution\n * is disabled to ensure correct state ordering.\n */\nexport class ProviderTransport implements AgentTransport {\n\t/** Tracks PII artifacts through the workflow for egress prevention */\n\tprivate workflowState = new WorkflowStateTracker();\n\t/** Prevents repeated warnings about serialized workflow execution */\n\tprivate warnedAboutWorkflowConcurrency = false;\n\t/** Per-tool timestamp arrays for rate limiting enforcement */\n\tprivate recentToolTimestamps = new Map<string, number[]>();\n\t/** Safety middleware for sequence analysis and context sanitization */\n\tprivate readonly safetyMiddleware!: SafetyMiddleware;\n\t/** Adaptive thresholds for anomaly-based rate limiting */\n\tprivate readonly adaptiveThresholds!: AdaptiveThresholds;\n\t/** Tool call count in current minute window (for adaptive tracking) */\n\tprivate toolCallsThisMinute = 0;\n\t/** Last minute window start time */\n\tprivate minuteWindowStart = 0;\n\tprivate readonly clock: Clock;\n\tprivate readonly sessionTokenCounter?: SessionTokenCounter;\n\tprivate readonly auditLogger?: ToolAuditLogger;\n\tprivate readonly reusableToolResults = new Map<\n\t\tstring,\n\t\tReusableToolResultEntry\n\t>();\n\tprivate readonly pendingReusableToolResults = new Map<\n\t\tstring,\n\t\tPromise<ToolExecutionOutcome>\n\t>();\n\tprivate readonly policyCheckedReusableToolResultKeys = new Set<string>();\n\tprivate readonly pendingReusableToolSafetyChecks = new Map<string, number>();\n\tprivate readonly reusableToolResultCacheGeneration: ReusableToolResultCacheGeneration =\n\t\t{ value: 0 };\n\tprivate reusableToolResultSnapshot?: string;\n\tprivate reusableToolRegistrySignature?: string;\n\n\t/**\n\t * Rate Limit Window - time window for counting tool invocations\n\t * 10 seconds balances burst protection with legitimate rapid use\n\t */\n\tprivate static readonly TOOL_RATE_WINDOW_MS = 10_000;\n\n\t/**\n\t * Rate Limit Maximum - max calls per tool within the window\n\t * 5 calls in 10 seconds allows fast iteration while preventing abuse\n\t */\n\tprivate static readonly TOOL_RATE_LIMIT = 5;\n\n\tconstructor(private options: ProviderTransportOptions = {}) {\n\t\tthis.clock = options.clock ?? systemClock;\n\t\tthis.sessionTokenCounter = options.sessionTokenCounter;\n\t\tthis.auditLogger = options.auditLogger;\n\t\tthis.minuteWindowStart = this.clock.now();\n\t\t// Initialize adaptive thresholds for anomaly detection\n\t\tthis.adaptiveThresholds = new AdaptiveThresholds({\n\t\t\talpha: 0.3, // Give more weight to recent observations\n\t\t\tanomalyThreshold: 2.5, // 2.5 std devs = more aggressive anomaly detection\n\t\t\tminObservations: 5, // Need at least 5 observations before anomaly detection\n\t\t});\n\t\t// Initialize safety middleware for unified security checks\n\t\tthis.safetyMiddleware = createSafetyMiddleware({\n\t\t\t// Enable loop detection (replaces transport's doom loop detection)\n\t\t\tenableLoopDetection: true,\n\t\t\t// Configure loop detector to match transport's previous behavior\n\t\t\tloopDetector: {\n\t\t\t\tmaxIdenticalCalls: 3, // Match DOOM_LOOP_THRESHOLD\n\t\t\t\tmaxSimilarCalls: 5,\n\t\t\t\tmaxCallsPerMinute: 30, // More aggressive rate limit than TOOL_RATE_LIMIT\n\t\t\t\tautoPause: false, // Transport handles the pause flow\n\t\t\t},\n\t\t\t// Enable sequence analysis for behavioral threat detection\n\t\t\tenableSequenceAnalysis: true,\n\t\t\t// Enable context firewall with blocking for sanitizing audit logs\n\t\t\tenableContextFirewall: true,\n\t\t\t// Configure context firewall blocking (can be disabled via MAESTRO_CONTEXT_FIREWALL_BLOCKING=0)\n\t\t\tcontextFirewall: {\n\t\t\t\t// When blocking is disabled, vault credentials so test keys can pass through safely.\n\t\t\t\tvaultCredentials: !isContextFirewallBlockingEnabled(),\n\t\t\t\tblocking: {\n\t\t\t\t\tenabled: isContextFirewallBlockingEnabled(),\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tprivate refreshReusableToolResultState(\n\t\ttools: readonly AgentTool[],\n\t\tcwd: string,\n\t): void {\n\t\tconst registrySignature = getReusableToolRegistrySignature(tools);\n\t\tconst snapshot = computeReusableToolResultSnapshot(cwd);\n\t\tif (snapshot === undefined) {\n\t\t\tclearReusableToolResultState(\n\t\t\t\tthis.reusableToolResults,\n\t\t\t\tthis.pendingReusableToolResults,\n\t\t\t\tthis.policyCheckedReusableToolResultKeys,\n\t\t\t\tthis.pendingReusableToolSafetyChecks,\n\t\t\t\tthis.reusableToolResultCacheGeneration,\n\t\t\t);\n\t\t\tthis.reusableToolResultSnapshot = undefined;\n\t\t\tthis.reusableToolRegistrySignature = registrySignature;\n\t\t\treturn;\n\t\t}\n\t\tif (\n\t\t\tthis.reusableToolResultSnapshot !== snapshot ||\n\t\t\t(this.reusableToolRegistrySignature !== undefined &&\n\t\t\t\tthis.reusableToolRegistrySignature !== registrySignature)\n\t\t) {\n\t\t\tclearReusableToolResultState(\n\t\t\t\tthis.reusableToolResults,\n\t\t\t\tthis.pendingReusableToolResults,\n\t\t\t\tthis.policyCheckedReusableToolResultKeys,\n\t\t\t\tthis.pendingReusableToolSafetyChecks,\n\t\t\t\tthis.reusableToolResultCacheGeneration,\n\t\t\t);\n\t\t}\n\t\tthis.reusableToolResultSnapshot = snapshot;\n\t\tthis.reusableToolRegistrySignature = registrySignature;\n\t}\n\n\t/**\n\t * Continue from current context without a new user message.\n\t *\n\t * This method reuses the run() logic but skips adding a new user message.\n\t * Useful for:\n\t * - Retrying after transient errors (rate limits, overload, 5xx)\n\t * - Continuing after context compaction\n\t * - Resuming interrupted tool execution\n\t *\n\t * @param messages - Current conversation history\n\t * @param config - Runtime configuration\n\t * @param signal - Optional abort signal for cancellation\n\t * @returns Async iterable of agent events\n\t */\n\tasync *continue(\n\t\tmessages: Message[],\n\t\tconfig: AgentRunConfig,\n\t\tsignal?: AbortSignal,\n\t): AsyncGenerator<AgentEvent, void, unknown> {\n\t\t// Create a synthetic \"continuation\" message that signals we're resuming\n\t\t// This doesn't get added to the conversation but satisfies the run() interface\n\t\tconst continuationMessage: Message = {\n\t\t\trole: \"user\",\n\t\t\tcontent: [\n\t\t\t\t{ type: \"text\", text: \"[System: Continuing from previous context]\" },\n\t\t\t],\n\t\t\ttimestamp: this.clock.now(),\n\t\t};\n\n\t\t// Delegate to run() - the continuation message is used internally\n\t\t// but the actual context comes from the messages array\n\t\tyield* this.run(messages, continuationMessage, config, signal);\n\t}\n\n\tasync *run(\n\t\tmessages: Message[],\n\t\tuserMessage: Message,\n\t\tcfg: AgentRunConfig,\n\t\tsignal?: AbortSignal,\n\t): AsyncGenerator<AgentEvent, void, unknown> {\n\t\tconst { systemPrompt, tools } = cfg;\n\t\tlet model = cfg.model;\n\t\tconst firewall = defaultActionFirewall;\n\n\t\t// Configure semantic judge if LLM access is provided\n\t\tif (cfg.runLLM) {\n\t\t\tfirewall.setSemanticJudge(new SemanticJudge(cfg.runLLM));\n\t\t}\n\n\t\t// Initialize hook service for tool lifecycle hooks\n\t\tconst hookService =\n\t\t\tthis.options.hookService ??\n\t\t\t(this.options.cwd\n\t\t\t\t? createToolHookService({\n\t\t\t\t\t\tcwd: this.options.cwd,\n\t\t\t\t\t\tsessionId: cfg.session?.id,\n\t\t\t\t\t\tresolveTool: (toolName) =>\n\t\t\t\t\t\t\tcfg.tools?.find((tool) => tool.name === toolName),\n\t\t\t\t\t})\n\t\t\t\t: undefined);\n\n\t\tthis.workflowState.reset();\n\n\t\tconst scriptedReplayRun = model.provider === \"scripted-replay\";\n\t\tconst codexAppServerRun = model.api === \"openai-codex-app-server\";\n\t\tlet credential: AuthCredential | undefined;\n\t\tif (\n\t\t\tthis.options.getAuthContext &&\n\t\t\t!scriptedReplayRun &&\n\t\t\t!codexAppServerRun\n\t\t) {\n\t\t\tcredential = await this.options.getAuthContext(model.provider);\n\t\t}\n\t\tif (!credential && this.options.getApiKey) {\n\t\t\tconst fallbackKey = await this.options.getApiKey(model.provider);\n\t\t\tif (fallbackKey) {\n\t\t\t\tcredential = {\n\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\ttoken: fallbackKey,\n\t\t\t\t\ttype: \"api-key\",\n\t\t\t\t\tsource: \"env\",\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\tif (!credential && scriptedReplayRun) {\n\t\t\tcredential = {\n\t\t\t\tprovider: model.provider,\n\t\t\t\ttoken: \"scripted-replay\",\n\t\t\t\ttype: \"api-key\",\n\t\t\t\tsource: \"env\",\n\t\t\t};\n\t\t}\n\t\tif (!credential && codexAppServerRun) {\n\t\t\tcredential = {\n\t\t\t\tprovider: model.provider,\n\t\t\t\ttoken: \"codex-app-server\",\n\t\t\t\ttype: \"api-key\",\n\t\t\t\tsource: \"env\",\n\t\t\t};\n\t\t}\n\t\tif (!credential) {\n\t\t\tconst envCredential = resolveEnvCredential(model.provider);\n\t\t\tif (envCredential) {\n\t\t\t\tcredential = envCredential;\n\t\t\t}\n\t\t}\n\t\tif (!credential) {\n\t\t\tconst stored = getStoredCredentials(model.provider);\n\t\t\tif (stored.apiKey) {\n\t\t\t\tcredential = {\n\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\ttoken: stored.apiKey,\n\t\t\t\t\ttype: stored.authType ?? \"api-key\",\n\t\t\t\t\tsource: \"custom_literal\",\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tconst apiKey = credential?.token;\n\t\tif (!apiKey) {\n\t\t\tthrow new Error(\n\t\t\t\t`No credentials found for provider \"${model.provider}\". Provide an API key or configure getAuthContext.`,\n\t\t\t);\n\t\t}\n\n\t\tyield { type: \"message_start\", message: userMessage };\n\t\tif (cfg.emitUserMessageEnd !== false) {\n\t\t\tyield { type: \"message_end\", message: userMessage };\n\t\t}\n\n\t\tconst context = {\n\t\t\tsystemPrompt,\n\t\t\tmessages,\n\t\t\ttools,\n\t\t};\n\n\t\tif (this.options.corsProxyUrl && model.baseUrl) {\n\t\t\tmodel = {\n\t\t\t\t...model,\n\t\t\t\tbaseUrl: `${this.options.corsProxyUrl}/?url=${encodeURIComponent(model.baseUrl)}`,\n\t\t\t};\n\t\t}\n\n\t\tconst dynamicToolEventQueue = new AgentEventQueue();\n\t\tconst reusableToolResultCwd = this.options.cwd ?? process.cwd();\n\t\tconst toolMetadataCache = createToolMetadataCache(\n\t\t\ttools,\n\t\t\treusableToolResultCwd,\n\t\t);\n\t\tthis.refreshReusableToolResultState(tools, reusableToolResultCwd);\n\t\tconst reusableToolResults = this.reusableToolResults;\n\t\tconst pendingReusableToolResults = this.pendingReusableToolResults;\n\t\tconst policyCheckedReusableToolResultKeys =\n\t\t\tthis.policyCheckedReusableToolResultKeys;\n\t\tconst pendingReusableToolSafetyChecks =\n\t\t\tthis.pendingReusableToolSafetyChecks;\n\t\tconst reusableToolResultCacheGeneration =\n\t\t\tthis.reusableToolResultCacheGeneration;\n\t\tclearRunScopedReusableToolResultState(\n\t\t\treusableToolResults,\n\t\t\tpendingReusableToolResults,\n\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\tpendingReusableToolSafetyChecks,\n\t\t\treusableToolResultCacheGeneration,\n\t\t);\n\t\tconst pendingDynamicToolExecutions: PendingExecution[] = [];\n\t\tconst platformToolExecutionBridge = resolvePlatformToolExecutionBridge(\n\t\t\tthis.options.platformToolExecutionBridge,\n\t\t);\n\t\tconst trainingHeaders = getTrainingHeaders();\n\t\tconst headers =\n\t\t\ttrainingHeaders || model.headers || credential?.headers\n\t\t\t\t? {\n\t\t\t\t\t\t...(model.headers ?? {}),\n\t\t\t\t\t\t...(trainingHeaders ?? {}),\n\t\t\t\t\t\t...(credential?.headers ?? {}),\n\t\t\t\t\t}\n\t\t\t\t: undefined;\n\n\t\tconst executeDynamicTool = async (\n\t\t\ttoolCall: ToolCall,\n\t\t): Promise<AgentToolResult> => {\n\t\t\tconst capturedResults: ToolExecutionOutcome[] = [];\n\t\t\tconst dynamicToolError = (message: string): AgentToolResult => ({\n\t\t\t\tcontent: [{ type: \"text\", text: message }],\n\t\t\t\tisError: true,\n\t\t\t});\n\t\t\tconst toAgentToolResult = (\n\t\t\t\toutcome: ToolExecutionOutcome | ToolResultMessage | undefined,\n\t\t\t): AgentToolResult => {\n\t\t\t\tif (!outcome) {\n\t\t\t\t\treturn dynamicToolError(\"Dynamic tool execution was blocked\");\n\t\t\t\t}\n\t\t\t\tconst message = \"message\" in outcome ? outcome.message : outcome;\n\t\t\t\treturn {\n\t\t\t\t\tcontent: message.content,\n\t\t\t\t\tisError: \"message\" in outcome ? outcome.isError : message.isError,\n\t\t\t\t\tdetails: message.details,\n\t\t\t\t\t...(\"message\" in outcome && outcome.toolExecutionId\n\t\t\t\t\t\t? { toolExecutionId: outcome.toolExecutionId }\n\t\t\t\t\t\t: {}),\n\t\t\t\t\t...(\"message\" in outcome && outcome.approvalRequestId\n\t\t\t\t\t\t? { approvalRequestId: outcome.approvalRequestId }\n\t\t\t\t\t\t: {}),\n\t\t\t\t};\n\t\t\t};\n\t\t\tconst emitDynamicToolResult = (\n\t\t\t\tmessage: ToolResultMessage,\n\t\t\t\teffectiveToolCall: ToolCall,\n\t\t\t\tisError: boolean,\n\t\t\t\tmetadata?: {\n\t\t\t\t\ttoolExecutionId?: string;\n\t\t\t\t\tapprovalRequestId?: string;\n\t\t\t\t},\n\t\t\t): AgentEvent[] => {\n\t\t\t\ttry {\n\t\t\t\t\tapplyWorkflowStateHooks({\n\t\t\t\t\t\ttoolCall: effectiveToolCall,\n\t\t\t\t\t\tresult: message,\n\t\t\t\t\t\ttracker: this.workflowState,\n\t\t\t\t\t\tisError,\n\t\t\t\t\t});\n\t\t\t\t\tcapturedResults.push({\n\t\t\t\t\t\tmessage,\n\t\t\t\t\t\tisError,\n\t\t\t\t\t\t...metadata,\n\t\t\t\t\t});\n\t\t\t\t} catch (error) {\n\t\t\t\t\tif (error instanceof WorkflowStateError) {\n\t\t\t\t\t\tcapturedResults.push({\n\t\t\t\t\t\t\tmessage: {\n\t\t\t\t\t\t\t\trole: \"toolResult\",\n\t\t\t\t\t\t\t\ttoolCallId: effectiveToolCall.id,\n\t\t\t\t\t\t\t\ttoolName: effectiveToolCall.name,\n\t\t\t\t\t\t\t\tcontent: [{ type: \"text\", text: error.message }],\n\t\t\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\t\t...metadata,\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn [];\n\t\t\t};\n\n\t\t\ttry {\n\t\t\t\tconst reusableToolResultKey = getReusableToolResultCacheKey(\n\t\t\t\t\ttoolCall,\n\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t);\n\t\t\t\tconst alreadyHadReusableToolResultState =\n\t\t\t\t\treusableToolResultKey !== undefined &&\n\t\t\t\t\thasReusableToolResultState(\n\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\treusableToolResults,\n\t\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t);\n\t\t\t\tincrementPendingReusableToolSafetyCheck(\n\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t);\n\t\t\t\tconst shouldSkipLoopDetection = (\n\t\t\t\t\tcandidateToolCall: ToolCall,\n\t\t\t\t): boolean => {\n\t\t\t\t\tconst candidateKey = getReusableToolResultCacheKey(\n\t\t\t\t\t\tcandidateToolCall,\n\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t);\n\t\t\t\t\treturn (\n\t\t\t\t\t\tcandidateKey !== undefined &&\n\t\t\t\t\t\tcandidateKey === reusableToolResultKey &&\n\t\t\t\t\t\talreadyHadReusableToolResultState &&\n\t\t\t\t\t\t!hasPendingMutatingToolExecution(\n\t\t\t\t\t\t\tpendingDynamicToolExecutions,\n\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t) &&\n\t\t\t\t\t\thasReusableToolResultState(\n\t\t\t\t\t\t\tcandidateKey,\n\t\t\t\t\t\t\treusableToolResults,\n\t\t\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t};\n\t\t\t\tlet safetyVerdict: ToolSafetyVerdict | undefined;\n\t\t\t\tlet rateLimitUpdate:\n\t\t\t\t\t| { toolCallsThisMinute: number; minuteWindowStart: number }\n\t\t\t\t\t| undefined;\n\t\t\t\ttry {\n\t\t\t\t\tconst safetyIterator = evaluateToolSafety({\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\ttools,\n\t\t\t\t\t\tuserMessage,\n\t\t\t\t\t\tcfg,\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t\tclock: this.clock,\n\t\t\t\t\t\tsafetyMiddleware: this.safetyMiddleware,\n\t\t\t\t\t\tworkflowState: this.workflowState,\n\t\t\t\t\t\tadaptiveThresholds: this.adaptiveThresholds,\n\t\t\t\t\t\tauditLogger: this.auditLogger,\n\t\t\t\t\t\tapprovalService: this.options.approvalService,\n\t\t\t\t\t\ttoolExecutionBridge: platformToolExecutionBridge,\n\t\t\t\t\t\thookService,\n\t\t\t\t\t\tfirewall,\n\t\t\t\t\t\trateLimitState: {\n\t\t\t\t\t\t\trecentToolTimestamps: this.recentToolTimestamps,\n\t\t\t\t\t\t\ttoolCallsThisMinute: this.toolCallsThisMinute,\n\t\t\t\t\t\t\tminuteWindowStart: this.minuteWindowStart,\n\t\t\t\t\t\t\trateWindowMs: ProviderTransport.TOOL_RATE_WINDOW_MS,\n\t\t\t\t\t\t\trateLimit: ProviderTransport.TOOL_RATE_LIMIT,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tshouldSkipLoopDetection,\n\t\t\t\t\t\temitToolResult: emitDynamicToolResult,\n\t\t\t\t\t});\n\t\t\t\t\twhile (true) {\n\t\t\t\t\t\tconst safetyStep = await safetyIterator.next();\n\t\t\t\t\t\tif (safetyStep.done) {\n\t\t\t\t\t\t\t({ verdict: safetyVerdict, rateLimitUpdate } = safetyStep.value);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isDynamicToolApprovalEvent(safetyStep.value)) {\n\t\t\t\t\t\t\tdynamicToolEventQueue.push(safetyStep.value);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} finally {\n\t\t\t\t\tdecrementPendingReusableToolSafetyCheck(\n\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif (!safetyVerdict || !rateLimitUpdate) {\n\t\t\t\t\treturn dynamicToolError(\"Safety pipeline did not return a verdict.\");\n\t\t\t\t}\n\t\t\t\tthis.toolCallsThisMinute = rateLimitUpdate.toolCallsThisMinute;\n\t\t\t\tthis.minuteWindowStart = rateLimitUpdate.minuteWindowStart;\n\t\t\t\tif (safetyVerdict.outcome === \"blocked\") {\n\t\t\t\t\treturn toAgentToolResult(capturedResults.at(-1));\n\t\t\t\t}\n\n\t\t\t\tconst {\n\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\ttoolDef: tool,\n\t\t\t\t\tsanitizedExecutionArgs,\n\t\t\t\t} = safetyVerdict;\n\t\t\t\tif (tool.executionLocation === \"client\") {\n\t\t\t\t\treturn dynamicToolError(\n\t\t\t\t\t\t`Client-side tool execution is not available for Codex app-server dynamic tool \"${tool.name}\".`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tconst policyCheckedReusableToolResultKey =\n\t\t\t\t\tgetReusableToolResultCacheKey(effectiveToolCall, toolMetadataCache);\n\t\t\t\tconst canReuseToolResult =\n\t\t\t\t\treusableToolResultKey !== undefined &&\n\t\t\t\t\tpolicyCheckedReusableToolResultKey === reusableToolResultKey;\n\t\t\t\tif (canReuseToolResult && reusableToolResultKey) {\n\t\t\t\t\tpolicyCheckedReusableToolResultKeys.add(reusableToolResultKey);\n\t\t\t\t}\n\t\t\t\tconst canServeReusableToolResult =\n\t\t\t\t\tcanReuseToolResult &&\n\t\t\t\t\t!hasPendingMutatingToolExecution(\n\t\t\t\t\t\tpendingDynamicToolExecutions,\n\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t);\n\t\t\t\tif (canServeReusableToolResult) {\n\t\t\t\t\tconst cachedEntry = reusableToolResults.get(reusableToolResultKey);\n\t\t\t\t\tif (cachedEntry) {\n\t\t\t\t\t\tconst cacheHitStart = this.clock.now();\n\t\t\t\t\t\tconst cachedOutcome = await recordReusableToolExecutionBridgeOutput(\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbridge: platformToolExecutionBridge,\n\t\t\t\t\t\t\t\tplan: safetyVerdict.toolExecutionBridgePlan,\n\t\t\t\t\t\t\t\toutcome: {\n\t\t\t\t\t\t\t\t\tmessage: {\n\t\t\t\t\t\t\t\t\t\t...cachedEntry.message,\n\t\t\t\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t\t\t\tcontent: cachedEntry.message.content.map((item) => ({\n\t\t\t\t\t\t\t\t\t\t\t...item,\n\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tisError: false,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tdurationMs: this.clock.now() - cacheHitStart,\n\t\t\t\t\t\t\t\tsignal,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\temitDynamicToolResult(\n\t\t\t\t\t\t\tcachedOutcome.message,\n\t\t\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\t\t\tcachedOutcome.isError,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttoolExecutionId: cachedOutcome.toolExecutionId,\n\t\t\t\t\t\t\t\tapprovalRequestId: cachedOutcome.approvalRequestId,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn toAgentToolResult(capturedResults.at(-1) ?? cachedOutcome);\n\t\t\t\t\t}\n\t\t\t\t\tconst pendingReusable = pendingReusableToolResults.get(\n\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t);\n\t\t\t\t\tif (pendingReusable) {\n\t\t\t\t\t\tconst cacheHitStart = this.clock.now();\n\t\t\t\t\t\tconst cachedOutcome = await recordReusableToolExecutionBridgeOutput(\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tbridge: platformToolExecutionBridge,\n\t\t\t\t\t\t\t\tplan: safetyVerdict.toolExecutionBridgePlan,\n\t\t\t\t\t\t\t\toutcome: cloneToolOutcomeForCall(\n\t\t\t\t\t\t\t\t\tawait pendingReusable,\n\t\t\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\t\t\tthis.clock.now(),\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tdurationMs: this.clock.now() - cacheHitStart,\n\t\t\t\t\t\t\t\tsignal,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\temitDynamicToolResult(\n\t\t\t\t\t\t\tcachedOutcome.message,\n\t\t\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\t\t\tcachedOutcome.isError,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttoolExecutionId: cachedOutcome.toolExecutionId,\n\t\t\t\t\t\t\t\tapprovalRequestId: cachedOutcome.approvalRequestId,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn toAgentToolResult(capturedResults.at(-1) ?? cachedOutcome);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst toolUpdateQueue = createToolUpdateQueue();\n\t\t\t\tconst executionPromise = createToolExecutionPromise({\n\t\t\t\t\ttoolCall,\n\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\ttool,\n\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\tsanitizedExecutionArgs,\n\t\t\t\t\tcfg,\n\t\t\t\t\tsignal,\n\t\t\t\t\tclock: this.clock,\n\t\t\t\t\tsafetyMiddleware: this.safetyMiddleware,\n\t\t\t\t\tadaptiveThresholds: this.adaptiveThresholds,\n\t\t\t\t\tauditLogger: this.auditLogger,\n\t\t\t\t\thookService,\n\t\t\t\t\ttoolRetryService: this.options.toolRetryService,\n\t\t\t\t\ttoolRetryConfig: this.options.toolRetryConfig,\n\t\t\t\t\tclientToolService: this.options.clientToolService,\n\t\t\t\t\ttoolExecutionBridge: platformToolExecutionBridge,\n\t\t\t\t\ttoolExecutionBridgePlan: safetyVerdict.toolExecutionBridgePlan,\n\t\t\t\t\ttoolUpdateQueue,\n\t\t\t\t});\n\t\t\t\tconst trackedExecutionPromise =\n\t\t\t\t\tcanReuseToolResult && reusableToolResultKey\n\t\t\t\t\t\t? trackReusableToolResult(\n\t\t\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\t\t\texecutionPromise,\n\t\t\t\t\t\t\t\treusableToolResults,\n\t\t\t\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\t\t\t\treusableToolResultCacheGeneration,\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t: executionPromise;\n\t\t\t\tconst pendingExecution: PendingExecution = {\n\t\t\t\t\ttoolCall: effectiveToolCall,\n\t\t\t\t\tpromise: trackedExecutionPromise,\n\t\t\t\t};\n\t\t\t\tpendingDynamicToolExecutions.push(pendingExecution);\n\t\t\t\tconst pendingExecutions: PendingExecution[] = [pendingExecution];\n\t\t\t\tlet outcome: Awaited<typeof executionPromise> | undefined;\n\t\t\t\ttry {\n\t\t\t\t\twhile (pendingExecutions.length > 0) {\n\t\t\t\t\t\tconst next = await waitForNextExecutionOrUpdate(\n\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\ttoolUpdateQueue,\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (next.kind === \"update\") {\n\t\t\t\t\t\t\tif (next.event.type === \"tool_retry_required\") {\n\t\t\t\t\t\t\t\tthis.options.toolRetryService?.skip(\n\t\t\t\t\t\t\t\t\tnext.event.request.id,\n\t\t\t\t\t\t\t\t\t\"Codex app-server dynamic tool callbacks cannot prompt for retry\",\n\t\t\t\t\t\t\t\t\t\"runtime\",\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\toutcome = next.outcome;\n\t\t\t\t\t}\n\t\t\t\t} finally {\n\t\t\t\t\tconst pendingIndex =\n\t\t\t\t\t\tpendingDynamicToolExecutions.indexOf(pendingExecution);\n\t\t\t\t\tif (pendingIndex >= 0) {\n\t\t\t\t\t\tpendingDynamicToolExecutions.splice(pendingIndex, 1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!outcome) {\n\t\t\t\t\treturn dynamicToolError(\"Dynamic tool execution did not complete.\");\n\t\t\t\t}\n\t\t\t\tinvalidateReusableToolResultsAfterMutation(\n\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\treusableToolResults,\n\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\treusableToolResultCacheGeneration,\n\t\t\t\t);\n\t\t\t\ttry {\n\t\t\t\t\tapplyWorkflowStateHooks({\n\t\t\t\t\t\ttoolCall: effectiveToolCall,\n\t\t\t\t\t\tresult: outcome.message,\n\t\t\t\t\t\ttracker: this.workflowState,\n\t\t\t\t\t\tisError: outcome.isError,\n\t\t\t\t\t});\n\t\t\t\t} catch (error) {\n\t\t\t\t\tif (error instanceof WorkflowStateError) {\n\t\t\t\t\t\treturn toAgentToolResult({\n\t\t\t\t\t\t\tmessage: {\n\t\t\t\t\t\t\t\trole: \"toolResult\",\n\t\t\t\t\t\t\t\ttoolCallId: effectiveToolCall.id,\n\t\t\t\t\t\t\t\ttoolName: effectiveToolCall.name,\n\t\t\t\t\t\t\t\tcontent: [{ type: \"text\", text: error.message }],\n\t\t\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\t\ttoolExecutionId: outcome.toolExecutionId,\n\t\t\t\t\t\t\tapprovalRequestId: outcome.approvalRequestId,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t\treturn toAgentToolResult(outcome);\n\t\t\t} finally {\n\t\t\t\tthis.safetyMiddleware.clearCredentials();\n\t\t\t}\n\t\t};\n\n\t\tconst streamOptions = {\n\t\t\tapiKey,\n\t\t\tmaxTokens: model.maxTokens,\n\t\t\tsignal,\n\t\t\tauthType: credential?.type ?? \"api-key\",\n\t\t\theaders,\n\t\t\trequestBody: credential?.requestBody,\n\t\t\tsessionId: cfg.session?.id,\n\t\t\tcwd: this.options.cwd,\n\t\t\ttaskBudget: cfg.taskBudget,\n\t\t\texecuteDynamicTool,\n\t\t};\n\n\t\tlet hasMoreToolCalls = true;\n\t\tconst allMessages = [...context.messages];\n\t\tconst getSteeringMessages =\n\t\t\tcfg.getSteeringMessages ?? cfg.getQueuedMessages;\n\t\tconst getFollowUpMessages = cfg.getFollowUpMessages;\n\t\tconst getPromptOnlyMessages = cfg.getPromptOnlyMessages;\n\n\t\tlet pendingMessages = getSteeringMessages\n\t\t\t? await getSteeringMessages<AppMessage>()\n\t\t\t: [];\n\n\t\twhile (hasMoreToolCalls || pendingMessages.length > 0) {\n\t\t\tyield { type: \"turn_start\" };\n\n\t\t\t// Enforce session limits before every turn (duration + tokens)\n\t\t\tif (cfg.session) {\n\t\t\t\tlet tokenCount: number | undefined;\n\t\t\t\tif (this.sessionTokenCounter) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst count = await this.sessionTokenCounter(cfg.session.id);\n\t\t\t\t\t\tif (count !== null) {\n\t\t\t\t\t\t\ttokenCount = count;\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t// Log error but don't throw - let checkSessionLimits handle it.\n\t\t\t\t\t\t// If limits are active, it will fail closed because tokenCount is undefined.\n\t\t\t\t\t\t// If no limits are active, we shouldn't block just because tracking failed.\n\t\t\t\t\t\tlogger.error(\n\t\t\t\t\t\t\t\"Failed to get session token count\",\n\t\t\t\t\t\t\terr instanceof Error ? err : new Error(String(err)),\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst limitCheck = checkSessionLimits(cfg.session, {\n\t\t\t\t\ttokenCount: tokenCount,\n\t\t\t\t});\n\t\t\t\tif (!limitCheck.allowed) {\n\t\t\t\t\tthrow new Error(limitCheck.reason);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (getPromptOnlyMessages) {\n\t\t\t\tconst promptOnlyMessages = await getPromptOnlyMessages();\n\t\t\t\tif (promptOnlyMessages.length > 0) {\n\t\t\t\t\tallMessages.push(...promptOnlyMessages);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (pendingMessages.length > 0) {\n\t\t\t\tfor (const queued of pendingMessages) {\n\t\t\t\t\tyield { type: \"message_start\", message: queued.original };\n\t\t\t\t\tyield { type: \"message_end\", message: queued.original };\n\t\t\t\t\tif (queued.llm) {\n\t\t\t\t\t\tallMessages.push(queued.llm);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpendingMessages = [];\n\t\t\t}\n\n\t\t\tlet currentAssistantMessage: AssistantMessage | null = null;\n\t\t\tlet completedAssistantMessage: AssistantMessage | null = null;\n\t\t\tconst toolCallsToExecute: ToolCall[] = [];\n\t\t\tconst toolResults: ToolResultMessage[] = [];\n\t\t\tconst pendingProviderToolResultMessages: ToolResultMessage[] = [];\n\t\t\tlet steeringAfterTools: QueuedMessage<AppMessage>[] | null = null;\n\t\t\tlet pendingNextTurn = false;\n\t\t\tlet encounteredError = false;\n\t\t\tlet firstModelOutputSeen = false;\n\n\t\t\tconst currentMessages = cfg.preprocessMessages\n\t\t\t\t? await cfg.preprocessMessages(\n\t\t\t\t\t\tallMessages,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tsystemPrompt,\n\t\t\t\t\t\t\ttools,\n\t\t\t\t\t\t\tmodel,\n\t\t\t\t\t\t\tuserMessage,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t)\n\t\t\t\t: allMessages;\n\n\t\t\tconst currentContext = {\n\t\t\t\t...context,\n\t\t\t\tmessages: currentMessages,\n\t\t\t};\n\n\t\t\t// Stream retry logic for idle timeouts\n\t\t\tconst networkConfig = getProviderNetworkConfig(model.provider);\n\t\t\tconst maxStreamRetries = networkConfig.streamMaxRetries;\n\t\t\tlet streamAttempt = 0;\n\t\t\tlet streamSuccess = false;\n\n\t\t\twhile (!streamSuccess && streamAttempt <= maxStreamRetries) {\n\t\t\t\tif (streamAttempt > 0) {\n\t\t\t\t\t// Reset state for retry\n\t\t\t\t\tcurrentAssistantMessage = null;\n\t\t\t\t\ttoolCallsToExecute.length = 0;\n\t\t\t\t\ttoolResults.length = 0;\n\t\t\t\t\tpendingProviderToolResultMessages.length = 0;\n\t\t\t\t\tpendingNextTurn = false;\n\n\t\t\t\t\tconst backoffMs = Math.min(\n\t\t\t\t\t\tnetworkConfig.backoffInitial * 2 ** (streamAttempt - 1),\n\t\t\t\t\t\tnetworkConfig.backoffMax,\n\t\t\t\t\t);\n\t\t\t\t\tlogger.info(\"Retrying stream after idle timeout\", {\n\t\t\t\t\t\tattempt: streamAttempt,\n\t\t\t\t\t\tmaxRetries: maxStreamRetries,\n\t\t\t\t\t\tbackoffMs,\n\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t});\n\t\t\t\t\tawait new Promise((resolve) => setTimeout(resolve, backoffMs));\n\t\t\t\t}\n\t\t\t\tstreamAttempt++;\n\n\t\t\t\tcfg.queryProfiler?.checkpoint(\"model:request:start\", {\n\t\t\t\t\tattempt: streamAttempt,\n\t\t\t\t});\n\t\t\t\tconst stream = createProviderStream(\n\t\t\t\t\tmodel,\n\t\t\t\t\tcurrentContext,\n\t\t\t\t\tstreamOptions,\n\t\t\t\t\t{ reasoning: cfg.reasoning, reasoningSummary: cfg.reasoningSummary },\n\t\t\t\t);\n\t\t\t\tconst streamIterator = stream[Symbol.asyncIterator]();\n\t\t\t\tlet nextStreamEvent = streamIterator.next();\n\n\t\t\t\ttry {\n\t\t\t\t\twhile (true) {\n\t\t\t\t\t\tconst queuedDynamicToolEvent = dynamicToolEventQueue.shift();\n\t\t\t\t\t\tif (queuedDynamicToolEvent) {\n\t\t\t\t\t\t\tyield queuedDynamicToolEvent;\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst dynamicToolEventReady = dynamicToolEventQueue.wait();\n\t\t\t\t\t\tconst nextEvent = await Promise.race([\n\t\t\t\t\t\t\tdynamicToolEventReady.then(() => ({\n\t\t\t\t\t\t\t\ttype: \"dynamicTool\" as const,\n\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\tnextStreamEvent.then((result) => ({\n\t\t\t\t\t\t\t\ttype: \"provider\" as const,\n\t\t\t\t\t\t\t\tresult,\n\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tif (nextEvent.type === \"dynamicTool\") {\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdynamicToolEventQueue.clearPendingWaiter();\n\t\t\t\t\t\tif (nextEvent.result.done) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst event = nextEvent.result.value;\n\t\t\t\t\t\tnextStreamEvent = streamIterator.next();\n\t\t\t\t\t\tif (event.type === \"start\") {\n\t\t\t\t\t\t\tcurrentAssistantMessage = event.partial;\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\t\t\ttype: \"message_start\",\n\t\t\t\t\t\t\t\t\tmessage: currentAssistantMessage,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tevent.type === \"text_delta\" ||\n\t\t\t\t\t\t\tevent.type === \"thinking_delta\" ||\n\t\t\t\t\t\t\tevent.type === \"toolcall_delta\"\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tif (!firstModelOutputSeen) {\n\t\t\t\t\t\t\t\tcfg.queryProfiler?.checkpoint(\"model:first-token\");\n\t\t\t\t\t\t\t\tfirstModelOutputSeen = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\t\t\ttype: \"message_update\",\n\t\t\t\t\t\t\t\t\tmessage: currentAssistantMessage,\n\t\t\t\t\t\t\t\t\tassistantMessageEvent: event,\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"provider_tool_execution_start\") {\n\t\t\t\t\t\t\tif (!firstModelOutputSeen) {\n\t\t\t\t\t\t\t\tcfg.queryProfiler?.checkpoint(\"model:first-token\");\n\t\t\t\t\t\t\t\tfirstModelOutputSeen = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\t\ttype: \"tool_execution_start\",\n\t\t\t\t\t\t\t\ttoolCallId: event.toolCallId,\n\t\t\t\t\t\t\t\ttoolExecutionId: event.toolExecutionId,\n\t\t\t\t\t\t\t\ttoolName: event.toolName,\n\t\t\t\t\t\t\t\tdisplayName: event.displayName,\n\t\t\t\t\t\t\t\tsummaryLabel: event.summaryLabel,\n\t\t\t\t\t\t\t\targs: event.args,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"provider_tool_execution_update\") {\n\t\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\t\ttype: \"tool_execution_update\",\n\t\t\t\t\t\t\t\ttoolCallId: event.toolCallId,\n\t\t\t\t\t\t\t\ttoolExecutionId: event.toolExecutionId,\n\t\t\t\t\t\t\t\ttoolName: event.toolName,\n\t\t\t\t\t\t\t\tdisplayName: event.displayName,\n\t\t\t\t\t\t\t\tsummaryLabel: event.summaryLabel,\n\t\t\t\t\t\t\t\targs: event.args,\n\t\t\t\t\t\t\t\tpartialResult: event.partialResult,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"provider_tool_execution_end\") {\n\t\t\t\t\t\t\ttoolResults.push(event.result);\n\t\t\t\t\t\t\tpendingProviderToolResultMessages.push(event.result);\n\t\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\t\ttype: \"tool_execution_end\",\n\t\t\t\t\t\t\t\ttoolCallId: event.toolCallId,\n\t\t\t\t\t\t\t\ttoolExecutionId: event.toolExecutionId,\n\t\t\t\t\t\t\t\tapprovalRequestId: event.approvalRequestId,\n\t\t\t\t\t\t\t\ttoolName: event.toolName,\n\t\t\t\t\t\t\t\tdisplayName: event.displayName,\n\t\t\t\t\t\t\t\tsummaryLabel: event.summaryLabel,\n\t\t\t\t\t\t\t\tresult: event.result,\n\t\t\t\t\t\t\t\tisError: event.isError,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"toolcall_end\") {\n\t\t\t\t\t\t\tif (!firstModelOutputSeen) {\n\t\t\t\t\t\t\t\tcfg.queryProfiler?.checkpoint(\"model:first-token\");\n\t\t\t\t\t\t\t\tfirstModelOutputSeen = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst rawArgs = event.toolCall.arguments;\n\t\t\t\t\t\t\tconst normalizedArgs =\n\t\t\t\t\t\t\t\trawArgs &&\n\t\t\t\t\t\t\t\ttypeof rawArgs === \"object\" &&\n\t\t\t\t\t\t\t\t!Array.isArray(rawArgs)\n\t\t\t\t\t\t\t\t\t? (rawArgs as Record<string, unknown>)\n\t\t\t\t\t\t\t\t\t: {};\n\t\t\t\t\t\t\ttoolCallsToExecute.push({\n\t\t\t\t\t\t\t\ttype: \"toolCall\",\n\t\t\t\t\t\t\t\tid: event.toolCall.id,\n\t\t\t\t\t\t\t\tname: event.toolCall.name,\n\t\t\t\t\t\t\t\targuments: normalizedArgs,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"done\") {\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tcompletedAssistantMessage = currentAssistantMessage;\n\t\t\t\t\t\t\t\tyield { type: \"message_end\", message: currentAssistantMessage };\n\t\t\t\t\t\t\t\tif (currentAssistantMessage.usage) {\n\t\t\t\t\t\t\t\t\tconst usage = currentAssistantMessage.usage;\n\t\t\t\t\t\t\t\t\tconst cost = model.cost\n\t\t\t\t\t\t\t\t\t\t? calculateCost(usage, model.cost)\n\t\t\t\t\t\t\t\t\t\t: 0;\n\t\t\t\t\t\t\t\t\tif (credential?.type !== \"anthropic-oauth\") {\n\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\ttrackUsage({\n\t\t\t\t\t\t\t\t\t\t\t\tsessionId: cfg.session?.id,\n\t\t\t\t\t\t\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t\t\t\t\t\t\t\tmodel: model.id,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensInput: usage.input || 0,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensOutput: usage.output || 0,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensCacheRead: usage.cacheRead,\n\t\t\t\t\t\t\t\t\t\t\t\ttokensCacheWrite: usage.cacheWrite,\n\t\t\t\t\t\t\t\t\t\t\t\tcost,\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\t\t\t\tlogger.warn(\"Failed to track usage\", {\n\t\t\t\t\t\t\t\t\t\t\t\terror:\n\t\t\t\t\t\t\t\t\t\t\t\t\terror instanceof Error\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: String(error),\n\t\t\t\t\t\t\t\t\t\t\t\tstack: error instanceof Error ? error.stack : undefined,\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfor (const message of pendingProviderToolResultMessages) {\n\t\t\t\t\t\t\t\tyield { type: \"message_start\", message };\n\t\t\t\t\t\t\t\tyield { type: \"message_end\", message };\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpendingProviderToolResultMessages.length = 0;\n\t\t\t\t\t\t\tpendingNextTurn = toolCallsToExecute.length > 0;\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (event.type === \"error\") {\n\t\t\t\t\t\t\tcompletedAssistantMessage = event.error;\n\t\t\t\t\t\t\tif (currentAssistantMessage) {\n\t\t\t\t\t\t\t\tyield { type: \"message_end\", message: currentAssistantMessage };\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpendingNextTurn = false;\n\t\t\t\t\t\t\tencounteredError = true;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tfor (\n\t\t\t\t\t\tlet event = dynamicToolEventQueue.shift();\n\t\t\t\t\t\tevent;\n\t\t\t\t\t\tevent = dynamicToolEventQueue.shift()\n\t\t\t\t\t) {\n\t\t\t\t\t\tyield event;\n\t\t\t\t\t}\n\t\t\t\t\tdynamicToolEventQueue.clearPendingWaiter();\n\t\t\t\t\tstreamSuccess = true;\n\t\t\t\t} catch (error) {\n\t\t\t\t\twhile (dynamicToolEventQueue.shift()) {\n\t\t\t\t\t\t// Drop queued dynamic tool events from the abandoned stream attempt.\n\t\t\t\t\t}\n\t\t\t\t\tdynamicToolEventQueue.clearPendingWaiter();\n\t\t\t\t\tif (\n\t\t\t\t\t\tisStreamIdleTimeoutError(error) &&\n\t\t\t\t\t\tstreamAttempt <= maxStreamRetries\n\t\t\t\t\t) {\n\t\t\t\t\t\tlogger.warn(\"Stream idle timeout, will retry\", {\n\t\t\t\t\t\t\tattempt: streamAttempt,\n\t\t\t\t\t\t\tmaxRetries: maxStreamRetries,\n\t\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t\t\tidleMs: error.idleMs,\n\t\t\t\t\t\t});\n\t\t\t\t\t\tcontinue; // Retry the stream\n\t\t\t\t\t}\n\t\t\t\t\t// Not retryable or exhausted retries - re-throw\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t} // end while retry loop\n\n\t\t\tif (toolCallsToExecute.length > 0) {\n\t\t\t\tconst toolUpdateQueue = createToolUpdateQueue();\n\t\t\t\tconst pendingExecutions: PendingExecution[] = [];\n\t\t\t\tconst rawConcurrency = this.options.maxConcurrentToolExecutions ?? 2;\n\t\t\t\tconst configuredConcurrency = Number.isFinite(rawConcurrency)\n\t\t\t\t\t? Math.max(1, Math.floor(rawConcurrency))\n\t\t\t\t\t: 2;\n\t\t\t\tconst hasWorkflowTrackedTool = toolCallsToExecute.some((call) =>\n\t\t\t\t\tisWorkflowTrackedTool(call.name),\n\t\t\t\t);\n\t\t\t\tconst requiresSerializedTurn =\n\t\t\t\t\thasWorkflowTrackedTool && toolCallsToExecute.length > 1;\n\n\t\t\t\tconst toolDefinitionsByName = toolMetadataCache.definitions;\n\t\t\t\tconst isReadOnlyToolCall = (toolCall: ToolCall): boolean => {\n\t\t\t\t\tconst toolDef = toolDefinitionsByName.get(toolCall.name);\n\t\t\t\t\treturn toolDef\n\t\t\t\t\t\t? isReadOnlyTool(toolDef.name, toolDef.annotations, toolDef.source)\n\t\t\t\t\t\t: false;\n\t\t\t\t};\n\t\t\t\tconst isParallelSafeToolCall = (\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\ttoolDef = toolDefinitionsByName.get(toolCall.name),\n\t\t\t\t): boolean =>\n\t\t\t\t\ttoolDef\n\t\t\t\t\t\t? isParallelSafeTool(\n\t\t\t\t\t\t\t\ttoolDef.name,\n\t\t\t\t\t\t\t\ttoolDef.annotations,\n\t\t\t\t\t\t\t\ttoolDef.source,\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t: false;\n\t\t\t\tconst readOnlyToolCalls = toolCallsToExecute.filter(isReadOnlyToolCall);\n\t\t\t\tconst readOnlyConcurrencyLimit =\n\t\t\t\t\treadOnlyToolCalls.length > 0\n\t\t\t\t\t\t? Math.min(\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\tMath.max(configuredConcurrency, readOnlyToolCalls.length),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t: configuredConcurrency;\n\t\t\t\tconst parallelSafeMutationConcurrencyLimit = Math.min(\n\t\t\t\t\t8,\n\t\t\t\t\tconfiguredConcurrency,\n\t\t\t\t);\n\t\t\t\tconst concurrencyLimitForTool = (\n\t\t\t\t\tdefaultLimit: number,\n\t\t\t\t\ttoolDef?: AgentTool,\n\t\t\t\t): number => {\n\t\t\t\t\tconst sourceMaxConcurrency =\n\t\t\t\t\t\ttoolDef?.source?.type === \"mcp\"\n\t\t\t\t\t\t\t? toolDef.source.parallelMaxConcurrency\n\t\t\t\t\t\t\t: undefined;\n\t\t\t\t\treturn Math.min(\n\t\t\t\t\t\tdefaultLimit,\n\t\t\t\t\t\ttypeof sourceMaxConcurrency === \"number\" &&\n\t\t\t\t\t\t\tNumber.isFinite(sourceMaxConcurrency) &&\n\t\t\t\t\t\t\tsourceMaxConcurrency > 0\n\t\t\t\t\t\t\t? Math.floor(sourceMaxConcurrency)\n\t\t\t\t\t\t\t: defaultLimit,\n\t\t\t\t\t);\n\t\t\t\t};\n\t\t\t\tconst readOnlyConcurrencyLimitForTool = (toolDef?: AgentTool): number =>\n\t\t\t\t\tconcurrencyLimitForTool(readOnlyConcurrencyLimit, toolDef);\n\t\t\t\tconst parallelSafeMutationConcurrencyLimitForTool = (\n\t\t\t\t\ttoolDef?: AgentTool,\n\t\t\t\t): number =>\n\t\t\t\t\tconcurrencyLimitForTool(\n\t\t\t\t\t\tparallelSafeMutationConcurrencyLimit,\n\t\t\t\t\t\ttoolDef,\n\t\t\t\t\t);\n\t\t\t\tlet concurrencyLimit = configuredConcurrency;\n\t\t\t\tconst pendingMutationScopes = new Map<\n\t\t\t\t\tPendingExecution,\n\t\t\t\t\tPathScopedMutation\n\t\t\t\t>();\n\t\t\t\tconst pendingExecutionWaveIndexes = new Map<PendingExecution, number>();\n\t\t\t\tconst pendingExecutionScheduling = new Map<\n\t\t\t\t\tPendingExecution,\n\t\t\t\t\tToolSchedulingDecision\n\t\t\t\t>();\n\t\t\t\tconst toolSchedulingDecisions = new Map<\n\t\t\t\t\tstring,\n\t\t\t\t\tToolSchedulingDecision\n\t\t\t\t>();\n\t\t\t\tconst toolPhaseStartMs = this.clock.now();\n\t\t\t\tlet currentWaveIndex = 0;\n\t\t\t\tconst mutationPathBase = this.options.cwd ?? process.cwd();\n\t\t\t\tconst toolSchedulingMetadata = new Map<\n\t\t\t\t\tstring,\n\t\t\t\t\tToolSchedulingMetadata\n\t\t\t\t>();\n\n\t\t\t\tconst nextWaveIndex = (): number => {\n\t\t\t\t\tcurrentWaveIndex += 1;\n\t\t\t\t\treturn currentWaveIndex;\n\t\t\t\t};\n\n\t\t\t\tconst pendingWaveIndex = (): number =>\n\t\t\t\t\tpendingExecutions.length > 0\n\t\t\t\t\t\t? (pendingExecutionWaveIndexes.get(pendingExecutions[0]!) ??\n\t\t\t\t\t\t\tcurrentWaveIndex)\n\t\t\t\t\t\t: nextWaveIndex();\n\n\t\t\t\tconst schedulerWaitMs = (): number =>\n\t\t\t\t\tMath.max(0, this.clock.now() - toolPhaseStartMs);\n\n\t\t\t\tconst isMcpParallelOptIn = (toolDef: AgentTool): boolean =>\n\t\t\t\t\ttoolDef.source?.type === \"mcp\" &&\n\t\t\t\t\ttoolDef.source.supportsParallelToolCalls === true &&\n\t\t\t\t\ttoolDef.annotations?.destructiveHint !== true;\n\n\t\t\t\tconst buildToolPhaseSummary = ():\n\t\t\t\t\t| Extract<AgentEvent, { type: \"tool_phase_summary\" }>\n\t\t\t\t\t| undefined => {\n\t\t\t\t\tconst rawDecisions = [...toolSchedulingDecisions.values()].sort(\n\t\t\t\t\t\t(left, right) => left.emittedIndex - right.emittedIndex,\n\t\t\t\t\t);\n\t\t\t\t\tif (rawDecisions.length === 0) {\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t\tconst waveCounts = new Map<number, number>();\n\t\t\t\t\tfor (const decision of rawDecisions) {\n\t\t\t\t\t\tif (decision.waveIndex !== undefined) {\n\t\t\t\t\t\t\twaveCounts.set(\n\t\t\t\t\t\t\t\tdecision.waveIndex,\n\t\t\t\t\t\t\t\t(waveCounts.get(decision.waveIndex) ?? 0) + 1,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst decisions: Extract<\n\t\t\t\t\t\tAgentEvent,\n\t\t\t\t\t\t{ type: \"tool_phase_summary\" }\n\t\t\t\t\t>[\"decisions\"] = rawDecisions.map((decision) => {\n\t\t\t\t\t\tconst isSingleModelToolCall = rawDecisions.length === 1;\n\t\t\t\t\t\tconst waveSize =\n\t\t\t\t\t\t\tdecision.waveIndex !== undefined\n\t\t\t\t\t\t\t\t? (waveCounts.get(decision.waveIndex) ?? 1)\n\t\t\t\t\t\t\t\t: 1;\n\t\t\t\t\t\tconst outcome =\n\t\t\t\t\t\t\tdecision.cacheHit === true\n\t\t\t\t\t\t\t\t? \"cached\"\n\t\t\t\t\t\t\t\t: decision.decision === \"skipped\"\n\t\t\t\t\t\t\t\t\t? \"skipped\"\n\t\t\t\t\t\t\t\t\t: decision.decision === \"delayed\" ||\n\t\t\t\t\t\t\t\t\t\t\tdecision.blockedByMutation === true\n\t\t\t\t\t\t\t\t\t\t? \"delayed\"\n\t\t\t\t\t\t\t\t\t\t: decision.decision === \"parallelized\" ||\n\t\t\t\t\t\t\t\t\t\t\t\t(waveSize > 1 && decision.decision === \"scheduled\")\n\t\t\t\t\t\t\t\t\t\t\t? \"parallelized\"\n\t\t\t\t\t\t\t\t\t\t\t: \"serialized\";\n\t\t\t\t\t\tconst reason =\n\t\t\t\t\t\t\toutcome === \"cached\"\n\t\t\t\t\t\t\t\t? \"cache_hit\"\n\t\t\t\t\t\t\t\t: decision.blockedByMutation === true\n\t\t\t\t\t\t\t\t\t? decision.reason\n\t\t\t\t\t\t\t\t\t: decision.reason === \"workflow_state_serialized\"\n\t\t\t\t\t\t\t\t\t\t? \"workflow_state_serialized\"\n\t\t\t\t\t\t\t\t\t\t: decision.mcpOptIn === true\n\t\t\t\t\t\t\t\t\t\t\t? \"mcp_parallel_opt_in\"\n\t\t\t\t\t\t\t\t\t\t\t: decision.reason.startsWith(\"read_only\")\n\t\t\t\t\t\t\t\t\t\t\t\t? outcome === \"parallelized\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t? \"read_only_parallel_safe\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t: isSingleModelToolCall\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"single_read_only_call\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: decision.reason\n\t\t\t\t\t\t\t\t\t\t\t\t: decision.reason.startsWith(\"path_scoped_mutation\")\n\t\t\t\t\t\t\t\t\t\t\t\t\t? \"path_scoped_mutation\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t: decision.reason;\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\ttoolCallId: decision.callId,\n\t\t\t\t\t\t\ttoolName: decision.toolName,\n\t\t\t\t\t\t\temittedIndex: decision.emittedIndex,\n\t\t\t\t\t\t\toutcome,\n\t\t\t\t\t\t\tdecision: outcome,\n\t\t\t\t\t\t\treason,\n\t\t\t\t\t\t\twaveIndex:\n\t\t\t\t\t\t\t\tdecision.waveIndex !== undefined\n\t\t\t\t\t\t\t\t\t? Math.max(0, decision.waveIndex - 1)\n\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\twaitMs: Math.max(0, Math.round(decision.schedulerWaitMs ?? 0)),\n\t\t\t\t\t\t\tschedulerWaitMs: Math.max(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tMath.round(decision.schedulerWaitMs ?? 0),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tmcpOptIn: decision.mcpOptIn,\n\t\t\t\t\t\t\tcacheHit: decision.cacheHit,\n\t\t\t\t\t\t\tblockedByMutation: decision.blockedByMutation,\n\t\t\t\t\t\t};\n\t\t\t\t\t});\n\t\t\t\t\tconst parallelizedCallCount = decisions.filter(\n\t\t\t\t\t\t(decision) => decision.outcome === \"parallelized\",\n\t\t\t\t\t).length;\n\t\t\t\t\tconst delayedCallCount = decisions.filter(\n\t\t\t\t\t\t(decision) => decision.outcome === \"delayed\",\n\t\t\t\t\t).length;\n\t\t\t\t\tconst batchShapingFeedback =\n\t\t\t\t\t\tdecisions.length === 1 &&\n\t\t\t\t\t\tdecisions[0]?.reason === \"single_read_only_call\"\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tavoidableSingleton: true,\n\t\t\t\t\t\t\t\t\treason: \"single_read_only_call\",\n\t\t\t\t\t\t\t\t\thint: \"When you need several independent reads or searches, emit them together in one assistant message so Maestro can batch them safely.\",\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: undefined;\n\t\t\t\t\tconst serializationReasons = Object.fromEntries(\n\t\t\t\t\t\t[...decisions]\n\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t(decision) =>\n\t\t\t\t\t\t\t\t\tdecision.outcome === \"serialized\" ||\n\t\t\t\t\t\t\t\t\tdecision.outcome === \"delayed\",\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t.reduce((counts, decision) => {\n\t\t\t\t\t\t\t\tcounts.set(\n\t\t\t\t\t\t\t\t\tdecision.reason,\n\t\t\t\t\t\t\t\t\t(counts.get(decision.reason) ?? 0) + 1,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn counts;\n\t\t\t\t\t\t\t}, new Map<string, number>()),\n\t\t\t\t\t);\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: \"tool_phase_summary\",\n\t\t\t\t\t\tmodelToolCallCount: rawDecisions.length,\n\t\t\t\t\t\tmodelEmittedToolCallCount: rawDecisions.length,\n\t\t\t\t\t\tschedulableWaveCount: waveCounts.size,\n\t\t\t\t\t\tparallelizedCallCount,\n\t\t\t\t\t\tactuallyParallelizedCallCount: parallelizedCallCount,\n\t\t\t\t\t\tserializedCallCount: decisions.filter(\n\t\t\t\t\t\t\t(decision) =>\n\t\t\t\t\t\t\t\tdecision.outcome === \"serialized\" ||\n\t\t\t\t\t\t\t\tdecision.outcome === \"delayed\",\n\t\t\t\t\t\t).length,\n\t\t\t\t\t\tdelayedCallCount,\n\t\t\t\t\t\tblockedByMutationCount: decisions.filter(\n\t\t\t\t\t\t\t(decision) => decision.blockedByMutation === true,\n\t\t\t\t\t\t).length,\n\t\t\t\t\t\tmcpOptInCallCount: decisions.filter(\n\t\t\t\t\t\t\t(decision) => decision.mcpOptIn === true,\n\t\t\t\t\t\t).length,\n\t\t\t\t\t\tmcpOptInUseCount: decisions.filter(\n\t\t\t\t\t\t\t(decision) => decision.mcpOptIn === true,\n\t\t\t\t\t\t).length,\n\t\t\t\t\t\tcacheHitCount: decisions.filter(\n\t\t\t\t\t\t\t(decision) => decision.cacheHit === true,\n\t\t\t\t\t\t).length,\n\t\t\t\t\t\ttotalToolWaitMs: decisions.reduce(\n\t\t\t\t\t\t\t(total, decision) => total + decision.waitMs,\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t),\n\t\t\t\t\t\ttoolWaitTimeMs: decisions.reduce(\n\t\t\t\t\t\t\t(total, decision) => total + decision.waitMs,\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t),\n\t\t\t\t\t\tserializationReasons,\n\t\t\t\t\t\tdecisions,\n\t\t\t\t\t\tbatchShapingFeedback,\n\t\t\t\t\t};\n\t\t\t\t};\n\n\t\t\t\tconst getMutationScope = (\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\ttoolDef = toolMetadataCache.get(toolCall.name),\n\t\t\t\t): PathScopedMutation | undefined =>\n\t\t\t\t\tgetPathScopedMutation(toolCall, toolDef, mutationPathBase);\n\n\t\t\t\tconst sameMutationScope = (\n\t\t\t\t\tleft: PathScopedMutation | undefined,\n\t\t\t\t\tright: PathScopedMutation | undefined,\n\t\t\t\t): boolean => {\n\t\t\t\t\tif (!left || !right) {\n\t\t\t\t\t\treturn left === right;\n\t\t\t\t\t}\n\t\t\t\t\tconst leftArgumentKeys = left.argumentKeys ?? [];\n\t\t\t\t\tconst rightArgumentKeys = right.argumentKeys ?? [];\n\t\t\t\t\treturn (\n\t\t\t\t\t\tleft.source === right.source &&\n\t\t\t\t\t\tleft.paths.length === right.paths.length &&\n\t\t\t\t\t\tleft.paths.every((path, index) => path === right.paths[index]) &&\n\t\t\t\t\t\tleftArgumentKeys.length === rightArgumentKeys.length &&\n\t\t\t\t\t\tleftArgumentKeys.every(\n\t\t\t\t\t\t\t(argumentKey, index) => argumentKey === rightArgumentKeys[index],\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tconst pendingMutationCount = (): number =>\n\t\t\t\t\tpendingExecutions.filter((execution) => {\n\t\t\t\t\t\tconst toolDef = toolMetadataCache.definitions.get(\n\t\t\t\t\t\t\texecution.toolCall.name,\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t!!toolDef &&\n\t\t\t\t\t\t\t!isReadOnlyTool(toolDef.name, toolDef.annotations, toolDef.source)\n\t\t\t\t\t\t);\n\t\t\t\t\t}).length;\n\n\t\t\t\tconst mergeToolSchedulingMetadata = (\n\t\t\t\t\ttoolCallId: string,\n\t\t\t\t\tmetadata: ToolSchedulingMetadata,\n\t\t\t\t): ToolSchedulingMetadata => {\n\t\t\t\t\ttoolSchedulingMetadata.set(toolCallId, metadata);\n\t\t\t\t\treturn metadata;\n\t\t\t\t};\n\n\t\t\t\tconst pathScopeSchedulingReason = (\n\t\t\t\t\tscope: PathScopedMutation,\n\t\t\t\t\tcanJoinPathScope: boolean,\n\t\t\t\t): ToolSchedulingMetadata[\"reason\"] => {\n\t\t\t\t\tif (pendingExecutions.length === 0 || pendingMutationCount() === 0) {\n\t\t\t\t\t\treturn \"path_scope_available\";\n\t\t\t\t\t}\n\t\t\t\t\tif (canJoinPathScope) {\n\t\t\t\t\t\treturn \"path_scope_disjoint\";\n\t\t\t\t\t}\n\t\t\t\t\tconst hasPathOverlap = pendingExecutions.some((execution) => {\n\t\t\t\t\t\tconst pendingScope = pendingMutationScopes.get(execution);\n\t\t\t\t\t\treturn pendingScope\n\t\t\t\t\t\t\t? pathScopesOverlap(scope, pendingScope)\n\t\t\t\t\t\t\t: false;\n\t\t\t\t\t});\n\t\t\t\t\treturn hasPathOverlap ? \"path_scope_overlap\" : \"pending_mutation\";\n\t\t\t\t};\n\n\t\t\t\tconst buildToolSchedulingMetadata = ({\n\t\t\t\t\ttoolDef,\n\t\t\t\t\treadOnly,\n\t\t\t\t\tparallelSafe,\n\t\t\t\t\tscope,\n\t\t\t\t\tcache,\n\t\t\t\t\tcanJoinPathScope,\n\t\t\t\t\tlaneConcurrencyLimit = concurrencyLimit,\n\t\t\t\t}: {\n\t\t\t\t\ttoolDef?: AgentTool;\n\t\t\t\t\treadOnly: boolean;\n\t\t\t\t\tparallelSafe: boolean;\n\t\t\t\t\tscope?: PathScopedMutation;\n\t\t\t\t\tcache: ToolSchedulingMetadata[\"cache\"];\n\t\t\t\t\tcanJoinPathScope: boolean;\n\t\t\t\t\tlaneConcurrencyLimit?: number;\n\t\t\t\t}): ToolSchedulingMetadata => {\n\t\t\t\t\tconst pendingMutations = pendingMutationCount();\n\t\t\t\t\tconst base: ToolSchedulingMetadata = {\n\t\t\t\t\t\tclassification: \"unknown\",\n\t\t\t\t\t\treason: \"unknown_tool\",\n\t\t\t\t\t\tconcurrencyLimit: laneConcurrencyLimit,\n\t\t\t\t\t\tqueueDepth: pendingExecutions.length,\n\t\t\t\t\t\tpendingMutations,\n\t\t\t\t\t\tcache,\n\t\t\t\t\t};\n\t\t\t\t\tif (!toolDef) {\n\t\t\t\t\t\treturn base;\n\t\t\t\t\t}\n\t\t\t\t\tif (requiresSerializedTurn) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...base,\n\t\t\t\t\t\t\tclassification: \"workflow_serialized\",\n\t\t\t\t\t\t\treason: \"workflow_state_tracker\",\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tif (readOnly) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...base,\n\t\t\t\t\t\t\tclassification: \"read_only\",\n\t\t\t\t\t\t\treason: \"read_only_tool\",\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tif (scope) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...base,\n\t\t\t\t\t\t\tclassification: \"path_scoped_mutation\",\n\t\t\t\t\t\t\treason: pathScopeSchedulingReason(scope, canJoinPathScope),\n\t\t\t\t\t\t\tpathScope: scope.paths,\n\t\t\t\t\t\t\tpathScopeSource: scope.source,\n\t\t\t\t\t\t\tpathArgumentKeys: scope.argumentKeys,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tif (parallelSafe && !readOnly) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...base,\n\t\t\t\t\t\t\tclassification: \"parallel_safe_mutation\",\n\t\t\t\t\t\t\treason: \"mcp_parallel_opt_in\",\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tif (pendingMutations > 0) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...base,\n\t\t\t\t\t\t\tclassification: \"serialized_mutation\",\n\t\t\t\t\t\t\treason: \"pending_mutation\",\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...base,\n\t\t\t\t\t\tclassification: \"serialized_mutation\",\n\t\t\t\t\t\treason: \"mutating_tool\",\n\t\t\t\t\t};\n\t\t\t\t};\n\n\t\t\t\tconst hasPendingUnscopedMutation = (): boolean =>\n\t\t\t\t\tpendingExecutions.some((execution) => {\n\t\t\t\t\t\tconst toolDef = toolMetadataCache.get(execution.toolCall.name);\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t!!toolDef &&\n\t\t\t\t\t\t\t!isReadOnlyTool(\n\t\t\t\t\t\t\t\ttoolDef.name,\n\t\t\t\t\t\t\t\ttoolDef.annotations,\n\t\t\t\t\t\t\t\ttoolDef.source,\n\t\t\t\t\t\t\t) &&\n\t\t\t\t\t\t\t!pendingMutationScopes.has(execution)\n\t\t\t\t\t\t);\n\t\t\t\t\t});\n\n\t\t\t\tconst mutationBlockReason = (\n\t\t\t\t\tscope: PathScopedMutation | undefined,\n\t\t\t\t): string =>\n\t\t\t\t\tscope && !hasPendingUnscopedMutation()\n\t\t\t\t\t\t? \"mutation_scope_overlap\"\n\t\t\t\t\t\t: \"mutation_unknown_write_set\";\n\n\t\t\t\tconst isPendingParallelSafeMutation = (\n\t\t\t\t\texecution: PendingExecution,\n\t\t\t\t): boolean => {\n\t\t\t\t\tconst toolDef = toolMetadataCache.get(execution.toolCall.name);\n\t\t\t\t\treturn (\n\t\t\t\t\t\t!!toolDef &&\n\t\t\t\t\t\t!isReadOnlyTool(\n\t\t\t\t\t\t\ttoolDef.name,\n\t\t\t\t\t\t\ttoolDef.annotations,\n\t\t\t\t\t\t\ttoolDef.source,\n\t\t\t\t\t\t) &&\n\t\t\t\t\t\tisParallelSafeTool(\n\t\t\t\t\t\t\ttoolDef.name,\n\t\t\t\t\t\t\ttoolDef.annotations,\n\t\t\t\t\t\t\ttoolDef.source,\n\t\t\t\t\t\t) &&\n\t\t\t\t\t\t!pendingMutationScopes.has(execution)\n\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tconst canJoinParallelSafeMutationWave = (\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\ttoolDef = toolMetadataCache.get(toolCall.name),\n\t\t\t\t): boolean =>\n\t\t\t\t\t!!toolDef &&\n\t\t\t\t\t!isReadOnlyTool(toolDef.name, toolDef.annotations, toolDef.source) &&\n\t\t\t\t\tisParallelSafeTool(\n\t\t\t\t\t\ttoolDef.name,\n\t\t\t\t\t\ttoolDef.annotations,\n\t\t\t\t\t\ttoolDef.source,\n\t\t\t\t\t) &&\n\t\t\t\t\tpendingExecutions.length > 0 &&\n\t\t\t\t\tpendingExecutions.every(isPendingParallelSafeMutation);\n\n\t\t\t\tconst canJoinPathScopedMutationIsland = (\n\t\t\t\t\tscope: PathScopedMutation | undefined,\n\t\t\t\t): scope is PathScopedMutation =>\n\t\t\t\t\t!!scope &&\n\t\t\t\t\tpendingExecutions.length > 0 &&\n\t\t\t\t\tpendingExecutions.every((execution) => {\n\t\t\t\t\t\tconst pendingScope = pendingMutationScopes.get(execution);\n\t\t\t\t\t\treturn pendingScope\n\t\t\t\t\t\t\t? !pathScopesOverlap(scope, pendingScope)\n\t\t\t\t\t\t\t: false;\n\t\t\t\t\t});\n\t\t\t\tconst laneConcurrencyLimit = ({\n\t\t\t\t\treadOnly,\n\t\t\t\t\tscope,\n\t\t\t\t\tparallelSafe,\n\t\t\t\t\ttoolDef,\n\t\t\t\t}: {\n\t\t\t\t\treadOnly: boolean;\n\t\t\t\t\tscope?: PathScopedMutation;\n\t\t\t\t\tparallelSafe: boolean;\n\t\t\t\t\ttoolDef?: AgentTool;\n\t\t\t\t}): number =>\n\t\t\t\t\trequiresSerializedTurn\n\t\t\t\t\t\t? 1\n\t\t\t\t\t\t: readOnly\n\t\t\t\t\t\t\t? readOnlyConcurrencyLimitForTool(toolDef)\n\t\t\t\t\t\t\t: scope\n\t\t\t\t\t\t\t\t? configuredConcurrency\n\t\t\t\t\t\t\t\t: parallelSafe\n\t\t\t\t\t\t\t\t\t? parallelSafeMutationConcurrencyLimitForTool(toolDef)\n\t\t\t\t\t\t\t\t\t: 1;\n\n\t\t\t\t// Override: workflow-tracked tools require serialization\n\t\t\t\tif (configuredConcurrency > 1 && requiresSerializedTurn) {\n\t\t\t\t\tconcurrencyLimit = 1;\n\t\t\t\t\tif (!this.warnedAboutWorkflowConcurrency) {\n\t\t\t\t\t\tlogger.warn(\n\t\t\t\t\t\t\t\"WorkflowStateTracker requires serialized tool execution; maxConcurrentToolExecutions capped at 1\",\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.warnedAboutWorkflowConcurrency = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet steeringTriggered = false;\n\t\t\t\tlet remainingToolCalls: ToolCall[] = [];\n\t\t\t\tlet mutatingToolCompletedInCurrentBatch = false;\n\n\t\t\t\tconst checkSteering = async (): Promise<void> => {\n\t\t\t\t\tif (steeringTriggered || !getSteeringMessages) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tconst steering = await getSteeringMessages<AppMessage>();\n\t\t\t\t\tif (steering.length > 0) {\n\t\t\t\t\t\tsteeringTriggered = true;\n\t\t\t\t\t\tsteeringAfterTools = steering;\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst buildExecutionEvents = (\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\tmessage: ToolResultMessage,\n\t\t\t\t\tisError: boolean,\n\t\t\t\t\tmetadata?: {\n\t\t\t\t\t\ttoolExecutionId?: string;\n\t\t\t\t\t\tapprovalRequestId?: string;\n\t\t\t\t\t},\n\t\t\t\t): AgentEvent[] => {\n\t\t\t\t\tconst governedMetadata = getGovernedToolResultEventMetadata(\n\t\t\t\t\t\tmessage.details,\n\t\t\t\t\t);\n\t\t\t\t\tconst skillMetadata = getSkillToolResultEventMetadata(\n\t\t\t\t\t\tmessage.details,\n\t\t\t\t\t).skillMetadata;\n\t\t\t\t\treturn [\n\t\t\t\t\t\t{ type: \"message_start\", message } as AgentEvent,\n\t\t\t\t\t\t{ type: \"message_end\", message } as AgentEvent,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"tool_execution_end\",\n\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\ttoolExecutionId: metadata?.toolExecutionId,\n\t\t\t\t\t\t\tapprovalRequestId:\n\t\t\t\t\t\t\t\tmetadata?.approvalRequestId ??\n\t\t\t\t\t\t\t\tgovernedMetadata.approvalRequestId,\n\t\t\t\t\t\t\terrorCode: governedMetadata.errorCode,\n\t\t\t\t\t\t\tgovernedOutcome: governedMetadata.governedOutcome,\n\t\t\t\t\t\t\tskillMetadata,\n\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\tresult: message,\n\t\t\t\t\t\t\tisError,\n\t\t\t\t\t\t\tscheduling: toolSchedulingMetadata.get(toolCall.id),\n\t\t\t\t\t\t} as AgentEvent,\n\t\t\t\t\t];\n\t\t\t\t};\n\t\t\t\tconst emitToolResult = (\n\t\t\t\t\tmessage: ToolResultMessage,\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\tisError: boolean,\n\t\t\t\t\tmetadata?: {\n\t\t\t\t\t\ttoolExecutionId?: string;\n\t\t\t\t\t\tapprovalRequestId?: string;\n\t\t\t\t\t},\n\t\t\t\t) => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tapplyWorkflowStateHooks({\n\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\tresult: message,\n\t\t\t\t\t\t\ttracker: this.workflowState,\n\t\t\t\t\t\t\tisError,\n\t\t\t\t\t\t});\n\t\t\t\t\t\ttoolResults.push(message);\n\t\t\t\t\t\treturn buildExecutionEvents(toolCall, message, isError, metadata);\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tif (error instanceof WorkflowStateError) {\n\t\t\t\t\t\t\tconst workflowErrorResult: ToolResultMessage = {\n\t\t\t\t\t\t\t\trole: \"toolResult\",\n\t\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t\tcontent: [{ type: \"text\", text: error.message }],\n\t\t\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\ttoolResults.push(workflowErrorResult);\n\t\t\t\t\t\t\treturn buildExecutionEvents(\n\t\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\t\tworkflowErrorResult,\n\t\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\t\tmetadata,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\tconst emittedIndexForToolCall = (toolCall: ToolCall): number => {\n\t\t\t\t\tconst emittedIndex = toolCallsToExecute.findIndex(\n\t\t\t\t\t\t(candidate) => candidate.id === toolCall.id,\n\t\t\t\t\t);\n\t\t\t\t\treturn emittedIndex >= 0\n\t\t\t\t\t\t? emittedIndex\n\t\t\t\t\t\t: toolSchedulingDecisions.size;\n\t\t\t\t};\n\t\t\t\tconst emitSkippedToolCall = (toolCall: ToolCall): AgentEvent[] => {\n\t\t\t\t\tconst sanitizedSkippedArgs = this.safetyMiddleware.sanitizeForLogging(\n\t\t\t\t\t\ttoolCall.arguments as Record<string, unknown>,\n\t\t\t\t\t);\n\t\t\t\t\tconst existingScheduling = toolSchedulingMetadata.get(toolCall.id);\n\t\t\t\t\tconst toolDef = toolMetadataCache.get(toolCall.name);\n\t\t\t\t\tconst skippedToolCallReadOnly = isReadOnlyToolCall(toolCall);\n\t\t\t\t\tconst skippedToolCallParallelSafe = isParallelSafeToolCall(\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\ttoolDef,\n\t\t\t\t\t);\n\t\t\t\t\tconst mutationScope = getMutationScope(toolCall, toolDef);\n\t\t\t\t\tconst reusableToolResultKey = getReusableToolResultCacheKey(\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t);\n\t\t\t\t\tconst schedulingMetadata = mergeToolSchedulingMetadata(\n\t\t\t\t\t\ttoolCall.id,\n\t\t\t\t\t\texistingScheduling ??\n\t\t\t\t\t\t\tbuildToolSchedulingMetadata({\n\t\t\t\t\t\t\t\ttoolDef,\n\t\t\t\t\t\t\t\treadOnly: skippedToolCallReadOnly,\n\t\t\t\t\t\t\t\tparallelSafe: skippedToolCallParallelSafe,\n\t\t\t\t\t\t\t\tscope: mutationScope,\n\t\t\t\t\t\t\t\tcache:\n\t\t\t\t\t\t\t\t\treusableToolResultKey === undefined ? \"disabled\" : \"miss\",\n\t\t\t\t\t\t\t\tcanJoinPathScope:\n\t\t\t\t\t\t\t\t\tcanJoinPathScopedMutationIsland(mutationScope),\n\t\t\t\t\t\t\t\tlaneConcurrencyLimit: laneConcurrencyLimit({\n\t\t\t\t\t\t\t\t\treadOnly: skippedToolCallReadOnly,\n\t\t\t\t\t\t\t\t\tparallelSafe: skippedToolCallParallelSafe,\n\t\t\t\t\t\t\t\t\tscope: mutationScope,\n\t\t\t\t\t\t\t\t\ttoolDef,\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t);\n\t\t\t\t\tconst schedulingDecision: ToolSchedulingDecision = {\n\t\t\t\t\t\tcallId: toolCall.id,\n\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\temittedIndex: emittedIndexForToolCall(toolCall),\n\t\t\t\t\t\tdecision: \"skipped\",\n\t\t\t\t\t\treason: \"steering_interrupted\",\n\t\t\t\t\t\tschedulerWaitMs: schedulerWaitMs(),\n\t\t\t\t\t};\n\t\t\t\t\ttoolSchedulingDecisions.set(toolCall.id, schedulingDecision);\n\t\t\t\t\tconst skippedResult: ToolResultMessage = {\n\t\t\t\t\t\trole: \"toolResult\",\n\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\tcontent: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\ttext: \"Skipped due to queued user message.\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tisError: true,\n\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t};\n\t\t\t\t\treturn [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"tool_execution_start\",\n\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\targs: sanitizedSkippedArgs,\n\t\t\t\t\t\t\tscheduling: schedulingMetadata,\n\t\t\t\t\t\t} as AgentEvent,\n\t\t\t\t\t\t...emitToolResult(skippedResult, toolCall, true),\n\t\t\t\t\t];\n\t\t\t\t};\n\t\t\t\tconst recordSafetyBlockedToolCall = (\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t): ToolSchedulingDecision => {\n\t\t\t\t\tconst existing = toolSchedulingDecisions.get(toolCall.id);\n\t\t\t\t\tif (existing) {\n\t\t\t\t\t\treturn existing;\n\t\t\t\t\t}\n\t\t\t\t\tconst scheduling: ToolSchedulingDecision = {\n\t\t\t\t\t\tcallId: toolCall.id,\n\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\temittedIndex: emittedIndexForToolCall(toolCall),\n\t\t\t\t\t\tdecision: \"skipped\",\n\t\t\t\t\t\treason: \"safety_blocked\",\n\t\t\t\t\t\tschedulerWaitMs: schedulerWaitMs(),\n\t\t\t\t\t};\n\t\t\t\t\ttoolSchedulingDecisions.set(toolCall.id, scheduling);\n\t\t\t\t\treturn scheduling;\n\t\t\t\t};\n\t\t\t\tconst emitSafetyPipelineToolResult = (\n\t\t\t\t\tmessage: ToolResultMessage,\n\t\t\t\t\ttoolCall: ToolCall,\n\t\t\t\t\tisError: boolean,\n\t\t\t\t\tmetadata?: {\n\t\t\t\t\t\ttoolExecutionId?: string;\n\t\t\t\t\t\tapprovalRequestId?: string;\n\t\t\t\t\t},\n\t\t\t\t): AgentEvent[] => {\n\t\t\t\t\tif (isError) {\n\t\t\t\t\t\trecordSafetyBlockedToolCall(toolCall);\n\t\t\t\t\t}\n\t\t\t\t\treturn emitToolResult(message, toolCall, isError, metadata);\n\t\t\t\t};\n\t\t\t\tconst resolveNextPendingExecution = async (): Promise<AgentEvent[]> => {\n\t\t\t\t\tconst events: AgentEvent[] = [];\n\t\t\t\t\twhile (true) {\n\t\t\t\t\t\tconst next = await waitForNextExecutionOrUpdate(\n\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\ttoolUpdateQueue,\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (next.kind === \"update\") {\n\t\t\t\t\t\t\tevents.push(next.event);\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst outcome = next.outcome;\n\t\t\t\t\t\tpendingMutationScopes.delete(next.execution);\n\t\t\t\t\t\tpendingExecutionWaveIndexes.delete(next.execution);\n\t\t\t\t\t\tpendingExecutionScheduling.delete(next.execution);\n\t\t\t\t\t\tconst completedToolWasMutating =\n\t\t\t\t\t\t\tgetReusableToolResultCacheKey(\n\t\t\t\t\t\t\t\tnext.execution.toolCall,\n\t\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t\t) === undefined;\n\t\t\t\t\t\tinvalidateReusableToolResultsAfterMutation(\n\t\t\t\t\t\t\tnext.execution.toolCall,\n\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t\treusableToolResults,\n\t\t\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t\t\treusableToolResultCacheGeneration,\n\t\t\t\t\t\t);\n\t\t\t\t\t\tmutatingToolCompletedInCurrentBatch ||= completedToolWasMutating;\n\t\t\t\t\t\tevents.push(\n\t\t\t\t\t\t\t...emitToolResult(\n\t\t\t\t\t\t\t\toutcome.message,\n\t\t\t\t\t\t\t\tnext.execution.toolCall,\n\t\t\t\t\t\t\t\toutcome.isError,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttoolExecutionId: outcome.toolExecutionId,\n\t\t\t\t\t\t\t\t\tapprovalRequestId: outcome.approvalRequestId,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tawait checkSteering();\n\t\t\t\t\t\treturn events;\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\tconst drainPendingExecutions = async (\n\t\t\t\t\ttargetPendingCount = 0,\n\t\t\t\t): Promise<AgentEvent[]> => {\n\t\t\t\t\tconst events: AgentEvent[] = [];\n\t\t\t\t\twhile (pendingExecutions.length > targetPendingCount) {\n\t\t\t\t\t\tevents.push(...(await resolveNextPendingExecution()));\n\t\t\t\t\t}\n\t\t\t\t\treturn events;\n\t\t\t\t};\n\t\t\t\tconst scheduleResolveIfNeeded = async (): Promise<AgentEvent[]> => {\n\t\t\t\t\tif (pendingExecutions.length < concurrencyLimit) {\n\t\t\t\t\t\treturn [];\n\t\t\t\t\t}\n\t\t\t\t\treturn drainPendingExecutions(concurrencyLimit - 1);\n\t\t\t\t};\n\n\t\t\t\tfor (\n\t\t\t\t\tlet toolIndex = 0;\n\t\t\t\t\ttoolIndex < toolCallsToExecute.length;\n\t\t\t\t\ttoolIndex++\n\t\t\t\t) {\n\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tconst toolCall = toolCallsToExecute[toolIndex];\n\t\t\t\t\tif (!toolCall) continue;\n\t\t\t\t\tlet schedulingDelayReason: string | undefined;\n\t\t\t\t\tlet blockedByMutation = false;\n\t\t\t\t\tconst noteMutationDelay = (reason: string): void => {\n\t\t\t\t\t\tschedulingDelayReason ??= reason;\n\t\t\t\t\t\tblockedByMutation = true;\n\t\t\t\t\t};\n\t\t\t\t\tconst originalToolCallReadOnly = isReadOnlyToolCall(toolCall);\n\t\t\t\t\tconst originalMutationScope = originalToolCallReadOnly\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: getMutationScope(toolCall);\n\t\t\t\t\tconst originalToolDef = toolDefinitionsByName.get(toolCall.name);\n\t\t\t\t\tconst originalToolCallParallelSafe = isParallelSafeToolCall(\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\toriginalToolDef,\n\t\t\t\t\t);\n\t\t\t\t\tconst originalCanJoinPathScope = canJoinPathScopedMutationIsland(\n\t\t\t\t\t\toriginalMutationScope,\n\t\t\t\t\t);\n\t\t\t\t\tconst originalJoinsParallelSafeMutationWave =\n\t\t\t\t\t\t!originalToolCallReadOnly &&\n\t\t\t\t\t\tcanJoinParallelSafeMutationWave(toolCall);\n\t\t\t\t\tlet preDrainSchedulingMetadata: ToolSchedulingMetadata | undefined;\n\t\t\t\t\tif (\n\t\t\t\t\t\t!originalToolCallReadOnly &&\n\t\t\t\t\t\tpendingExecutions.length > 0 &&\n\t\t\t\t\t\tpendingMutationCount() > 0 &&\n\t\t\t\t\t\t!originalCanJoinPathScope &&\n\t\t\t\t\t\t!originalJoinsParallelSafeMutationWave\n\t\t\t\t\t) {\n\t\t\t\t\t\tpreDrainSchedulingMetadata = buildToolSchedulingMetadata({\n\t\t\t\t\t\t\ttoolDef: originalToolDef,\n\t\t\t\t\t\t\treadOnly: originalToolCallReadOnly,\n\t\t\t\t\t\t\tparallelSafe: originalToolCallParallelSafe,\n\t\t\t\t\t\t\tscope: originalMutationScope,\n\t\t\t\t\t\t\tcache: \"disabled\",\n\t\t\t\t\t\t\tcanJoinPathScope: originalCanJoinPathScope,\n\t\t\t\t\t\t\tlaneConcurrencyLimit: laneConcurrencyLimit({\n\t\t\t\t\t\t\t\treadOnly: originalToolCallReadOnly,\n\t\t\t\t\t\t\t\tparallelSafe: originalToolCallParallelSafe,\n\t\t\t\t\t\t\t\tscope: originalMutationScope,\n\t\t\t\t\t\t\t\ttoolDef: originalToolDef,\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t});\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\thasPendingMutatingToolExecution(\n\t\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tnoteMutationDelay(mutationBlockReason(originalMutationScope));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst events = await drainPendingExecutions();\n\t\t\t\t\t\tfor (const event of events) {\n\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\t\tif (preDrainSchedulingMetadata) {\n\t\t\t\t\t\t\t\tmergeToolSchedulingMetadata(\n\t\t\t\t\t\t\t\t\ttoolCall.id,\n\t\t\t\t\t\t\t\t\tpreDrainSchedulingMetadata,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst reusableToolResultKey = getReusableToolResultCacheKey(\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t);\n\t\t\t\t\tconst alreadyHadReusableToolResultState =\n\t\t\t\t\t\treusableToolResultKey !== undefined &&\n\t\t\t\t\t\thasReusableToolResultState(\n\t\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\t\treusableToolResults,\n\t\t\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t\t);\n\t\t\t\t\tincrementPendingReusableToolSafetyCheck(\n\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t);\n\t\t\t\t\tconst shouldSkipLoopDetection = (\n\t\t\t\t\t\tcandidateToolCall: ToolCall,\n\t\t\t\t\t): boolean => {\n\t\t\t\t\t\tconst candidateKey = getReusableToolResultCacheKey(\n\t\t\t\t\t\t\tcandidateToolCall,\n\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tcandidateKey !== undefined &&\n\t\t\t\t\t\t\tcandidateKey === reusableToolResultKey &&\n\t\t\t\t\t\t\talreadyHadReusableToolResultState &&\n\t\t\t\t\t\t\t!hasPendingMutatingToolExecution(\n\t\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t\t) &&\n\t\t\t\t\t\t\t!mutatingToolCompletedInCurrentBatch &&\n\t\t\t\t\t\t\thasReusableToolResultState(\n\t\t\t\t\t\t\t\tcandidateKey,\n\t\t\t\t\t\t\t\treusableToolResults,\n\t\t\t\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t\t};\n\t\t\t\t\tconst nextInitialSchedulingMetadata = buildToolSchedulingMetadata({\n\t\t\t\t\t\ttoolDef: originalToolDef,\n\t\t\t\t\t\treadOnly: originalToolCallReadOnly,\n\t\t\t\t\t\tparallelSafe: originalToolCallParallelSafe,\n\t\t\t\t\t\tscope: originalMutationScope,\n\t\t\t\t\t\tcache:\n\t\t\t\t\t\t\treusableToolResultKey === undefined\n\t\t\t\t\t\t\t\t? \"disabled\"\n\t\t\t\t\t\t\t\t: alreadyHadReusableToolResultState\n\t\t\t\t\t\t\t\t\t? \"candidate\"\n\t\t\t\t\t\t\t\t\t: \"miss\",\n\t\t\t\t\t\tcanJoinPathScope: canJoinPathScopedMutationIsland(\n\t\t\t\t\t\t\toriginalMutationScope,\n\t\t\t\t\t\t),\n\t\t\t\t\t\tlaneConcurrencyLimit: laneConcurrencyLimit({\n\t\t\t\t\t\t\treadOnly: originalToolCallReadOnly,\n\t\t\t\t\t\t\tparallelSafe: originalToolCallParallelSafe,\n\t\t\t\t\t\t\tscope: originalMutationScope,\n\t\t\t\t\t\t\ttoolDef: originalToolDef,\n\t\t\t\t\t\t}),\n\t\t\t\t\t});\n\t\t\t\t\tconst initialSchedulingMetadata = mergeToolSchedulingMetadata(\n\t\t\t\t\t\ttoolCall.id,\n\t\t\t\t\t\tpreDrainSchedulingMetadata\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t...nextInitialSchedulingMetadata,\n\t\t\t\t\t\t\t\t\tclassification: preDrainSchedulingMetadata.classification,\n\t\t\t\t\t\t\t\t\treason: preDrainSchedulingMetadata.reason,\n\t\t\t\t\t\t\t\t\tqueueDepth: preDrainSchedulingMetadata.queueDepth,\n\t\t\t\t\t\t\t\t\tpendingMutations: preDrainSchedulingMetadata.pendingMutations,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: nextInitialSchedulingMetadata,\n\t\t\t\t\t);\n\n\t\t\t\t\t// Run safety pipeline (rate limiting, hooks, firewall, approval, validation)\n\t\t\t\t\tlet safetyVerdict: ToolSafetyVerdict | undefined;\n\t\t\t\t\tlet rateLimitUpdate:\n\t\t\t\t\t\t| { toolCallsThisMinute: number; minuteWindowStart: number }\n\t\t\t\t\t\t| undefined;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst safetyIterator = evaluateToolSafety({\n\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\ttools,\n\t\t\t\t\t\t\tuserMessage,\n\t\t\t\t\t\t\tcfg,\n\t\t\t\t\t\t\tsignal,\n\t\t\t\t\t\t\tclock: this.clock,\n\t\t\t\t\t\t\tsafetyMiddleware: this.safetyMiddleware,\n\t\t\t\t\t\t\tworkflowState: this.workflowState,\n\t\t\t\t\t\t\tadaptiveThresholds: this.adaptiveThresholds,\n\t\t\t\t\t\t\tauditLogger: this.auditLogger,\n\t\t\t\t\t\t\tapprovalService: this.options.approvalService,\n\t\t\t\t\t\t\ttoolExecutionBridge: platformToolExecutionBridge,\n\t\t\t\t\t\t\thookService,\n\t\t\t\t\t\t\tfirewall,\n\t\t\t\t\t\t\trateLimitState: {\n\t\t\t\t\t\t\t\trecentToolTimestamps: this.recentToolTimestamps,\n\t\t\t\t\t\t\t\ttoolCallsThisMinute: this.toolCallsThisMinute,\n\t\t\t\t\t\t\t\tminuteWindowStart: this.minuteWindowStart,\n\t\t\t\t\t\t\t\trateWindowMs: ProviderTransport.TOOL_RATE_WINDOW_MS,\n\t\t\t\t\t\t\t\trateLimit: ProviderTransport.TOOL_RATE_LIMIT,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tshouldSkipLoopDetection,\n\t\t\t\t\t\t\tschedulingMetadata: initialSchedulingMetadata,\n\t\t\t\t\t\t\temitToolResult: emitSafetyPipelineToolResult,\n\t\t\t\t\t\t});\n\t\t\t\t\t\twhile (true) {\n\t\t\t\t\t\t\tconst safetyStep = await safetyIterator.next();\n\t\t\t\t\t\t\tif (safetyStep.done) {\n\t\t\t\t\t\t\t\t({ verdict: safetyVerdict, rateLimitUpdate } =\n\t\t\t\t\t\t\t\t\tsafetyStep.value);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tyield safetyStep.value;\n\t\t\t\t\t\t}\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tdecrementPendingReusableToolSafetyCheck(\n\t\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\t\tpendingReusableToolSafetyChecks,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tif (!safetyVerdict || !rateLimitUpdate) {\n\t\t\t\t\t\tthrow new Error(\"Safety pipeline did not return a verdict.\");\n\t\t\t\t\t}\n\n\t\t\t\t\t// Apply rate limit state updates\n\t\t\t\t\tthis.toolCallsThisMinute = rateLimitUpdate.toolCallsThisMinute;\n\t\t\t\t\tthis.minuteWindowStart = rateLimitUpdate.minuteWindowStart;\n\n\t\t\t\t\tif (safetyVerdict.outcome === \"blocked\") {\n\t\t\t\t\t\tawait checkSteering();\n\t\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex + 1);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst {\n\t\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\t\ttoolDef: tool,\n\t\t\t\t\t\tsanitizedExecutionArgs,\n\t\t\t\t\t} = safetyVerdict;\n\t\t\t\t\tconst effectiveToolCallReadOnly =\n\t\t\t\t\t\tisReadOnlyTool(tool.name, tool.annotations, tool.source) &&\n\t\t\t\t\t\ttool.annotations?.destructiveHint !== true;\n\t\t\t\t\tconst effectiveToolCallParallelSafe = isParallelSafeTool(\n\t\t\t\t\t\ttool.name,\n\t\t\t\t\t\ttool.annotations,\n\t\t\t\t\t\ttool.source,\n\t\t\t\t\t);\n\t\t\t\t\tif (\n\t\t\t\t\t\teffectiveToolCallReadOnly &&\n\t\t\t\t\t\thasPendingMutatingToolExecution(\n\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\tnoteMutationDelay(\"pending_mutation\");\n\t\t\t\t\t\tconst events = await drainPendingExecutions();\n\t\t\t\t\t\tfor (const event of events) {\n\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst effectiveMutationScope = effectiveToolCallReadOnly\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: getMutationScope(effectiveToolCall, tool);\n\t\t\t\t\tconst joinsPathScopedMutationIsland =\n\t\t\t\t\t\t!requiresSerializedTurn &&\n\t\t\t\t\t\tcanJoinPathScopedMutationIsland(effectiveMutationScope);\n\t\t\t\t\tconst joinsParallelSafeMutationWave =\n\t\t\t\t\t\t!requiresSerializedTurn &&\n\t\t\t\t\t\t!effectiveToolCallReadOnly &&\n\t\t\t\t\t\tcanJoinParallelSafeMutationWave(effectiveToolCall, tool);\n\t\t\t\t\tif (\n\t\t\t\t\t\t!effectiveToolCallReadOnly &&\n\t\t\t\t\t\tpendingExecutions.length > 0 &&\n\t\t\t\t\t\t!joinsPathScopedMutationIsland &&\n\t\t\t\t\t\t!joinsParallelSafeMutationWave\n\t\t\t\t\t) {\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\thasPendingMutatingToolExecution(\n\t\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tnoteMutationDelay(mutationBlockReason(effectiveMutationScope));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst events = await drainPendingExecutions();\n\t\t\t\t\t\tfor (const event of events) {\n\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconcurrencyLimit = requiresSerializedTurn\n\t\t\t\t\t\t? 1\n\t\t\t\t\t\t: effectiveToolCallReadOnly\n\t\t\t\t\t\t\t? readOnlyConcurrencyLimitForTool(tool)\n\t\t\t\t\t\t\t: effectiveMutationScope\n\t\t\t\t\t\t\t\t? configuredConcurrency\n\t\t\t\t\t\t\t\t: effectiveToolCallParallelSafe\n\t\t\t\t\t\t\t\t\t? parallelSafeMutationConcurrencyLimitForTool(tool)\n\t\t\t\t\t\t\t\t\t: 1;\n\t\t\t\t\tconst effectiveSchedulingMetadata = buildToolSchedulingMetadata({\n\t\t\t\t\t\ttoolDef: tool,\n\t\t\t\t\t\treadOnly: effectiveToolCallReadOnly,\n\t\t\t\t\t\tparallelSafe: effectiveToolCallParallelSafe,\n\t\t\t\t\t\tscope: effectiveMutationScope,\n\t\t\t\t\t\tcache:\n\t\t\t\t\t\t\treusableToolResultKey === undefined\n\t\t\t\t\t\t\t\t? \"disabled\"\n\t\t\t\t\t\t\t\t: alreadyHadReusableToolResultState\n\t\t\t\t\t\t\t\t\t? \"candidate\"\n\t\t\t\t\t\t\t\t\t: \"miss\",\n\t\t\t\t\t\tcanJoinPathScope: joinsPathScopedMutationIsland,\n\t\t\t\t\t\tlaneConcurrencyLimit: laneConcurrencyLimit({\n\t\t\t\t\t\t\treadOnly: effectiveToolCallReadOnly,\n\t\t\t\t\t\t\tparallelSafe: effectiveToolCallParallelSafe,\n\t\t\t\t\t\t\tscope: effectiveMutationScope,\n\t\t\t\t\t\t\ttoolDef: tool,\n\t\t\t\t\t\t}),\n\t\t\t\t\t});\n\t\t\t\t\tconst previousSchedulingMetadata = toolSchedulingMetadata.get(\n\t\t\t\t\t\ttoolCall.id,\n\t\t\t\t\t);\n\t\t\t\t\tconst preservePreHookBlockedSchedulingReason =\n\t\t\t\t\t\t(previousSchedulingMetadata?.reason === \"path_scope_overlap\" ||\n\t\t\t\t\t\t\tpreviousSchedulingMetadata?.reason === \"pending_mutation\") &&\n\t\t\t\t\t\tsameMutationScope(originalMutationScope, effectiveMutationScope);\n\t\t\t\t\tmergeToolSchedulingMetadata(\n\t\t\t\t\t\ttoolCall.id,\n\t\t\t\t\t\tpreservePreHookBlockedSchedulingReason\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t...effectiveSchedulingMetadata,\n\t\t\t\t\t\t\t\t\tclassification: previousSchedulingMetadata.classification,\n\t\t\t\t\t\t\t\t\treason: previousSchedulingMetadata.reason,\n\t\t\t\t\t\t\t\t\tqueueDepth: previousSchedulingMetadata.queueDepth,\n\t\t\t\t\t\t\t\t\tpendingMutations: previousSchedulingMetadata.pendingMutations,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: effectiveSchedulingMetadata,\n\t\t\t\t\t);\n\t\t\t\t\t// Use hook-modified (pre-validation) args for hook inputs\n\t\t\t\t\tconst policyCheckedReusableToolResultKey =\n\t\t\t\t\t\tgetReusableToolResultCacheKey(effectiveToolCall, toolMetadataCache);\n\t\t\t\t\tconst canReuseToolResult =\n\t\t\t\t\t\treusableToolResultKey !== undefined &&\n\t\t\t\t\t\tpolicyCheckedReusableToolResultKey === reusableToolResultKey;\n\t\t\t\t\tif (canReuseToolResult && reusableToolResultKey) {\n\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys.add(reusableToolResultKey);\n\t\t\t\t\t}\n\t\t\t\t\tconst canServeReusableToolResult =\n\t\t\t\t\t\tcanReuseToolResult &&\n\t\t\t\t\t\t!hasPendingMutatingToolExecution(\n\t\t\t\t\t\t\tpendingExecutions,\n\t\t\t\t\t\t\ttoolMetadataCache,\n\t\t\t\t\t\t) &&\n\t\t\t\t\t\t!mutatingToolCompletedInCurrentBatch;\n\t\t\t\t\tif (canServeReusableToolResult) {\n\t\t\t\t\t\tconst cachedEntry = reusableToolResults.get(reusableToolResultKey);\n\t\t\t\t\t\tif (cachedEntry) {\n\t\t\t\t\t\t\tconst scheduling: ToolSchedulingDecision = {\n\t\t\t\t\t\t\t\tcallId: toolCall.id,\n\t\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t\temittedIndex: toolIndex,\n\t\t\t\t\t\t\t\tdecision: \"cached\",\n\t\t\t\t\t\t\t\treason: \"reusable_tool_result_ready\",\n\t\t\t\t\t\t\t\tschedulerWaitMs: schedulerWaitMs(),\n\t\t\t\t\t\t\t\tcacheHit: true,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\ttoolSchedulingDecisions.set(toolCall.id, scheduling);\n\t\t\t\t\t\t\tconst cacheHitStart = this.clock.now();\n\t\t\t\t\t\t\tconst cachedOutcome =\n\t\t\t\t\t\t\t\tawait recordReusableToolExecutionBridgeOutput({\n\t\t\t\t\t\t\t\t\tbridge: platformToolExecutionBridge,\n\t\t\t\t\t\t\t\t\tplan: safetyVerdict.toolExecutionBridgePlan,\n\t\t\t\t\t\t\t\t\toutcome: {\n\t\t\t\t\t\t\t\t\t\tmessage: {\n\t\t\t\t\t\t\t\t\t\t\t...cachedEntry.message,\n\t\t\t\t\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t\t\t\t\tcontent: cachedEntry.message.content.map((item) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...item,\n\t\t\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tisError: false,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tdurationMs: this.clock.now() - cacheHitStart,\n\t\t\t\t\t\t\t\t\tsignal,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tmergeToolSchedulingMetadata(toolCall.id, {\n\t\t\t\t\t\t\t\tclassification: \"cache_reuse\",\n\t\t\t\t\t\t\t\treason: \"cache_hit\",\n\t\t\t\t\t\t\t\tconcurrencyLimit,\n\t\t\t\t\t\t\t\tqueueDepth: pendingExecutions.length,\n\t\t\t\t\t\t\t\tpendingMutations: pendingMutationCount(),\n\t\t\t\t\t\t\t\tcache: \"hit\",\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tfor (const event of emitToolResult(\n\t\t\t\t\t\t\t\tcachedOutcome.message,\n\t\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\t\tcachedOutcome.isError,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttoolExecutionId: cachedOutcome.toolExecutionId,\n\t\t\t\t\t\t\t\t\tapprovalRequestId: cachedOutcome.approvalRequestId,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t)) {\n\t\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tawait checkSteering();\n\t\t\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex + 1);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst pendingReusable = pendingReusableToolResults.get(\n\t\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (pendingReusable) {\n\t\t\t\t\t\t\tmergeToolSchedulingMetadata(toolCall.id, {\n\t\t\t\t\t\t\t\tclassification: \"cache_reuse\",\n\t\t\t\t\t\t\t\treason: \"cache_pending\",\n\t\t\t\t\t\t\t\tconcurrencyLimit,\n\t\t\t\t\t\t\t\tqueueDepth: pendingExecutions.length,\n\t\t\t\t\t\t\t\tpendingMutations: pendingMutationCount(),\n\t\t\t\t\t\t\t\tcache: \"pending_hit\",\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tconst waveIndex = pendingWaveIndex();\n\t\t\t\t\t\t\tconst scheduling: ToolSchedulingDecision = {\n\t\t\t\t\t\t\t\tcallId: toolCall.id,\n\t\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t\temittedIndex: toolIndex,\n\t\t\t\t\t\t\t\twaveIndex,\n\t\t\t\t\t\t\t\tdecision: \"cached\",\n\t\t\t\t\t\t\t\treason: \"reusable_tool_result_pending\",\n\t\t\t\t\t\t\t\tschedulerWaitMs: schedulerWaitMs(),\n\t\t\t\t\t\t\t\tcacheHit: true,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\ttoolSchedulingDecisions.set(toolCall.id, scheduling);\n\t\t\t\t\t\t\tconst pendingExecution: PendingExecution = {\n\t\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\t\tpromise: (async () => {\n\t\t\t\t\t\t\t\t\tconst cacheHitStart = this.clock.now();\n\t\t\t\t\t\t\t\t\treturn recordReusableToolExecutionBridgeOutput({\n\t\t\t\t\t\t\t\t\t\tbridge: platformToolExecutionBridge,\n\t\t\t\t\t\t\t\t\t\tplan: safetyVerdict.toolExecutionBridgePlan,\n\t\t\t\t\t\t\t\t\t\toutcome: cloneToolOutcomeForCall(\n\t\t\t\t\t\t\t\t\t\t\tawait pendingReusable,\n\t\t\t\t\t\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\t\t\t\t\t\tthis.clock.now(),\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\tdurationMs: this.clock.now() - cacheHitStart,\n\t\t\t\t\t\t\t\t\t\tsignal,\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t})(),\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tpendingExecutions.push(pendingExecution);\n\t\t\t\t\t\t\tpendingExecutionWaveIndexes.set(pendingExecution, waveIndex);\n\t\t\t\t\t\t\tpendingExecutionScheduling.set(pendingExecution, scheduling);\n\t\t\t\t\t\t\tconst events = await scheduleResolveIfNeeded();\n\t\t\t\t\t\t\tfor (const event of events) {\n\t\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex + 1);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tconst pendingBeforeSchedule = pendingExecutions.length;\n\t\t\t\t\tconst waveIndex =\n\t\t\t\t\t\tpendingBeforeSchedule > 0 ? pendingWaveIndex() : nextWaveIndex();\n\t\t\t\t\tconst mcpOptIn =\n\t\t\t\t\t\tisMcpParallelOptIn(tool) && !effectiveToolCallReadOnly;\n\t\t\t\t\tconst decision =\n\t\t\t\t\t\tschedulingDelayReason !== undefined\n\t\t\t\t\t\t\t? \"delayed\"\n\t\t\t\t\t\t\t: pendingBeforeSchedule > 0\n\t\t\t\t\t\t\t\t? \"parallelized\"\n\t\t\t\t\t\t\t\t: requiresSerializedTurn ||\n\t\t\t\t\t\t\t\t\t\t(!effectiveToolCallReadOnly &&\n\t\t\t\t\t\t\t\t\t\t\t!effectiveMutationScope &&\n\t\t\t\t\t\t\t\t\t\t\t!effectiveToolCallParallelSafe)\n\t\t\t\t\t\t\t\t\t? \"serialized\"\n\t\t\t\t\t\t\t\t\t: \"scheduled\";\n\t\t\t\t\tconst reason =\n\t\t\t\t\t\tschedulingDelayReason ??\n\t\t\t\t\t\t(effectiveToolCallReadOnly\n\t\t\t\t\t\t\t? requiresSerializedTurn\n\t\t\t\t\t\t\t\t? \"workflow_state_serialized\"\n\t\t\t\t\t\t\t\t: pendingBeforeSchedule > 0\n\t\t\t\t\t\t\t\t\t? \"read_only_wave\"\n\t\t\t\t\t\t\t\t\t: \"read_only_wave_start\"\n\t\t\t\t\t\t\t: requiresSerializedTurn\n\t\t\t\t\t\t\t\t? \"workflow_state_serialized\"\n\t\t\t\t\t\t\t\t: joinsPathScopedMutationIsland\n\t\t\t\t\t\t\t\t\t? \"path_scoped_mutation_disjoint\"\n\t\t\t\t\t\t\t\t\t: joinsParallelSafeMutationWave && mcpOptIn\n\t\t\t\t\t\t\t\t\t\t? \"mcp_parallel_opt_in\"\n\t\t\t\t\t\t\t\t\t\t: joinsParallelSafeMutationWave\n\t\t\t\t\t\t\t\t\t\t\t? \"parallel_safe_mutation_wave\"\n\t\t\t\t\t\t\t\t\t\t\t: mcpOptIn\n\t\t\t\t\t\t\t\t\t\t\t\t? pendingBeforeSchedule > 0\n\t\t\t\t\t\t\t\t\t\t\t\t\t? \"mcp_parallel_opt_in\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"mcp_parallel_opt_in_wave_start\"\n\t\t\t\t\t\t\t\t\t\t\t\t: effectiveMutationScope\n\t\t\t\t\t\t\t\t\t\t\t\t\t? \"path_scoped_mutation_wave_start\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"serialized_tool\");\n\t\t\t\t\tconst scheduling: ToolSchedulingDecision = {\n\t\t\t\t\t\tcallId: toolCall.id,\n\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\temittedIndex: toolIndex,\n\t\t\t\t\t\twaveIndex,\n\t\t\t\t\t\tdecision,\n\t\t\t\t\t\treason,\n\t\t\t\t\t\tschedulerWaitMs: schedulerWaitMs(),\n\t\t\t\t\t\tmcpOptIn,\n\t\t\t\t\t\tblockedByMutation,\n\t\t\t\t\t};\n\t\t\t\t\ttoolSchedulingDecisions.set(toolCall.id, scheduling);\n\n\t\t\t\t\t// For client tools, set up the execution promise first, then emit event\n\t\t\t\t\t// This prevents race conditions where the client responds before we're listening\n\t\t\t\t\tlet clientToolExecPromise:\n\t\t\t\t\t\t| ReturnType<ClientToolExecutionService[\"requestExecution\"]>\n\t\t\t\t\t\t| undefined;\n\t\t\t\t\tif (\n\t\t\t\t\t\ttool.executionLocation === \"client\" &&\n\t\t\t\t\t\tthis.options.clientToolService\n\t\t\t\t\t) {\n\t\t\t\t\t\tclientToolExecPromise =\n\t\t\t\t\t\t\tthis.options.clientToolService.requestExecution(\n\t\t\t\t\t\t\t\ttoolCall.id,\n\t\t\t\t\t\t\t\ttoolCall.name,\n\t\t\t\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\t\t\t\tsignal,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t// Now emit the event - the promise is already waiting for the result\n\t\t\t\t\t\tyield {\n\t\t\t\t\t\t\ttype: \"client_tool_request\",\n\t\t\t\t\t\t\ttoolCallId: toolCall.id,\n\t\t\t\t\t\t\ttoolName: toolCall.name,\n\t\t\t\t\t\t\t// Client tools execute out-of-process; they need the real args.\n\t\t\t\t\t\t\targs: validatedArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\tconst executionPromise = createToolExecutionPromise({\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\teffectiveToolCall,\n\t\t\t\t\t\ttool,\n\t\t\t\t\t\tvalidatedArgs,\n\t\t\t\t\t\tsanitizedExecutionArgs,\n\t\t\t\t\t\tcfg,\n\t\t\t\t\t\tsignal,\n\t\t\t\t\t\tclock: this.clock,\n\t\t\t\t\t\tsafetyMiddleware: this.safetyMiddleware,\n\t\t\t\t\t\tadaptiveThresholds: this.adaptiveThresholds,\n\t\t\t\t\t\tauditLogger: this.auditLogger,\n\t\t\t\t\t\thookService,\n\t\t\t\t\t\ttoolRetryService: this.options.toolRetryService,\n\t\t\t\t\t\ttoolRetryConfig: this.options.toolRetryConfig,\n\t\t\t\t\t\tclientToolService: this.options.clientToolService,\n\t\t\t\t\t\ttoolExecutionBridge: platformToolExecutionBridge,\n\t\t\t\t\t\ttoolExecutionBridgePlan: safetyVerdict.toolExecutionBridgePlan,\n\t\t\t\t\t\ttoolUpdateQueue,\n\t\t\t\t\t\tclientToolExecPromise,\n\t\t\t\t\t});\n\t\t\t\t\tconst trackedExecutionPromise =\n\t\t\t\t\t\tcanReuseToolResult && reusableToolResultKey\n\t\t\t\t\t\t\t? trackReusableToolResult(\n\t\t\t\t\t\t\t\t\treusableToolResultKey,\n\t\t\t\t\t\t\t\t\texecutionPromise,\n\t\t\t\t\t\t\t\t\treusableToolResults,\n\t\t\t\t\t\t\t\t\tpendingReusableToolResults,\n\t\t\t\t\t\t\t\t\tpolicyCheckedReusableToolResultKeys,\n\t\t\t\t\t\t\t\t\treusableToolResultCacheGeneration,\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t: executionPromise;\n\n\t\t\t\t\tconst pendingExecution: PendingExecution = {\n\t\t\t\t\t\ttoolCall,\n\t\t\t\t\t\tpromise: trackedExecutionPromise,\n\t\t\t\t\t};\n\t\t\t\t\tpendingExecutions.push(pendingExecution);\n\t\t\t\t\tpendingExecutionWaveIndexes.set(pendingExecution, waveIndex);\n\t\t\t\t\tpendingExecutionScheduling.set(pendingExecution, scheduling);\n\t\t\t\t\tif (effectiveMutationScope) {\n\t\t\t\t\t\tpendingMutationScopes.set(pendingExecution, effectiveMutationScope);\n\t\t\t\t\t}\n\t\t\t\t\tconst events = await scheduleResolveIfNeeded();\n\t\t\t\t\tfor (const event of events) {\n\t\t\t\t\t\tyield event;\n\t\t\t\t\t}\n\t\t\t\t\tif (steeringTriggered) {\n\t\t\t\t\t\tremainingToolCalls = toolCallsToExecute.slice(toolIndex + 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\twhile (pendingExecutions.length > 0) {\n\t\t\t\t\tfor (const event of await resolveNextPendingExecution()) {\n\t\t\t\t\t\tyield event;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (steeringTriggered && remainingToolCalls.length > 0) {\n\t\t\t\t\tfor (const toolCall of remainingToolCalls) {\n\t\t\t\t\t\tfor (const event of emitSkippedToolCall(toolCall)) {\n\t\t\t\t\t\t\tyield event;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst toolPhaseSummary = buildToolPhaseSummary();\n\t\t\t\tif (toolPhaseSummary) {\n\t\t\t\t\tyield toolPhaseSummary;\n\t\t\t\t}\n\n\t\t\t\tthis.safetyMiddleware.clearCredentials();\n\n\t\t\t\tif (!steeringTriggered && getSteeringMessages) {\n\t\t\t\t\tconst steering = await getSteeringMessages<AppMessage>();\n\t\t\t\t\tif (steering.length > 0) {\n\t\t\t\t\t\tsteeringAfterTools = steering;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (completedAssistantMessage) {\n\t\t\t\tallMessages.push(completedAssistantMessage);\n\t\t\t}\n\t\t\tallMessages.push(...toolResults);\n\n\t\t\tyield {\n\t\t\t\ttype: \"turn_end\",\n\t\t\t\tmessage: completedAssistantMessage ??\n\t\t\t\t\tcurrentAssistantMessage ?? {\n\t\t\t\t\t\trole: \"assistant\",\n\t\t\t\t\t\tcontent: [],\n\t\t\t\t\t\tapi: model.api,\n\t\t\t\t\t\tprovider: model.provider,\n\t\t\t\t\t\tmodel: model.id,\n\t\t\t\t\t\tusage: {\n\t\t\t\t\t\t\tinput: 0,\n\t\t\t\t\t\t\toutput: 0,\n\t\t\t\t\t\t\tcacheRead: 0,\n\t\t\t\t\t\t\tcacheWrite: 0,\n\t\t\t\t\t\t\tcost: {\n\t\t\t\t\t\t\t\tinput: 0,\n\t\t\t\t\t\t\t\toutput: 0,\n\t\t\t\t\t\t\t\tcacheRead: 0,\n\t\t\t\t\t\t\t\tcacheWrite: 0,\n\t\t\t\t\t\t\t\ttotal: 0,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tstopReason: \"error\",\n\t\t\t\t\t\ttimestamp: this.clock.now(),\n\t\t\t\t\t},\n\t\t\t\ttoolResults,\n\t\t\t};\n\n\t\t\tif (steeringAfterTools && steeringAfterTools.length > 0) {\n\t\t\t\tpendingMessages = steeringAfterTools;\n\t\t\t} else if (getSteeringMessages) {\n\t\t\t\tconst steering = await getSteeringMessages<AppMessage>();\n\t\t\t\tif (steering.length > 0) {\n\t\t\t\t\tpendingMessages = steering;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t!pendingNextTurn &&\n\t\t\t\tpendingMessages.length === 0 &&\n\t\t\t\tgetFollowUpMessages\n\t\t\t) {\n\t\t\t\tconst followUps = await getFollowUpMessages<AppMessage>();\n\t\t\t\tif (followUps.length > 0) {\n\t\t\t\t\tpendingMessages = followUps;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (pendingMessages.length > 0) {\n\t\t\t\tpendingNextTurn = true;\n\t\t\t}\n\n\t\t\thasMoreToolCalls = encounteredError ? false : pendingNextTurn;\n\t\t\tif (encounteredError) {\n\t\t\t\tcfg.queryProfiler?.terminal(\"turn:error\");\n\t\t\t} else if (!hasMoreToolCalls) {\n\t\t\t\tcfg.queryProfiler?.terminal(\"turn:complete\", {\n\t\t\t\t\ttool_results: toolResults.length,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|