@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
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* 参考 OpenClaude 的 history.jsonl 和 sessions/ 目录。
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.SESSION_SIDECAR_SUFFIXES = exports.redactTraceText = void 0;
|
|
9
|
+
exports.SessionComposerPreferencesConflictError = exports.SESSION_SIDECAR_SUFFIXES = exports.redactTraceText = void 0;
|
|
10
10
|
exports.resolveProjectPath = resolveProjectPath;
|
|
11
11
|
exports.getProjectKey = getProjectKey;
|
|
12
12
|
exports.isSessionMetaFile = isSessionMetaFile;
|
|
@@ -15,6 +15,8 @@ exports.advanceSessionCompactSourceReceipt = advanceSessionCompactSourceReceipt;
|
|
|
15
15
|
exports.createSession = createSession;
|
|
16
16
|
exports.saveSessionMeta = saveSessionMeta;
|
|
17
17
|
exports.updateSessionEffort = updateSessionEffort;
|
|
18
|
+
exports.updateSessionComposerPreferences = updateSessionComposerPreferences;
|
|
19
|
+
exports.projectSessionComposerPreferences = projectSessionComposerPreferences;
|
|
18
20
|
exports.updateSessionModel = updateSessionModel;
|
|
19
21
|
exports.updateSessionThreadReadModel = updateSessionThreadReadModel;
|
|
20
22
|
exports.loadSessionMeta = loadSessionMeta;
|
|
@@ -50,6 +52,7 @@ exports.loadSessionHistory = loadSessionHistory;
|
|
|
50
52
|
exports.loadSessionHistoryWithDiagnostics = loadSessionHistoryWithDiagnostics;
|
|
51
53
|
exports.loadSessionRestoreBundle = loadSessionRestoreBundle;
|
|
52
54
|
exports.listSessions = listSessions;
|
|
55
|
+
exports.countSessionsByProject = countSessionsByProject;
|
|
53
56
|
exports.listProjectSessions = listProjectSessions;
|
|
54
57
|
exports.findSession = findSession;
|
|
55
58
|
exports.lookupSessionRef = lookupSessionRef;
|
|
@@ -1022,6 +1025,67 @@ function updateSessionEffort(sessionId, effortPreference) {
|
|
|
1022
1025
|
}
|
|
1023
1026
|
});
|
|
1024
1027
|
}
|
|
1028
|
+
class SessionComposerPreferencesConflictError extends Error {
|
|
1029
|
+
constructor(message = 'Session Composer preferences changed before the mutation was committed.') {
|
|
1030
|
+
super(message);
|
|
1031
|
+
this.code = 'ORION_SESSION_COMPOSER_CONFLICT';
|
|
1032
|
+
this.name = 'SessionComposerPreferencesConflictError';
|
|
1033
|
+
}
|
|
1034
|
+
}
|
|
1035
|
+
exports.SessionComposerPreferencesConflictError = SessionComposerPreferencesConflictError;
|
|
1036
|
+
/**
|
|
1037
|
+
* Atomically update all Session-scoped Composer preferences under the metadata lock.
|
|
1038
|
+
*
|
|
1039
|
+
* The optional expected projection prevents Web and slash-command writers from
|
|
1040
|
+
* replacing a newer model, effort, or permission override with a stale snapshot.
|
|
1041
|
+
*/
|
|
1042
|
+
function updateSessionComposerPreferences(sessionId, patch) {
|
|
1043
|
+
const normalizedModel = patch.model?.trim();
|
|
1044
|
+
if (patch.model !== undefined && !normalizedModel) {
|
|
1045
|
+
throw new Error('Session model must not be empty.');
|
|
1046
|
+
}
|
|
1047
|
+
return withLockedSession(sessionId, session => {
|
|
1048
|
+
if (patch.expected && !sameComposerPreferences(session, patch.expected)) {
|
|
1049
|
+
throw new SessionComposerPreferencesConflictError();
|
|
1050
|
+
}
|
|
1051
|
+
if (normalizedModel !== undefined)
|
|
1052
|
+
session.model = normalizedModel;
|
|
1053
|
+
if (patch.effort) {
|
|
1054
|
+
if (patch.effort.value === undefined || patch.effort.value === 'auto') {
|
|
1055
|
+
delete session.effortPreference;
|
|
1056
|
+
}
|
|
1057
|
+
else {
|
|
1058
|
+
session.effortPreference = patch.effort.value;
|
|
1059
|
+
}
|
|
1060
|
+
}
|
|
1061
|
+
if (patch.permission) {
|
|
1062
|
+
if (patch.permission.value === undefined)
|
|
1063
|
+
delete session.toolConfirmationOverride;
|
|
1064
|
+
else
|
|
1065
|
+
session.toolConfirmationOverride = patch.permission.value;
|
|
1066
|
+
}
|
|
1067
|
+
session.updatedAt = Date.now();
|
|
1068
|
+
session.updatedAtIso = new Date(session.updatedAt).toISOString();
|
|
1069
|
+
writeSessionMetaUnlocked(session);
|
|
1070
|
+
return session;
|
|
1071
|
+
});
|
|
1072
|
+
}
|
|
1073
|
+
function projectSessionComposerPreferences(session) {
|
|
1074
|
+
return Object.freeze({
|
|
1075
|
+
model: session.model,
|
|
1076
|
+
...(session.effortPreference === undefined
|
|
1077
|
+
? {}
|
|
1078
|
+
: { effortPreference: session.effortPreference }),
|
|
1079
|
+
...(session.toolConfirmationOverride === undefined
|
|
1080
|
+
? {}
|
|
1081
|
+
: { toolConfirmationOverride: session.toolConfirmationOverride }),
|
|
1082
|
+
});
|
|
1083
|
+
}
|
|
1084
|
+
function sameComposerPreferences(session, expected) {
|
|
1085
|
+
return (session.model === expected.model &&
|
|
1086
|
+
session.effortPreference === expected.effortPreference &&
|
|
1087
|
+
session.toolConfirmationOverride === expected.toolConfirmationOverride);
|
|
1088
|
+
}
|
|
1025
1089
|
/** Persist the model selected for one Session without replacing unrelated metadata. */
|
|
1026
1090
|
function updateSessionModel(sessionId, model) {
|
|
1027
1091
|
const normalizedModel = model.trim();
|
|
@@ -2157,6 +2221,18 @@ function listSessions(limit) {
|
|
|
2157
2221
|
const sessions = sortSessionsNewestFirst(Object.values(loadOrRebuildSessionCatalog().sessions));
|
|
2158
2222
|
return limit ? sessions.slice(0, limit) : sessions;
|
|
2159
2223
|
}
|
|
2224
|
+
/**
|
|
2225
|
+
* Count catalogued Sessions by their canonical project identity without
|
|
2226
|
+
* sorting or touching every project directory. This is the lightweight read
|
|
2227
|
+
* model used by project pickers and other collection summaries.
|
|
2228
|
+
*/
|
|
2229
|
+
function countSessionsByProject() {
|
|
2230
|
+
const counts = new Map();
|
|
2231
|
+
for (const session of Object.values(loadOrRebuildSessionCatalog().sessions)) {
|
|
2232
|
+
counts.set(session.projectPath, (counts.get(session.projectPath) ?? 0) + 1);
|
|
2233
|
+
}
|
|
2234
|
+
return counts;
|
|
2235
|
+
}
|
|
2160
2236
|
/**
|
|
2161
2237
|
* List sessions for a single canonical project.
|
|
2162
2238
|
*/
|
|
@@ -9,6 +9,7 @@ export type SettingsAppliesV1 = 'live' | 'next-logical-request' | 'new-session'
|
|
|
9
9
|
export type SettingsStateV1 = 'ready' | 'invalid' | 'read-only' | 'unavailable';
|
|
10
10
|
export type SettingsThemeV1 = 'system' | 'light' | 'dark';
|
|
11
11
|
export type SettingsMotionV1 = 'system' | 'reduced';
|
|
12
|
+
export type SettingsUiStyleV1 = 'classic' | 'orion-blocksmith';
|
|
12
13
|
export interface SettingsFieldViewV1<T> {
|
|
13
14
|
readonly effectiveValue: T;
|
|
14
15
|
readonly explicitValue?: T;
|
|
@@ -38,7 +39,7 @@ export interface SettingsCurrentSessionV1 {
|
|
|
38
39
|
}
|
|
39
40
|
/** Secret-free settings description suitable for direct Web protocol projection. */
|
|
40
41
|
export interface SettingsDocumentViewV1 {
|
|
41
|
-
readonly schemaVersion:
|
|
42
|
+
readonly schemaVersion: 2;
|
|
42
43
|
readonly revision: string;
|
|
43
44
|
readonly state: SettingsStateV1;
|
|
44
45
|
readonly writable: boolean;
|
|
@@ -46,6 +47,7 @@ export interface SettingsDocumentViewV1 {
|
|
|
46
47
|
readonly workspace: string;
|
|
47
48
|
readonly sections: {
|
|
48
49
|
readonly appearance: {
|
|
50
|
+
readonly style: SettingsFieldViewV1<SettingsUiStyleV1>;
|
|
49
51
|
readonly theme: SettingsFieldViewV1<SettingsThemeV1>;
|
|
50
52
|
readonly motion: SettingsFieldViewV1<SettingsMotionV1>;
|
|
51
53
|
};
|
|
@@ -51,6 +51,9 @@ function controlledState(snapshot, workspace) {
|
|
|
51
51
|
const appearance = getRecord(getRecord(document, 'web'), 'appearance');
|
|
52
52
|
const project = getRecord(getRecord(document, 'projects'), workspace);
|
|
53
53
|
return Object.freeze({
|
|
54
|
+
...(getString(appearance, 'style')
|
|
55
|
+
? { style: getString(appearance, 'style') }
|
|
56
|
+
: {}),
|
|
54
57
|
...(getString(appearance, 'theme')
|
|
55
58
|
? { theme: getString(appearance, 'theme') }
|
|
56
59
|
: {}),
|
|
@@ -75,6 +78,11 @@ function controlledState(snapshot, workspace) {
|
|
|
75
78
|
}
|
|
76
79
|
function controlledDiff(before, after) {
|
|
77
80
|
const operations = [];
|
|
81
|
+
if (before.style !== after.style) {
|
|
82
|
+
operations.push(after.style
|
|
83
|
+
? { op: 'set', key: 'appearance.style', value: after.style }
|
|
84
|
+
: { op: 'unset', key: 'appearance.style' });
|
|
85
|
+
}
|
|
78
86
|
if (before.theme !== after.theme) {
|
|
79
87
|
operations.push(after.theme
|
|
80
88
|
? { op: 'set', key: 'appearance.theme', value: after.theme }
|
|
@@ -270,6 +278,7 @@ class SettingsCoordinatorV1 {
|
|
|
270
278
|
const appearance = getRecord(web, 'appearance');
|
|
271
279
|
const projects = getRecord(document, 'projects');
|
|
272
280
|
const project = getRecord(projects, this.workspace);
|
|
281
|
+
const explicitStyle = getString(appearance, 'style');
|
|
273
282
|
const explicitTheme = getString(appearance, 'theme');
|
|
274
283
|
const explicitMotion = getString(appearance, 'motion');
|
|
275
284
|
const explicitModel = getString(document, 'defaultModel');
|
|
@@ -306,7 +315,7 @@ class SettingsCoordinatorV1 {
|
|
|
306
315
|
})
|
|
307
316
|
: snapshot.diagnostic;
|
|
308
317
|
return deepFreeze({
|
|
309
|
-
schemaVersion:
|
|
318
|
+
schemaVersion: 2,
|
|
310
319
|
revision: snapshot.revision,
|
|
311
320
|
state,
|
|
312
321
|
writable: storageWritable,
|
|
@@ -314,6 +323,18 @@ class SettingsCoordinatorV1 {
|
|
|
314
323
|
workspace: this.workspace,
|
|
315
324
|
sections: {
|
|
316
325
|
appearance: {
|
|
326
|
+
style: {
|
|
327
|
+
effectiveValue: explicitStyle ?? 'orion-blocksmith',
|
|
328
|
+
...(explicitStyle
|
|
329
|
+
? { explicitValue: explicitStyle }
|
|
330
|
+
: { inheritedValue: 'orion-blocksmith' }),
|
|
331
|
+
source: explicitStyle ? 'global' : 'internal',
|
|
332
|
+
scope: 'global',
|
|
333
|
+
applies: 'live',
|
|
334
|
+
overridden: false,
|
|
335
|
+
writable: storageWritable,
|
|
336
|
+
...(generalBlocked ? { blockedReason: generalBlocked } : {}),
|
|
337
|
+
},
|
|
317
338
|
theme: {
|
|
318
339
|
effectiveValue: explicitTheme ?? 'system',
|
|
319
340
|
...(explicitTheme
|
|
@@ -532,19 +553,30 @@ class SettingsCoordinatorV1 {
|
|
|
532
553
|
const apply = input.runtimeApply ?? this.runtimeApply;
|
|
533
554
|
await apply?.({ before, document, operations: input.operations });
|
|
534
555
|
}
|
|
535
|
-
catch {
|
|
556
|
+
catch (applyError) {
|
|
557
|
+
let restored;
|
|
536
558
|
try {
|
|
537
|
-
|
|
538
|
-
this.emitInvalidation({
|
|
539
|
-
revision: restored.revision,
|
|
540
|
-
reason: 'local-write',
|
|
541
|
-
state: 'ready',
|
|
542
|
-
});
|
|
559
|
+
restored = this.repository.rollback(persisted.rollbackToken);
|
|
543
560
|
}
|
|
544
561
|
catch {
|
|
545
562
|
this.recoveryRequired = true;
|
|
546
563
|
throw new SettingsCoordinatorError(503, 'settings_recovery_required', 'The durable settings write could not be reconciled with the runtime.');
|
|
547
564
|
}
|
|
565
|
+
if (applyError instanceof SettingsCoordinatorError &&
|
|
566
|
+
applyError.code === 'settings_recovery_required') {
|
|
567
|
+
this.recoveryRequired = true;
|
|
568
|
+
this.emitInvalidation({
|
|
569
|
+
revision: restored.revision,
|
|
570
|
+
reason: 'local-write',
|
|
571
|
+
state: 'invalid',
|
|
572
|
+
});
|
|
573
|
+
throw applyError;
|
|
574
|
+
}
|
|
575
|
+
this.emitInvalidation({
|
|
576
|
+
revision: restored.revision,
|
|
577
|
+
reason: 'local-write',
|
|
578
|
+
state: 'ready',
|
|
579
|
+
});
|
|
548
580
|
throw new SettingsCoordinatorError(422, 'settings_rejected', 'The runtime rejected the settings update; the document was restored.');
|
|
549
581
|
}
|
|
550
582
|
this.lastAppliedSnapshot = persisted.snapshot;
|
|
@@ -8,8 +8,15 @@ import { type GlobalConfigDocument } from './global-config';
|
|
|
8
8
|
import { type EffortPreference } from './effort';
|
|
9
9
|
export declare const SETTINGS_REVISION_KEY_FILE = ".orion-settings-revision.key";
|
|
10
10
|
export declare const SETTINGS_REVISION_PREFIX = "hmac-sha256:";
|
|
11
|
-
export type SettingsKeyV1 = 'appearance.theme' | 'appearance.motion' | 'defaults.model' | 'defaults.effort' | 'defaults.globalEffort' | 'permissions.toolConfirmation';
|
|
11
|
+
export type SettingsKeyV1 = 'appearance.style' | 'appearance.theme' | 'appearance.motion' | 'defaults.model' | 'defaults.effort' | 'defaults.globalEffort' | 'permissions.toolConfirmation';
|
|
12
12
|
export type SettingsOperationV1 = {
|
|
13
|
+
readonly op: 'set';
|
|
14
|
+
readonly key: 'appearance.style';
|
|
15
|
+
readonly value: 'classic' | 'orion-blocksmith';
|
|
16
|
+
} | {
|
|
17
|
+
readonly op: 'unset';
|
|
18
|
+
readonly key: 'appearance.style';
|
|
19
|
+
} | {
|
|
13
20
|
readonly op: 'set';
|
|
14
21
|
readonly key: 'appearance.theme';
|
|
15
22
|
readonly value: 'system' | 'light' | 'dark';
|
|
@@ -82,7 +82,8 @@ function validateSettingsOperationsV1(operations) {
|
|
|
82
82
|
if (!isRecord(operation) || (operation.op !== 'set' && operation.op !== 'unset')) {
|
|
83
83
|
invalidOperation();
|
|
84
84
|
}
|
|
85
|
-
if (operation.key !== 'appearance.
|
|
85
|
+
if (operation.key !== 'appearance.style' &&
|
|
86
|
+
operation.key !== 'appearance.theme' &&
|
|
86
87
|
operation.key !== 'appearance.motion' &&
|
|
87
88
|
operation.key !== 'defaults.model' &&
|
|
88
89
|
operation.key !== 'defaults.effort' &&
|
|
@@ -99,6 +100,11 @@ function validateSettingsOperationsV1(operations) {
|
|
|
99
100
|
continue;
|
|
100
101
|
}
|
|
101
102
|
switch (operation.key) {
|
|
103
|
+
case 'appearance.style':
|
|
104
|
+
if (operation.value !== 'classic' && operation.value !== 'orion-blocksmith') {
|
|
105
|
+
invalidOperation();
|
|
106
|
+
}
|
|
107
|
+
break;
|
|
102
108
|
case 'appearance.theme':
|
|
103
109
|
if (operation.value !== 'system' &&
|
|
104
110
|
operation.value !== 'light' &&
|
|
@@ -139,6 +145,21 @@ function applyOperations(source, workspace, operations) {
|
|
|
139
145
|
const candidate = cloneDocument(source);
|
|
140
146
|
for (const operation of operations) {
|
|
141
147
|
switch (operation.key) {
|
|
148
|
+
case 'appearance.style': {
|
|
149
|
+
if (operation.op === 'set') {
|
|
150
|
+
const web = isRecord(candidate.web) ? candidate.web : {};
|
|
151
|
+
const appearance = isRecord(web.appearance) ? web.appearance : {};
|
|
152
|
+
appearance.style = operation.value;
|
|
153
|
+
web.appearance = appearance;
|
|
154
|
+
candidate.web = web;
|
|
155
|
+
}
|
|
156
|
+
else if (isRecord(candidate.web) && isRecord(candidate.web.appearance)) {
|
|
157
|
+
delete candidate.web.appearance.style;
|
|
158
|
+
pruneEmptyObject(candidate.web, 'appearance');
|
|
159
|
+
pruneEmptyObject(candidate, 'web');
|
|
160
|
+
}
|
|
161
|
+
break;
|
|
162
|
+
}
|
|
142
163
|
case 'appearance.theme': {
|
|
143
164
|
if (operation.op === 'set') {
|
|
144
165
|
const web = isRecord(candidate.web) ? candidate.web : {};
|
|
@@ -15,7 +15,9 @@ function renderTranscriptInspectorFrame(view, options) {
|
|
|
15
15
|
const width = frame.width;
|
|
16
16
|
const height = frame.height;
|
|
17
17
|
(0, frame_1.writeFrameText)(frame, 0, 0, ' Orion Code Tool Inspector', theme.heading);
|
|
18
|
-
const search = view.searchQuery
|
|
18
|
+
const search = view.searchQuery
|
|
19
|
+
? `search: ${sanitizeInlineIdentifier(view.searchQuery)}`
|
|
20
|
+
: `${view.entries.length} tools`;
|
|
19
21
|
(0, frame_1.writeFrameText)(frame, 1, 1, search, theme.toolMeta);
|
|
20
22
|
if (width < 60) {
|
|
21
23
|
const listRows = Math.max(2, Math.min(6, Math.floor((height - 4) / 3)));
|
|
@@ -43,10 +45,12 @@ function renderList(frame, view, top, maxRows, width, theme) {
|
|
|
43
45
|
const entry = view.entries[index];
|
|
44
46
|
const selected = index === view.selectedIndex;
|
|
45
47
|
const marker = entry.state === 'success' ? '✓' : entry.state === 'error' ? '✗' : '-';
|
|
46
|
-
const text = `${selected ? '›' : ' '} ${marker} #${entry.sequence} ${entry.toolName}`;
|
|
48
|
+
const text = `${selected ? '›' : ' '} ${marker} #${entry.sequence} ${sanitizeInlineIdentifier(entry.toolName)}`;
|
|
47
49
|
(0, frame_1.writeFrameText)(frame, top + row, 0, truncateWidth(text, Math.max(1, width - 1)), selected
|
|
48
50
|
? { ...theme.toolName, inverse: true }
|
|
49
|
-
: entry.state === 'error'
|
|
51
|
+
: entry.state === 'error'
|
|
52
|
+
? theme.toolError
|
|
53
|
+
: theme.toolMeta);
|
|
50
54
|
}
|
|
51
55
|
}
|
|
52
56
|
function renderDetail(frame, view, top, maxRows, left, width, theme) {
|
|
@@ -55,17 +59,17 @@ function renderDetail(frame, view, top, maxRows, left, width, theme) {
|
|
|
55
59
|
const entry = view.selected;
|
|
56
60
|
if (!entry)
|
|
57
61
|
return;
|
|
58
|
-
const heading = ` ${entry.toolName} · ${formatBytes(entry.outputBytes)}${entry.artifactId ? '' : ' · legacy'}`;
|
|
62
|
+
const heading = ` ${sanitizeInlineIdentifier(entry.toolName)} · ${formatBytes(entry.outputBytes)}${entry.artifactId ? '' : ' · legacy'}`;
|
|
59
63
|
(0, frame_1.writeFrameText)(frame, top, left, heading, theme.toolName);
|
|
60
64
|
const expanded = view.expandedCallIds.includes(entry.callId);
|
|
61
65
|
const detail = view.detail;
|
|
62
66
|
const body = !expanded
|
|
63
|
-
? entry.summary ?? 'Press Enter to expand detail.'
|
|
67
|
+
? (entry.summary ?? 'Press Enter to expand detail.')
|
|
64
68
|
: detail?.loading
|
|
65
69
|
? 'Loading detail...'
|
|
66
70
|
: detail?.error
|
|
67
71
|
? `Detail error: ${detail.error}`
|
|
68
|
-
: detail?.content ?? entry.summary ?? 'Press Enter to load detail.';
|
|
72
|
+
: (detail?.content ?? entry.summary ?? 'Press Enter to load detail.');
|
|
69
73
|
const lines = (0, style_1.sanitizeTerminalText)(body).split('\n');
|
|
70
74
|
const detailOffset = expanded ? Math.max(0, view.detailOffset) : 0;
|
|
71
75
|
for (let index = 0; index < maxRows - 1 && detailOffset + index < lines.length; index += 1) {
|
|
@@ -82,6 +86,9 @@ function formatBytes(bytes) {
|
|
|
82
86
|
return `${(bytes / 1024).toFixed(1)} KB`;
|
|
83
87
|
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
84
88
|
}
|
|
89
|
+
function sanitizeInlineIdentifier(value) {
|
|
90
|
+
return (0, style_1.sanitizeTerminalText)(value, 2).replace(/\s+/gu, ' ').trim();
|
|
91
|
+
}
|
|
85
92
|
function truncateWidth(value, maxWidth) {
|
|
86
93
|
let output = '';
|
|
87
94
|
let width = 0;
|
package/dist/web/event-hub.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export declare class WebEventHub {
|
|
|
18
18
|
private nextCursor;
|
|
19
19
|
private retainedBytes;
|
|
20
20
|
private discardedDurableThrough;
|
|
21
|
+
private replayResetCount;
|
|
21
22
|
constructor(options?: WebEventHubOptions);
|
|
22
23
|
emitRuntime(event: AgentRuntimeEvent, context?: {
|
|
23
24
|
readonly sessionId?: string;
|
|
@@ -35,6 +36,7 @@ export declare class WebEventHub {
|
|
|
35
36
|
readonly earliest: number;
|
|
36
37
|
readonly latest: number;
|
|
37
38
|
readonly retained: number;
|
|
39
|
+
readonly replayResets: number;
|
|
38
40
|
};
|
|
39
41
|
private trim;
|
|
40
42
|
private compactRuntimeEvent;
|
package/dist/web/event-hub.js
CHANGED
|
@@ -31,12 +31,16 @@ class WebEventHub {
|
|
|
31
31
|
this.nextCursor = 1;
|
|
32
32
|
this.retainedBytes = 0;
|
|
33
33
|
this.discardedDurableThrough = 0;
|
|
34
|
+
this.replayResetCount = 0;
|
|
34
35
|
this.maxEvents = positiveInteger(options.maxEvents ?? DEFAULT_MAX_EVENTS, 'maxEvents');
|
|
35
36
|
this.maxBytes = positiveInteger(options.maxBytes ?? DEFAULT_MAX_BYTES, 'maxBytes');
|
|
36
37
|
this.now = options.now ?? Date.now;
|
|
37
38
|
}
|
|
38
39
|
emitRuntime(event, context = {}) {
|
|
39
|
-
return this.emit({
|
|
40
|
+
return this.emit({
|
|
41
|
+
type: 'runtime_event',
|
|
42
|
+
value: this.compactRuntimeEvent(sanitizeRuntimeEvent(event), context.sessionId),
|
|
43
|
+
}, isDurableRuntimeEvent(event), context);
|
|
40
44
|
}
|
|
41
45
|
emitThread(event, sessionId) {
|
|
42
46
|
return this.emit({ type: 'thread_event', value: sanitizeThreadEvent(event) }, true, {
|
|
@@ -73,6 +77,7 @@ class WebEventHub {
|
|
|
73
77
|
attach(response, cursor) {
|
|
74
78
|
const latest = this.nextCursor - 1;
|
|
75
79
|
if (cursor > latest || cursor < this.discardedDurableThrough) {
|
|
80
|
+
this.replayResetCount += 1;
|
|
76
81
|
const reset = {
|
|
77
82
|
apiVersion: protocol_1.WEB_API_VERSION,
|
|
78
83
|
eventId: (0, crypto_1.randomUUID)(),
|
|
@@ -117,6 +122,7 @@ class WebEventHub {
|
|
|
117
122
|
earliest: this.retained[0]?.envelope.cursor ?? this.nextCursor,
|
|
118
123
|
latest: this.nextCursor - 1,
|
|
119
124
|
retained: this.retained.length,
|
|
125
|
+
replayResets: this.replayResetCount,
|
|
120
126
|
});
|
|
121
127
|
}
|
|
122
128
|
trim() {
|
|
@@ -128,11 +134,12 @@ class WebEventHub {
|
|
|
128
134
|
this.discardedDurableThrough = Math.max(this.discardedDurableThrough, removed.envelope.cursor);
|
|
129
135
|
}
|
|
130
136
|
}
|
|
131
|
-
compactRuntimeEvent(event) {
|
|
137
|
+
compactRuntimeEvent(event, sessionId) {
|
|
132
138
|
if (event.type === 'transcript_update' && typeof event.patch.content === 'string') {
|
|
133
139
|
const content = event.patch.content;
|
|
134
|
-
const
|
|
135
|
-
this.
|
|
140
|
+
const key = transcriptContentKey(sessionId, event.id);
|
|
141
|
+
const previous = this.transcriptContents.get(key);
|
|
142
|
+
this.rememberTranscriptContent(key, content);
|
|
136
143
|
if (previous !== undefined && content.startsWith(previous)) {
|
|
137
144
|
const patch = { ...event.patch };
|
|
138
145
|
delete patch.content;
|
|
@@ -146,10 +153,14 @@ class WebEventHub {
|
|
|
146
153
|
return event;
|
|
147
154
|
}
|
|
148
155
|
if (event.type === 'transcript_finalize' || event.type === 'transcript_remove') {
|
|
149
|
-
this.transcriptContents.delete(event.id);
|
|
156
|
+
this.transcriptContents.delete(transcriptContentKey(sessionId, event.id));
|
|
150
157
|
}
|
|
151
158
|
else if (event.type === 'transcript_clear' || event.type === 'transcript_replace') {
|
|
152
|
-
|
|
159
|
+
const prefix = transcriptSessionPrefix(sessionId);
|
|
160
|
+
for (const key of this.transcriptContents.keys()) {
|
|
161
|
+
if (key.startsWith(prefix))
|
|
162
|
+
this.transcriptContents.delete(key);
|
|
163
|
+
}
|
|
153
164
|
}
|
|
154
165
|
return event;
|
|
155
166
|
}
|
|
@@ -165,6 +176,12 @@ class WebEventHub {
|
|
|
165
176
|
}
|
|
166
177
|
}
|
|
167
178
|
exports.WebEventHub = WebEventHub;
|
|
179
|
+
function transcriptSessionPrefix(sessionId) {
|
|
180
|
+
return `${sessionId ?? '<surface>'}\u0000`;
|
|
181
|
+
}
|
|
182
|
+
function transcriptContentKey(sessionId, id) {
|
|
183
|
+
return `${transcriptSessionPrefix(sessionId)}${id}`;
|
|
184
|
+
}
|
|
168
185
|
function toEnvelope(base, event) {
|
|
169
186
|
switch (event.type) {
|
|
170
187
|
case 'runtime_event':
|
|
@@ -222,6 +239,36 @@ function toEnvelope(base, event) {
|
|
|
222
239
|
reason: event.reason,
|
|
223
240
|
},
|
|
224
241
|
};
|
|
242
|
+
case 'composer_state_changed':
|
|
243
|
+
if (!base.sessionId)
|
|
244
|
+
throw new Error('Composer state events require Session identity');
|
|
245
|
+
return {
|
|
246
|
+
...base,
|
|
247
|
+
sessionId: base.sessionId,
|
|
248
|
+
durable: true,
|
|
249
|
+
type: event.type,
|
|
250
|
+
payload: { state: event.state },
|
|
251
|
+
};
|
|
252
|
+
case 'session_runtime_changed':
|
|
253
|
+
if (!base.sessionId)
|
|
254
|
+
throw new Error('Session Runtime events require Session identity');
|
|
255
|
+
return {
|
|
256
|
+
...base,
|
|
257
|
+
sessionId: base.sessionId,
|
|
258
|
+
durable: true,
|
|
259
|
+
type: event.type,
|
|
260
|
+
payload: { runtime: event.runtime },
|
|
261
|
+
};
|
|
262
|
+
case 'workspace_mutation_changed':
|
|
263
|
+
if (!base.sessionId)
|
|
264
|
+
throw new Error('Workspace mutation events require Session identity');
|
|
265
|
+
return {
|
|
266
|
+
...base,
|
|
267
|
+
sessionId: base.sessionId,
|
|
268
|
+
durable: false,
|
|
269
|
+
type: event.type,
|
|
270
|
+
payload: { state: event.state },
|
|
271
|
+
};
|
|
225
272
|
case 'replay_reset':
|
|
226
273
|
return {
|
|
227
274
|
...base,
|
|
@@ -2,7 +2,11 @@ export type WebFileKindV1 = 'file' | 'directory' | 'symlink';
|
|
|
2
2
|
export interface WebFileNodeV1 {
|
|
3
3
|
readonly id: string;
|
|
4
4
|
readonly name: string;
|
|
5
|
+
/** Sanitized Workspace-relative display path. Requests must continue to use the opaque id. */
|
|
6
|
+
readonly displayPath: string;
|
|
5
7
|
readonly kind: WebFileKindV1;
|
|
8
|
+
/** Effective target kind for a readable symbolic link. */
|
|
9
|
+
readonly targetKind?: 'file' | 'directory';
|
|
6
10
|
readonly sizeBytes?: number;
|
|
7
11
|
readonly modifiedAt: string;
|
|
8
12
|
readonly sensitive: boolean;
|
|
@@ -26,14 +30,21 @@ export interface WebFileContentPageV1 {
|
|
|
26
30
|
readonly content?: string;
|
|
27
31
|
readonly nextCursor: string | null;
|
|
28
32
|
}
|
|
33
|
+
export interface WebFileReadPerformanceCountersV1 {
|
|
34
|
+
readonly readOperations: number;
|
|
35
|
+
readonly bytesRead: number;
|
|
36
|
+
readonly itemsParsed: number;
|
|
37
|
+
}
|
|
29
38
|
/** Safe, lazy, read-only projection of one active Workspace filesystem. */
|
|
30
39
|
export declare class FileReadServiceV1 {
|
|
31
40
|
private readonly root;
|
|
32
41
|
private readonly secret;
|
|
33
42
|
private readonly pathById;
|
|
34
43
|
private readonly idByPath;
|
|
44
|
+
private readonly performance;
|
|
35
45
|
constructor(workspace: string);
|
|
36
46
|
get rootId(): string;
|
|
47
|
+
performanceCounters(): WebFileReadPerformanceCountersV1;
|
|
37
48
|
identifyRelativePath(relativePath: string): string;
|
|
38
49
|
list(input?: {
|
|
39
50
|
readonly parentId?: string;
|