@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
|
@@ -119,7 +119,8 @@ function loadThreadSessionSnapshotPageV1(projectPath, sessionId, cursor, pageSiz
|
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
121
|
catch (error) {
|
|
122
|
-
if (!(error instanceof thread_session_index_1.ThreadSessionIndexError) ||
|
|
122
|
+
if (!(error instanceof thread_session_index_1.ThreadSessionIndexError) ||
|
|
123
|
+
error.code !== 'ORION_THREAD_SESSION_INDEX_CORRUPT') {
|
|
123
124
|
throw error;
|
|
124
125
|
}
|
|
125
126
|
}
|
|
@@ -268,10 +269,12 @@ function snapshotPageFromIndex(sessionId, cutoverGeneration, page) {
|
|
|
268
269
|
lastRecordHash: manifest.lastRecordHash,
|
|
269
270
|
log: manifest.log,
|
|
270
271
|
},
|
|
272
|
+
...(manifest.latestTurn ? { latestTurn: manifest.latestTurn } : {}),
|
|
271
273
|
...(manifest.latestTurnCommit ? { latestTurnCommit: manifest.latestTurnCommit } : {}),
|
|
272
274
|
...(manifest.latestPlanTurnCommit
|
|
273
275
|
? { latestPlanTurnCommit: manifest.latestPlanTurnCommit }
|
|
274
276
|
: {}),
|
|
277
|
+
...(manifest.planReview ? { planReview: manifest.planReview } : {}),
|
|
275
278
|
});
|
|
276
279
|
}
|
|
277
280
|
function captureStableThreadView(store, minimumCursor, minimumProjectionDigest, includeDurableHistory) {
|
|
@@ -301,7 +304,7 @@ function replayAll(store, cursor) {
|
|
|
301
304
|
const events = [];
|
|
302
305
|
let nextCursor = 0;
|
|
303
306
|
while (nextCursor < cursor) {
|
|
304
|
-
const replay = store.replay(nextCursor);
|
|
307
|
+
const replay = store.replay(nextCursor, undefined, 'thread_session_view');
|
|
305
308
|
const page = replay.events.filter(event => event.seq <= cursor);
|
|
306
309
|
if (page.length === 0) {
|
|
307
310
|
throw new ThreadSessionViewError(`Thread ${store.threadId} replay stopped at ${nextCursor}/${cursor}.`);
|
|
@@ -141,7 +141,7 @@ class ThreadUiAdapterV1 {
|
|
|
141
141
|
}
|
|
142
142
|
replayInitialHistory() {
|
|
143
143
|
while (this.cursorValue < this.initialReplayTarget) {
|
|
144
|
-
const replay = this.runtime.replay(this.cursorValue);
|
|
144
|
+
const replay = this.runtime.replay(this.cursorValue, undefined, 'ui_initial_history');
|
|
145
145
|
const events = replay.events.filter(event => event.seq <= this.initialReplayTarget);
|
|
146
146
|
if (events.length === 0) {
|
|
147
147
|
throw new ThreadUiAdapterError(`Thread replay stalled at cursor ${this.cursorValue} before ${this.initialReplayTarget}.`);
|
|
@@ -157,7 +157,7 @@ class ThreadUiAdapterV1 {
|
|
|
157
157
|
throw new ThreadUiAdapterError(`Replay cursor ${fromCursor} differs from projected cursor ${this.cursorValue}.`);
|
|
158
158
|
}
|
|
159
159
|
while (true) {
|
|
160
|
-
const replay = this.runtime.replay(this.cursorValue);
|
|
160
|
+
const replay = this.runtime.replay(this.cursorValue, undefined, 'ui_gap_recovery');
|
|
161
161
|
for (const event of replay.events) {
|
|
162
162
|
this.project(event);
|
|
163
163
|
this.cursorValue = event.seq;
|
|
@@ -380,7 +380,14 @@ class ThreadUiAdapterV1 {
|
|
|
380
380
|
if (isToolItem(presentation.kind)) {
|
|
381
381
|
const durableReceiptFact = this.toolReceiptFacts.get(presentation.itemId);
|
|
382
382
|
let receipt;
|
|
383
|
-
|
|
383
|
+
const hasTerminalReceipt = terminal.receipt !== undefined;
|
|
384
|
+
const hasDurableReceiptFact = durableReceiptFact !== undefined;
|
|
385
|
+
if (hasTerminalReceipt !== hasDurableReceiptFact) {
|
|
386
|
+
throw new ThreadUiAdapterError(hasTerminalReceipt
|
|
387
|
+
? `Tool item ${presentation.itemId} has a canonical receipt without its durable receipt fact.`
|
|
388
|
+
: `Tool item ${presentation.itemId} has a durable receipt fact without its canonical terminal receipt.`);
|
|
389
|
+
}
|
|
390
|
+
if (hasTerminalReceipt && durableReceiptFact) {
|
|
384
391
|
try {
|
|
385
392
|
receipt = (0, tool_receipt_validator_1.validateDurableToolInvocationReceiptV1)({
|
|
386
393
|
terminalEvent: event,
|
|
@@ -43,7 +43,7 @@ class ThreadTurnCommitJournalV1 {
|
|
|
43
43
|
const receiptEvents = [];
|
|
44
44
|
let cursor = 0;
|
|
45
45
|
while (true) {
|
|
46
|
-
const page = this.store.replay(cursor);
|
|
46
|
+
const page = this.store.replay(cursor, undefined, 'turn_commit_journal');
|
|
47
47
|
receiptEvents.push(...page.events.filter(event => event.turnId === input.turnId));
|
|
48
48
|
if (!page.hasMore)
|
|
49
49
|
break;
|
|
@@ -3,6 +3,7 @@ import type { LoopContinuationAction, LoopStats } from '../framework/query';
|
|
|
3
3
|
import type { LLMService } from '../services/llm';
|
|
4
4
|
import type { CompactCoordinator } from '../services/compact';
|
|
5
5
|
import type { ModelCoordinator } from './model-coordinator';
|
|
6
|
+
import type { SessionComposerControlServiceV1 } from './session-composer-control';
|
|
6
7
|
import type { OrionCodeCLIConfig } from '../services/config';
|
|
7
8
|
import type { SessionMeta, SessionTraceEvent } from '../services/session-storage';
|
|
8
9
|
import type { RuntimeSubtaskEvent } from './subagents/types';
|
|
@@ -15,6 +16,7 @@ import type { EffortLevel, EffortPreference, EffortScope } from '../services/eff
|
|
|
15
16
|
import type { AgentRuntimeRunnerV1 } from './agent-runtime-runner';
|
|
16
17
|
import type { FirstPartyApprovalHandlerV1 } from './first-party-tool-services';
|
|
17
18
|
import type { OrionRuntimeDiagnosticsV1 } from './orion-runtime-v1';
|
|
19
|
+
import type { WorkspaceRuntimeKernelV1 } from './workspace-runtime-kernel';
|
|
18
20
|
import type { SettingsCoordinatorV1, SettingsDocumentViewV1, SettingsOperationV1, SettingsUpdateResultV1 } from '../services/settings-coordinator';
|
|
19
21
|
/** Re-export so the runtime event protocol can reference subtask events. */
|
|
20
22
|
export type { RuntimeSubtaskEvent } from './subagents/types';
|
|
@@ -232,9 +234,11 @@ export interface FollowupQueueItem {
|
|
|
232
234
|
id: string;
|
|
233
235
|
text: string;
|
|
234
236
|
queuedAt: number;
|
|
237
|
+
/** Monotonic item-local CAS token for edit, move, and remove mutations. */
|
|
238
|
+
revision: number;
|
|
235
239
|
}
|
|
236
240
|
export interface FollowupQueueSnapshot {
|
|
237
|
-
items: FollowupQueueItem[];
|
|
241
|
+
items: readonly FollowupQueueItem[];
|
|
238
242
|
limit: number;
|
|
239
243
|
}
|
|
240
244
|
export type RuntimeLoopStats = LoopStats;
|
|
@@ -276,6 +280,10 @@ export interface OrionCodeUiRuntime extends RuntimeSessionAccessors {
|
|
|
276
280
|
llm: LLMService | null;
|
|
277
281
|
compactCoordinator?: CompactCoordinator;
|
|
278
282
|
modelCoordinator?: ModelCoordinator;
|
|
283
|
+
/** Sole Session-scoped mode/model/effort/permission control authority. */
|
|
284
|
+
sessionComposerControls?: SessionComposerControlServiceV1;
|
|
285
|
+
/** Workspace-scoped services shared by Web Session actors. */
|
|
286
|
+
workspaceRuntimeKernel?: WorkspaceRuntimeKernelV1;
|
|
279
287
|
/** Creates the sole product runner after a renderer-neutral event sink exists. */
|
|
280
288
|
createAgentRunner?: (events: UiEventSink, options: {
|
|
281
289
|
readonly approvalHandler: FirstPartyApprovalHandlerV1;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { OrionCodeCLIConfig } from '../services/config';
|
|
2
|
+
import { ProviderRequestGate, ProviderResilienceCoordinator } from '../services/provider-resilience';
|
|
3
|
+
import { SettingsCoordinatorV1, type SettingsInvalidationV1, type SettingsUpdateContextV1 } from '../services/settings-coordinator';
|
|
4
|
+
import type { ProductionFirstPartyToolUniverseV1 } from './first-party-tool-universe';
|
|
5
|
+
import type { FirstPartyMcpAdapterV1 } from './mcp';
|
|
6
|
+
import type { FilesystemSkillProviderV1 } from './skills';
|
|
7
|
+
export interface WorkspaceSettingsRuntimeParticipantV1 {
|
|
8
|
+
readonly runtimeIdle: () => boolean;
|
|
9
|
+
readonly runtimePrepare: (context: Omit<SettingsUpdateContextV1, 'document'>) => void | Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Apply one committed Settings document and return an exact in-memory
|
|
12
|
+
* compensation. The kernel invokes compensations in reverse order when a
|
|
13
|
+
* later participant rejects, before the coordinator restores durable bytes.
|
|
14
|
+
*/
|
|
15
|
+
readonly runtimeApply: (context: SettingsUpdateContextV1) => void | (() => void | Promise<void>) | Promise<void | (() => void | Promise<void>)>;
|
|
16
|
+
}
|
|
17
|
+
export interface WorkspaceRuntimeKernelOptionsV1 {
|
|
18
|
+
readonly cwd: string;
|
|
19
|
+
readonly config: OrionCodeCLIConfig;
|
|
20
|
+
readonly toolUniverse: ProductionFirstPartyToolUniverseV1;
|
|
21
|
+
readonly skillProvider: FilesystemSkillProviderV1;
|
|
22
|
+
readonly mcpAdapter: FirstPartyMcpAdapterV1;
|
|
23
|
+
readonly onSettingsInvalidated?: (event: SettingsInvalidationV1) => void;
|
|
24
|
+
readonly providerRequestGate?: ProviderRequestGate;
|
|
25
|
+
readonly providerResilience?: ProviderResilienceCoordinator;
|
|
26
|
+
}
|
|
27
|
+
export interface WorkspaceRuntimeKernelDiagnosticsV1 {
|
|
28
|
+
readonly participantCount: number;
|
|
29
|
+
readonly ownerReleased: boolean;
|
|
30
|
+
readonly closed: boolean;
|
|
31
|
+
readonly providerGate: ReturnType<ProviderRequestGate['snapshot']>;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Workspace-owned services shared by every Web Session actor.
|
|
35
|
+
*
|
|
36
|
+
* Session runtimes still own mutable Store/LLM/Thread/controller state. This
|
|
37
|
+
* kernel owns only workspace-scoped, concurrency-safe resources: the parsed
|
|
38
|
+
* model/client configuration, static Tool and MCP descriptors, the filesystem
|
|
39
|
+
* Skill provider, one Settings coordinator/watcher, and one provider request
|
|
40
|
+
* gate/cooldown domain.
|
|
41
|
+
*/
|
|
42
|
+
export declare class WorkspaceRuntimeKernelV1 {
|
|
43
|
+
readonly version: 1;
|
|
44
|
+
readonly cwd: string;
|
|
45
|
+
readonly toolUniverse: ProductionFirstPartyToolUniverseV1;
|
|
46
|
+
readonly skillProvider: FilesystemSkillProviderV1;
|
|
47
|
+
readonly mcpAdapter: FirstPartyMcpAdapterV1;
|
|
48
|
+
readonly providerRequestGate: ProviderRequestGate;
|
|
49
|
+
readonly providerResilience: ProviderResilienceCoordinator;
|
|
50
|
+
readonly settingsCoordinator: SettingsCoordinatorV1;
|
|
51
|
+
private readonly configSnapshot;
|
|
52
|
+
private readonly participants;
|
|
53
|
+
private ownerReleasedValue;
|
|
54
|
+
private closedValue;
|
|
55
|
+
constructor(options: WorkspaceRuntimeKernelOptionsV1);
|
|
56
|
+
createRuntimeConfig(): OrionCodeCLIConfig;
|
|
57
|
+
registerSettingsRuntime(participant: WorkspaceSettingsRuntimeParticipantV1): () => void;
|
|
58
|
+
runtimeIdle(): boolean;
|
|
59
|
+
diagnostics(): WorkspaceRuntimeKernelDiagnosticsV1;
|
|
60
|
+
/** Release the sole workspace owner; final close waits for actor teardown. */
|
|
61
|
+
releaseOwner(): void;
|
|
62
|
+
private prepareParticipants;
|
|
63
|
+
private applyParticipants;
|
|
64
|
+
private closeWhenUnowned;
|
|
65
|
+
private assertOpen;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=workspace-runtime-kernel.d.ts.map
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkspaceRuntimeKernelV1 = void 0;
|
|
4
|
+
const path_1 = require("path");
|
|
5
|
+
const provider_resilience_1 = require("../services/provider-resilience");
|
|
6
|
+
const settings_coordinator_1 = require("../services/settings-coordinator");
|
|
7
|
+
/**
|
|
8
|
+
* Workspace-owned services shared by every Web Session actor.
|
|
9
|
+
*
|
|
10
|
+
* Session runtimes still own mutable Store/LLM/Thread/controller state. This
|
|
11
|
+
* kernel owns only workspace-scoped, concurrency-safe resources: the parsed
|
|
12
|
+
* model/client configuration, static Tool and MCP descriptors, the filesystem
|
|
13
|
+
* Skill provider, one Settings coordinator/watcher, and one provider request
|
|
14
|
+
* gate/cooldown domain.
|
|
15
|
+
*/
|
|
16
|
+
class WorkspaceRuntimeKernelV1 {
|
|
17
|
+
constructor(options) {
|
|
18
|
+
this.version = 1;
|
|
19
|
+
this.participants = new Set();
|
|
20
|
+
this.ownerReleasedValue = false;
|
|
21
|
+
this.closedValue = false;
|
|
22
|
+
// The composition root owns canonical workspace identity. Resolving
|
|
23
|
+
// lexical segments here is safe; realpath re-keying (/var -> /private/var
|
|
24
|
+
// on macOS) would diverge from the durable project Settings key.
|
|
25
|
+
this.cwd = (0, path_1.resolve)(options.cwd);
|
|
26
|
+
this.configSnapshot = cloneRuntimeConfig(options.config);
|
|
27
|
+
this.toolUniverse = options.toolUniverse;
|
|
28
|
+
this.skillProvider = options.skillProvider;
|
|
29
|
+
this.mcpAdapter = options.mcpAdapter;
|
|
30
|
+
this.providerRequestGate = options.providerRequestGate ?? new provider_resilience_1.ProviderRequestGate();
|
|
31
|
+
this.providerResilience =
|
|
32
|
+
options.providerResilience ??
|
|
33
|
+
new provider_resilience_1.ProviderResilienceCoordinator(undefined, this.providerRequestGate);
|
|
34
|
+
this.settingsCoordinator = settings_coordinator_1.SettingsCoordinatorV1.create({
|
|
35
|
+
workspace: this.cwd,
|
|
36
|
+
onInvalidated: options.onSettingsInvalidated,
|
|
37
|
+
models: options.config.modelRegistry?.enabledProfiles.map(profile => ({
|
|
38
|
+
id: profile.id,
|
|
39
|
+
label: profile.displayName ?? profile.id,
|
|
40
|
+
provider: profile.provider,
|
|
41
|
+
})),
|
|
42
|
+
internalDefaultModel: 'gpt-4o',
|
|
43
|
+
modelDefaultEffort: 'auto',
|
|
44
|
+
internalToolConfirmation: 'allow',
|
|
45
|
+
runtimeIdle: () => this.runtimeIdle(),
|
|
46
|
+
runtimePrepare: context => this.prepareParticipants(context),
|
|
47
|
+
runtimeApply: context => this.applyParticipants(context),
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
createRuntimeConfig() {
|
|
51
|
+
this.assertOpen();
|
|
52
|
+
return cloneRuntimeConfig(this.configSnapshot);
|
|
53
|
+
}
|
|
54
|
+
registerSettingsRuntime(participant) {
|
|
55
|
+
this.assertOpen();
|
|
56
|
+
if (this.ownerReleasedValue) {
|
|
57
|
+
throw new Error('Workspace Runtime kernel owner has already been released.');
|
|
58
|
+
}
|
|
59
|
+
this.participants.add(participant);
|
|
60
|
+
let disposed = false;
|
|
61
|
+
return () => {
|
|
62
|
+
if (disposed)
|
|
63
|
+
return;
|
|
64
|
+
disposed = true;
|
|
65
|
+
this.participants.delete(participant);
|
|
66
|
+
this.closeWhenUnowned();
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
runtimeIdle() {
|
|
70
|
+
for (const participant of this.participants) {
|
|
71
|
+
if (!participant.runtimeIdle())
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
diagnostics() {
|
|
77
|
+
return Object.freeze({
|
|
78
|
+
participantCount: this.participants.size,
|
|
79
|
+
ownerReleased: this.ownerReleasedValue,
|
|
80
|
+
closed: this.closedValue,
|
|
81
|
+
providerGate: Object.freeze({ ...this.providerRequestGate.snapshot() }),
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/** Release the sole workspace owner; final close waits for actor teardown. */
|
|
85
|
+
releaseOwner() {
|
|
86
|
+
if (this.ownerReleasedValue)
|
|
87
|
+
return;
|
|
88
|
+
this.ownerReleasedValue = true;
|
|
89
|
+
this.closeWhenUnowned();
|
|
90
|
+
}
|
|
91
|
+
async prepareParticipants(context) {
|
|
92
|
+
for (const participant of [...this.participants]) {
|
|
93
|
+
await participant.runtimePrepare(context);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
async applyParticipants(context) {
|
|
97
|
+
const compensations = [];
|
|
98
|
+
try {
|
|
99
|
+
for (const participant of [...this.participants]) {
|
|
100
|
+
const compensate = await participant.runtimeApply(context);
|
|
101
|
+
if (typeof compensate === 'function')
|
|
102
|
+
compensations.push(compensate);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
let compensationFailed = false;
|
|
107
|
+
for (const compensate of compensations.reverse()) {
|
|
108
|
+
try {
|
|
109
|
+
await compensate();
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
compensationFailed = true;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
if (compensationFailed) {
|
|
116
|
+
throw new settings_coordinator_1.SettingsCoordinatorError(503, 'settings_recovery_required', 'One or more Session runtimes could not restore their previous Settings state.');
|
|
117
|
+
}
|
|
118
|
+
throw error;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
closeWhenUnowned() {
|
|
122
|
+
if (this.closedValue || !this.ownerReleasedValue || this.participants.size > 0) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
this.closedValue = true;
|
|
126
|
+
this.settingsCoordinator.close();
|
|
127
|
+
}
|
|
128
|
+
assertOpen() {
|
|
129
|
+
if (this.closedValue)
|
|
130
|
+
throw new Error('Workspace Runtime kernel is closed.');
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
exports.WorkspaceRuntimeKernelV1 = WorkspaceRuntimeKernelV1;
|
|
134
|
+
function cloneRuntimeConfig(config) {
|
|
135
|
+
return {
|
|
136
|
+
...config,
|
|
137
|
+
...(config.ui ? { ui: { ...config.ui } } : {}),
|
|
138
|
+
...(config.skills
|
|
139
|
+
? {
|
|
140
|
+
skills: {
|
|
141
|
+
...config.skills,
|
|
142
|
+
...(config.skills.paths ? { paths: [...config.skills.paths] } : {}),
|
|
143
|
+
},
|
|
144
|
+
}
|
|
145
|
+
: {}),
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=workspace-runtime-kernel.js.map
|
|
@@ -33,7 +33,9 @@ export interface ProjectConfig {
|
|
|
33
33
|
/** How to handle tool permission checks that request interactive confirmation. */
|
|
34
34
|
export type ToolConfirmationPolicy = 'ask' | 'allow' | 'deny';
|
|
35
35
|
/** Browser appearance preferences persisted in the canonical global document. */
|
|
36
|
+
export type WebUiStylePreferenceV1 = 'classic' | 'orion-blocksmith';
|
|
36
37
|
export interface WebAppearanceConfigV1 {
|
|
38
|
+
style?: WebUiStylePreferenceV1;
|
|
37
39
|
theme?: 'system' | 'light' | 'dark';
|
|
38
40
|
motion?: 'system' | 'reduced';
|
|
39
41
|
}
|
|
@@ -165,7 +165,10 @@ function validateGlobalConfigDocumentStrict(value) {
|
|
|
165
165
|
if (value.web.appearance !== undefined) {
|
|
166
166
|
if (!isRecord(value.web.appearance))
|
|
167
167
|
invalidField('web.appearance');
|
|
168
|
-
const { theme, motion } = value.web.appearance;
|
|
168
|
+
const { style, theme, motion } = value.web.appearance;
|
|
169
|
+
if (style !== undefined && style !== 'classic' && style !== 'orion-blocksmith') {
|
|
170
|
+
invalidField('web.appearance.style');
|
|
171
|
+
}
|
|
169
172
|
if (theme !== undefined && theme !== 'system' && theme !== 'light' && theme !== 'dark') {
|
|
170
173
|
invalidField('web.appearance.theme');
|
|
171
174
|
}
|
|
@@ -442,6 +445,9 @@ function sanitizeWebConfig(value) {
|
|
|
442
445
|
const sanitized = { ...raw };
|
|
443
446
|
if (raw.appearance && typeof raw.appearance === 'object' && !Array.isArray(raw.appearance)) {
|
|
444
447
|
const appearance = { ...raw.appearance };
|
|
448
|
+
if (appearance.style !== 'classic' && appearance.style !== 'orion-blocksmith') {
|
|
449
|
+
delete appearance.style;
|
|
450
|
+
}
|
|
445
451
|
if (appearance.theme !== 'system' &&
|
|
446
452
|
appearance.theme !== 'light' &&
|
|
447
453
|
appearance.theme !== 'dark') {
|
|
@@ -6,9 +6,11 @@
|
|
|
6
6
|
* through this coordinator.
|
|
7
7
|
*/
|
|
8
8
|
import type { ProviderRequestContext, ProviderRequestDiagnosticsV2, ProviderResilienceConfig, ProviderAttemptReporter } from './types';
|
|
9
|
+
import type { ProviderRequestGate } from './request-gate';
|
|
9
10
|
export declare class ProviderResilienceCoordinator {
|
|
11
|
+
private readonly requestGate?;
|
|
10
12
|
private readonly config;
|
|
11
|
-
constructor(config?: Partial<ProviderResilienceConfig
|
|
13
|
+
constructor(config?: Partial<ProviderResilienceConfig>, requestGate?: ProviderRequestGate | undefined);
|
|
12
14
|
/** Execute a logical request with full retry/fallback/recovery logic. */
|
|
13
15
|
execute<T>(ctx: ProviderRequestContext, transport: (attempt: number, signal?: AbortSignal, model?: string, reporter?: ProviderAttemptReporter) => Promise<{
|
|
14
16
|
response: T;
|
|
@@ -14,7 +14,8 @@ const types_1 = require("./types");
|
|
|
14
14
|
const error_classifier_1 = require("./error-classifier");
|
|
15
15
|
const observability_1 = require("../../utils/observability");
|
|
16
16
|
class ProviderResilienceCoordinator {
|
|
17
|
-
constructor(config) {
|
|
17
|
+
constructor(config, requestGate) {
|
|
18
|
+
this.requestGate = requestGate;
|
|
18
19
|
this.config = { ...types_1.DEFAULT_PROVIDER_RESILIENCE_CONFIG, ...config };
|
|
19
20
|
}
|
|
20
21
|
/** Execute a logical request with full retry/fallback/recovery logic. */
|
|
@@ -51,7 +52,13 @@ class ProviderResilienceCoordinator {
|
|
|
51
52
|
}
|
|
52
53
|
const attemptRecord = this.startAttempt(ctx, attempt, diagnostics, currentModel);
|
|
53
54
|
diagnostics.attempts.push(attemptRecord);
|
|
55
|
+
let gateLease;
|
|
54
56
|
try {
|
|
57
|
+
gateLease = await this.requestGate?.acquire({
|
|
58
|
+
priority: 0,
|
|
59
|
+
providerKey: ctx.providerKey,
|
|
60
|
+
...(ctx.abortSignal ? { abortSignal: ctx.abortSignal } : {}),
|
|
61
|
+
});
|
|
55
62
|
const result = await transport(attempt, ctx.abortSignal, currentModel, this.createAttemptReporter(attemptRecord));
|
|
56
63
|
attemptRecord.outcome = 'succeeded';
|
|
57
64
|
attemptRecord.endedAt = Date.now();
|
|
@@ -73,6 +80,18 @@ class ProviderResilienceCoordinator {
|
|
|
73
80
|
attemptRecord.endedAt = Date.now();
|
|
74
81
|
attemptRecord.outcome = 'failed';
|
|
75
82
|
const classification = (0, error_classifier_1.classifyProviderError)(error, attemptRecord.semanticDeltaSeen);
|
|
83
|
+
if (classification.kind === 'aborted') {
|
|
84
|
+
attemptRecord.outcome = 'aborted';
|
|
85
|
+
attemptRecord.failureKind = 'aborted';
|
|
86
|
+
attemptRecord.retryDisposition = 'fail_fast';
|
|
87
|
+
diagnostics.finalState = 'aborted';
|
|
88
|
+
(0, observability_1.incrementDiagnosticMetric)('provider.failure.aborted');
|
|
89
|
+
(0, observability_1.incrementDiagnosticMetric)('provider.request.aborted');
|
|
90
|
+
throw new ProviderRetryExhaustedError(diagnostics, 'aborted by signal', error);
|
|
91
|
+
}
|
|
92
|
+
if (classification.kind === 'rate_limit' && classification.retryAfterMs) {
|
|
93
|
+
this.requestGate?.enterCooldown(ctx.providerKey, Date.now() + classification.retryAfterMs, `Provider rate limit; retry-after ${classification.retryAfterMs}ms`);
|
|
94
|
+
}
|
|
76
95
|
attemptRecord.failureKind = classification.kind;
|
|
77
96
|
if (attemptRecord.semanticDeltaSeen && !attemptRecord.usage) {
|
|
78
97
|
diagnostics.unknownBilledAttemptCount++;
|
|
@@ -138,6 +157,9 @@ class ProviderResilienceCoordinator {
|
|
|
138
157
|
throw new ProviderRetryExhaustedError(diagnostics, 'provider cooldown active', error);
|
|
139
158
|
}
|
|
140
159
|
}
|
|
160
|
+
finally {
|
|
161
|
+
gateLease?.release();
|
|
162
|
+
}
|
|
141
163
|
}
|
|
142
164
|
diagnostics.finalState = 'retry_exhausted';
|
|
143
165
|
throw new ProviderRetryExhaustedError(diagnostics, `max attempts exhausted: ${String(lastError)}`, lastError);
|
|
@@ -8,6 +8,11 @@
|
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.ProviderRequestGate = void 0;
|
|
11
|
+
function createGateAbortError() {
|
|
12
|
+
const error = new Error('Provider request gate acquisition aborted.');
|
|
13
|
+
error.name = 'AbortError';
|
|
14
|
+
return error;
|
|
15
|
+
}
|
|
11
16
|
class ProviderRequestGate {
|
|
12
17
|
constructor(options = {}) {
|
|
13
18
|
this.activeCount = 0;
|
|
@@ -26,7 +31,7 @@ class ProviderRequestGate {
|
|
|
26
31
|
*/
|
|
27
32
|
acquire(request) {
|
|
28
33
|
if (request.abortSignal?.aborted) {
|
|
29
|
-
return Promise.reject(
|
|
34
|
+
return Promise.reject(createGateAbortError());
|
|
30
35
|
}
|
|
31
36
|
return new Promise((resolve, reject) => {
|
|
32
37
|
const waiter = { request, resolve, reject };
|
|
@@ -35,7 +40,7 @@ class ProviderRequestGate {
|
|
|
35
40
|
const idx = this.waiters.indexOf(waiter);
|
|
36
41
|
if (idx >= 0) {
|
|
37
42
|
this.waiters.splice(idx, 1);
|
|
38
|
-
reject(
|
|
43
|
+
reject(createGateAbortError());
|
|
39
44
|
this.tryDispatch();
|
|
40
45
|
}
|
|
41
46
|
request.abortSignal?.removeEventListener('abort', onAbort);
|
|
@@ -13,6 +13,10 @@ exports.redactTraceText = redactTraceText;
|
|
|
13
13
|
* table-driven test is what stops the next format from silently leaking.
|
|
14
14
|
*/
|
|
15
15
|
const SECRET_PATTERNS = [
|
|
16
|
+
// Redact URL userinfo before generic `token:` / `secret:` rules can consume
|
|
17
|
+
// only the password tail and make the complete credential boundary
|
|
18
|
+
// unrecognizable (issue #234).
|
|
19
|
+
[/\b([a-z][a-z0-9+.-]*:\/\/)[^\s/@]+@/gi, '$1[REDACTED_CREDENTIAL]@'],
|
|
16
20
|
[
|
|
17
21
|
/\b((?:GH_TOKEN|GITHUB_TOKEN|AWS_ACCESS_KEY_ID|AWS_SECRET_ACCESS_KEY|AWS_SESSION_TOKEN)\s*=\s*)(["']?)[^\s"',;]+/gi,
|
|
18
22
|
'$1$2[REDACTED_SECRET]',
|
|
@@ -46,7 +50,6 @@ const SECRET_PATTERNS = [
|
|
|
46
50
|
/(["'](?:token|client[_-]?secret|private[_-]?key|secret[_-]?key|signing[_-]?key|encryption[_-]?key|session[_-]?key|db[_-]?password|credential[_-]?value|account[_-]?key|connection[_-]?string|database[_-]?url|dsn|pwd|auth)["']\s*:\s*)(["'])(?:[^"']+)(["'])/gi,
|
|
47
51
|
'$1$2[REDACTED_SECRET]$3',
|
|
48
52
|
],
|
|
49
|
-
[/\b([a-z][a-z0-9+.-]*:\/\/)[^\s/:@]+:[^\s/@]+@/gi, '$1[REDACTED_CREDENTIAL]@'],
|
|
50
53
|
[
|
|
51
54
|
/\b((?:OPENAI_API_KEY|DASHSCOPE_API_KEY|ANTHROPIC_API_KEY|XAI_API_KEY)\s*=\s*)(["']?)[^\s"',;]+/g,
|
|
52
55
|
'$1$2[REDACTED_SECRET]',
|
|
@@ -121,6 +124,20 @@ function isSensitiveFilePath(path) {
|
|
|
121
124
|
});
|
|
122
125
|
}
|
|
123
126
|
function redactTraceText(text) {
|
|
124
|
-
|
|
127
|
+
const labelRedacted = SECRET_PATTERNS.reduce((current, [pattern, replacement]) => current.replace(pattern, replacement), text);
|
|
128
|
+
return redactStructuredSecretFields(labelRedacted);
|
|
129
|
+
}
|
|
130
|
+
function redactStructuredSecretFields(text) {
|
|
131
|
+
const doubleQuoted = text.replace(/("((?:\\.|[^"\\])*)"\s*:\s*)"(?:\\.|[^"\\])*"/gu, (match, prefix, encodedKey) => {
|
|
132
|
+
let key = encodedKey;
|
|
133
|
+
try {
|
|
134
|
+
key = JSON.parse(`"${encodedKey}"`);
|
|
135
|
+
}
|
|
136
|
+
catch {
|
|
137
|
+
// Keep the literal key for JSON-like diagnostic output.
|
|
138
|
+
}
|
|
139
|
+
return isSensitiveFieldName(key) ? `${prefix}"[REDACTED_SECRET]"` : match;
|
|
140
|
+
});
|
|
141
|
+
return doubleQuoted.replace(/('((?:\\.|[^'\\])*)'\s*:\s*)'(?:\\.|[^'\\])*'/gu, (match, prefix, key) => isSensitiveFieldName(key) ? `${prefix}'[REDACTED_SECRET]'` : match);
|
|
125
142
|
}
|
|
126
143
|
//# sourceMappingURL=redaction.js.map
|
|
@@ -9,6 +9,7 @@ import type { StopDecision } from '../framework/stop-decision';
|
|
|
9
9
|
import type { Message } from './llm';
|
|
10
10
|
import type { ContextUsageSnapshot } from './model-context';
|
|
11
11
|
import type { EffortPreference } from './effort';
|
|
12
|
+
import type { ToolConfirmationPolicy } from './global-config';
|
|
12
13
|
import { type ThreadSessionRuntimeActivationV1 } from '../runtime/thread-session-view';
|
|
13
14
|
import type { SessionHistoryRecoveryDiagnosticV1, SessionHistoryResolvedSourceV1 } from '../runtime/session-history-recovery';
|
|
14
15
|
import { type ContextCapsule, type HarnessState, type PromptSectionManifestEntry } from '../harness';
|
|
@@ -94,6 +95,8 @@ export interface SessionMeta {
|
|
|
94
95
|
activeGoalObjective?: string;
|
|
95
96
|
/** Session-level reasoning effort preference; absent means inherit project/global/model. */
|
|
96
97
|
effortPreference?: EffortPreference;
|
|
98
|
+
/** Session-level tool confirmation override; absent means inherit the Project default. */
|
|
99
|
+
toolConfirmationOverride?: ToolConfirmationPolicy;
|
|
97
100
|
}
|
|
98
101
|
export interface CompactCheckpointV1 {
|
|
99
102
|
version: 1;
|
|
@@ -422,6 +425,33 @@ export declare function createSession(projectPath: string, model: string): Sessi
|
|
|
422
425
|
*/
|
|
423
426
|
export declare function saveSessionMeta(session: SessionMeta): void;
|
|
424
427
|
export declare function updateSessionEffort(sessionId: string, effortPreference: EffortPreference | undefined): SessionMeta | null;
|
|
428
|
+
export interface SessionComposerPreferencesV1 {
|
|
429
|
+
readonly model: string;
|
|
430
|
+
readonly effortPreference?: EffortPreference;
|
|
431
|
+
readonly toolConfirmationOverride?: ToolConfirmationPolicy;
|
|
432
|
+
}
|
|
433
|
+
export interface SessionComposerPreferencesPatchV1 {
|
|
434
|
+
readonly expected?: SessionComposerPreferencesV1;
|
|
435
|
+
readonly model?: string;
|
|
436
|
+
readonly effort?: {
|
|
437
|
+
readonly value: EffortPreference | undefined;
|
|
438
|
+
};
|
|
439
|
+
readonly permission?: {
|
|
440
|
+
readonly value: ToolConfirmationPolicy | undefined;
|
|
441
|
+
};
|
|
442
|
+
}
|
|
443
|
+
export declare class SessionComposerPreferencesConflictError extends Error {
|
|
444
|
+
readonly code = "ORION_SESSION_COMPOSER_CONFLICT";
|
|
445
|
+
constructor(message?: string);
|
|
446
|
+
}
|
|
447
|
+
/**
|
|
448
|
+
* Atomically update all Session-scoped Composer preferences under the metadata lock.
|
|
449
|
+
*
|
|
450
|
+
* The optional expected projection prevents Web and slash-command writers from
|
|
451
|
+
* replacing a newer model, effort, or permission override with a stale snapshot.
|
|
452
|
+
*/
|
|
453
|
+
export declare function updateSessionComposerPreferences(sessionId: string, patch: SessionComposerPreferencesPatchV1): SessionMeta | null;
|
|
454
|
+
export declare function projectSessionComposerPreferences(session: SessionMeta): SessionComposerPreferencesV1;
|
|
425
455
|
/** Persist the model selected for one Session without replacing unrelated metadata. */
|
|
426
456
|
export declare function updateSessionModel(sessionId: string, model: string): SessionMeta | null;
|
|
427
457
|
export interface SessionThreadReadModelV1 {
|
|
@@ -579,6 +609,12 @@ export declare function loadSessionRestoreBundle(sessionId: string): SessionRest
|
|
|
579
609
|
* 列出所有会话
|
|
580
610
|
*/
|
|
581
611
|
export declare function listSessions(limit?: number): SessionMeta[];
|
|
612
|
+
/**
|
|
613
|
+
* Count catalogued Sessions by their canonical project identity without
|
|
614
|
+
* sorting or touching every project directory. This is the lightweight read
|
|
615
|
+
* model used by project pickers and other collection summaries.
|
|
616
|
+
*/
|
|
617
|
+
export declare function countSessionsByProject(): ReadonlyMap<string, number>;
|
|
582
618
|
/**
|
|
583
619
|
* List sessions for a single canonical project.
|
|
584
620
|
*/
|