@orion-agents/orion-code 0.3.1 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +126 -0
- package/README.md +71 -32
- package/README.zh-CN.md +56 -29
- package/dist/commands/model-command-handlers.js +59 -14
- package/dist/commands/types.d.ts +6 -0
- package/dist/commands/workflow-command-handlers.d.ts +1 -1
- package/dist/commands/workflow-command-handlers.js +42 -3
- package/dist/commands/workflow-commands.js +2 -2
- package/dist/runtime/agent-runtime-controller.d.ts +17 -2
- package/dist/runtime/agent-runtime-controller.js +207 -47
- package/dist/runtime/agent-runtime-protocol.d.ts +3 -0
- package/dist/runtime/agent-runtime-runner.d.ts +8 -0
- package/dist/runtime/capability-receipt-journal.js +1 -1
- package/dist/runtime/durable-tool-receipt-reader.js +1 -1
- package/dist/runtime/legacy-thread-materializer.js +2 -2
- package/dist/runtime/orion-runtime-v1.d.ts +2 -1
- package/dist/runtime/orion-runtime-v1.js +18 -16
- package/dist/runtime/orion-session-runner.d.ts +6 -0
- package/dist/runtime/orion-session-runner.js +27 -4
- package/dist/runtime/plan-review.d.ts +38 -0
- package/dist/runtime/plan-review.js +173 -0
- package/dist/runtime/product-bootstrap.d.ts +6 -0
- package/dist/runtime/product-bootstrap.js +388 -314
- package/dist/runtime/product-orion-runtime.d.ts +5 -0
- package/dist/runtime/product-orion-runtime.js +16 -35
- package/dist/runtime/protocol/runtime-protocol-v1.d.ts +73 -0
- package/dist/runtime/protocol/runtime-protocol-v1.js +37 -0
- package/dist/runtime/release-receipts.d.ts +9 -3
- package/dist/runtime/release-receipts.js +120 -1
- package/dist/runtime/session-composer-control.d.ts +136 -0
- package/dist/runtime/session-composer-control.js +532 -0
- package/dist/runtime/step-snapshot.d.ts +12 -0
- package/dist/runtime/step-snapshot.js +14 -1
- package/dist/runtime/subagent-thread-runtime.js +1 -1
- package/dist/runtime/thread-event-store.d.ts +10 -1
- package/dist/runtime/thread-event-store.js +48 -12
- package/dist/runtime/thread-projection.d.ts +36 -0
- package/dist/runtime/thread-projection.js +99 -0
- package/dist/runtime/thread-runtime.d.ts +2 -2
- package/dist/runtime/thread-runtime.js +2 -2
- package/dist/runtime/thread-session-index.d.ts +17 -1
- package/dist/runtime/thread-session-index.js +89 -6
- package/dist/runtime/thread-session-view.d.ts +4 -1
- package/dist/runtime/thread-session-view.js +5 -2
- package/dist/runtime/thread-ui-adapter.js +10 -3
- package/dist/runtime/tool-gateway.js +1 -0
- package/dist/runtime/turn-commit.js +1 -1
- package/dist/runtime/ui-events.d.ts +9 -1
- package/dist/runtime/workspace-runtime-kernel.d.ts +67 -0
- package/dist/runtime/workspace-runtime-kernel.js +148 -0
- package/dist/services/global-config.d.ts +2 -0
- package/dist/services/global-config.js +7 -1
- package/dist/services/provider-resilience/coordinator.d.ts +3 -1
- package/dist/services/provider-resilience/coordinator.js +23 -1
- package/dist/services/provider-resilience/request-gate.js +7 -2
- package/dist/services/redaction.js +19 -2
- package/dist/services/session-storage.d.ts +36 -0
- package/dist/services/session-storage.js +77 -1
- package/dist/services/settings-coordinator.d.ts +3 -1
- package/dist/services/settings-coordinator.js +40 -8
- package/dist/services/settings-document-repository.d.ts +8 -1
- package/dist/services/settings-document-repository.js +22 -1
- package/dist/tui-ui/transcript-inspector-layout.js +13 -6
- package/dist/web/event-hub.d.ts +2 -0
- package/dist/web/event-hub.js +53 -6
- package/dist/web/file-read-service.d.ts +11 -0
- package/dist/web/file-read-service.js +56 -19
- package/dist/web/git-read-model-service.d.ts +8 -0
- package/dist/web/git-read-model-service.js +35 -2
- package/dist/web/protocol.d.ts +193 -3
- package/dist/web/protocol.js +245 -2
- package/dist/web/review-service.d.ts +1 -0
- package/dist/web/review-service.js +1 -0
- package/dist/web/server.js +75 -14
- package/dist/web/session-runtime-registry.d.ts +124 -0
- package/dist/web/session-runtime-registry.js +448 -0
- package/dist/web/terminal-manager.d.ts +1 -0
- package/dist/web/terminal-manager.js +60 -9
- package/dist/web/terminal-server.js +35 -6
- package/dist/web/workbench-controller.d.ts +52 -11
- package/dist/web/workbench-controller.js +1049 -110
- package/dist/web/workspace-mutation-arbiter.d.ts +54 -0
- package/dist/web/workspace-mutation-arbiter.js +267 -0
- package/dist/web-client/assets/{DiffViewer-DpKoD07C.js → DiffViewer-D6mG729y.js} +1 -1
- package/dist/web-client/assets/FilesPanel-CCDoAZ1J.js +2 -0
- package/dist/web-client/assets/{GitPanel-D20StcdG.js → GitPanel-DtNgiH7A.js} +1 -1
- package/dist/web-client/assets/ReviewPanel-CKEBSt6P.js +1 -0
- package/dist/web-client/assets/{TerminalPanel-BLQ592Fb.js → TerminalPanel-CNxMaBLp.js} +15 -13
- package/dist/web-client/assets/index-BBvNg3By.css +1 -0
- package/dist/web-client/assets/index-C6TDJwMC.js +17 -0
- package/dist/web-client/index.html +4 -4
- package/docs/architecture/agent-mode-permission-contract.md +87 -0
- package/docs/architecture/v0.3.1-web-api.yaml +53 -5
- package/docs/architecture/v0.3.2-web-api.yaml +3029 -0
- package/docs/architecture/v0.3.3-web-api.yaml +3205 -0
- package/docs/architecture/v0.3.4-stabilization-contract.md +32 -0
- package/docs/migration/v0.3.1-to-v0.3.2.md +94 -0
- package/docs/migration/v0.3.2-to-v0.3.3.md +62 -0
- package/docs/migration/v0.3.3-to-v0.3.4.md +36 -0
- package/docs/plan/v0.3.1-web-workbench-professional-shell-plan.md +1 -1
- package/docs/plan/v0.3.2-web-workbench-layout-and-composer-plan.md +869 -0
- package/docs/plan/v0.3.3-plan.md +1113 -0
- package/docs/plan/v0.3.4-stabilization-plan.md +89 -0
- package/docs/readme.md +12 -2
- package/docs/test/v0.3.1-web-workbench-e2e-plan.md +1 -1
- package/docs/test/v0.3.2-web-workbench-e2e-plan.md +100 -0
- package/docs/test/v0.3.3-web-workbench-e2e-plan.md +79 -0
- package/docs/test/v0.3.4-stabilization-e2e-plan.md +54 -0
- package/npm-shrinkwrap.json +25 -25
- package/package.json +15 -1
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/commands/context-commands.d.ts.map +0 -1
- package/dist/commands/context-commands.js.map +0 -1
- package/dist/commands/context-tool-command-handlers.d.ts.map +0 -1
- package/dist/commands/context-tool-command-handlers.js.map +0 -1
- package/dist/commands/core-command-handlers.d.ts.map +0 -1
- package/dist/commands/core-command-handlers.js.map +0 -1
- package/dist/commands/diagnostic-command-handlers.d.ts.map +0 -1
- package/dist/commands/diagnostic-command-handlers.js.map +0 -1
- package/dist/commands/diagnostic-commands.d.ts.map +0 -1
- package/dist/commands/diagnostic-commands.js.map +0 -1
- package/dist/commands/index.d.ts.map +0 -1
- package/dist/commands/index.js.map +0 -1
- package/dist/commands/model-command-handlers.d.ts.map +0 -1
- package/dist/commands/model-command-handlers.js.map +0 -1
- package/dist/commands/model-commands.d.ts.map +0 -1
- package/dist/commands/model-commands.js.map +0 -1
- package/dist/commands/parser.d.ts.map +0 -1
- package/dist/commands/parser.js.map +0 -1
- package/dist/commands/registry.d.ts.map +0 -1
- package/dist/commands/registry.js.map +0 -1
- package/dist/commands/session-command-handlers.d.ts.map +0 -1
- package/dist/commands/session-command-handlers.js.map +0 -1
- package/dist/commands/session-commands.d.ts.map +0 -1
- package/dist/commands/session-commands.js.map +0 -1
- package/dist/commands/system-commands.d.ts.map +0 -1
- package/dist/commands/system-commands.js.map +0 -1
- package/dist/commands/target-command.d.ts.map +0 -1
- package/dist/commands/target-command.js.map +0 -1
- package/dist/commands/tool-commands.d.ts.map +0 -1
- package/dist/commands/tool-commands.js.map +0 -1
- package/dist/commands/types.d.ts.map +0 -1
- package/dist/commands/types.js.map +0 -1
- package/dist/commands/workflow-command-handlers.d.ts.map +0 -1
- package/dist/commands/workflow-command-handlers.js.map +0 -1
- package/dist/commands/workflow-commands.d.ts.map +0 -1
- package/dist/commands/workflow-commands.js.map +0 -1
- package/dist/core/checkpoint.d.ts.map +0 -1
- package/dist/core/checkpoint.js.map +0 -1
- package/dist/core/cost-tracker.d.ts.map +0 -1
- package/dist/core/cost-tracker.js.map +0 -1
- package/dist/core/security-warning.d.ts.map +0 -1
- package/dist/core/security-warning.js.map +0 -1
- package/dist/core/strategy-tracker.d.ts.map +0 -1
- package/dist/core/strategy-tracker.js.map +0 -1
- package/dist/core/tool-artifacts.d.ts.map +0 -1
- package/dist/core/tool-artifacts.js.map +0 -1
- package/dist/core/warn-dedup.d.ts.map +0 -1
- package/dist/core/warn-dedup.js.map +0 -1
- package/dist/framework/agent-mode.d.ts.map +0 -1
- package/dist/framework/agent-mode.js.map +0 -1
- package/dist/framework/external-assertion.d.ts.map +0 -1
- package/dist/framework/external-assertion.js.map +0 -1
- package/dist/framework/index.d.ts.map +0 -1
- package/dist/framework/index.js.map +0 -1
- package/dist/framework/loop-budget-contract.d.ts.map +0 -1
- package/dist/framework/loop-budget-contract.js.map +0 -1
- package/dist/framework/prompt.d.ts.map +0 -1
- package/dist/framework/prompt.js.map +0 -1
- package/dist/framework/query.d.ts.map +0 -1
- package/dist/framework/query.js.map +0 -1
- package/dist/framework/stop-decision.d.ts.map +0 -1
- package/dist/framework/stop-decision.js.map +0 -1
- package/dist/framework/store.d.ts.map +0 -1
- package/dist/framework/store.js.map +0 -1
- package/dist/framework/tool-call-orchestrator.d.ts.map +0 -1
- package/dist/framework/tool-call-orchestrator.js.map +0 -1
- package/dist/framework/tool-serializer.d.ts.map +0 -1
- package/dist/framework/tool-serializer.js.map +0 -1
- package/dist/framework/tool-state.d.ts.map +0 -1
- package/dist/framework/tool-state.js.map +0 -1
- package/dist/framework/tool.d.ts.map +0 -1
- package/dist/framework/tool.js.map +0 -1
- package/dist/harness/assembler.d.ts.map +0 -1
- package/dist/harness/assembler.js.map +0 -1
- package/dist/harness/capability-profile.d.ts.map +0 -1
- package/dist/harness/capability-profile.js.map +0 -1
- package/dist/harness/capsule.d.ts.map +0 -1
- package/dist/harness/capsule.js.map +0 -1
- package/dist/harness/compact-benchmark-corpus.d.ts.map +0 -1
- package/dist/harness/compact-benchmark-corpus.js.map +0 -1
- package/dist/harness/context-harness.d.ts.map +0 -1
- package/dist/harness/context-harness.js.map +0 -1
- package/dist/harness/contract.d.ts.map +0 -1
- package/dist/harness/contract.js.map +0 -1
- package/dist/harness/drift-guard.d.ts.map +0 -1
- package/dist/harness/drift-guard.js.map +0 -1
- package/dist/harness/evidence.d.ts.map +0 -1
- package/dist/harness/evidence.js.map +0 -1
- package/dist/harness/index.d.ts.map +0 -1
- package/dist/harness/index.js.map +0 -1
- package/dist/harness/intent.d.ts.map +0 -1
- package/dist/harness/intent.js.map +0 -1
- package/dist/harness/ledger.d.ts.map +0 -1
- package/dist/harness/ledger.js.map +0 -1
- package/dist/harness/progress-controller.d.ts.map +0 -1
- package/dist/harness/progress-controller.js.map +0 -1
- package/dist/harness/state.d.ts.map +0 -1
- package/dist/harness/state.js.map +0 -1
- package/dist/harness/stop-controller.d.ts.map +0 -1
- package/dist/harness/stop-controller.js.map +0 -1
- package/dist/harness/turn-summary.d.ts.map +0 -1
- package/dist/harness/turn-summary.js.map +0 -1
- package/dist/harness/types.d.ts.map +0 -1
- package/dist/harness/types.js.map +0 -1
- package/dist/harness/verification.d.ts.map +0 -1
- package/dist/harness/verification.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/memory/embeddings.d.ts.map +0 -1
- package/dist/memory/embeddings.js.map +0 -1
- package/dist/memory/entrypoint.d.ts.map +0 -1
- package/dist/memory/entrypoint.js.map +0 -1
- package/dist/memory/index.d.ts.map +0 -1
- package/dist/memory/index.js.map +0 -1
- package/dist/memory/prompt-context.d.ts.map +0 -1
- package/dist/memory/prompt-context.js.map +0 -1
- package/dist/memory/prompts.d.ts.map +0 -1
- package/dist/memory/prompts.js.map +0 -1
- package/dist/memory/relevant-finder.d.ts.map +0 -1
- package/dist/memory/relevant-finder.js.map +0 -1
- package/dist/memory/semantic-config.d.ts.map +0 -1
- package/dist/memory/semantic-config.js.map +0 -1
- package/dist/memory/semantic-search.d.ts.map +0 -1
- package/dist/memory/semantic-search.js.map +0 -1
- package/dist/memory/storage.d.ts.map +0 -1
- package/dist/memory/storage.js.map +0 -1
- package/dist/memory/store.d.ts.map +0 -1
- package/dist/memory/store.js.map +0 -1
- package/dist/memory/team-paths.d.ts.map +0 -1
- package/dist/memory/team-paths.js.map +0 -1
- package/dist/memory/types.d.ts.map +0 -1
- package/dist/memory/types.js.map +0 -1
- package/dist/memory/validation.d.ts.map +0 -1
- package/dist/memory/validation.js.map +0 -1
- package/dist/memory/vector-store.d.ts.map +0 -1
- package/dist/memory/vector-store.js.map +0 -1
- package/dist/migration/command.d.ts.map +0 -1
- package/dist/migration/command.js.map +0 -1
- package/dist/migration/index.d.ts.map +0 -1
- package/dist/migration/index.js.map +0 -1
- package/dist/migration/migrate.d.ts.map +0 -1
- package/dist/migration/migrate.js.map +0 -1
- package/dist/migration/types.d.ts.map +0 -1
- package/dist/migration/types.js.map +0 -1
- package/dist/print-ui/launch.d.ts.map +0 -1
- package/dist/print-ui/launch.js.map +0 -1
- package/dist/product/environment.d.ts.map +0 -1
- package/dist/product/environment.js.map +0 -1
- package/dist/product/identity.d.ts.map +0 -1
- package/dist/product/identity.js.map +0 -1
- package/dist/product/index.d.ts.map +0 -1
- package/dist/product/index.js.map +0 -1
- package/dist/product/paths.d.ts.map +0 -1
- package/dist/product/paths.js.map +0 -1
- package/dist/product/version.d.ts.map +0 -1
- package/dist/product/version.js.map +0 -1
- package/dist/runtime/agent-loop.d.ts.map +0 -1
- package/dist/runtime/agent-loop.js.map +0 -1
- package/dist/runtime/agent-runtime-controller.d.ts.map +0 -1
- package/dist/runtime/agent-runtime-controller.js.map +0 -1
- package/dist/runtime/agent-runtime-protocol.d.ts.map +0 -1
- package/dist/runtime/agent-runtime-protocol.js.map +0 -1
- package/dist/runtime/agent-runtime-runner.d.ts.map +0 -1
- package/dist/runtime/agent-runtime-runner.js.map +0 -1
- package/dist/runtime/agent-status.d.ts.map +0 -1
- package/dist/runtime/agent-status.js.map +0 -1
- package/dist/runtime/aggregate-tool-presenter.d.ts.map +0 -1
- package/dist/runtime/aggregate-tool-presenter.js.map +0 -1
- package/dist/runtime/batch-read-service.d.ts.map +0 -1
- package/dist/runtime/batch-read-service.js.map +0 -1
- package/dist/runtime/builtin-tool-provider.d.ts.map +0 -1
- package/dist/runtime/builtin-tool-provider.js.map +0 -1
- package/dist/runtime/capabilities/compiler.d.ts.map +0 -1
- package/dist/runtime/capabilities/compiler.js.map +0 -1
- package/dist/runtime/capabilities/index.d.ts.map +0 -1
- package/dist/runtime/capabilities/index.js.map +0 -1
- package/dist/runtime/capabilities/types.d.ts.map +0 -1
- package/dist/runtime/capabilities/types.js.map +0 -1
- package/dist/runtime/capability-receipt-journal.d.ts.map +0 -1
- package/dist/runtime/capability-receipt-journal.js.map +0 -1
- package/dist/runtime/capability-step-factory.d.ts.map +0 -1
- package/dist/runtime/capability-step-factory.js.map +0 -1
- package/dist/runtime/compact-transaction.d.ts.map +0 -1
- package/dist/runtime/compact-transaction.js.map +0 -1
- package/dist/runtime/composer/buffer.d.ts.map +0 -1
- package/dist/runtime/composer/buffer.js.map +0 -1
- package/dist/runtime/composer/grapheme.d.ts.map +0 -1
- package/dist/runtime/composer/grapheme.js.map +0 -1
- package/dist/runtime/composer/history.d.ts.map +0 -1
- package/dist/runtime/composer/history.js.map +0 -1
- package/dist/runtime/composer/layout.d.ts.map +0 -1
- package/dist/runtime/composer/layout.js.map +0 -1
- package/dist/runtime/core-tools/descriptors.d.ts.map +0 -1
- package/dist/runtime/core-tools/descriptors.js.map +0 -1
- package/dist/runtime/durable-tool-receipt-reader.d.ts.map +0 -1
- package/dist/runtime/durable-tool-receipt-reader.js.map +0 -1
- package/dist/runtime/first-party-core-provider.d.ts.map +0 -1
- package/dist/runtime/first-party-core-provider.js.map +0 -1
- package/dist/runtime/first-party-long-tail-provider.d.ts.map +0 -1
- package/dist/runtime/first-party-long-tail-provider.js.map +0 -1
- package/dist/runtime/first-party-tool-services.d.ts.map +0 -1
- package/dist/runtime/first-party-tool-services.js.map +0 -1
- package/dist/runtime/first-party-tool-universe.d.ts.map +0 -1
- package/dist/runtime/first-party-tool-universe.js.map +0 -1
- package/dist/runtime/goal-lifecycle-v2.d.ts.map +0 -1
- package/dist/runtime/goal-lifecycle-v2.js.map +0 -1
- package/dist/runtime/goal-runtime-coordinator.d.ts.map +0 -1
- package/dist/runtime/goal-runtime-coordinator.js.map +0 -1
- package/dist/runtime/goals/completion-audit.d.ts.map +0 -1
- package/dist/runtime/goals/completion-audit.js.map +0 -1
- package/dist/runtime/goals/evidence.d.ts.map +0 -1
- package/dist/runtime/goals/evidence.js.map +0 -1
- package/dist/runtime/goals/objective.d.ts.map +0 -1
- package/dist/runtime/goals/objective.js.map +0 -1
- package/dist/runtime/goals/presentation.d.ts.map +0 -1
- package/dist/runtime/goals/presentation.js.map +0 -1
- package/dist/runtime/goals/types.d.ts.map +0 -1
- package/dist/runtime/goals/types.js.map +0 -1
- package/dist/runtime/harness-confluence.d.ts.map +0 -1
- package/dist/runtime/harness-confluence.js.map +0 -1
- package/dist/runtime/harness-eval.d.ts.map +0 -1
- package/dist/runtime/harness-eval.js.map +0 -1
- package/dist/runtime/harness-metrics.d.ts.map +0 -1
- package/dist/runtime/harness-metrics.js.map +0 -1
- package/dist/runtime/legacy-session-importer.d.ts.map +0 -1
- package/dist/runtime/legacy-session-importer.js.map +0 -1
- package/dist/runtime/legacy-thread-materializer.d.ts.map +0 -1
- package/dist/runtime/legacy-thread-materializer.js.map +0 -1
- package/dist/runtime/long-tail-tools/descriptors.d.ts.map +0 -1
- package/dist/runtime/long-tail-tools/descriptors.js.map +0 -1
- package/dist/runtime/loop-budget.d.ts.map +0 -1
- package/dist/runtime/loop-budget.js.map +0 -1
- package/dist/runtime/mcp/first-party-mcp-adapter.d.ts.map +0 -1
- package/dist/runtime/mcp/first-party-mcp-adapter.js.map +0 -1
- package/dist/runtime/mcp/first-party-mcp-config.d.ts.map +0 -1
- package/dist/runtime/mcp/first-party-mcp-config.js.map +0 -1
- package/dist/runtime/mcp/index.d.ts.map +0 -1
- package/dist/runtime/mcp/index.js.map +0 -1
- package/dist/runtime/mcp/lazy-mcp-runtime.d.ts.map +0 -1
- package/dist/runtime/mcp/lazy-mcp-runtime.js.map +0 -1
- package/dist/runtime/mcp/types.d.ts.map +0 -1
- package/dist/runtime/mcp/types.js.map +0 -1
- package/dist/runtime/model-coordinator.d.ts.map +0 -1
- package/dist/runtime/model-coordinator.js.map +0 -1
- package/dist/runtime/orion-runtime-v1.d.ts.map +0 -1
- package/dist/runtime/orion-runtime-v1.js.map +0 -1
- package/dist/runtime/orion-session-runner.d.ts.map +0 -1
- package/dist/runtime/orion-session-runner.js.map +0 -1
- package/dist/runtime/product-bootstrap.d.ts.map +0 -1
- package/dist/runtime/product-bootstrap.js.map +0 -1
- package/dist/runtime/product-orion-runtime.d.ts.map +0 -1
- package/dist/runtime/product-orion-runtime.js.map +0 -1
- package/dist/runtime/prompts/index.d.ts.map +0 -1
- package/dist/runtime/prompts/index.js.map +0 -1
- package/dist/runtime/prompts/prompt-registry.d.ts.map +0 -1
- package/dist/runtime/prompts/prompt-registry.js.map +0 -1
- package/dist/runtime/prompts/types.d.ts.map +0 -1
- package/dist/runtime/prompts/types.js.map +0 -1
- package/dist/runtime/protocol/canonical.d.ts.map +0 -1
- package/dist/runtime/protocol/canonical.js.map +0 -1
- package/dist/runtime/protocol/index.d.ts.map +0 -1
- package/dist/runtime/protocol/index.js.map +0 -1
- package/dist/runtime/protocol/runtime-protocol-v1.d.ts.map +0 -1
- package/dist/runtime/protocol/runtime-protocol-v1.js.map +0 -1
- package/dist/runtime/release-receipts.d.ts.map +0 -1
- package/dist/runtime/release-receipts.js.map +0 -1
- package/dist/runtime/resource-scope.d.ts.map +0 -1
- package/dist/runtime/resource-scope.js.map +0 -1
- package/dist/runtime/rich-text/ansi-parser.d.ts.map +0 -1
- package/dist/runtime/rich-text/ansi-parser.js.map +0 -1
- package/dist/runtime/rich-text/layout.d.ts.map +0 -1
- package/dist/runtime/rich-text/layout.js.map +0 -1
- package/dist/runtime/rich-text/markdown-parser.d.ts.map +0 -1
- package/dist/runtime/rich-text/markdown-parser.js.map +0 -1
- package/dist/runtime/rich-text/sanitizer.d.ts.map +0 -1
- package/dist/runtime/rich-text/sanitizer.js.map +0 -1
- package/dist/runtime/rich-text/types.d.ts.map +0 -1
- package/dist/runtime/rich-text/types.js.map +0 -1
- package/dist/runtime/runtime-event-buffer.d.ts.map +0 -1
- package/dist/runtime/runtime-event-buffer.js.map +0 -1
- package/dist/runtime/runtime-services.d.ts.map +0 -1
- package/dist/runtime/runtime-services.js.map +0 -1
- package/dist/runtime/session-history-recovery.d.ts.map +0 -1
- package/dist/runtime/session-history-recovery.js.map +0 -1
- package/dist/runtime/skills/bounded-lru-cache.d.ts.map +0 -1
- package/dist/runtime/skills/bounded-lru-cache.js.map +0 -1
- package/dist/runtime/skills/filesystem-skill-provider.d.ts.map +0 -1
- package/dist/runtime/skills/filesystem-skill-provider.js.map +0 -1
- package/dist/runtime/skills/index.d.ts.map +0 -1
- package/dist/runtime/skills/index.js.map +0 -1
- package/dist/runtime/skills/lazy-skill-runtime.d.ts.map +0 -1
- package/dist/runtime/skills/lazy-skill-runtime.js.map +0 -1
- package/dist/runtime/skills/types.d.ts.map +0 -1
- package/dist/runtime/skills/types.js.map +0 -1
- package/dist/runtime/step-snapshot.d.ts.map +0 -1
- package/dist/runtime/step-snapshot.js.map +0 -1
- package/dist/runtime/subagent-thread-runtime.d.ts.map +0 -1
- package/dist/runtime/subagent-thread-runtime.js.map +0 -1
- package/dist/runtime/subagents/budget.d.ts.map +0 -1
- package/dist/runtime/subagents/budget.js.map +0 -1
- package/dist/runtime/subagents/child-executor-guard.d.ts.map +0 -1
- package/dist/runtime/subagents/child-executor-guard.js.map +0 -1
- package/dist/runtime/subagents/context-builder.d.ts.map +0 -1
- package/dist/runtime/subagents/context-builder.js.map +0 -1
- package/dist/runtime/subagents/index.d.ts.map +0 -1
- package/dist/runtime/subagents/index.js.map +0 -1
- package/dist/runtime/subagents/parent-step-fork.d.ts.map +0 -1
- package/dist/runtime/subagents/parent-step-fork.js.map +0 -1
- package/dist/runtime/subagents/policy.d.ts.map +0 -1
- package/dist/runtime/subagents/policy.js.map +0 -1
- package/dist/runtime/subagents/presets.d.ts.map +0 -1
- package/dist/runtime/subagents/presets.js.map +0 -1
- package/dist/runtime/subagents/production.d.ts.map +0 -1
- package/dist/runtime/subagents/production.js.map +0 -1
- package/dist/runtime/subagents/provider-gate.d.ts.map +0 -1
- package/dist/runtime/subagents/provider-gate.js.map +0 -1
- package/dist/runtime/subagents/receipt-journal.d.ts.map +0 -1
- package/dist/runtime/subagents/receipt-journal.js.map +0 -1
- package/dist/runtime/subagents/research-artifact.d.ts.map +0 -1
- package/dist/runtime/subagents/research-artifact.js.map +0 -1
- package/dist/runtime/subagents/research-citation.d.ts.map +0 -1
- package/dist/runtime/subagents/research-citation.js.map +0 -1
- package/dist/runtime/subagents/research-contract.d.ts.map +0 -1
- package/dist/runtime/subagents/research-contract.js.map +0 -1
- package/dist/runtime/subagents/research-quality.d.ts.map +0 -1
- package/dist/runtime/subagents/research-quality.js.map +0 -1
- package/dist/runtime/subagents/research-renderer.d.ts.map +0 -1
- package/dist/runtime/subagents/research-renderer.js.map +0 -1
- package/dist/runtime/subagents/research-types.d.ts.map +0 -1
- package/dist/runtime/subagents/research-types.js.map +0 -1
- package/dist/runtime/subagents/result-parser.d.ts.map +0 -1
- package/dist/runtime/subagents/result-parser.js.map +0 -1
- package/dist/runtime/subagents/runner.d.ts.map +0 -1
- package/dist/runtime/subagents/runner.js.map +0 -1
- package/dist/runtime/subagents/runtime-contract.d.ts.map +0 -1
- package/dist/runtime/subagents/runtime-contract.js.map +0 -1
- package/dist/runtime/subagents/runtime-integration.d.ts.map +0 -1
- package/dist/runtime/subagents/runtime-integration.js.map +0 -1
- package/dist/runtime/subagents/supervisor.d.ts.map +0 -1
- package/dist/runtime/subagents/supervisor.js.map +0 -1
- package/dist/runtime/subagents/tool.d.ts.map +0 -1
- package/dist/runtime/subagents/tool.js.map +0 -1
- package/dist/runtime/subagents/types.d.ts.map +0 -1
- package/dist/runtime/subagents/types.js.map +0 -1
- package/dist/runtime/subagents/web-research-adapter.d.ts.map +0 -1
- package/dist/runtime/subagents/web-research-adapter.js.map +0 -1
- package/dist/runtime/task-context-service.d.ts.map +0 -1
- package/dist/runtime/task-context-service.js.map +0 -1
- package/dist/runtime/thread-admission.d.ts.map +0 -1
- package/dist/runtime/thread-admission.js.map +0 -1
- package/dist/runtime/thread-compact-persistence.d.ts.map +0 -1
- package/dist/runtime/thread-compact-persistence.js.map +0 -1
- package/dist/runtime/thread-event-store.d.ts.map +0 -1
- package/dist/runtime/thread-event-store.js.map +0 -1
- package/dist/runtime/thread-projection.d.ts.map +0 -1
- package/dist/runtime/thread-projection.js.map +0 -1
- package/dist/runtime/thread-runtime.d.ts.map +0 -1
- package/dist/runtime/thread-runtime.js.map +0 -1
- package/dist/runtime/thread-session-index.d.ts.map +0 -1
- package/dist/runtime/thread-session-index.js.map +0 -1
- package/dist/runtime/thread-session-view.d.ts.map +0 -1
- package/dist/runtime/thread-session-view.js.map +0 -1
- package/dist/runtime/thread-tool-journal.d.ts.map +0 -1
- package/dist/runtime/thread-tool-journal.js.map +0 -1
- package/dist/runtime/thread-ui-adapter.d.ts.map +0 -1
- package/dist/runtime/thread-ui-adapter.js.map +0 -1
- package/dist/runtime/tool-detail-repository.d.ts.map +0 -1
- package/dist/runtime/tool-detail-repository.js.map +0 -1
- package/dist/runtime/tool-gateway.d.ts.map +0 -1
- package/dist/runtime/tool-gateway.js.map +0 -1
- package/dist/runtime/tool-output-presentation.d.ts.map +0 -1
- package/dist/runtime/tool-output-presentation.js.map +0 -1
- package/dist/runtime/tool-receipt-validator.d.ts.map +0 -1
- package/dist/runtime/tool-receipt-validator.js.map +0 -1
- package/dist/runtime/turn-commit.d.ts.map +0 -1
- package/dist/runtime/turn-commit.js.map +0 -1
- package/dist/runtime/turn-controller.d.ts.map +0 -1
- package/dist/runtime/turn-controller.js.map +0 -1
- package/dist/runtime/ui-events.d.ts.map +0 -1
- package/dist/runtime/ui-events.js.map +0 -1
- package/dist/runtime/ui-view-model.d.ts.map +0 -1
- package/dist/runtime/ui-view-model.js.map +0 -1
- package/dist/services/atomic-write.d.ts.map +0 -1
- package/dist/services/atomic-write.js.map +0 -1
- package/dist/services/auth/auth.d.ts.map +0 -1
- package/dist/services/auth/auth.js.map +0 -1
- package/dist/services/auth/aws.d.ts.map +0 -1
- package/dist/services/auth/aws.js.map +0 -1
- package/dist/services/auth/index.d.ts.map +0 -1
- package/dist/services/auth/index.js.map +0 -1
- package/dist/services/auto-fix/autoFixConfig.d.ts.map +0 -1
- package/dist/services/auto-fix/autoFixConfig.js.map +0 -1
- package/dist/services/auto-fix/autoFixHook.d.ts.map +0 -1
- package/dist/services/auto-fix/autoFixHook.js.map +0 -1
- package/dist/services/auto-fix/autoFixRunner.d.ts.map +0 -1
- package/dist/services/auto-fix/autoFixRunner.js.map +0 -1
- package/dist/services/auto-fix/index.d.ts.map +0 -1
- package/dist/services/auto-fix/index.js.map +0 -1
- package/dist/services/bounded-response.d.ts.map +0 -1
- package/dist/services/bounded-response.js.map +0 -1
- package/dist/services/commit-plan.d.ts.map +0 -1
- package/dist/services/commit-plan.js.map +0 -1
- package/dist/services/compact/auto-compact.d.ts.map +0 -1
- package/dist/services/compact/auto-compact.js.map +0 -1
- package/dist/services/compact/compact.d.ts.map +0 -1
- package/dist/services/compact/compact.js.map +0 -1
- package/dist/services/compact/coordinator.d.ts.map +0 -1
- package/dist/services/compact/coordinator.js.map +0 -1
- package/dist/services/compact/fingerprint.d.ts.map +0 -1
- package/dist/services/compact/fingerprint.js.map +0 -1
- package/dist/services/compact/index.d.ts.map +0 -1
- package/dist/services/compact/index.js.map +0 -1
- package/dist/services/compact/planner.d.ts.map +0 -1
- package/dist/services/compact/planner.js.map +0 -1
- package/dist/services/compact/semantic-summary.d.ts.map +0 -1
- package/dist/services/compact/semantic-summary.js.map +0 -1
- package/dist/services/compact/summary-generator.d.ts.map +0 -1
- package/dist/services/compact/summary-generator.js.map +0 -1
- package/dist/services/compact/tool-call-groups.d.ts.map +0 -1
- package/dist/services/compact/tool-call-groups.js.map +0 -1
- package/dist/services/concurrent-sessions.d.ts.map +0 -1
- package/dist/services/concurrent-sessions.js.map +0 -1
- package/dist/services/config-dir.d.ts.map +0 -1
- package/dist/services/config-dir.js.map +0 -1
- package/dist/services/config.d.ts.map +0 -1
- package/dist/services/config.js.map +0 -1
- package/dist/services/diagnostic-tracking/diagnosticTracking.d.ts.map +0 -1
- package/dist/services/diagnostic-tracking/diagnosticTracking.js.map +0 -1
- package/dist/services/diagnostic-tracking/formatter.d.ts.map +0 -1
- package/dist/services/diagnostic-tracking/formatter.js.map +0 -1
- package/dist/services/diagnostic-tracking/index.d.ts.map +0 -1
- package/dist/services/diagnostic-tracking/index.js.map +0 -1
- package/dist/services/diagnostic-tracking/types.d.ts.map +0 -1
- package/dist/services/diagnostic-tracking/types.js.map +0 -1
- package/dist/services/doctor.d.ts.map +0 -1
- package/dist/services/doctor.js.map +0 -1
- package/dist/services/effort.d.ts.map +0 -1
- package/dist/services/effort.js.map +0 -1
- package/dist/services/file-context.d.ts.map +0 -1
- package/dist/services/file-context.js.map +0 -1
- package/dist/services/file-glob.d.ts.map +0 -1
- package/dist/services/file-glob.js.map +0 -1
- package/dist/services/file-lock.d.ts.map +0 -1
- package/dist/services/file-lock.js.map +0 -1
- package/dist/services/format.d.ts.map +0 -1
- package/dist/services/format.js.map +0 -1
- package/dist/services/global-config.d.ts.map +0 -1
- package/dist/services/global-config.js.map +0 -1
- package/dist/services/goal-storage.d.ts.map +0 -1
- package/dist/services/goal-storage.js.map +0 -1
- package/dist/services/llm.d.ts.map +0 -1
- package/dist/services/llm.js.map +0 -1
- package/dist/services/mcp/index.d.ts.map +0 -1
- package/dist/services/mcp/index.js.map +0 -1
- package/dist/services/mcp/transports.d.ts.map +0 -1
- package/dist/services/mcp/transports.js.map +0 -1
- package/dist/services/memory.d.ts.map +0 -1
- package/dist/services/memory.js.map +0 -1
- package/dist/services/model-catalog.d.ts.map +0 -1
- package/dist/services/model-catalog.js.map +0 -1
- package/dist/services/model-client-pool.d.ts.map +0 -1
- package/dist/services/model-client-pool.js.map +0 -1
- package/dist/services/model-context.d.ts.map +0 -1
- package/dist/services/model-context.js.map +0 -1
- package/dist/services/model-registry.d.ts.map +0 -1
- package/dist/services/model-registry.js.map +0 -1
- package/dist/services/project-instructions.d.ts.map +0 -1
- package/dist/services/project-instructions.js.map +0 -1
- package/dist/services/prompt-context.d.ts.map +0 -1
- package/dist/services/prompt-context.js.map +0 -1
- package/dist/services/provider-diagnostics.d.ts.map +0 -1
- package/dist/services/provider-diagnostics.js.map +0 -1
- package/dist/services/provider-resilience/circuit-breaker.d.ts.map +0 -1
- package/dist/services/provider-resilience/circuit-breaker.js.map +0 -1
- package/dist/services/provider-resilience/coordinator.d.ts.map +0 -1
- package/dist/services/provider-resilience/coordinator.js.map +0 -1
- package/dist/services/provider-resilience/error-classifier.d.ts.map +0 -1
- package/dist/services/provider-resilience/error-classifier.js.map +0 -1
- package/dist/services/provider-resilience/index.d.ts.map +0 -1
- package/dist/services/provider-resilience/index.js.map +0 -1
- package/dist/services/provider-resilience/request-gate.d.ts.map +0 -1
- package/dist/services/provider-resilience/request-gate.js.map +0 -1
- package/dist/services/provider-resilience/stream-recovery.d.ts.map +0 -1
- package/dist/services/provider-resilience/stream-recovery.js.map +0 -1
- package/dist/services/provider-resilience/types.d.ts.map +0 -1
- package/dist/services/provider-resilience/types.js.map +0 -1
- package/dist/services/redaction.d.ts.map +0 -1
- package/dist/services/redaction.js.map +0 -1
- package/dist/services/safe-project-reader.d.ts.map +0 -1
- package/dist/services/safe-project-reader.js.map +0 -1
- package/dist/services/session-index.d.ts.map +0 -1
- package/dist/services/session-index.js.map +0 -1
- package/dist/services/session-memory/index.d.ts.map +0 -1
- package/dist/services/session-memory/index.js.map +0 -1
- package/dist/services/session-memory/prompts.d.ts.map +0 -1
- package/dist/services/session-memory/prompts.js.map +0 -1
- package/dist/services/session-memory/sessionMemory.d.ts.map +0 -1
- package/dist/services/session-memory/sessionMemory.js.map +0 -1
- package/dist/services/session-storage.d.ts.map +0 -1
- package/dist/services/session-storage.js.map +0 -1
- package/dist/services/settings-coordinator.d.ts.map +0 -1
- package/dist/services/settings-coordinator.js.map +0 -1
- package/dist/services/settings-document-repository.d.ts.map +0 -1
- package/dist/services/settings-document-repository.js.map +0 -1
- package/dist/services/smart-routing.d.ts.map +0 -1
- package/dist/services/smart-routing.js.map +0 -1
- package/dist/services/storage-maintenance.d.ts.map +0 -1
- package/dist/services/storage-maintenance.js.map +0 -1
- package/dist/services/tool-allowlist.d.ts.map +0 -1
- package/dist/services/tool-allowlist.js.map +0 -1
- package/dist/services/usage-state.d.ts.map +0 -1
- package/dist/services/usage-state.js.map +0 -1
- package/dist/services/verification-profile.d.ts.map +0 -1
- package/dist/services/verification-profile.js.map +0 -1
- package/dist/services/web-search-adapters.d.ts.map +0 -1
- package/dist/services/web-search-adapters.js.map +0 -1
- package/dist/services/web-search-mcp.d.ts.map +0 -1
- package/dist/services/web-search-mcp.js.map +0 -1
- package/dist/services/web-search-provider.d.ts.map +0 -1
- package/dist/services/web-search-provider.js.map +0 -1
- package/dist/services/workspace-containment.d.ts.map +0 -1
- package/dist/services/workspace-containment.js.map +0 -1
- package/dist/services/workspace-diff.d.ts.map +0 -1
- package/dist/services/workspace-diff.js.map +0 -1
- package/dist/services/workspace-registry.d.ts.map +0 -1
- package/dist/services/workspace-registry.js.map +0 -1
- package/dist/services/workspace-state.d.ts.map +0 -1
- package/dist/services/workspace-state.js.map +0 -1
- package/dist/services/yaml-config.d.ts.map +0 -1
- package/dist/services/yaml-config.js.map +0 -1
- package/dist/terminal-ui/completion.d.ts.map +0 -1
- package/dist/terminal-ui/completion.js.map +0 -1
- package/dist/terminal-ui/editor.d.ts.map +0 -1
- package/dist/terminal-ui/editor.js.map +0 -1
- package/dist/terminal-ui/launch.d.ts.map +0 -1
- package/dist/terminal-ui/launch.js.map +0 -1
- package/dist/terminal-ui/output-queue.d.ts.map +0 -1
- package/dist/terminal-ui/output-queue.js.map +0 -1
- package/dist/terminal-ui/raw-editor.d.ts.map +0 -1
- package/dist/terminal-ui/raw-editor.js.map +0 -1
- package/dist/tools/_validate.d.ts.map +0 -1
- package/dist/tools/_validate.js.map +0 -1
- package/dist/tools/bash_security.d.ts.map +0 -1
- package/dist/tools/bash_security.js.map +0 -1
- package/dist/tools/core/common.d.ts.map +0 -1
- package/dist/tools/core/common.js.map +0 -1
- package/dist/tools/core/edit-file.d.ts.map +0 -1
- package/dist/tools/core/edit-file.js.map +0 -1
- package/dist/tools/core/exec-command.d.ts.map +0 -1
- package/dist/tools/core/exec-command.js.map +0 -1
- package/dist/tools/core/glob.d.ts.map +0 -1
- package/dist/tools/core/glob.js.map +0 -1
- package/dist/tools/core/grep.d.ts.map +0 -1
- package/dist/tools/core/grep.js.map +0 -1
- package/dist/tools/core/index.d.ts.map +0 -1
- package/dist/tools/core/index.js.map +0 -1
- package/dist/tools/core/list-files.d.ts.map +0 -1
- package/dist/tools/core/list-files.js.map +0 -1
- package/dist/tools/core/read-file.d.ts.map +0 -1
- package/dist/tools/core/read-file.js.map +0 -1
- package/dist/tools/core/write-file.d.ts.map +0 -1
- package/dist/tools/core/write-file.js.map +0 -1
- package/dist/tools/git.d.ts.map +0 -1
- package/dist/tools/git.js.map +0 -1
- package/dist/tools/lsp.d.ts.map +0 -1
- package/dist/tools/lsp.js.map +0 -1
- package/dist/tools/sandbox.d.ts.map +0 -1
- package/dist/tools/sandbox.js.map +0 -1
- package/dist/tools/todo.d.ts.map +0 -1
- package/dist/tools/todo.js.map +0 -1
- package/dist/tools/web.d.ts.map +0 -1
- package/dist/tools/web.js.map +0 -1
- package/dist/tui-core/frame.d.ts.map +0 -1
- package/dist/tui-core/frame.js.map +0 -1
- package/dist/tui-core/input-parser.d.ts.map +0 -1
- package/dist/tui-core/input-parser.js.map +0 -1
- package/dist/tui-core/style.d.ts.map +0 -1
- package/dist/tui-core/style.js.map +0 -1
- package/dist/tui-core/terminal-writer.d.ts.map +0 -1
- package/dist/tui-core/terminal-writer.js.map +0 -1
- package/dist/tui-ui/chrome-view-model.d.ts.map +0 -1
- package/dist/tui-ui/chrome-view-model.js.map +0 -1
- package/dist/tui-ui/inline-surface.d.ts.map +0 -1
- package/dist/tui-ui/inline-surface.js.map +0 -1
- package/dist/tui-ui/input-ownership.d.ts.map +0 -1
- package/dist/tui-ui/input-ownership.js.map +0 -1
- package/dist/tui-ui/launch.d.ts.map +0 -1
- package/dist/tui-ui/launch.js.map +0 -1
- package/dist/tui-ui/layout.d.ts.map +0 -1
- package/dist/tui-ui/layout.js.map +0 -1
- package/dist/tui-ui/pickers.d.ts.map +0 -1
- package/dist/tui-ui/pickers.js.map +0 -1
- package/dist/tui-ui/pixel-mascot.d.ts.map +0 -1
- package/dist/tui-ui/pixel-mascot.js.map +0 -1
- package/dist/tui-ui/render-scheduler.d.ts.map +0 -1
- package/dist/tui-ui/render-scheduler.js.map +0 -1
- package/dist/tui-ui/runner.d.ts.map +0 -1
- package/dist/tui-ui/runner.js.map +0 -1
- package/dist/tui-ui/state.d.ts.map +0 -1
- package/dist/tui-ui/state.js.map +0 -1
- package/dist/tui-ui/terminal-image.d.ts.map +0 -1
- package/dist/tui-ui/terminal-image.js.map +0 -1
- package/dist/tui-ui/theme-profile.d.ts.map +0 -1
- package/dist/tui-ui/theme-profile.js.map +0 -1
- package/dist/tui-ui/theme.d.ts.map +0 -1
- package/dist/tui-ui/theme.js.map +0 -1
- package/dist/tui-ui/transcript-cache.d.ts.map +0 -1
- package/dist/tui-ui/transcript-cache.js.map +0 -1
- package/dist/tui-ui/transcript-inspector-layout.d.ts.map +0 -1
- package/dist/tui-ui/transcript-inspector-layout.js.map +0 -1
- package/dist/tui-ui/transcript-inspector-surface.d.ts.map +0 -1
- package/dist/tui-ui/transcript-inspector-surface.js.map +0 -1
- package/dist/tui-ui/transcript-inspector.d.ts.map +0 -1
- package/dist/tui-ui/transcript-inspector.js.map +0 -1
- package/dist/tui-ui/transcript-layout.d.ts.map +0 -1
- package/dist/tui-ui/transcript-layout.js.map +0 -1
- package/dist/ui/box.d.ts.map +0 -1
- package/dist/ui/box.js.map +0 -1
- package/dist/ui/command-panel.d.ts.map +0 -1
- package/dist/ui/command-panel.js.map +0 -1
- package/dist/ui/file-completion.d.ts.map +0 -1
- package/dist/ui/file-completion.js.map +0 -1
- package/dist/ui/markdown.d.ts.map +0 -1
- package/dist/ui/markdown.js.map +0 -1
- package/dist/ui/multiline-input.d.ts.map +0 -1
- package/dist/ui/multiline-input.js.map +0 -1
- package/dist/ui/progress.d.ts.map +0 -1
- package/dist/ui/progress.js.map +0 -1
- package/dist/ui/shared/command-palette.d.ts.map +0 -1
- package/dist/ui/shared/command-palette.js.map +0 -1
- package/dist/ui/shared/command-suggestions.d.ts.map +0 -1
- package/dist/ui/shared/command-suggestions.js.map +0 -1
- package/dist/ui/shared/input-frame.d.ts.map +0 -1
- package/dist/ui/shared/input-frame.js.map +0 -1
- package/dist/ui/shared/text.d.ts.map +0 -1
- package/dist/ui/shared/text.js.map +0 -1
- package/dist/ui/shared/types.d.ts.map +0 -1
- package/dist/ui/shared/types.js.map +0 -1
- package/dist/ui/status-bar.d.ts.map +0 -1
- package/dist/ui/status-bar.js.map +0 -1
- package/dist/ui/stream-markdown.d.ts.map +0 -1
- package/dist/ui/stream-markdown.js.map +0 -1
- package/dist/ui/suggestions.d.ts.map +0 -1
- package/dist/ui/suggestions.js.map +0 -1
- package/dist/ui/tool-preview.d.ts.map +0 -1
- package/dist/ui/tool-preview.js.map +0 -1
- package/dist/ui/user-input.d.ts.map +0 -1
- package/dist/ui/user-input.js.map +0 -1
- package/dist/utils/debug-log.d.ts.map +0 -1
- package/dist/utils/debug-log.js.map +0 -1
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/json.d.ts.map +0 -1
- package/dist/utils/json.js.map +0 -1
- package/dist/utils/mask.d.ts.map +0 -1
- package/dist/utils/mask.js.map +0 -1
- package/dist/utils/observability.d.ts.map +0 -1
- package/dist/utils/observability.js.map +0 -1
- package/dist/utils/token-estimate.d.ts.map +0 -1
- package/dist/utils/token-estimate.js.map +0 -1
- package/dist/web/errors.d.ts.map +0 -1
- package/dist/web/errors.js.map +0 -1
- package/dist/web/event-hub.d.ts.map +0 -1
- package/dist/web/event-hub.js.map +0 -1
- package/dist/web/file-read-service.d.ts.map +0 -1
- package/dist/web/file-read-service.js.map +0 -1
- package/dist/web/git-read-model-service.d.ts.map +0 -1
- package/dist/web/git-read-model-service.js.map +0 -1
- package/dist/web/index.d.ts.map +0 -1
- package/dist/web/index.js.map +0 -1
- package/dist/web/launch.d.ts.map +0 -1
- package/dist/web/launch.js.map +0 -1
- package/dist/web/protocol.d.ts.map +0 -1
- package/dist/web/protocol.js.map +0 -1
- package/dist/web/review-service.d.ts.map +0 -1
- package/dist/web/review-service.js.map +0 -1
- package/dist/web/server.d.ts.map +0 -1
- package/dist/web/server.js.map +0 -1
- package/dist/web/terminal-manager.d.ts.map +0 -1
- package/dist/web/terminal-manager.js.map +0 -1
- package/dist/web/terminal-server.d.ts.map +0 -1
- package/dist/web/terminal-server.js.map +0 -1
- package/dist/web/workbench-controller.d.ts.map +0 -1
- package/dist/web/workbench-controller.js.map +0 -1
- package/dist/web-client/assets/FilesPanel-BkoLmgjR.js +0 -2
- package/dist/web-client/assets/ReviewPanel-3MVWbMQV.js +0 -1
- package/dist/web-client/assets/index-BkIDl_xk.js +0 -16
- package/dist/web-client/assets/index-DXMpnWE8.css +0 -1
|
@@ -8,8 +8,47 @@ exports.continueAsSlashChat = continueAsSlashChat;
|
|
|
8
8
|
const workspace_diff_1 = require("../services/workspace-diff");
|
|
9
9
|
const commit_plan_1 = require("../services/commit-plan");
|
|
10
10
|
const agent_mode_1 = require("../framework/agent-mode");
|
|
11
|
-
function handlePlan(ctx, args) {
|
|
11
|
+
async function handlePlan(ctx, args) {
|
|
12
12
|
const task = args.trim();
|
|
13
|
+
const [subcommand = '', ...tail] = task.split(/\s+/);
|
|
14
|
+
if (['status', 'approve', 'continue', 'cancel'].includes(subcommand)) {
|
|
15
|
+
if (!ctx.getPlanReviewState || !ctx.reviewPlan) {
|
|
16
|
+
return { success: false, error: 'Durable Plan review is unavailable in this Runtime.' };
|
|
17
|
+
}
|
|
18
|
+
const state = await ctx.getPlanReviewState();
|
|
19
|
+
if (!state)
|
|
20
|
+
return { success: false, error: 'No durable Plan review exists for this Session.' };
|
|
21
|
+
if (subcommand === 'status') {
|
|
22
|
+
return {
|
|
23
|
+
success: true,
|
|
24
|
+
output: `Plan ${state.planDigest.slice(0, 12)} · ${state.status} · revision ${state.revision}`,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
if (state.status !== 'awaiting_review') {
|
|
28
|
+
return { success: false, error: `Plan review is already ${state.status}.` };
|
|
29
|
+
}
|
|
30
|
+
const feedback = tail.join(' ').trim();
|
|
31
|
+
if (subcommand === 'continue' && !feedback) {
|
|
32
|
+
return { success: false, error: 'Usage: /plan continue <feedback>' };
|
|
33
|
+
}
|
|
34
|
+
const action = subcommand === 'approve' ? 'approve' : subcommand === 'continue' ? 'continue' : 'cancel';
|
|
35
|
+
const receipt = await ctx.reviewPlan({
|
|
36
|
+
planDigest: state.planDigest,
|
|
37
|
+
action,
|
|
38
|
+
...(feedback ? { feedback } : {}),
|
|
39
|
+
});
|
|
40
|
+
const nextMode = action === 'approve' ? 'interactive' : action === 'continue' ? 'plan' : null;
|
|
41
|
+
if (nextMode) {
|
|
42
|
+
if (ctx.agentModeLifecycle)
|
|
43
|
+
ctx.agentModeLifecycle.setMode(nextMode);
|
|
44
|
+
else
|
|
45
|
+
(0, agent_mode_1.setAgentMode)(ctx.store, nextMode);
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
success: true,
|
|
49
|
+
output: `Plan review ${receipt.state.status}; follow-on ${receipt.admission.status}.`,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
13
52
|
const snapshot = ctx.store.getSnapshot();
|
|
14
53
|
if (!snapshot.planMode || snapshot.agentMode !== 'plan') {
|
|
15
54
|
if (ctx.agentModeLifecycle)
|
|
@@ -20,12 +59,12 @@ function handlePlan(ctx, args) {
|
|
|
20
59
|
if (!task) {
|
|
21
60
|
return {
|
|
22
61
|
success: true,
|
|
23
|
-
output: 'Plan mode started with the current tool permission policy. Send the task; Orion will save the plan
|
|
62
|
+
output: 'Plan mode started with the current tool permission policy. Send the task; Orion will save the plan and wait for explicit review.',
|
|
24
63
|
};
|
|
25
64
|
}
|
|
26
65
|
return {
|
|
27
66
|
success: true,
|
|
28
|
-
output: 'Plan mode started with full tool availability under the current permission policy. Orion will save the plan, then
|
|
67
|
+
output: 'Plan mode started with full tool availability under the current permission policy. Orion will save the plan, then wait for approve, continue, or cancel.',
|
|
29
68
|
continueAsChat: true,
|
|
30
69
|
chatInput: task,
|
|
31
70
|
};
|
|
@@ -21,8 +21,8 @@ exports.WORKFLOW_COMMANDS = [
|
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
name: 'plan',
|
|
24
|
-
description: 'Plan with normal tool access,
|
|
25
|
-
argumentHint: '[task
|
|
24
|
+
description: 'Plan with normal tool access, then review the durable result before execution',
|
|
25
|
+
argumentHint: '[task | status | approve | continue <feedback> | cancel]',
|
|
26
26
|
category: 'workflow',
|
|
27
27
|
priority: 4,
|
|
28
28
|
type: 'builtin',
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { AgentMode } from '../commands/types';
|
|
2
2
|
import type { AgentRuntimeEventSink, AgentRuntimeInput, AgentRuntimeInputResult, AgentRuntimeInterruptResult, AgentRuntimeSubmitResult } from './agent-runtime-protocol';
|
|
3
3
|
import type { AgentRuntimeRunnerV1, AgentRuntimeRunInputOptionsV1 } from './agent-runtime-runner';
|
|
4
|
-
import type { OrionCodeUiRuntime, FollowupQueueItem, UiEventSink, UiRendererCapabilities } from './ui-events';
|
|
4
|
+
import type { OrionCodeUiRuntime, FollowupQueueItem, FollowupQueueSnapshot, UiEventSink, UiRendererCapabilities } from './ui-events';
|
|
5
5
|
import type { CommandUiRenderer } from '../commands/types';
|
|
6
6
|
import { type TurnControllerOptions } from './turn-controller';
|
|
7
|
-
import { AgentModeLifecycleController } from '../framework/agent-mode';
|
|
7
|
+
import { AgentModeLifecycleController, type AgentModeSnapshot } from '../framework/agent-mode';
|
|
8
8
|
export type { AgentRuntimeInput, AgentRuntimeInputResult, AgentRuntimeInterruptResult, AgentRuntimeSubmitResult, } from './agent-runtime-protocol';
|
|
9
9
|
export type AgentRuntimeRunner = AgentRuntimeRunnerV1;
|
|
10
10
|
export type RunInputOptions = AgentRuntimeRunInputOptionsV1;
|
|
@@ -21,6 +21,11 @@ export interface AgentRuntimePendingPermissionSnapshot {
|
|
|
21
21
|
readonly reason?: string;
|
|
22
22
|
readonly args: Readonly<Record<string, unknown>>;
|
|
23
23
|
}
|
|
24
|
+
/** Item-local queue CAS failure used by Web and renderer adapters. */
|
|
25
|
+
export declare class FollowupQueueConflictError extends Error {
|
|
26
|
+
readonly code = "queue_item_conflict";
|
|
27
|
+
constructor(message: string);
|
|
28
|
+
}
|
|
24
29
|
/** Exact agent-mode input used by renderers with a three-state selector. */
|
|
25
30
|
export interface AgentRuntimeSetAgentModeInput {
|
|
26
31
|
readonly type: 'set_agent_mode';
|
|
@@ -83,6 +88,11 @@ export declare class AgentRuntimeController {
|
|
|
83
88
|
constructor(options: AgentRuntimeControllerOptions);
|
|
84
89
|
hasActiveTurn(): boolean;
|
|
85
90
|
getFollowupQueue(): readonly FollowupQueueItem[];
|
|
91
|
+
getAgentModeSnapshot(): AgentModeSnapshot;
|
|
92
|
+
getFollowupQueueSnapshot(): FollowupQueueSnapshot;
|
|
93
|
+
editFollowupQueueItem(itemId: string, expectedRevision: number, text: string): AgentRuntimeInputResult;
|
|
94
|
+
moveFollowupQueueItem(itemId: string, expectedRevision: number, targetIndex: number): AgentRuntimeInputResult;
|
|
95
|
+
removeFollowupQueueItem(itemId: string, expectedRevision: number): AgentRuntimeInputResult;
|
|
86
96
|
/**
|
|
87
97
|
* Return a detached read model for browser refresh/reconnect recovery.
|
|
88
98
|
* AbortSignal and resolver ownership remain private to the controller.
|
|
@@ -116,8 +126,13 @@ export declare class AgentRuntimeController {
|
|
|
116
126
|
interrupt(): AgentRuntimeInterruptResult;
|
|
117
127
|
stopActiveTurn(): Promise<void>;
|
|
118
128
|
waitForIdle(): Promise<void>;
|
|
129
|
+
compactContext(): Promise<import('./agent-runtime-runner').AgentRuntimeCompactResultV1>;
|
|
130
|
+
canCompactContext(): boolean;
|
|
131
|
+
planReviewState(): Promise<import('./thread-projection').PlanReviewProjectionV1 | undefined>;
|
|
132
|
+
reviewPlan(input: Parameters<NonNullable<import('./agent-runtime-runner').AgentRuntimeRunnerV1['reviewPlan']>>[0]): Promise<import('./plan-review').PlanReviewResolutionReceiptV1>;
|
|
119
133
|
private runTurn;
|
|
120
134
|
private handleRunLoopError;
|
|
135
|
+
private handleCommandError;
|
|
121
136
|
private synchronizeSettingsAtLogicalBoundary;
|
|
122
137
|
private emitAppend;
|
|
123
138
|
private emitStatus;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AgentRuntimeController = void 0;
|
|
3
|
+
exports.AgentRuntimeController = exports.FollowupQueueConflictError = void 0;
|
|
4
|
+
const async_hooks_1 = require("async_hooks");
|
|
4
5
|
const crypto_1 = require("crypto");
|
|
5
6
|
const commands_1 = require("../commands");
|
|
6
7
|
const parser_1 = require("../commands/parser");
|
|
@@ -13,6 +14,15 @@ const tool_allowlist_1 = require("../services/tool-allowlist");
|
|
|
13
14
|
const agent_mode_1 = require("../framework/agent-mode");
|
|
14
15
|
const redaction_1 = require("../services/redaction");
|
|
15
16
|
const style_1 = require("../tui-core/style");
|
|
17
|
+
/** Item-local queue CAS failure used by Web and renderer adapters. */
|
|
18
|
+
class FollowupQueueConflictError extends Error {
|
|
19
|
+
constructor(message) {
|
|
20
|
+
super(message);
|
|
21
|
+
this.code = 'queue_item_conflict';
|
|
22
|
+
this.name = 'FollowupQueueConflictError';
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.FollowupQueueConflictError = FollowupQueueConflictError;
|
|
16
26
|
function isExitInput(input) {
|
|
17
27
|
const parsed = (0, parser_1.parseInput)(input.trim());
|
|
18
28
|
return parsed.isCommand && ['exit', 'quit', 'q'].includes(parsed.name);
|
|
@@ -102,7 +112,56 @@ class AgentRuntimeController {
|
|
|
102
112
|
return this.turnController.hasActiveTurn();
|
|
103
113
|
}
|
|
104
114
|
getFollowupQueue() {
|
|
105
|
-
return this.followupQueue;
|
|
115
|
+
return Object.freeze(this.followupQueue.map(item => projectFollowupQueueItem(item)));
|
|
116
|
+
}
|
|
117
|
+
getAgentModeSnapshot() {
|
|
118
|
+
return this.agentModeSnapshot();
|
|
119
|
+
}
|
|
120
|
+
getFollowupQueueSnapshot() {
|
|
121
|
+
return Object.freeze({
|
|
122
|
+
items: Object.freeze(this.followupQueue.map(item => projectFollowupQueueItem(item))),
|
|
123
|
+
limit: this.followupQueueLimit,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
editFollowupQueueItem(itemId, expectedRevision, text) {
|
|
127
|
+
const next = text.trim();
|
|
128
|
+
if (!next)
|
|
129
|
+
return { type: 'empty' };
|
|
130
|
+
const index = this.followupQueue.findIndex(item => item.id === itemId);
|
|
131
|
+
if (index < 0 || this.followupQueue[index].revision !== expectedRevision) {
|
|
132
|
+
throw new FollowupQueueConflictError('The queued message changed before it was edited.');
|
|
133
|
+
}
|
|
134
|
+
const current = this.followupQueue[index];
|
|
135
|
+
this.followupQueue[index] = {
|
|
136
|
+
...current,
|
|
137
|
+
text: next,
|
|
138
|
+
resolvedText: `${next}${current.contextSuffix}`,
|
|
139
|
+
revision: current.revision + 1,
|
|
140
|
+
};
|
|
141
|
+
this.emitFollowupQueue();
|
|
142
|
+
return { type: 'followup_queue_changed' };
|
|
143
|
+
}
|
|
144
|
+
moveFollowupQueueItem(itemId, expectedRevision, targetIndex) {
|
|
145
|
+
const index = this.followupQueue.findIndex(item => item.id === itemId);
|
|
146
|
+
if (index < 0 ||
|
|
147
|
+
this.followupQueue[index].revision !== expectedRevision ||
|
|
148
|
+
!Number.isSafeInteger(targetIndex)) {
|
|
149
|
+
throw new FollowupQueueConflictError('The queued message changed before it was moved.');
|
|
150
|
+
}
|
|
151
|
+
const bounded = Math.max(0, Math.min(this.followupQueue.length - 1, targetIndex));
|
|
152
|
+
const [item] = this.followupQueue.splice(index, 1);
|
|
153
|
+
this.followupQueue.splice(bounded, 0, { ...item, revision: item.revision + 1 });
|
|
154
|
+
this.emitFollowupQueue();
|
|
155
|
+
return { type: 'followup_queue_changed' };
|
|
156
|
+
}
|
|
157
|
+
removeFollowupQueueItem(itemId, expectedRevision) {
|
|
158
|
+
const index = this.followupQueue.findIndex(item => item.id === itemId);
|
|
159
|
+
if (index < 0 || this.followupQueue[index].revision !== expectedRevision) {
|
|
160
|
+
throw new FollowupQueueConflictError('The queued message changed before it was removed.');
|
|
161
|
+
}
|
|
162
|
+
this.followupQueue.splice(index, 1);
|
|
163
|
+
this.emitFollowupQueue();
|
|
164
|
+
return { type: 'followup_queue_changed' };
|
|
106
165
|
}
|
|
107
166
|
/**
|
|
108
167
|
* Return a detached read model for browser refresh/reconnect recovery.
|
|
@@ -165,7 +224,7 @@ class AgentRuntimeController {
|
|
|
165
224
|
case 'submit':
|
|
166
225
|
return this.submit(input.text);
|
|
167
226
|
case 'queue_followup':
|
|
168
|
-
return this.queueFollowup(input.text);
|
|
227
|
+
return this.queueFollowup(input.text, input.resolvedText);
|
|
169
228
|
case 'manage_followup_queue':
|
|
170
229
|
return this.manageFollowupQueue(input.action, input.itemId);
|
|
171
230
|
case 'select_session':
|
|
@@ -208,7 +267,7 @@ class AgentRuntimeController {
|
|
|
208
267
|
appliesFrom: 'next-logical-request',
|
|
209
268
|
};
|
|
210
269
|
}
|
|
211
|
-
queueFollowup(input) {
|
|
270
|
+
queueFollowup(input, resolvedInput) {
|
|
212
271
|
const text = input.trim();
|
|
213
272
|
if (!text)
|
|
214
273
|
return { type: 'empty' };
|
|
@@ -220,10 +279,15 @@ class AgentRuntimeController {
|
|
|
220
279
|
this.emitStatus(`Follow-up queue is full (${this.followupQueueLimit}).`);
|
|
221
280
|
return { type: 'followup_queue_full' };
|
|
222
281
|
}
|
|
282
|
+
const resolvedText = resolvedInput?.trim() || text;
|
|
283
|
+
const contextSuffix = resolvedText.startsWith(text) ? resolvedText.slice(text.length) : '';
|
|
223
284
|
const item = {
|
|
224
285
|
id: `followup-${this.nextFollowupId++}`,
|
|
225
286
|
text,
|
|
287
|
+
resolvedText,
|
|
288
|
+
contextSuffix,
|
|
226
289
|
queuedAt: Date.now(),
|
|
290
|
+
revision: 1,
|
|
227
291
|
};
|
|
228
292
|
this.followupQueue.push(item);
|
|
229
293
|
this.emitFollowupQueue();
|
|
@@ -270,21 +334,7 @@ class AgentRuntimeController {
|
|
|
270
334
|
}
|
|
271
335
|
if (parsedInput.isCommand) {
|
|
272
336
|
const command = (0, commands_1.findCommand)(parsedInput.name);
|
|
273
|
-
|
|
274
|
-
.catch(error => this.handleRunLoopError(error))
|
|
275
|
-
.finally(() => {
|
|
276
|
-
this.activeRun = null;
|
|
277
|
-
});
|
|
278
|
-
return { type: 'command_handled' };
|
|
279
|
-
}
|
|
280
|
-
if (this.turnController.hasActiveTurn()) {
|
|
281
|
-
const parsed = (0, parser_1.parseInput)(submitted);
|
|
282
|
-
if (parsed.isCommand) {
|
|
283
|
-
const command = (0, commands_1.findCommand)(parsed.name);
|
|
284
|
-
if (!command) {
|
|
285
|
-
this.emitStatus(`Unknown command /${parsed.name}; active turn continues.`);
|
|
286
|
-
return { type: 'command_ignored' };
|
|
287
|
-
}
|
|
337
|
+
if (this.turnController.hasActiveTurn()) {
|
|
288
338
|
if (command.busyPolicy === 'reject-busy') {
|
|
289
339
|
this.emitStatus(`/${command.name} rejected: an agent turn is active.`);
|
|
290
340
|
return { type: 'command_rejected_busy', commandId: command.id };
|
|
@@ -302,6 +352,16 @@ class AgentRuntimeController {
|
|
|
302
352
|
this.emitStatus(`Queued /${command.name}; it will apply after the active logical request.`);
|
|
303
353
|
return { type: 'command_queued', commandId: command.id };
|
|
304
354
|
}
|
|
355
|
+
const run = this.runCommand(command, parsedInput.args)
|
|
356
|
+
.catch(error => this.handleCommandError(command, error))
|
|
357
|
+
.finally(() => {
|
|
358
|
+
if (this.activeRun === run)
|
|
359
|
+
this.activeRun = null;
|
|
360
|
+
});
|
|
361
|
+
this.activeRun = run;
|
|
362
|
+
return { type: 'command_handled' };
|
|
363
|
+
}
|
|
364
|
+
if (this.turnController.hasActiveTurn()) {
|
|
305
365
|
this.turnController.clearExitIntent();
|
|
306
366
|
this.turnController.requestRevision(submitted);
|
|
307
367
|
// v0.1.3 (G1): echo the incremental input to the transcript immediately,
|
|
@@ -429,6 +489,7 @@ class AgentRuntimeController {
|
|
|
429
489
|
llm: this.options.runtime.llm,
|
|
430
490
|
compactCoordinator: this.options.runtime.compactCoordinator,
|
|
431
491
|
modelCoordinator: this.options.runtime.modelCoordinator,
|
|
492
|
+
sessionComposerControls: this.options.runtime.sessionComposerControls,
|
|
432
493
|
sessionId: this.options.runtime.getSession()?.id,
|
|
433
494
|
ensureSession: this.options.runtime.ensureSession,
|
|
434
495
|
setSession: session => this.options.runtime.setSession(session),
|
|
@@ -458,6 +519,10 @@ class AgentRuntimeController {
|
|
|
458
519
|
describeSettings: this.options.runtime.describeSettings,
|
|
459
520
|
updateSettings: this.options.runtime.updateSettings,
|
|
460
521
|
compact: this.runner.compact ? input => this.runner.compact(input) : undefined,
|
|
522
|
+
reviewPlan: this.runner.reviewPlan ? input => this.runner.reviewPlan(input) : undefined,
|
|
523
|
+
getPlanReviewState: this.runner.planReviewState
|
|
524
|
+
? () => this.runner.planReviewState()
|
|
525
|
+
: undefined,
|
|
461
526
|
};
|
|
462
527
|
}
|
|
463
528
|
submitTurnRequest(request) {
|
|
@@ -501,6 +566,23 @@ class AgentRuntimeController {
|
|
|
501
566
|
async waitForIdle() {
|
|
502
567
|
await Promise.all([this.activeRun ?? Promise.resolve(), ...this.goalControlRuns]);
|
|
503
568
|
}
|
|
569
|
+
async compactContext() {
|
|
570
|
+
if (this.turnController.hasActiveTurn() || !this.runner.compact) {
|
|
571
|
+
return { status: 'rejected', reason: 'runtime_busy' };
|
|
572
|
+
}
|
|
573
|
+
return this.runner.compact({});
|
|
574
|
+
}
|
|
575
|
+
canCompactContext() {
|
|
576
|
+
return Boolean(this.runner.compact);
|
|
577
|
+
}
|
|
578
|
+
async planReviewState() {
|
|
579
|
+
return this.runner.planReviewState?.();
|
|
580
|
+
}
|
|
581
|
+
async reviewPlan(input) {
|
|
582
|
+
if (!this.runner.reviewPlan)
|
|
583
|
+
throw new Error('Plan review is unavailable for this Runtime.');
|
|
584
|
+
return this.runner.reviewPlan(input);
|
|
585
|
+
}
|
|
504
586
|
async runTurn(firstRequest) {
|
|
505
587
|
let nextRequest = firstRequest;
|
|
506
588
|
while (nextRequest && !this.stopping) {
|
|
@@ -558,6 +640,19 @@ class AgentRuntimeController {
|
|
|
558
640
|
? undefined
|
|
559
641
|
: (this.agentModeLifecycle.completedPlanSince(planCompletionBeforeRequest) ?? undefined);
|
|
560
642
|
this.applyPendingAgentMode(Boolean(completedPlan));
|
|
643
|
+
try {
|
|
644
|
+
await this.options.runtime.sessionComposerControls?.applyPendingAtLogicalBoundary();
|
|
645
|
+
}
|
|
646
|
+
catch (error) {
|
|
647
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
648
|
+
this.emitAppend({
|
|
649
|
+
role: 'error',
|
|
650
|
+
title: 'composer controls',
|
|
651
|
+
content: `Deferred Composer control failed: ${message}`,
|
|
652
|
+
errorLayer: 'runtime',
|
|
653
|
+
});
|
|
654
|
+
this.emitStatus(`Composer control rollback: ${message}`);
|
|
655
|
+
}
|
|
561
656
|
if (revision?.trim()) {
|
|
562
657
|
this.emitStatus(this.options.restartingStatus ?? '根据补充调整方向中…');
|
|
563
658
|
nextRequest = {
|
|
@@ -586,7 +681,7 @@ class AgentRuntimeController {
|
|
|
586
681
|
const queuedFollowup = queuedCommand ? undefined : this.followupQueue.shift();
|
|
587
682
|
if (queuedFollowup)
|
|
588
683
|
this.emitFollowupQueue();
|
|
589
|
-
const queuedInput = queuedCommand ?? queuedFollowup?.
|
|
684
|
+
const queuedInput = queuedCommand ?? queuedFollowup?.resolvedText;
|
|
590
685
|
nextRequest = queuedInput
|
|
591
686
|
? {
|
|
592
687
|
inputKind: 'user',
|
|
@@ -633,6 +728,17 @@ class AgentRuntimeController {
|
|
|
633
728
|
this.emitStatus(readyStatus);
|
|
634
729
|
this.options.afterTurnLoop?.();
|
|
635
730
|
}
|
|
731
|
+
handleCommandError(command, error) {
|
|
732
|
+
const message = (0, style_1.sanitizeTerminalText)((0, redaction_1.redactTraceText)(error instanceof Error ? error.message : String(error)));
|
|
733
|
+
this.emitAppend({
|
|
734
|
+
role: 'error',
|
|
735
|
+
title: `/${command.name}`,
|
|
736
|
+
content: message,
|
|
737
|
+
errorLayer: 'runtime',
|
|
738
|
+
command: commandIdentity(command, false),
|
|
739
|
+
});
|
|
740
|
+
this.emitStatus(`/${command.name} failed; the active turn state was not changed.`);
|
|
741
|
+
}
|
|
636
742
|
async synchronizeSettingsAtLogicalBoundary() {
|
|
637
743
|
const synchronize = this.options.runtime.synchronizeSettings;
|
|
638
744
|
if (!synchronize)
|
|
@@ -657,7 +763,10 @@ class AgentRuntimeController {
|
|
|
657
763
|
emitFollowupQueue() {
|
|
658
764
|
this.eventSink.emit({
|
|
659
765
|
type: 'followup_queue_changed',
|
|
660
|
-
snapshot: {
|
|
766
|
+
snapshot: {
|
|
767
|
+
items: this.followupQueue.map(item => projectFollowupQueueItem(item)),
|
|
768
|
+
limit: this.followupQueueLimit,
|
|
769
|
+
},
|
|
661
770
|
});
|
|
662
771
|
}
|
|
663
772
|
agentModeSnapshot() {
|
|
@@ -975,36 +1084,87 @@ function commandIdentity(command, success) {
|
|
|
975
1084
|
};
|
|
976
1085
|
}
|
|
977
1086
|
async function captureCommandOutput(execute) {
|
|
978
|
-
const
|
|
979
|
-
|
|
980
|
-
const originalError = console.error;
|
|
981
|
-
const originalWarn = console.warn;
|
|
982
|
-
const capture = (...values) => {
|
|
983
|
-
const line = values
|
|
984
|
-
.map(value => {
|
|
985
|
-
if (typeof value === 'string')
|
|
986
|
-
return value;
|
|
987
|
-
try {
|
|
988
|
-
return JSON.stringify(value);
|
|
989
|
-
}
|
|
990
|
-
catch {
|
|
991
|
-
return String(value);
|
|
992
|
-
}
|
|
993
|
-
})
|
|
994
|
-
.join(' ');
|
|
995
|
-
lines.push((0, style_1.sanitizeTerminalText)(line));
|
|
996
|
-
};
|
|
997
|
-
console.log = capture;
|
|
998
|
-
console.error = capture;
|
|
999
|
-
console.warn = capture;
|
|
1087
|
+
const capture = { active: true, lines: [] };
|
|
1088
|
+
acquireCommandConsoleBridge();
|
|
1000
1089
|
try {
|
|
1001
|
-
|
|
1090
|
+
const result = await commandOutputCaptureStorage.run(capture, execute);
|
|
1091
|
+
return { result, output: capture.lines.join('\n').trim() };
|
|
1002
1092
|
}
|
|
1003
1093
|
finally {
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1094
|
+
capture.active = false;
|
|
1095
|
+
releaseCommandConsoleBridge();
|
|
1096
|
+
}
|
|
1097
|
+
}
|
|
1098
|
+
const commandOutputCaptureStorage = new async_hooks_1.AsyncLocalStorage();
|
|
1099
|
+
let commandConsoleBridgeReferences = 0;
|
|
1100
|
+
let commandConsoleOriginalMethods;
|
|
1101
|
+
const commandConsoleBridge = {
|
|
1102
|
+
log: (...values) => routeCommandConsole('log', values),
|
|
1103
|
+
error: (...values) => routeCommandConsole('error', values),
|
|
1104
|
+
warn: (...values) => routeCommandConsole('warn', values),
|
|
1105
|
+
};
|
|
1106
|
+
function acquireCommandConsoleBridge() {
|
|
1107
|
+
if (commandConsoleBridgeReferences === 0) {
|
|
1108
|
+
commandConsoleOriginalMethods = {
|
|
1109
|
+
log: originalConsoleMethod('log'),
|
|
1110
|
+
error: originalConsoleMethod('error'),
|
|
1111
|
+
warn: originalConsoleMethod('warn'),
|
|
1112
|
+
};
|
|
1113
|
+
console.log = commandConsoleBridge.log;
|
|
1114
|
+
console.error = commandConsoleBridge.error;
|
|
1115
|
+
console.warn = commandConsoleBridge.warn;
|
|
1116
|
+
}
|
|
1117
|
+
commandConsoleBridgeReferences += 1;
|
|
1118
|
+
}
|
|
1119
|
+
function releaseCommandConsoleBridge() {
|
|
1120
|
+
commandConsoleBridgeReferences = Math.max(0, commandConsoleBridgeReferences - 1);
|
|
1121
|
+
if (commandConsoleBridgeReferences !== 0 || !commandConsoleOriginalMethods)
|
|
1122
|
+
return;
|
|
1123
|
+
if (console.log === commandConsoleBridge.log)
|
|
1124
|
+
console.log = commandConsoleOriginalMethods.log;
|
|
1125
|
+
if (console.error === commandConsoleBridge.error)
|
|
1126
|
+
console.error = commandConsoleOriginalMethods.error;
|
|
1127
|
+
if (console.warn === commandConsoleBridge.warn)
|
|
1128
|
+
console.warn = commandConsoleOriginalMethods.warn;
|
|
1129
|
+
}
|
|
1130
|
+
function originalConsoleMethod(method) {
|
|
1131
|
+
const current = console[method];
|
|
1132
|
+
if (current !== commandConsoleBridge[method] || !commandConsoleOriginalMethods)
|
|
1133
|
+
return current;
|
|
1134
|
+
return commandConsoleOriginalMethods[method];
|
|
1135
|
+
}
|
|
1136
|
+
function routeCommandConsole(method, values) {
|
|
1137
|
+
const capture = commandOutputCaptureStorage.getStore();
|
|
1138
|
+
if (capture?.active) {
|
|
1139
|
+
capture.lines.push((0, style_1.sanitizeTerminalText)((0, redaction_1.redactTraceText)(formatConsoleValues(values))));
|
|
1140
|
+
return;
|
|
1007
1141
|
}
|
|
1142
|
+
const original = commandConsoleOriginalMethods?.[method];
|
|
1143
|
+
if (original && original !== commandConsoleBridge[method]) {
|
|
1144
|
+
Reflect.apply(original, console, values);
|
|
1145
|
+
}
|
|
1146
|
+
}
|
|
1147
|
+
function formatConsoleValues(values) {
|
|
1148
|
+
return values
|
|
1149
|
+
.map(value => {
|
|
1150
|
+
if (typeof value === 'string')
|
|
1151
|
+
return value;
|
|
1152
|
+
try {
|
|
1153
|
+
return JSON.stringify(value) ?? String(value);
|
|
1154
|
+
}
|
|
1155
|
+
catch {
|
|
1156
|
+
return String(value);
|
|
1157
|
+
}
|
|
1158
|
+
})
|
|
1159
|
+
.join(' ');
|
|
1160
|
+
}
|
|
1161
|
+
function projectFollowupQueueItem(item) {
|
|
1162
|
+
return Object.freeze({
|
|
1163
|
+
id: item.id,
|
|
1164
|
+
text: item.text,
|
|
1165
|
+
queuedAt: item.queuedAt,
|
|
1166
|
+
revision: item.revision,
|
|
1167
|
+
});
|
|
1008
1168
|
}
|
|
1009
1169
|
function createUnavailableRunner() {
|
|
1010
1170
|
return {
|
|
@@ -11,7 +11,10 @@ export type AgentRuntimeInput = {
|
|
|
11
11
|
metadata?: Record<string, unknown>;
|
|
12
12
|
} | {
|
|
13
13
|
type: 'queue_followup';
|
|
14
|
+
/** User-visible text retained by queue editors and renderer snapshots. */
|
|
14
15
|
text: string;
|
|
16
|
+
/** Optional Host-resolved execution text; never projected back to renderers. */
|
|
17
|
+
resolvedText?: string;
|
|
15
18
|
source?: 'composer' | 'programmatic';
|
|
16
19
|
} | {
|
|
17
20
|
type: 'manage_followup_queue';
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { AgentInputKind, AgentTurnRequest } from './goals/types';
|
|
2
2
|
import type { GoalRuntimeControlResultV2, GoalRuntimeControlV2 } from './goal-runtime-coordinator';
|
|
3
3
|
import type { ThreadSessionRuntimeActivationV1 } from './thread-session-view';
|
|
4
|
+
import type { PlanReviewActionV1, PlanReviewResolutionReceiptV1 } from './plan-review';
|
|
5
|
+
import type { PlanReviewProjectionV1 } from './thread-projection';
|
|
4
6
|
/** Renderer-neutral options for one admitted runtime request. */
|
|
5
7
|
export interface AgentRuntimeRunInputOptionsV1 {
|
|
6
8
|
readonly abortSignal?: AbortSignal;
|
|
@@ -31,6 +33,12 @@ export interface AgentRuntimeRunnerV1 {
|
|
|
31
33
|
restoreSession?(activation?: ThreadSessionRuntimeActivationV1): Promise<void>;
|
|
32
34
|
controlGoal?(control: GoalRuntimeControlV2): Promise<GoalRuntimeControlResultV2>;
|
|
33
35
|
compact?(input?: AgentRuntimeCompactInputV1): Promise<AgentRuntimeCompactResultV1>;
|
|
36
|
+
planReviewState?(): Promise<PlanReviewProjectionV1 | undefined>;
|
|
37
|
+
reviewPlan?(input: {
|
|
38
|
+
readonly planDigest: string;
|
|
39
|
+
readonly action: PlanReviewActionV1;
|
|
40
|
+
readonly feedback?: string;
|
|
41
|
+
}): Promise<PlanReviewResolutionReceiptV1>;
|
|
34
42
|
interrupt?(reason?: string): void;
|
|
35
43
|
close?(reason?: string): void | Promise<void>;
|
|
36
44
|
}
|
|
@@ -223,7 +223,7 @@ function replayAll(store) {
|
|
|
223
223
|
const events = [];
|
|
224
224
|
let cursor = 0;
|
|
225
225
|
while (true) {
|
|
226
|
-
const page = store.replay(cursor);
|
|
226
|
+
const page = store.replay(cursor, undefined, 'capability_receipt_journal');
|
|
227
227
|
events.push(...page.events);
|
|
228
228
|
if (!page.hasMore)
|
|
229
229
|
return events;
|
|
@@ -72,7 +72,7 @@ function readItemReceipt(sessionId, store, item) {
|
|
|
72
72
|
if (!terminalSeq || terminalSeq < 2 || !toolName || !item.receipt) {
|
|
73
73
|
throw new tool_receipt_validator_1.DurableToolReceiptValidationError('Terminal tool projection is missing its canonical receipt identity.');
|
|
74
74
|
}
|
|
75
|
-
const pair = store.replay(terminalSeq - 2, 2).events;
|
|
75
|
+
const pair = store.replay(terminalSeq - 2, 2, 'durable_tool_receipt').events;
|
|
76
76
|
const factEvent = pair.find(event => event.seq === terminalSeq - 1);
|
|
77
77
|
const terminalEvent = pair.find(event => event.seq === terminalSeq);
|
|
78
78
|
if (!factEvent || !terminalEvent || terminalEvent.itemId !== item.itemId) {
|
|
@@ -477,7 +477,7 @@ function materializeFacts(threadsDir, plan) {
|
|
|
477
477
|
if (cursor > plan.events.length) {
|
|
478
478
|
throw diverged(`Existing Thread has ${cursor} events, expected ${plan.events.length}`);
|
|
479
479
|
}
|
|
480
|
-
const existing = cursor === 0 ? [] : store.replay(0, cursor).events;
|
|
480
|
+
const existing = cursor === 0 ? [] : store.replay(0, cursor, 'legacy_materializer').events;
|
|
481
481
|
for (let index = 0; index < existing.length; index += 1) {
|
|
482
482
|
if ((0, canonical_1.canonicalRuntimeJson)(existing[index]) !== (0, canonical_1.canonicalRuntimeJson)(plan.events[index])) {
|
|
483
483
|
throw diverged(`Existing Thread diverges from import plan at seq ${index + 1}`);
|
|
@@ -490,7 +490,7 @@ function materializeFacts(threadsDir, plan) {
|
|
|
490
490
|
return store;
|
|
491
491
|
}
|
|
492
492
|
function verifyMaterializedStore(store, plan) {
|
|
493
|
-
const replay = store.replay(0, Math.max(1, plan.events.length));
|
|
493
|
+
const replay = store.replay(0, Math.max(1, plan.events.length), 'legacy_materializer');
|
|
494
494
|
if (replay.hasMore ||
|
|
495
495
|
replay.events.length !== plan.events.length ||
|
|
496
496
|
(0, canonical_1.digestRuntimeValue)(replay.events) !== plan.eventDigest) {
|
|
@@ -14,7 +14,7 @@ import { PromptRegistryV1 } from './prompts';
|
|
|
14
14
|
import { ResourceScope, type ResourceScopeCloseReport } from './resource-scope';
|
|
15
15
|
import { type RuntimeContributorSlots, type RuntimeContributors, type RuntimeServicePort, type RuntimeServices, type RuntimeServiceSlots } from './runtime-services';
|
|
16
16
|
import { LazySkillRuntime, type LazySkillRuntimeOptions, type LazySkillRuntimeStatsV1 } from './skills';
|
|
17
|
-
import { ExecutionService, type AuthoritySnapshotV1, type ToolBindingV1 } from './step-snapshot';
|
|
17
|
+
import { ExecutionService, type AuthoritySnapshotV1, type ToolBindingV1, type WorkspaceMutationCoordinatorV1 } from './step-snapshot';
|
|
18
18
|
import { ThreadCompactMaintenanceRunnerV1, ThreadCompactTransactionPersistenceV1, type ThreadCompactMaintenanceRunnerOptionsV1 } from './thread-compact-persistence';
|
|
19
19
|
import { type TaskContextService, type TaskContextServiceOptions } from './task-context-service';
|
|
20
20
|
import { ThreadEventStore, type ThreadEventStoreOptionsV1 } from './thread-event-store';
|
|
@@ -116,6 +116,7 @@ export interface OrionRuntimeV1Options {
|
|
|
116
116
|
readonly mcp: Omit<LazyMcpRuntimeOptions, 'signal'>;
|
|
117
117
|
readonly resolveCapabilityConfiguration: OrionCapabilityConfigurationResolverV1;
|
|
118
118
|
readonly approvalHandler?: FirstPartyApprovalHandlerV1;
|
|
119
|
+
readonly workspaceMutationCoordinator?: WorkspaceMutationCoordinatorV1;
|
|
119
120
|
readonly contributors?: RuntimeContributorSlots;
|
|
120
121
|
readonly subagents?: OrionSubagentCompositionV1;
|
|
121
122
|
readonly thread?: Omit<ThreadRuntimeOptionsV1, 'store' | 'runner' | 'maintenanceRunner' | 'projectPath' | 'requireTurnCommit'>;
|
|
@@ -82,22 +82,24 @@ class OrionRuntimeV1 {
|
|
|
82
82
|
const projection = graph.thread.getProjection();
|
|
83
83
|
const admission = graph.thread.getAdmissionSnapshot();
|
|
84
84
|
const eventCursor = graph.eventStore.getCursor();
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
.
|
|
88
|
-
|
|
89
|
-
const
|
|
90
|
-
.reverse()
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
.
|
|
95
|
-
|
|
96
|
-
.
|
|
97
|
-
.
|
|
85
|
+
const legacyRecent = projection.diagnosticEvents && projection.compactEvents
|
|
86
|
+
? []
|
|
87
|
+
: graph.eventStore.replay(Math.max(0, eventCursor - 256), 256, 'runtime_diagnostics_legacy')
|
|
88
|
+
.events;
|
|
89
|
+
const latestCapabilityEvent = projection.diagnosticEvents?.latestCapability ??
|
|
90
|
+
[...legacyRecent].reverse().find(event => event.payload.type === 'capability.receipt');
|
|
91
|
+
const latestSnapshotEvent = projection.diagnosticEvents?.latestStepSnapshot ??
|
|
92
|
+
[...legacyRecent].reverse().find(event => event.payload.type === 'step.snapshot');
|
|
93
|
+
const latestCommitProjection = Object.values(projection.turns)
|
|
94
|
+
.map(turn => turn.commit)
|
|
95
|
+
.filter((commit) => Boolean(commit))
|
|
96
|
+
.sort((left, right) => left.seq - right.seq)
|
|
97
|
+
.at(-1);
|
|
98
|
+
const latestCompactEvent = projection.compactEvents?.at(-1) ??
|
|
99
|
+
[...legacyRecent].reverse().find(event => event.payload.type.startsWith('compact.'));
|
|
98
100
|
const capability = parseCapabilityDiagnostics(latestCapabilityEvent, latestSnapshotEvent);
|
|
99
|
-
const latestCommit =
|
|
100
|
-
? (0, turn_commit_1.parseTurnCommitV1)(
|
|
101
|
+
const latestCommit = latestCommitProjection
|
|
102
|
+
? (0, turn_commit_1.parseTurnCommitV1)(latestCommitProjection.receipt)
|
|
101
103
|
: undefined;
|
|
102
104
|
const task = graph.taskContext.snapshot();
|
|
103
105
|
const activeTurn = projection.activeTurnId
|
|
@@ -354,7 +356,7 @@ class OrionRuntimeV1 {
|
|
|
354
356
|
});
|
|
355
357
|
const approval = new first_party_tool_services_1.FirstPartyToolApprovalServiceV1(this.options.approvalHandler);
|
|
356
358
|
const sandbox = new first_party_tool_services_1.FirstPartySandboxServiceV1();
|
|
357
|
-
const execution = new step_snapshot_1.ExecutionService();
|
|
359
|
+
const execution = new step_snapshot_1.ExecutionService(this.options.workspaceMutationCoordinator);
|
|
358
360
|
const toolJournal = new thread_tool_journal_1.ThreadToolInvocationJournalV1(eventStore);
|
|
359
361
|
const gateway = new tool_gateway_1.ToolGateway({
|
|
360
362
|
policy,
|