@evalops/maestro 0.10.50 → 0.10.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -3
- package/dist/agent/agent-outcome.d.ts +54 -0
- package/dist/agent/agent-outcome.d.ts.map +1 -0
- package/dist/agent/agent-outcome.js +142 -0
- package/dist/agent/agent-outcome.js.map +1 -0
- package/dist/agent/agent-resume.d.ts.map +1 -1
- package/dist/agent/agent-resume.js +3 -3
- package/dist/agent/agent-resume.js.map +1 -1
- package/dist/agent/agent-run-summary.d.ts +37 -0
- package/dist/agent/agent-run-summary.d.ts.map +1 -0
- package/dist/agent/agent-run-summary.js +15 -0
- package/dist/agent/agent-run-summary.js.map +1 -0
- package/dist/agent/agent-work-board.d.ts +82 -0
- package/dist/agent/agent-work-board.d.ts.map +1 -0
- package/dist/agent/agent-work-board.js +312 -0
- package/dist/agent/agent-work-board.js.map +1 -0
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/auto-compaction.d.ts +7 -2
- package/dist/agent/auto-compaction.d.ts.map +1 -1
- package/dist/agent/auto-compaction.js +23 -10
- package/dist/agent/auto-compaction.js.map +1 -1
- package/dist/agent/compaction.d.ts.map +1 -1
- package/dist/agent/compaction.js +1 -1
- package/dist/agent/compaction.js.map +1 -1
- package/dist/agent/context-handoff.d.ts.map +1 -1
- package/dist/agent/context-handoff.js +2 -1
- package/dist/agent/context-handoff.js.map +1 -1
- package/dist/agent/index.d.ts +8 -1
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +8 -1
- package/dist/agent/index.js.map +1 -1
- package/dist/agent/mission-artifacts.d.ts +62 -0
- package/dist/agent/mission-artifacts.d.ts.map +1 -0
- package/dist/agent/mission-artifacts.js +438 -0
- package/dist/agent/mission-artifacts.js.map +1 -0
- package/dist/agent/mission-manifest.d.ts +139 -3
- package/dist/agent/mission-manifest.d.ts.map +1 -1
- package/dist/agent/mission-manifest.js +549 -3
- package/dist/agent/mission-manifest.js.map +1 -1
- package/dist/agent/mission-store.d.ts +80 -0
- package/dist/agent/mission-store.d.ts.map +1 -0
- package/dist/agent/mission-store.js +603 -0
- package/dist/agent/mission-store.js.map +1 -0
- package/dist/agent/modes.d.ts +3 -3
- package/dist/agent/modes.d.ts.map +1 -1
- package/dist/agent/modes.js +66 -3
- package/dist/agent/modes.js.map +1 -1
- package/dist/agent/oracle-consultation-policy.d.ts +22 -0
- package/dist/agent/oracle-consultation-policy.d.ts.map +1 -0
- package/dist/agent/oracle-consultation-policy.js +72 -0
- package/dist/agent/oracle-consultation-policy.js.map +1 -0
- package/dist/agent/oracle-policy-experiment.d.ts +27 -0
- package/dist/agent/oracle-policy-experiment.d.ts.map +1 -0
- package/dist/agent/oracle-policy-experiment.js +59 -0
- package/dist/agent/oracle-policy-experiment.js.map +1 -0
- package/dist/agent/oracle-policy-rollout.d.ts +42 -0
- package/dist/agent/oracle-policy-rollout.d.ts.map +1 -0
- package/dist/agent/oracle-policy-rollout.js +80 -0
- package/dist/agent/oracle-policy-rollout.js.map +1 -0
- package/dist/agent/plugin-agent-api.d.ts +13 -0
- package/dist/agent/plugin-agent-api.d.ts.map +1 -0
- package/dist/agent/plugin-agent-api.js +11 -0
- package/dist/agent/plugin-agent-api.js.map +1 -0
- package/dist/agent/plugin-agent-loader.d.ts +17 -0
- package/dist/agent/plugin-agent-loader.d.ts.map +1 -0
- package/dist/agent/plugin-agent-loader.js +81 -0
- package/dist/agent/plugin-agent-loader.js.map +1 -0
- package/dist/agent/plugin-agent-registry.d.ts +62 -0
- package/dist/agent/plugin-agent-registry.d.ts.map +1 -0
- package/dist/agent/plugin-agent-registry.js +109 -0
- package/dist/agent/plugin-agent-registry.js.map +1 -0
- package/dist/agent/profile-loader.d.ts +7 -0
- package/dist/agent/profile-loader.d.ts.map +1 -0
- package/dist/agent/profile-loader.js +115 -0
- package/dist/agent/profile-loader.js.map +1 -0
- package/dist/agent/profiles.d.ts +30 -0
- package/dist/agent/profiles.d.ts.map +1 -0
- package/dist/agent/profiles.js +146 -0
- package/dist/agent/profiles.js.map +1 -0
- package/dist/agent/prompt-cache.d.ts +0 -4
- package/dist/agent/prompt-cache.d.ts.map +1 -1
- package/dist/agent/prompt-cache.js +1 -7
- package/dist/agent/prompt-cache.js.map +1 -1
- package/dist/agent/providers/codex-app-server.d.ts.map +1 -1
- package/dist/agent/providers/codex-app-server.js +1 -3
- package/dist/agent/providers/codex-app-server.js.map +1 -1
- package/dist/agent/providers/google-gemini-cli.js +204 -107
- package/dist/agent/providers/google.js +101 -41
- package/dist/agent/providers/scripted.d.ts.map +1 -1
- package/dist/agent/providers/scripted.js +1 -3
- package/dist/agent/providers/scripted.js.map +1 -1
- package/dist/agent/providers/validation.d.ts.map +1 -1
- package/dist/agent/providers/validation.js +1 -3
- package/dist/agent/providers/validation.js.map +1 -1
- package/dist/agent/providers/vertex.js +204 -107
- package/dist/agent/routing-receipt.d.ts +34 -0
- package/dist/agent/routing-receipt.d.ts.map +1 -0
- package/dist/agent/routing-receipt.js +55 -0
- package/dist/agent/routing-receipt.js.map +1 -0
- package/dist/agent/skill-artifact-metadata.d.ts +14 -0
- package/dist/agent/skill-artifact-metadata.d.ts.map +1 -0
- package/dist/agent/skill-artifact-metadata.js +49 -0
- package/dist/agent/skill-artifact-metadata.js.map +1 -0
- package/dist/agent/snapshot-store.d.ts +32 -0
- package/dist/agent/snapshot-store.d.ts.map +1 -0
- package/dist/agent/snapshot-store.js +195 -0
- package/dist/agent/snapshot-store.js.map +1 -0
- package/dist/agent/specialist-profiles.d.ts +36 -0
- package/dist/agent/specialist-profiles.d.ts.map +1 -0
- package/dist/agent/specialist-profiles.js +159 -0
- package/dist/agent/specialist-profiles.js.map +1 -0
- package/dist/agent/subagent-specs.d.ts +5 -2
- package/dist/agent/subagent-specs.d.ts.map +1 -1
- package/dist/agent/subagent-specs.js +83 -10
- package/dist/agent/subagent-specs.js.map +1 -1
- package/dist/agent/swarm/coverage-gate.d.ts +37 -0
- package/dist/agent/swarm/coverage-gate.d.ts.map +1 -0
- package/dist/agent/swarm/coverage-gate.js +48 -0
- package/dist/agent/swarm/coverage-gate.js.map +1 -0
- package/dist/agent/swarm/executor.d.ts +1 -0
- package/dist/agent/swarm/executor.d.ts.map +1 -1
- package/dist/agent/swarm/executor.js +151 -15
- package/dist/agent/swarm/executor.js.map +1 -1
- package/dist/agent/swarm/orchestrator-prompt.d.ts +25 -0
- package/dist/agent/swarm/orchestrator-prompt.d.ts.map +1 -0
- package/dist/agent/swarm/orchestrator-prompt.js +48 -0
- package/dist/agent/swarm/orchestrator-prompt.js.map +1 -0
- package/dist/agent/swarm/plan-parser.d.ts.map +1 -1
- package/dist/agent/swarm/plan-parser.js +27 -2
- package/dist/agent/swarm/plan-parser.js.map +1 -1
- package/dist/agent/swarm/types.d.ts +17 -0
- package/dist/agent/swarm/types.d.ts.map +1 -1
- package/dist/agent/swarm/types.js.map +1 -1
- package/dist/agent/swarm/validation-directive.d.ts +21 -0
- package/dist/agent/swarm/validation-directive.d.ts.map +1 -0
- package/dist/agent/swarm/validation-directive.js +25 -0
- package/dist/agent/swarm/validation-directive.js.map +1 -0
- package/dist/agent/token-counter.d.ts +40 -0
- package/dist/agent/token-counter.d.ts.map +1 -0
- package/dist/agent/token-counter.js +74 -0
- package/dist/agent/token-counter.js.map +1 -0
- package/dist/agent/transport/events.d.ts +1 -1
- package/dist/agent/transport/events.d.ts.map +1 -1
- package/dist/agent/transport/events.js +1 -1
- package/dist/agent/transport/events.js.map +1 -1
- package/dist/agent/transport/tool-execution-bridge.d.ts.map +1 -1
- package/dist/agent/transport/tool-execution-bridge.js +4 -1
- package/dist/agent/transport/tool-execution-bridge.js.map +1 -1
- package/dist/agent/types.d.ts +4 -2
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/api/enterprise-routes.d.ts.map +1 -1
- package/dist/api/enterprise-routes.js +87 -10
- package/dist/api/enterprise-routes.js.map +1 -1
- package/dist/api/org-settings-merge.d.ts +12 -0
- package/dist/api/org-settings-merge.d.ts.map +1 -0
- package/dist/api/org-settings-merge.js +38 -0
- package/dist/api/org-settings-merge.js.map +1 -0
- package/dist/api/user-settings-merge.d.ts +16 -0
- package/dist/api/user-settings-merge.d.ts.map +1 -0
- package/dist/api/user-settings-merge.js +37 -0
- package/dist/api/user-settings-merge.js.map +1 -0
- package/dist/app-server/daemon-lifecycle-api.d.ts.map +1 -1
- package/dist/app-server/daemon-lifecycle-api.js +1 -3
- package/dist/app-server/daemon-lifecycle-api.js.map +1 -1
- package/dist/app-server/external-agent-import-api.d.ts.map +1 -1
- package/dist/app-server/external-agent-import-api.js +1 -3
- package/dist/app-server/external-agent-import-api.js.map +1 -1
- package/dist/app-server/network-governance-api.d.ts.map +1 -1
- package/dist/app-server/network-governance-api.js +1 -3
- package/dist/app-server/network-governance-api.js.map +1 -1
- package/dist/app-server/plugin-bundle-api.d.ts.map +1 -1
- package/dist/app-server/plugin-bundle-api.js +2 -3
- package/dist/app-server/plugin-bundle-api.js.map +1 -1
- package/dist/app-server/policy-control-api.d.ts.map +1 -1
- package/dist/app-server/policy-control-api.js +1 -3
- package/dist/app-server/policy-control-api.js.map +1 -1
- package/dist/app-server/protocol-modes-api.d.ts.map +1 -1
- package/dist/app-server/protocol-modes-api.js +1 -3
- package/dist/app-server/protocol-modes-api.js.map +1 -1
- package/dist/app-server/session-api.d.ts.map +1 -1
- package/dist/app-server/session-api.js +15 -2
- package/dist/app-server/session-api.js.map +1 -1
- package/dist/audit/logger.d.ts +5 -5
- package/dist/cli/args.d.ts +4 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +33 -1
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/commands/a2a.d.ts.map +1 -1
- package/dist/cli/commands/a2a.js +1 -3
- package/dist/cli/commands/a2a.js.map +1 -1
- package/dist/cli/commands/mission.d.ts +4 -0
- package/dist/cli/commands/mission.d.ts.map +1 -0
- package/dist/cli/commands/mission.js +196 -0
- package/dist/cli/commands/mission.js.map +1 -0
- package/dist/cli/commands/value.d.ts +10 -0
- package/dist/cli/commands/value.d.ts.map +1 -0
- package/dist/cli/commands/value.js +33 -0
- package/dist/cli/commands/value.js.map +1 -0
- package/dist/cli/direct-runtime-command.d.ts +1 -0
- package/dist/cli/direct-runtime-command.d.ts.map +1 -1
- package/dist/cli/direct-runtime-command.js +25 -3
- package/dist/cli/direct-runtime-command.js.map +1 -1
- package/dist/cli/headless-protocol.d.ts.map +1 -1
- package/dist/cli/headless-protocol.js +1 -3
- package/dist/cli/headless-protocol.js.map +1 -1
- package/dist/cli/headless.d.ts +3 -19
- package/dist/cli/headless.d.ts.map +1 -1
- package/dist/cli/headless.js +8 -619
- package/dist/cli/headless.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +13 -0
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/native-tui-launcher.d.ts +126 -0
- package/dist/cli/native-tui-launcher.d.ts.map +1 -0
- package/dist/cli/native-tui-launcher.js +425 -0
- package/dist/cli/native-tui-launcher.js.map +1 -0
- package/dist/cli/rpc-mode.d.ts +3 -27
- package/dist/cli/rpc-mode.d.ts.map +1 -1
- package/dist/cli/rpc-mode.js +8 -177
- package/dist/cli/rpc-mode.js.map +1 -1
- package/dist/cli/session.d.ts +11 -19
- package/dist/cli/session.d.ts.map +1 -1
- package/dist/cli/session.js +6 -64
- package/dist/cli/session.js.map +1 -1
- package/dist/cli/system-prompt.d.ts.map +1 -1
- package/dist/cli/system-prompt.js +38 -7
- package/dist/cli/system-prompt.js.map +1 -1
- package/dist/cli-command-runtime.d.ts.map +1 -1
- package/dist/cli-command-runtime.js +26 -24
- package/dist/cli-command-runtime.js.map +1 -1
- package/dist/cli-runtime.js +41729 -121859
- package/dist/codex/app-server-client.d.ts.map +1 -1
- package/dist/codex/app-server-client.js +1 -3
- package/dist/codex/app-server-client.js.map +1 -1
- package/dist/codex/compatibility.d.ts.map +1 -1
- package/dist/codex/compatibility.js +1 -3
- package/dist/codex/compatibility.js.map +1 -1
- package/dist/codex/subagent-dispatch-table.d.ts +8 -0
- package/dist/codex/subagent-dispatch-table.d.ts.map +1 -1
- package/dist/codex/subagent-dispatch-table.js +23 -0
- package/dist/codex/subagent-dispatch-table.js.map +1 -1
- package/dist/config/env-vars.d.ts +12 -0
- package/dist/config/env-vars.d.ts.map +1 -1
- package/dist/config/env-vars.js +12 -0
- package/dist/config/env-vars.js.map +1 -1
- package/dist/config/ui-state.d.ts +32 -0
- package/dist/config/ui-state.d.ts.map +1 -0
- package/dist/config/ui-state.js +88 -0
- package/dist/config/ui-state.js.map +1 -0
- package/dist/context/manifest.d.ts.map +1 -1
- package/dist/context/manifest.js +1 -3
- package/dist/context/manifest.js.map +1 -1
- package/dist/context/repo-map.d.ts.map +1 -1
- package/dist/context/repo-map.js +1 -7
- package/dist/context/repo-map.js.map +1 -1
- package/dist/context/token-optimizer.d.ts.map +1 -1
- package/dist/context/token-optimizer.js +1 -8
- package/dist/context/token-optimizer.js.map +1 -1
- package/dist/conversation/render-model.d.ts +0 -36
- package/dist/conversation/render-model.d.ts.map +1 -1
- package/dist/conversation/render-model.js +1 -3
- package/dist/conversation/render-model.js.map +1 -1
- package/dist/customer-value/ambient-learning.d.ts +75 -0
- package/dist/customer-value/ambient-learning.d.ts.map +1 -0
- package/dist/customer-value/ambient-learning.js +472 -0
- package/dist/customer-value/ambient-learning.js.map +1 -0
- package/dist/customer-value/internal-helpers.d.ts +13 -0
- package/dist/customer-value/internal-helpers.d.ts.map +1 -0
- package/dist/customer-value/internal-helpers.js +70 -0
- package/dist/customer-value/internal-helpers.js.map +1 -0
- package/dist/customer-value/report.d.ts +282 -0
- package/dist/customer-value/report.d.ts.map +1 -0
- package/dist/customer-value/report.js +2085 -0
- package/dist/customer-value/report.js.map +1 -0
- package/dist/db/schema.d.ts +7 -3
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js.map +1 -1
- package/dist/evalops/agent-bootstrap.d.ts.map +1 -1
- package/dist/evalops/agent-bootstrap.js +1 -3
- package/dist/evalops/agent-bootstrap.js.map +1 -1
- package/dist/evalops/agent-mcp-metadata.d.ts.map +1 -1
- package/dist/evalops/agent-mcp-metadata.js +1 -3
- package/dist/evalops/agent-mcp-metadata.js.map +1 -1
- package/dist/hooks/notification-hooks.d.ts +1 -1
- package/dist/hooks/notification-hooks.d.ts.map +1 -1
- package/dist/hooks/notification-hooks.js.map +1 -1
- package/dist/hooks/tui-surface.d.ts +35 -0
- package/dist/hooks/tui-surface.d.ts.map +1 -0
- package/dist/hooks/tui-surface.js +11 -0
- package/dist/hooks/tui-surface.js.map +1 -0
- package/dist/hooks/types.d.ts +2 -1
- package/dist/hooks/types.d.ts.map +1 -1
- package/dist/hooks/types.js.map +1 -1
- package/dist/hooks/typescript-loader.d.ts.map +1 -1
- package/dist/hooks/typescript-loader.js.map +1 -1
- package/dist/hooks/ui-context.d.ts.map +1 -1
- package/dist/hooks/ui-context.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/installers/maestro-review-workflow.d.ts +38 -0
- package/dist/installers/maestro-review-workflow.d.ts.map +1 -0
- package/dist/installers/maestro-review-workflow.js +163 -0
- package/dist/installers/maestro-review-workflow.js.map +1 -0
- package/dist/load-env.d.ts.map +1 -1
- package/dist/load-env.js +2 -1
- package/dist/load-env.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +201 -840
- package/dist/main.js.map +1 -1
- package/dist/mcp/config.d.ts.map +1 -1
- package/dist/mcp/config.js +1 -3
- package/dist/mcp/config.js.map +1 -1
- package/dist/mcp/elicitation.d.ts.map +1 -1
- package/dist/mcp/elicitation.js +1 -3
- package/dist/mcp/elicitation.js.map +1 -1
- package/dist/mcp/official-registry.d.ts.map +1 -1
- package/dist/mcp/official-registry.js +1 -3
- package/dist/mcp/official-registry.js.map +1 -1
- package/dist/mcp/workspace-trust.d.ts.map +1 -1
- package/dist/mcp/workspace-trust.js +1 -3
- package/dist/mcp/workspace-trust.js.map +1 -1
- package/dist/memory/service-client.d.ts.map +1 -1
- package/dist/memory/service-client.js +1 -3
- package/dist/memory/service-client.js.map +1 -1
- package/dist/models/config-loader.d.ts +5 -5
- package/dist/models/config-loader.d.ts.map +1 -1
- package/dist/models/config-loader.js +1 -3
- package/dist/models/config-loader.js.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/index.d.ts +46 -0
- package/dist/node_modules/@evalops/contracts/dist/index.d.ts.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/index.js +3 -0
- package/dist/node_modules/@evalops/contracts/dist/index.js.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts +284 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js +41 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/maestro-settings.d.ts +61 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-settings.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-settings.js +183 -0
- package/dist/node_modules/@evalops/contracts/dist/maestro-settings.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts +986 -0
- package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/schemas.js +49 -0
- package/dist/node_modules/@evalops/contracts/dist/schemas.js.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/token-estimation.d.ts +56 -0
- package/dist/node_modules/@evalops/contracts/dist/token-estimation.d.ts.map +1 -0
- package/dist/node_modules/@evalops/contracts/dist/token-estimation.js +86 -0
- package/dist/node_modules/@evalops/contracts/dist/token-estimation.js.map +1 -0
- package/dist/node_modules/@evalops/contracts/package.json +1 -1
- package/dist/oauth/connectors.d.ts.map +1 -1
- package/dist/oauth/connectors.js +1 -3
- package/dist/oauth/connectors.js.map +1 -1
- package/dist/oauth/evalops.d.ts.map +1 -1
- package/dist/oauth/evalops.js +1 -3
- package/dist/oauth/evalops.js.map +1 -1
- package/dist/packages/discovery.d.ts.map +1 -1
- package/dist/packages/discovery.js +1 -0
- package/dist/packages/discovery.js.map +1 -1
- package/dist/packages/inspection.d.ts.map +1 -1
- package/dist/packages/inspection.js +7 -1
- package/dist/packages/inspection.js.map +1 -1
- package/dist/packages/loader.d.ts.map +1 -1
- package/dist/packages/loader.js +8 -1
- package/dist/packages/loader.js.map +1 -1
- package/dist/packages/runtime.d.ts +1 -0
- package/dist/packages/runtime.d.ts.map +1 -1
- package/dist/packages/runtime.js +9 -1
- package/dist/packages/runtime.js.map +1 -1
- package/dist/packages/types.d.ts +6 -0
- package/dist/packages/types.d.ts.map +1 -1
- package/dist/packages/types.js.map +1 -1
- package/dist/platform/a2a-client.d.ts.map +1 -1
- package/dist/platform/a2a-client.js +1 -3
- package/dist/platform/a2a-client.js.map +1 -1
- package/dist/platform/a2a-cockpit.d.ts +1 -0
- package/dist/platform/a2a-cockpit.d.ts.map +1 -1
- package/dist/platform/a2a-cockpit.js +42 -11
- package/dist/platform/a2a-cockpit.js.map +1 -1
- package/dist/platform/a2a-completion-audit.d.ts +1 -1
- package/dist/platform/a2a-completion-audit.d.ts.map +1 -1
- package/dist/platform/a2a-completion-audit.js +7 -11
- package/dist/platform/a2a-completion-audit.js.map +1 -1
- package/dist/platform/a2a-maestro-peer.js +16 -0
- package/dist/platform/a2a-maestro-peer.js.map +1 -1
- package/dist/platform/a2a-peer-pairing.d.ts.map +1 -1
- package/dist/platform/a2a-peer-pairing.js +1 -3
- package/dist/platform/a2a-peer-pairing.js.map +1 -1
- package/dist/platform/a2a-peer-registry.d.ts.map +1 -1
- package/dist/platform/a2a-peer-registry.js +1 -3
- package/dist/platform/a2a-peer-registry.js.map +1 -1
- package/dist/platform/a2a-task-ledger.d.ts +20 -0
- package/dist/platform/a2a-task-ledger.d.ts.map +1 -1
- package/dist/platform/a2a-task-ledger.js +207 -11
- package/dist/platform/a2a-task-ledger.js.map +1 -1
- package/dist/platform/a2a-work-graph.d.ts.map +1 -1
- package/dist/platform/a2a-work-graph.js +1 -3
- package/dist/platform/a2a-work-graph.js.map +1 -1
- package/dist/platform/operating-layer.d.ts.map +1 -1
- package/dist/platform/operating-layer.js +14 -8
- package/dist/platform/operating-layer.js.map +1 -1
- package/dist/platform/tool-execution-client.d.ts.map +1 -1
- package/dist/platform/tool-execution-client.js +19 -2
- package/dist/platform/tool-execution-client.js.map +1 -1
- package/dist/providers/auth.d.ts.map +1 -1
- package/dist/providers/auth.js +1 -3
- package/dist/providers/auth.js.map +1 -1
- package/dist/runtime/agent-runtime.d.ts +22 -6
- package/dist/runtime/agent-runtime.d.ts.map +1 -1
- package/dist/runtime/agent-runtime.js +1 -1
- package/dist/runtime/agent-runtime.js.map +1 -1
- package/dist/runtime/env.d.ts +10 -1
- package/dist/runtime/env.d.ts.map +1 -1
- package/dist/runtime/env.js +64 -1
- package/dist/runtime/env.js.map +1 -1
- package/dist/runtime/prompt-queue.d.ts.map +1 -0
- package/dist/runtime/prompt-queue.js.map +1 -0
- package/dist/safety/policy.d.ts.map +1 -1
- package/dist/safety/policy.js +1 -4
- package/dist/safety/policy.js.map +1 -1
- package/dist/sandbox/docker-sandbox.d.ts.map +1 -1
- package/dist/sandbox/docker-sandbox.js +6 -1
- package/dist/sandbox/docker-sandbox.js.map +1 -1
- package/dist/server/handlers/chat-ws.d.ts +2 -1
- package/dist/server/handlers/chat-ws.d.ts.map +1 -1
- package/dist/server/handlers/chat-ws.js +150 -5
- package/dist/server/handlers/chat-ws.js.map +1 -1
- package/dist/server/handlers/chat.d.ts.map +1 -1
- package/dist/server/handlers/chat.js +78 -5
- package/dist/server/handlers/chat.js.map +1 -1
- package/dist/server/handlers/hosted-runner-drain.d.ts.map +1 -1
- package/dist/server/handlers/hosted-runner-drain.js +1 -3
- package/dist/server/handlers/hosted-runner-drain.js.map +1 -1
- package/dist/server/handlers/package.d.ts.map +1 -1
- package/dist/server/handlers/package.js +1 -0
- package/dist/server/handlers/package.js.map +1 -1
- package/dist/server/handlers/platform-a2a-push.d.ts.map +1 -1
- package/dist/server/handlers/platform-a2a-push.js +53 -2
- package/dist/server/handlers/platform-a2a-push.js.map +1 -1
- package/dist/server/handlers/queue.js +1 -1
- package/dist/server/handlers/queue.js.map +1 -1
- package/dist/server/handlers/runtime-app-server-ws.d.ts.map +1 -1
- package/dist/server/handlers/runtime-app-server-ws.js +1 -3
- package/dist/server/handlers/runtime-app-server-ws.js.map +1 -1
- package/dist/server/handlers/ui.js +1 -1
- package/dist/server/handlers/ui.js.map +1 -1
- package/dist/server/handlers/zen.js +1 -1
- package/dist/server/handlers/zen.js.map +1 -1
- package/dist/server/headless-runtime-service.d.ts +16 -0
- package/dist/server/headless-runtime-service.d.ts.map +1 -1
- package/dist/server/headless-runtime-service.js +232 -206
- package/dist/server/headless-runtime-service.js.map +1 -1
- package/dist/server/hosted-agent-runtime-progress.d.ts.map +1 -1
- package/dist/server/hosted-agent-runtime-progress.js +12 -3
- package/dist/server/hosted-agent-runtime-progress.js.map +1 -1
- package/dist/server/hosted-session-manager.d.ts +3 -0
- package/dist/server/hosted-session-manager.d.ts.map +1 -1
- package/dist/server/hosted-session-manager.js +26 -0
- package/dist/server/hosted-session-manager.js.map +1 -1
- package/dist/server/model-selection.d.ts +1 -0
- package/dist/server/model-selection.d.ts.map +1 -1
- package/dist/server/model-selection.js +4 -0
- package/dist/server/model-selection.js.map +1 -1
- package/dist/server/pending-request-payload.d.ts.map +1 -1
- package/dist/server/pending-request-payload.js +1 -3
- package/dist/server/pending-request-payload.js.map +1 -1
- package/dist/server/route-auth.d.ts.map +1 -1
- package/dist/server/route-auth.js +2 -0
- package/dist/server/route-auth.js.map +1 -1
- package/dist/server/session-serialization.d.ts.map +1 -1
- package/dist/server/session-serialization.js +4 -3
- package/dist/server/session-serialization.js.map +1 -1
- package/dist/server/session-timeline.d.ts.map +1 -1
- package/dist/server/session-timeline.js +1 -1
- package/dist/server/session-timeline.js.map +1 -1
- package/dist/server/sse-session.d.ts +2 -0
- package/dist/server/sse-session.d.ts.map +1 -1
- package/dist/server/sse-session.js +3 -0
- package/dist/server/sse-session.js.map +1 -1
- package/dist/server/stores/ui-store.d.ts +1 -1
- package/dist/server/stores/ui-store.d.ts.map +1 -1
- package/dist/server/stores/ui-store.js.map +1 -1
- package/dist/server/utils/token-estimator.d.ts +2 -2
- package/dist/server/utils/token-estimator.d.ts.map +1 -1
- package/dist/server/utils/token-estimator.js +2 -12
- package/dist/server/utils/token-estimator.js.map +1 -1
- package/dist/server/validation.d.ts +54 -0
- package/dist/server/validation.d.ts.map +1 -1
- package/dist/services/compliance/normalize.d.ts.map +1 -1
- package/dist/services/compliance/normalize.js +1 -3
- package/dist/services/compliance/normalize.js.map +1 -1
- package/dist/services/image-providers/cost.d.ts +70 -0
- package/dist/services/image-providers/cost.d.ts.map +1 -0
- package/dist/services/image-providers/cost.js +164 -0
- package/dist/services/image-providers/cost.js.map +1 -0
- package/dist/services/image-providers/flux.d.ts +40 -0
- package/dist/services/image-providers/flux.d.ts.map +1 -0
- package/dist/services/image-providers/flux.js +99 -0
- package/dist/services/image-providers/flux.js.map +1 -0
- package/dist/services/image-providers/index.d.ts +24 -0
- package/dist/services/image-providers/index.d.ts.map +1 -0
- package/dist/services/image-providers/index.js +27 -0
- package/dist/services/image-providers/index.js.map +1 -0
- package/dist/services/image-providers/masks.d.ts +51 -0
- package/dist/services/image-providers/masks.d.ts.map +1 -0
- package/dist/services/image-providers/masks.js +132 -0
- package/dist/services/image-providers/masks.js.map +1 -0
- package/dist/services/image-providers/openai.d.ts +35 -0
- package/dist/services/image-providers/openai.d.ts.map +1 -0
- package/dist/services/image-providers/openai.js +93 -0
- package/dist/services/image-providers/openai.js.map +1 -0
- package/dist/services/image-providers/types.d.ts +61 -0
- package/dist/services/image-providers/types.d.ts.map +1 -0
- package/dist/services/image-providers/types.js +17 -0
- package/dist/services/image-providers/types.js.map +1 -0
- package/dist/services/intelligent-router/index.d.ts +1 -0
- package/dist/services/intelligent-router/index.d.ts.map +1 -1
- package/dist/services/intelligent-router/index.js +1 -0
- package/dist/services/intelligent-router/index.js.map +1 -1
- package/dist/services/intelligent-router/normalize.d.ts +1 -0
- package/dist/services/intelligent-router/normalize.d.ts.map +1 -1
- package/dist/services/intelligent-router/normalize.js +18 -3
- package/dist/services/intelligent-router/normalize.js.map +1 -1
- package/dist/services/intelligent-router/outcome.d.ts +19 -0
- package/dist/services/intelligent-router/outcome.d.ts.map +1 -0
- package/dist/services/intelligent-router/outcome.js +51 -0
- package/dist/services/intelligent-router/outcome.js.map +1 -0
- package/dist/services/intelligent-router/recorder.d.ts +2 -0
- package/dist/services/intelligent-router/recorder.d.ts.map +1 -1
- package/dist/services/intelligent-router/recorder.js +72 -1
- package/dist/services/intelligent-router/recorder.js.map +1 -1
- package/dist/services/intelligent-router/service.d.ts +1 -0
- package/dist/services/intelligent-router/service.d.ts.map +1 -1
- package/dist/services/intelligent-router/service.js +60 -11
- package/dist/services/intelligent-router/service.js.map +1 -1
- package/dist/services/intelligent-router/types.d.ts +18 -0
- package/dist/services/intelligent-router/types.d.ts.map +1 -1
- package/dist/services/intelligent-router/types.js.map +1 -1
- package/dist/services/revenue-attribution/normalize.d.ts.map +1 -1
- package/dist/services/revenue-attribution/normalize.js +1 -3
- package/dist/services/revenue-attribution/normalize.js.map +1 -1
- package/dist/services/traces/normalize.d.ts.map +1 -1
- package/dist/services/traces/normalize.js +1 -3
- package/dist/services/traces/normalize.js.map +1 -1
- package/dist/services/workspace-config/middleware.d.ts +2 -0
- package/dist/services/workspace-config/middleware.d.ts.map +1 -1
- package/dist/services/workspace-config/middleware.js +25 -28
- package/dist/services/workspace-config/middleware.js.map +1 -1
- package/dist/services/workspace-config/normalize.d.ts.map +1 -1
- package/dist/services/workspace-config/normalize.js +1 -3
- package/dist/services/workspace-config/normalize.js.map +1 -1
- package/dist/session/agent-lineage-projection.d.ts +30 -0
- package/dist/session/agent-lineage-projection.d.ts.map +1 -0
- package/dist/session/agent-lineage-projection.js +109 -0
- package/dist/session/agent-lineage-projection.js.map +1 -0
- package/dist/session/manager.d.ts +3 -0
- package/dist/session/manager.d.ts.map +1 -1
- package/dist/session/manager.js +24 -0
- package/dist/session/manager.js.map +1 -1
- package/dist/session/session-graph-projection.d.ts +11 -0
- package/dist/session/session-graph-projection.d.ts.map +1 -1
- package/dist/session/session-graph-projection.js +28 -0
- package/dist/session/session-graph-projection.js.map +1 -1
- package/dist/session/types.d.ts +2 -0
- package/dist/session/types.d.ts.map +1 -1
- package/dist/session/types.js.map +1 -1
- package/dist/telemetry/agent-workforce-native-event.d.ts.map +1 -1
- package/dist/telemetry/agent-workforce-native-event.js +1 -3
- package/dist/telemetry/agent-workforce-native-event.js.map +1 -1
- package/dist/telemetry/maestro-event-bus.d.ts +1 -1
- package/dist/telemetry/maestro-event-bus.d.ts.map +1 -1
- package/dist/telemetry/maestro-event-bus.js +42 -81
- package/dist/telemetry/maestro-event-bus.js.map +1 -1
- package/dist/telemetry/maestro-platform-replay-fixture.d.ts.map +1 -1
- package/dist/telemetry/maestro-platform-replay-fixture.js +1 -3
- package/dist/telemetry/maestro-platform-replay-fixture.js.map +1 -1
- package/dist/telemetry/maestro-publisher-conformance-fixture.js.map +1 -1
- package/dist/telemetry/oracle-policy.d.ts +6 -0
- package/dist/telemetry/oracle-policy.d.ts.map +1 -0
- package/dist/telemetry/oracle-policy.js +17 -0
- package/dist/telemetry/oracle-policy.js.map +1 -0
- package/dist/telemetry/wide-events.d.ts +1 -1
- package/dist/telemetry/wide-events.d.ts.map +1 -1
- package/dist/telemetry/wide-events.js.map +1 -1
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +54 -43
- package/dist/telemetry.js.map +1 -1
- package/dist/theme/theme-loader.d.ts.map +1 -1
- package/dist/theme/theme-loader.js +1 -3
- package/dist/theme/theme-loader.js.map +1 -1
- package/dist/theme/theme.d.ts +2 -8
- package/dist/theme/theme.d.ts.map +1 -1
- package/dist/theme/theme.js +7 -0
- package/dist/theme/theme.js.map +1 -1
- package/dist/theme/tui-theme-helpers.d.ts +2 -1
- package/dist/theme/tui-theme-helpers.d.ts.map +1 -1
- package/dist/theme/tui-theme-helpers.js.map +1 -1
- package/dist/theme/tui-theme-types.d.ts +39 -0
- package/dist/theme/tui-theme-types.d.ts.map +1 -0
- package/dist/theme/tui-theme-types.js +10 -0
- package/dist/theme/tui-theme-types.js.map +1 -0
- package/dist/tools/apply-patch.d.ts.map +1 -1
- package/dist/tools/apply-patch.js +76 -8
- package/dist/tools/apply-patch.js.map +1 -1
- package/dist/tools/diff-preview.d.ts.map +1 -1
- package/dist/tools/diff-preview.js +10 -1
- package/dist/tools/diff-preview.js.map +1 -1
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +17 -0
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/index.d.ts +199 -160
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/lazy-registry.d.ts.map +1 -1
- package/dist/tools/lazy-registry.js +1 -0
- package/dist/tools/lazy-registry.js.map +1 -1
- package/dist/tools/oracle.d.ts +9 -0
- package/dist/tools/oracle.d.ts.map +1 -1
- package/dist/tools/oracle.js +26 -24
- package/dist/tools/oracle.js.map +1 -1
- package/dist/tools/painter.d.ts +73 -0
- package/dist/tools/painter.d.ts.map +1 -0
- package/dist/tools/painter.js +283 -0
- package/dist/tools/painter.js.map +1 -0
- package/dist/tools/typebox-tool.d.ts.map +1 -1
- package/dist/tools/typebox-tool.js +1 -1
- package/dist/tools/typebox-tool.js.map +1 -1
- package/dist/tools/write.d.ts.map +1 -1
- package/dist/tools/write.js +9 -0
- package/dist/tools/write.js.map +1 -1
- package/dist/undo/tracker.d.ts +5 -0
- package/dist/undo/tracker.d.ts.map +1 -1
- package/dist/undo/tracker.js +13 -0
- package/dist/undo/tracker.js.map +1 -1
- package/dist/utils/fs.d.ts +1 -1
- package/dist/utils/fs.d.ts.map +1 -1
- package/dist/utils/fs.js +29 -2
- package/dist/utils/fs.js.map +1 -1
- package/dist/utils/git-stash.d.ts.map +1 -1
- package/dist/utils/git-stash.js +15 -8
- package/dist/utils/git-stash.js.map +1 -1
- package/dist/utils/json.d.ts +11 -0
- package/dist/utils/json.d.ts.map +1 -1
- package/dist/utils/json.js +9 -0
- package/dist/utils/json.js.map +1 -1
- package/dist/utils/shell-env.d.ts.map +1 -1
- package/dist/utils/shell-env.js +2 -0
- package/dist/utils/shell-env.js.map +1 -1
- package/dist/utils/terminal-image.d.ts +52 -0
- package/dist/utils/terminal-image.d.ts.map +1 -0
- package/dist/utils/terminal-image.js +95 -0
- package/dist/utils/terminal-image.js.map +1 -0
- package/dist/utils/terminal-text.d.ts +11 -0
- package/dist/utils/terminal-text.d.ts.map +1 -0
- package/dist/utils/terminal-text.js +21 -0
- package/dist/utils/terminal-text.js.map +1 -0
- package/dist/utils/url-extractor-git.d.ts +26 -0
- package/dist/utils/url-extractor-git.d.ts.map +1 -0
- package/dist/utils/url-extractor-git.js +259 -0
- package/dist/utils/url-extractor-git.js.map +1 -0
- package/dist/utils/url-extractor.d.ts.map +1 -1
- package/dist/utils/url-extractor.js +23 -251
- package/dist/utils/url-extractor.js.map +1 -1
- package/dist/version.json +2 -2
- package/dist/web-server.d.ts.map +1 -1
- package/dist/web-server.js +24 -2
- package/dist/web-server.js.map +1 -1
- package/package.json +312 -306
- package/skills/incident-triage/SKILL.md +20 -1
- package/skills/install-code-review/SKILL.md +69 -0
- package/skills/security-review/SKILL.md +68 -0
- package/skills/security-review/reference/rubric.md +85 -0
- package/dist/cli/commands/agents.d.ts +0 -20
- package/dist/cli/commands/agents.d.ts.map +0 -1
- package/dist/cli/commands/agents.js +0 -280
- package/dist/cli/commands/agents.js.map +0 -1
- package/dist/cli/commands/anthropic.d.ts +0 -2
- package/dist/cli/commands/anthropic.d.ts.map +0 -1
- package/dist/cli/commands/anthropic.js +0 -6
- package/dist/cli/commands/anthropic.js.map +0 -1
- package/dist/cli/commands/cost.d.ts +0 -13
- package/dist/cli/commands/cost.d.ts.map +0 -1
- package/dist/cli/commands/cost.js +0 -143
- package/dist/cli/commands/cost.js.map +0 -1
- package/dist/cli/commands/exec-constants.d.ts +0 -3
- package/dist/cli/commands/exec-constants.d.ts.map +0 -1
- package/dist/cli/commands/exec-constants.js +0 -3
- package/dist/cli/commands/exec-constants.js.map +0 -1
- package/dist/cli/commands/exec.d.ts +0 -19
- package/dist/cli/commands/exec.d.ts.map +0 -1
- package/dist/cli/commands/exec.js +0 -207
- package/dist/cli/commands/exec.js.map +0 -1
- package/dist/cli/commands/hooks.d.ts +0 -2
- package/dist/cli/commands/hooks.d.ts.map +0 -1
- package/dist/cli/commands/hooks.js +0 -25
- package/dist/cli/commands/hooks.js.map +0 -1
- package/dist/cli/commands/hosted-runner.d.ts +0 -25
- package/dist/cli/commands/hosted-runner.d.ts.map +0 -1
- package/dist/cli/commands/hosted-runner.js +0 -278
- package/dist/cli/commands/hosted-runner.js.map +0 -1
- package/dist/cli/commands/memory.d.ts +0 -2
- package/dist/cli/commands/memory.d.ts.map +0 -1
- package/dist/cli/commands/memory.js +0 -208
- package/dist/cli/commands/memory.js.map +0 -1
- package/dist/cli/commands/models.d.ts +0 -3
- package/dist/cli/commands/models.d.ts.map +0 -1
- package/dist/cli/commands/models.js +0 -154
- package/dist/cli/commands/models.js.map +0 -1
- package/dist/cli/commands/modes.d.ts +0 -8
- package/dist/cli/commands/modes.d.ts.map +0 -1
- package/dist/cli/commands/modes.js +0 -151
- package/dist/cli/commands/modes.js.map +0 -1
- package/dist/cli/commands/openai.d.ts +0 -2
- package/dist/cli/commands/openai.d.ts.map +0 -1
- package/dist/cli/commands/openai.js +0 -116
- package/dist/cli/commands/openai.js.map +0 -1
- package/dist/cli/commands/session-transfer.d.ts +0 -5
- package/dist/cli/commands/session-transfer.d.ts.map +0 -1
- package/dist/cli/commands/session-transfer.js +0 -43
- package/dist/cli/commands/session-transfer.js.map +0 -1
- package/dist/cli/commands/sessions.d.ts +0 -8
- package/dist/cli/commands/sessions.d.ts.map +0 -1
- package/dist/cli/commands/sessions.js +0 -152
- package/dist/cli/commands/sessions.js.map +0 -1
- package/dist/cli/commands/skill.d.ts +0 -10
- package/dist/cli/commands/skill.d.ts.map +0 -1
- package/dist/cli/commands/skill.js +0 -303
- package/dist/cli/commands/skill.js.map +0 -1
- package/dist/cli/commands/stats.d.ts +0 -7
- package/dist/cli/commands/stats.d.ts.map +0 -1
- package/dist/cli/commands/stats.js +0 -167
- package/dist/cli/commands/stats.js.map +0 -1
- package/dist/cli/commands/status.d.ts +0 -2
- package/dist/cli/commands/status.d.ts.map +0 -1
- package/dist/cli/commands/status.js +0 -11
- package/dist/cli/commands/status.js.map +0 -1
- package/dist/cli/commands/update.d.ts +0 -12
- package/dist/cli/commands/update.d.ts.map +0 -1
- package/dist/cli/commands/update.js +0 -148
- package/dist/cli/commands/update.js.map +0 -1
- package/dist/cli-tui/about-view.d.ts +0 -48
- package/dist/cli-tui/about-view.d.ts.map +0 -1
- package/dist/cli-tui/about-view.js +0 -206
- package/dist/cli-tui/about-view.js.map +0 -1
- package/dist/cli-tui/agent-event-router.d.ts +0 -28
- package/dist/cli-tui/agent-event-router.d.ts.map +0 -1
- package/dist/cli-tui/agent-event-router.js +0 -126
- package/dist/cli-tui/agent-event-router.js.map +0 -1
- package/dist/cli-tui/approval/approval-controller.d.ts +0 -28
- package/dist/cli-tui/approval/approval-controller.d.ts.map +0 -1
- package/dist/cli-tui/approval/approval-controller.js +0 -99
- package/dist/cli-tui/approval/approval-controller.js.map +0 -1
- package/dist/cli-tui/approval/approval-modal.d.ts +0 -26
- package/dist/cli-tui/approval/approval-modal.d.ts.map +0 -1
- package/dist/cli-tui/approval/approval-modal.js +0 -143
- package/dist/cli-tui/approval/approval-modal.js.map +0 -1
- package/dist/cli-tui/assistant-message.d.ts +0 -41
- package/dist/cli-tui/assistant-message.d.ts.map +0 -1
- package/dist/cli-tui/assistant-message.js +0 -236
- package/dist/cli-tui/assistant-message.js.map +0 -1
- package/dist/cli-tui/auth-state.d.ts +0 -7
- package/dist/cli-tui/auth-state.d.ts.map +0 -1
- package/dist/cli-tui/auth-state.js +0 -46
- package/dist/cli-tui/auth-state.js.map +0 -1
- package/dist/cli-tui/background/background-tasks-controller.d.ts +0 -31
- package/dist/cli-tui/background/background-tasks-controller.d.ts.map +0 -1
- package/dist/cli-tui/background/background-tasks-controller.js +0 -84
- package/dist/cli-tui/background/background-tasks-controller.js.map +0 -1
- package/dist/cli-tui/base-view.d.ts +0 -111
- package/dist/cli-tui/base-view.d.ts.map +0 -1
- package/dist/cli-tui/base-view.js +0 -145
- package/dist/cli-tui/base-view.js.map +0 -1
- package/dist/cli-tui/bash/background-launcher.d.ts +0 -14
- package/dist/cli-tui/bash/background-launcher.d.ts.map +0 -1
- package/dist/cli-tui/bash/background-launcher.js +0 -50
- package/dist/cli-tui/bash/background-launcher.js.map +0 -1
- package/dist/cli-tui/bash/bash-autocomplete.d.ts +0 -40
- package/dist/cli-tui/bash/bash-autocomplete.d.ts.map +0 -1
- package/dist/cli-tui/bash/bash-autocomplete.js +0 -347
- package/dist/cli-tui/bash/bash-autocomplete.js.map +0 -1
- package/dist/cli-tui/bash/bash-history.d.ts +0 -21
- package/dist/cli-tui/bash/bash-history.d.ts.map +0 -1
- package/dist/cli-tui/bash/bash-history.js +0 -72
- package/dist/cli-tui/bash/bash-history.js.map +0 -1
- package/dist/cli-tui/bash/bash-syntax.d.ts +0 -5
- package/dist/cli-tui/bash/bash-syntax.d.ts.map +0 -1
- package/dist/cli-tui/bash/bash-syntax.js +0 -176
- package/dist/cli-tui/bash/bash-syntax.js.map +0 -1
- package/dist/cli-tui/bash/index.d.ts +0 -4
- package/dist/cli-tui/bash/index.d.ts.map +0 -1
- package/dist/cli-tui/bash/index.js +0 -4
- package/dist/cli-tui/bash/index.js.map +0 -1
- package/dist/cli-tui/bash-mode-view.d.ts +0 -86
- package/dist/cli-tui/bash-mode-view.d.ts.map +0 -1
- package/dist/cli-tui/bash-mode-view.js +0 -560
- package/dist/cli-tui/bash-mode-view.js.map +0 -1
- package/dist/cli-tui/bash-shell-block.d.ts +0 -50
- package/dist/cli-tui/bash-shell-block.d.ts.map +0 -1
- package/dist/cli-tui/bash-shell-block.js +0 -119
- package/dist/cli-tui/bash-shell-block.js.map +0 -1
- package/dist/cli-tui/changelog-view.d.ts +0 -13
- package/dist/cli-tui/changelog-view.d.ts.map +0 -1
- package/dist/cli-tui/changelog-view.js +0 -34
- package/dist/cli-tui/changelog-view.js.map +0 -1
- package/dist/cli-tui/clean-mode.d.ts +0 -13
- package/dist/cli-tui/clean-mode.d.ts.map +0 -1
- package/dist/cli-tui/clean-mode.js +0 -32
- package/dist/cli-tui/clean-mode.js.map +0 -1
- package/dist/cli-tui/client-tools/client-tool-controller.d.ts +0 -41
- package/dist/cli-tui/client-tools/client-tool-controller.d.ts.map +0 -1
- package/dist/cli-tui/client-tools/client-tool-controller.js +0 -862
- package/dist/cli-tui/client-tools/client-tool-controller.js.map +0 -1
- package/dist/cli-tui/client-tools/local-client-tool-service.d.ts +0 -33
- package/dist/cli-tui/client-tools/local-client-tool-service.d.ts.map +0 -1
- package/dist/cli-tui/client-tools/local-client-tool-service.js +0 -94
- package/dist/cli-tui/client-tools/local-client-tool-service.js.map +0 -1
- package/dist/cli-tui/commands/a2a-handlers.d.ts +0 -7
- package/dist/cli-tui/commands/a2a-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/a2a-handlers.js +0 -215
- package/dist/cli-tui/commands/a2a-handlers.js.map +0 -1
- package/dist/cli-tui/commands/access-command.d.ts +0 -3
- package/dist/cli-tui/commands/access-command.d.ts.map +0 -1
- package/dist/cli-tui/commands/access-command.js +0 -89
- package/dist/cli-tui/commands/access-command.js.map +0 -1
- package/dist/cli-tui/commands/argument-parser.d.ts +0 -12
- package/dist/cli-tui/commands/argument-parser.d.ts.map +0 -1
- package/dist/cli-tui/commands/argument-parser.js +0 -135
- package/dist/cli-tui/commands/argument-parser.js.map +0 -1
- package/dist/cli-tui/commands/audit-command.d.ts +0 -5
- package/dist/cli-tui/commands/audit-command.d.ts.map +0 -1
- package/dist/cli-tui/commands/audit-command.js +0 -35
- package/dist/cli-tui/commands/audit-command.js.map +0 -1
- package/dist/cli-tui/commands/background-handlers.d.ts +0 -14
- package/dist/cli-tui/commands/background-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/background-handlers.js +0 -115
- package/dist/cli-tui/commands/background-handlers.js.map +0 -1
- package/dist/cli-tui/commands/command-catalog.d.ts +0 -29
- package/dist/cli-tui/commands/command-catalog.d.ts.map +0 -1
- package/dist/cli-tui/commands/command-catalog.js +0 -666
- package/dist/cli-tui/commands/command-catalog.js.map +0 -1
- package/dist/cli-tui/commands/command-registry-adapter.d.ts +0 -12
- package/dist/cli-tui/commands/command-registry-adapter.d.ts.map +0 -1
- package/dist/cli-tui/commands/command-registry-adapter.js +0 -129
- package/dist/cli-tui/commands/command-registry-adapter.js.map +0 -1
- package/dist/cli-tui/commands/command-suite-catalog.d.ts +0 -14
- package/dist/cli-tui/commands/command-suite-catalog.d.ts.map +0 -1
- package/dist/cli-tui/commands/command-suite-catalog.js +0 -147
- package/dist/cli-tui/commands/command-suite-catalog.js.map +0 -1
- package/dist/cli-tui/commands/command-suite-handlers.d.ts +0 -111
- package/dist/cli-tui/commands/command-suite-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/command-suite-handlers.js +0 -110
- package/dist/cli-tui/commands/command-suite-handlers.js.map +0 -1
- package/dist/cli-tui/commands/composer-handlers.d.ts +0 -8
- package/dist/cli-tui/commands/composer-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/composer-handlers.js +0 -90
- package/dist/cli-tui/commands/composer-handlers.js.map +0 -1
- package/dist/cli-tui/commands/framework-handlers.d.ts +0 -18
- package/dist/cli-tui/commands/framework-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/framework-handlers.js +0 -57
- package/dist/cli-tui/commands/framework-handlers.js.map +0 -1
- package/dist/cli-tui/commands/guardian-handlers.d.ts +0 -20
- package/dist/cli-tui/commands/guardian-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/guardian-handlers.js +0 -48
- package/dist/cli-tui/commands/guardian-handlers.js.map +0 -1
- package/dist/cli-tui/commands/handlers/mode-handler.d.ts +0 -32
- package/dist/cli-tui/commands/handlers/mode-handler.d.ts.map +0 -1
- package/dist/cli-tui/commands/handlers/mode-handler.js +0 -153
- package/dist/cli-tui/commands/handlers/mode-handler.js.map +0 -1
- package/dist/cli-tui/commands/hotkeys-command.d.ts +0 -8
- package/dist/cli-tui/commands/hotkeys-command.d.ts.map +0 -1
- package/dist/cli-tui/commands/hotkeys-command.js +0 -61
- package/dist/cli-tui/commands/hotkeys-command.js.map +0 -1
- package/dist/cli-tui/commands/limits-command.d.ts +0 -3
- package/dist/cli-tui/commands/limits-command.d.ts.map +0 -1
- package/dist/cli-tui/commands/limits-command.js +0 -88
- package/dist/cli-tui/commands/limits-command.js.map +0 -1
- package/dist/cli-tui/commands/mcp-handlers.d.ts +0 -12
- package/dist/cli-tui/commands/mcp-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/mcp-handlers.js +0 -1306
- package/dist/cli-tui/commands/mcp-handlers.js.map +0 -1
- package/dist/cli-tui/commands/memory-handlers.d.ts +0 -28
- package/dist/cli-tui/commands/memory-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/memory-handlers.js +0 -414
- package/dist/cli-tui/commands/memory-handlers.js.map +0 -1
- package/dist/cli-tui/commands/otel-handlers.d.ts +0 -11
- package/dist/cli-tui/commands/otel-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/otel-handlers.js +0 -20
- package/dist/cli-tui/commands/otel-handlers.js.map +0 -1
- package/dist/cli-tui/commands/package-handlers.d.ts +0 -30
- package/dist/cli-tui/commands/package-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/package-handlers.js +0 -499
- package/dist/cli-tui/commands/package-handlers.js.map +0 -1
- package/dist/cli-tui/commands/pii-command.d.ts +0 -3
- package/dist/cli-tui/commands/pii-command.d.ts.map +0 -1
- package/dist/cli-tui/commands/pii-command.js +0 -54
- package/dist/cli-tui/commands/pii-command.js.map +0 -1
- package/dist/cli-tui/commands/registry.d.ts +0 -3
- package/dist/cli-tui/commands/registry.d.ts.map +0 -1
- package/dist/cli-tui/commands/registry.js +0 -36
- package/dist/cli-tui/commands/registry.js.map +0 -1
- package/dist/cli-tui/commands/safety-handlers.d.ts +0 -36
- package/dist/cli-tui/commands/safety-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/safety-handlers.js +0 -62
- package/dist/cli-tui/commands/safety-handlers.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/auth-commands.d.ts +0 -26
- package/dist/cli-tui/commands/subcommands/auth-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/auth-commands.js +0 -79
- package/dist/cli-tui/commands/subcommands/auth-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/config-commands.d.ts +0 -23
- package/dist/cli-tui/commands/subcommands/config-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/config-commands.js +0 -61
- package/dist/cli-tui/commands/subcommands/config-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/diag-commands.d.ts +0 -46
- package/dist/cli-tui/commands/subcommands/diag-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/diag-commands.js +0 -163
- package/dist/cli-tui/commands/subcommands/diag-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/git-commands.d.ts +0 -18
- package/dist/cli-tui/commands/subcommands/git-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/git-commands.js +0 -50
- package/dist/cli-tui/commands/subcommands/git-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/index.d.ts +0 -18
- package/dist/cli-tui/commands/subcommands/index.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/index.js +0 -18
- package/dist/cli-tui/commands/subcommands/index.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/safety-commands.d.ts +0 -26
- package/dist/cli-tui/commands/subcommands/safety-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/safety-commands.js +0 -149
- package/dist/cli-tui/commands/subcommands/safety-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/session-commands.d.ts +0 -36
- package/dist/cli-tui/commands/subcommands/session-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/session-commands.js +0 -112
- package/dist/cli-tui/commands/subcommands/session-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/tools-commands.d.ts +0 -27
- package/dist/cli-tui/commands/subcommands/tools-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/tools-commands.js +0 -80
- package/dist/cli-tui/commands/subcommands/tools-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/ui-commands.d.ts +0 -30
- package/dist/cli-tui/commands/subcommands/ui-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/ui-commands.js +0 -74
- package/dist/cli-tui/commands/subcommands/ui-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/undo-commands.d.ts +0 -25
- package/dist/cli-tui/commands/subcommands/undo-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/undo-commands.js +0 -74
- package/dist/cli-tui/commands/subcommands/undo-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/usage-commands.d.ts +0 -19
- package/dist/cli-tui/commands/subcommands/usage-commands.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/usage-commands.js +0 -63
- package/dist/cli-tui/commands/subcommands/usage-commands.js.map +0 -1
- package/dist/cli-tui/commands/subcommands/utils.d.ts +0 -127
- package/dist/cli-tui/commands/subcommands/utils.d.ts.map +0 -1
- package/dist/cli-tui/commands/subcommands/utils.js +0 -395
- package/dist/cli-tui/commands/subcommands/utils.js.map +0 -1
- package/dist/cli-tui/commands/types.d.ts +0 -105
- package/dist/cli-tui/commands/types.d.ts.map +0 -1
- package/dist/cli-tui/commands/types.js +0 -2
- package/dist/cli-tui/commands/types.js.map +0 -1
- package/dist/cli-tui/commands/undo-handlers.d.ts +0 -29
- package/dist/cli-tui/commands/undo-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/undo-handlers.js +0 -300
- package/dist/cli-tui/commands/undo-handlers.js.map +0 -1
- package/dist/cli-tui/commands/utility-handlers.d.ts +0 -55
- package/dist/cli-tui/commands/utility-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/utility-handlers.js +0 -137
- package/dist/cli-tui/commands/utility-handlers.js.map +0 -1
- package/dist/cli-tui/commands/workflow-handlers.d.ts +0 -22
- package/dist/cli-tui/commands/workflow-handlers.d.ts.map +0 -1
- package/dist/cli-tui/commands/workflow-handlers.js +0 -227
- package/dist/cli-tui/commands/workflow-handlers.js.map +0 -1
- package/dist/cli-tui/compact-boundary-message.d.ts +0 -9
- package/dist/cli-tui/compact-boundary-message.d.ts.map +0 -1
- package/dist/cli-tui/compact-boundary-message.js +0 -18
- package/dist/cli-tui/compact-boundary-message.js.map +0 -1
- package/dist/cli-tui/compaction-recovery.d.ts +0 -6
- package/dist/cli-tui/compaction-recovery.d.ts.map +0 -1
- package/dist/cli-tui/compaction-recovery.js +0 -13
- package/dist/cli-tui/compaction-recovery.js.map +0 -1
- package/dist/cli-tui/config-view.d.ts +0 -30
- package/dist/cli-tui/config-view.d.ts.map +0 -1
- package/dist/cli-tui/config-view.js +0 -255
- package/dist/cli-tui/config-view.js.map +0 -1
- package/dist/cli-tui/context-view.d.ts +0 -20
- package/dist/cli-tui/context-view.d.ts.map +0 -1
- package/dist/cli-tui/context-view.js +0 -191
- package/dist/cli-tui/context-view.js.map +0 -1
- package/dist/cli-tui/custom-editor.d.ts +0 -25
- package/dist/cli-tui/custom-editor.d.ts.map +0 -1
- package/dist/cli-tui/custom-editor.js +0 -241
- package/dist/cli-tui/custom-editor.js.map +0 -1
- package/dist/cli-tui/editor-view.d.ts +0 -34
- package/dist/cli-tui/editor-view.d.ts.map +0 -1
- package/dist/cli-tui/editor-view.js +0 -102
- package/dist/cli-tui/editor-view.js.map +0 -1
- package/dist/cli-tui/feedback-view.d.ts +0 -35
- package/dist/cli-tui/feedback-view.d.ts.map +0 -1
- package/dist/cli-tui/feedback-view.js +0 -271
- package/dist/cli-tui/feedback-view.js.map +0 -1
- package/dist/cli-tui/footer.d.ts +0 -56
- package/dist/cli-tui/footer.d.ts.map +0 -1
- package/dist/cli-tui/footer.js +0 -228
- package/dist/cli-tui/footer.js.map +0 -1
- package/dist/cli-tui/git/commit-modal.d.ts +0 -14
- package/dist/cli-tui/git/commit-modal.d.ts.map +0 -1
- package/dist/cli-tui/git/commit-modal.js +0 -56
- package/dist/cli-tui/git/commit-modal.js.map +0 -1
- package/dist/cli-tui/git/git-preview-modal.d.ts +0 -40
- package/dist/cli-tui/git/git-preview-modal.d.ts.map +0 -1
- package/dist/cli-tui/git/git-preview-modal.js +0 -123
- package/dist/cli-tui/git/git-preview-modal.js.map +0 -1
- package/dist/cli-tui/git/git-view.d.ts +0 -65
- package/dist/cli-tui/git/git-view.d.ts.map +0 -1
- package/dist/cli-tui/git/git-view.js +0 -529
- package/dist/cli-tui/git/git-view.js.map +0 -1
- package/dist/cli-tui/history/history-config.d.ts +0 -7
- package/dist/cli-tui/history/history-config.d.ts.map +0 -1
- package/dist/cli-tui/history/history-config.js +0 -49
- package/dist/cli-tui/history/history-config.js.map +0 -1
- package/dist/cli-tui/history/prompt-history.d.ts +0 -33
- package/dist/cli-tui/history/prompt-history.d.ts.map +0 -1
- package/dist/cli-tui/history/prompt-history.js +0 -185
- package/dist/cli-tui/history/prompt-history.js.map +0 -1
- package/dist/cli-tui/history/tool-history.d.ts +0 -50
- package/dist/cli-tui/history/tool-history.d.ts.map +0 -1
- package/dist/cli-tui/history/tool-history.js +0 -253
- package/dist/cli-tui/history/tool-history.js.map +0 -1
- package/dist/cli-tui/hook-message.d.ts +0 -13
- package/dist/cli-tui/hook-message.d.ts.map +0 -1
- package/dist/cli-tui/hook-message.js +0 -56
- package/dist/cli-tui/hook-message.js.map +0 -1
- package/dist/cli-tui/hooks/hook-input-modal.d.ts +0 -22
- package/dist/cli-tui/hooks/hook-input-modal.d.ts.map +0 -1
- package/dist/cli-tui/hooks/hook-input-modal.js +0 -63
- package/dist/cli-tui/hooks/hook-input-modal.js.map +0 -1
- package/dist/cli-tui/hotkeys-view.d.ts +0 -13
- package/dist/cli-tui/hotkeys-view.d.ts.map +0 -1
- package/dist/cli-tui/hotkeys-view.js +0 -96
- package/dist/cli-tui/hotkeys-view.js.map +0 -1
- package/dist/cli-tui/import-view.d.ts +0 -28
- package/dist/cli-tui/import-view.d.ts.map +0 -1
- package/dist/cli-tui/import-view.js +0 -184
- package/dist/cli-tui/import-view.js.map +0 -1
- package/dist/cli-tui/info-view.d.ts +0 -18
- package/dist/cli-tui/info-view.d.ts.map +0 -1
- package/dist/cli-tui/info-view.js +0 -107
- package/dist/cli-tui/info-view.js.map +0 -1
- package/dist/cli-tui/instruction-panel.d.ts +0 -11
- package/dist/cli-tui/instruction-panel.d.ts.map +0 -1
- package/dist/cli-tui/instruction-panel.js +0 -86
- package/dist/cli-tui/instruction-panel.js.map +0 -1
- package/dist/cli-tui/interrupt-controller.d.ts +0 -78
- package/dist/cli-tui/interrupt-controller.d.ts.map +0 -1
- package/dist/cli-tui/interrupt-controller.js +0 -104
- package/dist/cli-tui/interrupt-controller.js.map +0 -1
- package/dist/cli-tui/keybindings-config.d.ts +0 -27
- package/dist/cli-tui/keybindings-config.d.ts.map +0 -1
- package/dist/cli-tui/keybindings-config.js +0 -372
- package/dist/cli-tui/keybindings-config.js.map +0 -1
- package/dist/cli-tui/keybindings-watcher.d.ts +0 -8
- package/dist/cli-tui/keybindings-watcher.d.ts.map +0 -1
- package/dist/cli-tui/keybindings-watcher.js +0 -56
- package/dist/cli-tui/keybindings-watcher.js.map +0 -1
- package/dist/cli-tui/keybindings.d.ts +0 -13
- package/dist/cli-tui/keybindings.d.ts.map +0 -1
- package/dist/cli-tui/keybindings.js +0 -223
- package/dist/cli-tui/keybindings.js.map +0 -1
- package/dist/cli-tui/loader/loader-stage-manager.d.ts +0 -43
- package/dist/cli-tui/loader/loader-stage-manager.d.ts.map +0 -1
- package/dist/cli-tui/loader/loader-stage-manager.js +0 -241
- package/dist/cli-tui/loader/loader-stage-manager.js.map +0 -1
- package/dist/cli-tui/loader/loader-stage-telemetry.d.ts +0 -14
- package/dist/cli-tui/loader/loader-stage-telemetry.d.ts.map +0 -1
- package/dist/cli-tui/loader/loader-stage-telemetry.js +0 -34
- package/dist/cli-tui/loader/loader-stage-telemetry.js.map +0 -1
- package/dist/cli-tui/loader/loader-view.d.ts +0 -41
- package/dist/cli-tui/loader/loader-view.d.ts.map +0 -1
- package/dist/cli-tui/loader/loader-view.js +0 -162
- package/dist/cli-tui/loader/loader-view.js.map +0 -1
- package/dist/cli-tui/lsp-view.d.ts +0 -21
- package/dist/cli-tui/lsp-view.d.ts.map +0 -1
- package/dist/cli-tui/lsp-view.js +0 -183
- package/dist/cli-tui/lsp-view.js.map +0 -1
- package/dist/cli-tui/mermaid-renderer.d.ts +0 -2
- package/dist/cli-tui/mermaid-renderer.d.ts.map +0 -1
- package/dist/cli-tui/mermaid-renderer.js +0 -391
- package/dist/cli-tui/mermaid-renderer.js.map +0 -1
- package/dist/cli-tui/message-view.d.ts +0 -27
- package/dist/cli-tui/message-view.d.ts.map +0 -1
- package/dist/cli-tui/message-view.js +0 -169
- package/dist/cli-tui/message-view.js.map +0 -1
- package/dist/cli-tui/modal-manager.d.ts +0 -77
- package/dist/cli-tui/modal-manager.d.ts.map +0 -1
- package/dist/cli-tui/modal-manager.js +0 -131
- package/dist/cli-tui/modal-manager.js.map +0 -1
- package/dist/cli-tui/notification-view.d.ts +0 -16
- package/dist/cli-tui/notification-view.d.ts.map +0 -1
- package/dist/cli-tui/notification-view.js +0 -53
- package/dist/cli-tui/notification-view.js.map +0 -1
- package/dist/cli-tui/oauth/index.d.ts +0 -2
- package/dist/cli-tui/oauth/index.d.ts.map +0 -1
- package/dist/cli-tui/oauth/index.js +0 -2
- package/dist/cli-tui/oauth/index.js.map +0 -1
- package/dist/cli-tui/oauth/oauth-flow-controller.d.ts +0 -65
- package/dist/cli-tui/oauth/oauth-flow-controller.d.ts.map +0 -1
- package/dist/cli-tui/oauth/oauth-flow-controller.js +0 -400
- package/dist/cli-tui/oauth/oauth-flow-controller.js.map +0 -1
- package/dist/cli-tui/ollama-view.d.ts +0 -38
- package/dist/cli-tui/ollama-view.d.ts.map +0 -1
- package/dist/cli-tui/ollama-view.js +0 -395
- package/dist/cli-tui/ollama-view.js.map +0 -1
- package/dist/cli-tui/paste/index.d.ts +0 -2
- package/dist/cli-tui/paste/index.d.ts.map +0 -1
- package/dist/cli-tui/paste/index.js +0 -2
- package/dist/cli-tui/paste/index.js.map +0 -1
- package/dist/cli-tui/paste/paste-handler.d.ts +0 -54
- package/dist/cli-tui/paste/paste-handler.d.ts.map +0 -1
- package/dist/cli-tui/paste/paste-handler.js +0 -128
- package/dist/cli-tui/paste/paste-handler.js.map +0 -1
- package/dist/cli-tui/plan/plan-controller.d.ts +0 -28
- package/dist/cli-tui/plan/plan-controller.d.ts.map +0 -1
- package/dist/cli-tui/plan/plan-controller.js +0 -66
- package/dist/cli-tui/plan/plan-controller.js.map +0 -1
- package/dist/cli-tui/plan-panel-modal.d.ts +0 -28
- package/dist/cli-tui/plan-panel-modal.d.ts.map +0 -1
- package/dist/cli-tui/plan-panel-modal.js +0 -193
- package/dist/cli-tui/plan-panel-modal.js.map +0 -1
- package/dist/cli-tui/plan-view.d.ts +0 -57
- package/dist/cli-tui/plan-view.d.ts.map +0 -1
- package/dist/cli-tui/plan-view.js +0 -404
- package/dist/cli-tui/plan-view.js.map +0 -1
- package/dist/cli-tui/prompt-queue.d.ts.map +0 -1
- package/dist/cli-tui/prompt-queue.js.map +0 -1
- package/dist/cli-tui/queue/follow-up-shortcut.d.ts +0 -6
- package/dist/cli-tui/queue/follow-up-shortcut.d.ts.map +0 -1
- package/dist/cli-tui/queue/follow-up-shortcut.js +0 -12
- package/dist/cli-tui/queue/follow-up-shortcut.js.map +0 -1
- package/dist/cli-tui/queue/index.d.ts +0 -3
- package/dist/cli-tui/queue/index.d.ts.map +0 -1
- package/dist/cli-tui/queue/index.js +0 -3
- package/dist/cli-tui/queue/index.js.map +0 -1
- package/dist/cli-tui/queue/queue-controller.d.ts +0 -109
- package/dist/cli-tui/queue/queue-controller.d.ts.map +0 -1
- package/dist/cli-tui/queue/queue-controller.js +0 -327
- package/dist/cli-tui/queue/queue-controller.js.map +0 -1
- package/dist/cli-tui/queue/queue-panel-controller.d.ts +0 -34
- package/dist/cli-tui/queue/queue-panel-controller.d.ts.map +0 -1
- package/dist/cli-tui/queue/queue-panel-controller.js +0 -163
- package/dist/cli-tui/queue/queue-panel-controller.js.map +0 -1
- package/dist/cli-tui/queue/queued-follow-up-edit-binding.d.ts +0 -7
- package/dist/cli-tui/queue/queued-follow-up-edit-binding.d.ts.map +0 -1
- package/dist/cli-tui/queue/queued-follow-up-edit-binding.js +0 -14
- package/dist/cli-tui/queue/queued-follow-up-edit-binding.js.map +0 -1
- package/dist/cli-tui/queue-panel-modal.d.ts +0 -26
- package/dist/cli-tui/queue-panel-modal.d.ts.map +0 -1
- package/dist/cli-tui/queue-panel-modal.js +0 -159
- package/dist/cli-tui/queue-panel-modal.js.map +0 -1
- package/dist/cli-tui/run/run-command-view.d.ts +0 -17
- package/dist/cli-tui/run/run-command-view.d.ts.map +0 -1
- package/dist/cli-tui/run/run-command-view.js +0 -62
- package/dist/cli-tui/run/run-command-view.js.map +0 -1
- package/dist/cli-tui/run/run-controller.d.ts +0 -24
- package/dist/cli-tui/run/run-controller.d.ts.map +0 -1
- package/dist/cli-tui/run/run-controller.js +0 -38
- package/dist/cli-tui/run/run-controller.js.map +0 -1
- package/dist/cli-tui/run/run-shell-command.d.ts +0 -13
- package/dist/cli-tui/run/run-shell-command.d.ts.map +0 -1
- package/dist/cli-tui/run/run-shell-command.js +0 -51
- package/dist/cli-tui/run/run-shell-command.js.map +0 -1
- package/dist/cli-tui/run/streaming-shell-command.d.ts +0 -19
- package/dist/cli-tui/run/streaming-shell-command.d.ts.map +0 -1
- package/dist/cli-tui/run/streaming-shell-command.js +0 -107
- package/dist/cli-tui/run/streaming-shell-command.js.map +0 -1
- package/dist/cli-tui/search/file-search-view.d.ts +0 -22
- package/dist/cli-tui/search/file-search-view.d.ts.map +0 -1
- package/dist/cli-tui/search/file-search-view.js +0 -68
- package/dist/cli-tui/search/file-search-view.js.map +0 -1
- package/dist/cli-tui/search/file-search.d.ts +0 -13
- package/dist/cli-tui/search/file-search.d.ts.map +0 -1
- package/dist/cli-tui/search/file-search.js +0 -52
- package/dist/cli-tui/search/file-search.js.map +0 -1
- package/dist/cli-tui/security-status.d.ts +0 -83
- package/dist/cli-tui/security-status.d.ts.map +0 -1
- package/dist/cli-tui/security-status.js +0 -214
- package/dist/cli-tui/security-status.js.map +0 -1
- package/dist/cli-tui/selectors/base-selector.d.ts +0 -27
- package/dist/cli-tui/selectors/base-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/base-selector.js +0 -47
- package/dist/cli-tui/selectors/base-selector.js.map +0 -1
- package/dist/cli-tui/selectors/branch-summary-modal.d.ts +0 -18
- package/dist/cli-tui/selectors/branch-summary-modal.d.ts.map +0 -1
- package/dist/cli-tui/selectors/branch-summary-modal.js +0 -24
- package/dist/cli-tui/selectors/branch-summary-modal.js.map +0 -1
- package/dist/cli-tui/selectors/model-selector-view.d.ts +0 -22
- package/dist/cli-tui/selectors/model-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/model-selector-view.js +0 -31
- package/dist/cli-tui/selectors/model-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/model-selector.d.ts +0 -30
- package/dist/cli-tui/selectors/model-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/model-selector.js +0 -218
- package/dist/cli-tui/selectors/model-selector.js.map +0 -1
- package/dist/cli-tui/selectors/oauth-selector-view.d.ts +0 -20
- package/dist/cli-tui/selectors/oauth-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/oauth-selector-view.js +0 -28
- package/dist/cli-tui/selectors/oauth-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/oauth-selector.d.ts +0 -19
- package/dist/cli-tui/selectors/oauth-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/oauth-selector.js +0 -120
- package/dist/cli-tui/selectors/oauth-selector.js.map +0 -1
- package/dist/cli-tui/selectors/queue-mode-selector-view.d.ts +0 -19
- package/dist/cli-tui/selectors/queue-mode-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/queue-mode-selector-view.js +0 -29
- package/dist/cli-tui/selectors/queue-mode-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/queue-mode-selector.d.ts +0 -5
- package/dist/cli-tui/selectors/queue-mode-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/queue-mode-selector.js +0 -34
- package/dist/cli-tui/selectors/queue-mode-selector.js.map +0 -1
- package/dist/cli-tui/selectors/report-selector-view.d.ts +0 -17
- package/dist/cli-tui/selectors/report-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/report-selector-view.js +0 -29
- package/dist/cli-tui/selectors/report-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/report-selector.d.ts +0 -7
- package/dist/cli-tui/selectors/report-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/report-selector.js +0 -31
- package/dist/cli-tui/selectors/report-selector.js.map +0 -1
- package/dist/cli-tui/selectors/theme-selector-view.d.ts +0 -19
- package/dist/cli-tui/selectors/theme-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/theme-selector-view.js +0 -41
- package/dist/cli-tui/selectors/theme-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/theme-selector.d.ts +0 -14
- package/dist/cli-tui/selectors/theme-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/theme-selector.js +0 -46
- package/dist/cli-tui/selectors/theme-selector.js.map +0 -1
- package/dist/cli-tui/selectors/thinking-selector-view.d.ts +0 -20
- package/dist/cli-tui/selectors/thinking-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/thinking-selector-view.js +0 -31
- package/dist/cli-tui/selectors/thinking-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/thinking-selector.d.ts +0 -9
- package/dist/cli-tui/selectors/thinking-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/thinking-selector.js +0 -47
- package/dist/cli-tui/selectors/thinking-selector.js.map +0 -1
- package/dist/cli-tui/selectors/tree-selector-view.d.ts +0 -32
- package/dist/cli-tui/selectors/tree-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/tree-selector-view.js +0 -407
- package/dist/cli-tui/selectors/tree-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/tree-selector.d.ts +0 -27
- package/dist/cli-tui/selectors/tree-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/tree-selector.js +0 -194
- package/dist/cli-tui/selectors/tree-selector.js.map +0 -1
- package/dist/cli-tui/selectors/user-message-selector-view.d.ts +0 -25
- package/dist/cli-tui/selectors/user-message-selector-view.d.ts.map +0 -1
- package/dist/cli-tui/selectors/user-message-selector-view.js +0 -101
- package/dist/cli-tui/selectors/user-message-selector-view.js.map +0 -1
- package/dist/cli-tui/selectors/user-message-selector.d.ts +0 -30
- package/dist/cli-tui/selectors/user-message-selector.d.ts.map +0 -1
- package/dist/cli-tui/selectors/user-message-selector.js +0 -114
- package/dist/cli-tui/selectors/user-message-selector.js.map +0 -1
- package/dist/cli-tui/session/branch-controller.d.ts +0 -65
- package/dist/cli-tui/session/branch-controller.d.ts.map +0 -1
- package/dist/cli-tui/session/branch-controller.js +0 -125
- package/dist/cli-tui/session/branch-controller.js.map +0 -1
- package/dist/cli-tui/session/conversation-compactor.d.ts +0 -64
- package/dist/cli-tui/session/conversation-compactor.d.ts.map +0 -1
- package/dist/cli-tui/session/conversation-compactor.js +0 -77
- package/dist/cli-tui/session/conversation-compactor.js.map +0 -1
- package/dist/cli-tui/session/session-context.d.ts +0 -59
- package/dist/cli-tui/session/session-context.d.ts.map +0 -1
- package/dist/cli-tui/session/session-context.js +0 -79
- package/dist/cli-tui/session/session-context.js.map +0 -1
- package/dist/cli-tui/session/session-data-provider.d.ts +0 -23
- package/dist/cli-tui/session/session-data-provider.d.ts.map +0 -1
- package/dist/cli-tui/session/session-data-provider.js +0 -22
- package/dist/cli-tui/session/session-data-provider.js.map +0 -1
- package/dist/cli-tui/session/session-list.d.ts +0 -18
- package/dist/cli-tui/session/session-list.d.ts.map +0 -1
- package/dist/cli-tui/session/session-list.js +0 -103
- package/dist/cli-tui/session/session-list.js.map +0 -1
- package/dist/cli-tui/session/session-selector.d.ts +0 -12
- package/dist/cli-tui/session/session-selector.d.ts.map +0 -1
- package/dist/cli-tui/session/session-selector.js +0 -37
- package/dist/cli-tui/session/session-selector.js.map +0 -1
- package/dist/cli-tui/session/session-summary-controller.d.ts +0 -24
- package/dist/cli-tui/session/session-summary-controller.d.ts.map +0 -1
- package/dist/cli-tui/session/session-summary-controller.js +0 -96
- package/dist/cli-tui/session/session-summary-controller.js.map +0 -1
- package/dist/cli-tui/session/session-switcher-view.d.ts +0 -20
- package/dist/cli-tui/session/session-switcher-view.d.ts.map +0 -1
- package/dist/cli-tui/session/session-switcher-view.js +0 -43
- package/dist/cli-tui/session/session-switcher-view.js.map +0 -1
- package/dist/cli-tui/session/session-switcher.d.ts +0 -38
- package/dist/cli-tui/session/session-switcher.d.ts.map +0 -1
- package/dist/cli-tui/session/session-switcher.js +0 -204
- package/dist/cli-tui/session/session-switcher.js.map +0 -1
- package/dist/cli-tui/session/session-view.d.ts +0 -46
- package/dist/cli-tui/session/session-view.d.ts.map +0 -1
- package/dist/cli-tui/session/session-view.js +0 -311
- package/dist/cli-tui/session/session-view.js.map +0 -1
- package/dist/cli-tui/slash/index.d.ts +0 -2
- package/dist/cli-tui/slash/index.d.ts.map +0 -1
- package/dist/cli-tui/slash/index.js +0 -2
- package/dist/cli-tui/slash/index.js.map +0 -1
- package/dist/cli-tui/slash/slash-command-matcher.d.ts +0 -55
- package/dist/cli-tui/slash/slash-command-matcher.d.ts.map +0 -1
- package/dist/cli-tui/slash/slash-command-matcher.js +0 -113
- package/dist/cli-tui/slash/slash-command-matcher.js.map +0 -1
- package/dist/cli-tui/smart-autocomplete-provider.d.ts +0 -5
- package/dist/cli-tui/smart-autocomplete-provider.d.ts.map +0 -1
- package/dist/cli-tui/smart-autocomplete-provider.js +0 -44
- package/dist/cli-tui/smart-autocomplete-provider.js.map +0 -1
- package/dist/cli-tui/startup-announcements.d.ts +0 -15
- package/dist/cli-tui/startup-announcements.d.ts.map +0 -1
- package/dist/cli-tui/startup-announcements.js +0 -75
- package/dist/cli-tui/startup-announcements.js.map +0 -1
- package/dist/cli-tui/status/cost-view.d.ts +0 -27
- package/dist/cli-tui/status/cost-view.d.ts.map +0 -1
- package/dist/cli-tui/status/cost-view.js +0 -212
- package/dist/cli-tui/status/cost-view.js.map +0 -1
- package/dist/cli-tui/status/diagnostics-templates.d.ts +0 -34
- package/dist/cli-tui/status/diagnostics-templates.d.ts.map +0 -1
- package/dist/cli-tui/status/diagnostics-templates.js +0 -167
- package/dist/cli-tui/status/diagnostics-templates.js.map +0 -1
- package/dist/cli-tui/status/diagnostics-view.d.ts +0 -48
- package/dist/cli-tui/status/diagnostics-view.d.ts.map +0 -1
- package/dist/cli-tui/status/diagnostics-view.js +0 -249
- package/dist/cli-tui/status/diagnostics-view.js.map +0 -1
- package/dist/cli-tui/status/diagnostics.d.ts +0 -39
- package/dist/cli-tui/status/diagnostics.d.ts.map +0 -1
- package/dist/cli-tui/status/diagnostics.js +0 -286
- package/dist/cli-tui/status/diagnostics.js.map +0 -1
- package/dist/cli-tui/status/health-snapshot.d.ts +0 -17
- package/dist/cli-tui/status/health-snapshot.d.ts.map +0 -1
- package/dist/cli-tui/status/health-snapshot.js +0 -28
- package/dist/cli-tui/status/health-snapshot.js.map +0 -1
- package/dist/cli-tui/status/quota-view.d.ts +0 -37
- package/dist/cli-tui/status/quota-view.d.ts.map +0 -1
- package/dist/cli-tui/status/quota-view.js +0 -309
- package/dist/cli-tui/status/quota-view.js.map +0 -1
- package/dist/cli-tui/status/telemetry-view.d.ts +0 -23
- package/dist/cli-tui/status/telemetry-view.d.ts.map +0 -1
- package/dist/cli-tui/status/telemetry-view.js +0 -77
- package/dist/cli-tui/status/telemetry-view.js.map +0 -1
- package/dist/cli-tui/status/training-view.d.ts +0 -23
- package/dist/cli-tui/status/training-view.d.ts.map +0 -1
- package/dist/cli-tui/status/training-view.js +0 -71
- package/dist/cli-tui/status/training-view.js.map +0 -1
- package/dist/cli-tui/streaming-view.d.ts +0 -43
- package/dist/cli-tui/streaming-view.d.ts.map +0 -1
- package/dist/cli-tui/streaming-view.js +0 -176
- package/dist/cli-tui/streaming-view.js.map +0 -1
- package/dist/cli-tui/terminal/index.d.ts +0 -2
- package/dist/cli-tui/terminal/index.d.ts.map +0 -1
- package/dist/cli-tui/terminal/index.js +0 -2
- package/dist/cli-tui/terminal/index.js.map +0 -1
- package/dist/cli-tui/terminal/terminal-utils.d.ts +0 -44
- package/dist/cli-tui/terminal/terminal-utils.d.ts.map +0 -1
- package/dist/cli-tui/terminal/terminal-utils.js +0 -145
- package/dist/cli-tui/terminal/terminal-utils.js.map +0 -1
- package/dist/cli-tui/tips/tip-scheduler.d.ts +0 -19
- package/dist/cli-tui/tips/tip-scheduler.d.ts.map +0 -1
- package/dist/cli-tui/tips/tip-scheduler.js +0 -135
- package/dist/cli-tui/tips/tip-scheduler.js.map +0 -1
- package/dist/cli-tui/tool-execution.d.ts +0 -76
- package/dist/cli-tui/tool-execution.d.ts.map +0 -1
- package/dist/cli-tui/tool-execution.js +0 -217
- package/dist/cli-tui/tool-execution.js.map +0 -1
- package/dist/cli-tui/tool-output-view.d.ts +0 -22
- package/dist/cli-tui/tool-output-view.d.ts.map +0 -1
- package/dist/cli-tui/tool-output-view.js +0 -71
- package/dist/cli-tui/tool-output-view.js.map +0 -1
- package/dist/cli-tui/tool-renderers/index.d.ts +0 -4
- package/dist/cli-tui/tool-renderers/index.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/index.js +0 -19
- package/dist/cli-tui/tool-renderers/index.js.map +0 -1
- package/dist/cli-tui/tool-renderers/render-bash.d.ts +0 -6
- package/dist/cli-tui/tool-renderers/render-bash.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/render-bash.js +0 -90
- package/dist/cli-tui/tool-renderers/render-bash.js.map +0 -1
- package/dist/cli-tui/tool-renderers/render-batch.d.ts +0 -12
- package/dist/cli-tui/tool-renderers/render-batch.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/render-batch.js +0 -133
- package/dist/cli-tui/tool-renderers/render-batch.js.map +0 -1
- package/dist/cli-tui/tool-renderers/render-edit.d.ts +0 -6
- package/dist/cli-tui/tool-renderers/render-edit.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/render-edit.js +0 -125
- package/dist/cli-tui/tool-renderers/render-edit.js.map +0 -1
- package/dist/cli-tui/tool-renderers/render-generic.d.ts +0 -6
- package/dist/cli-tui/tool-renderers/render-generic.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/render-generic.js +0 -66
- package/dist/cli-tui/tool-renderers/render-generic.js.map +0 -1
- package/dist/cli-tui/tool-renderers/render-read.d.ts +0 -9
- package/dist/cli-tui/tool-renderers/render-read.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/render-read.js +0 -108
- package/dist/cli-tui/tool-renderers/render-read.js.map +0 -1
- package/dist/cli-tui/tool-renderers/render-style.d.ts +0 -21
- package/dist/cli-tui/tool-renderers/render-style.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/render-style.js +0 -51
- package/dist/cli-tui/tool-renderers/render-style.js.map +0 -1
- package/dist/cli-tui/tool-renderers/render-write.d.ts +0 -5
- package/dist/cli-tui/tool-renderers/render-write.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/render-write.js +0 -60
- package/dist/cli-tui/tool-renderers/render-write.js.map +0 -1
- package/dist/cli-tui/tool-renderers/types.d.ts +0 -20
- package/dist/cli-tui/tool-renderers/types.d.ts.map +0 -1
- package/dist/cli-tui/tool-renderers/types.js +0 -2
- package/dist/cli-tui/tool-renderers/types.js.map +0 -1
- package/dist/cli-tui/tool-retry/tool-retry-controller.d.ts +0 -29
- package/dist/cli-tui/tool-retry/tool-retry-controller.d.ts.map +0 -1
- package/dist/cli-tui/tool-retry/tool-retry-controller.js +0 -110
- package/dist/cli-tui/tool-retry/tool-retry-controller.js.map +0 -1
- package/dist/cli-tui/tool-retry/tool-retry-modal.d.ts +0 -27
- package/dist/cli-tui/tool-retry/tool-retry-modal.d.ts.map +0 -1
- package/dist/cli-tui/tool-retry/tool-retry-modal.js +0 -118
- package/dist/cli-tui/tool-retry/tool-retry-modal.js.map +0 -1
- package/dist/cli-tui/tool-status-view.d.ts +0 -32
- package/dist/cli-tui/tool-status-view.d.ts.map +0 -1
- package/dist/cli-tui/tool-status-view.js +0 -86
- package/dist/cli-tui/tool-status-view.js.map +0 -1
- package/dist/cli-tui/tui-renderer/agent-event-bridge.d.ts +0 -59
- package/dist/cli-tui/tui-renderer/agent-event-bridge.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/agent-event-bridge.js +0 -129
- package/dist/cli-tui/tui-renderer/agent-event-bridge.js.map +0 -1
- package/dist/cli-tui/tui-renderer/approval-setup.d.ts +0 -13
- package/dist/cli-tui/tui-renderer/approval-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/approval-setup.js +0 -5
- package/dist/cli-tui/tui-renderer/approval-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/attachment-controller.d.ts +0 -54
- package/dist/cli-tui/tui-renderer/attachment-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/attachment-controller.js +0 -160
- package/dist/cli-tui/tui-renderer/attachment-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/background-tasks-setup.d.ts +0 -9
- package/dist/cli-tui/tui-renderer/background-tasks-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/background-tasks-setup.js +0 -7
- package/dist/cli-tui/tui-renderer/background-tasks-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/branch-controller.d.ts +0 -41
- package/dist/cli-tui/tui-renderer/branch-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/branch-controller.js +0 -102
- package/dist/cli-tui/tui-renderer/branch-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/clear-controller.d.ts +0 -75
- package/dist/cli-tui/tui-renderer/clear-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/clear-controller.js +0 -75
- package/dist/cli-tui/tui-renderer/clear-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/client-tools-setup.d.ts +0 -14
- package/dist/cli-tui/tui-renderer/client-tools-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/client-tools-setup.js +0 -5
- package/dist/cli-tui/tui-renderer/client-tools-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/command-registry-options.d.ts +0 -111
- package/dist/cli-tui/tui-renderer/command-registry-options.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/command-registry-options.js +0 -163
- package/dist/cli-tui/tui-renderer/command-registry-options.js.map +0 -1
- package/dist/cli-tui/tui-renderer/command-registry.d.ts +0 -16
- package/dist/cli-tui/tui-renderer/command-registry.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/command-registry.js +0 -23
- package/dist/cli-tui/tui-renderer/command-registry.js.map +0 -1
- package/dist/cli-tui/tui-renderer/command-suite-wiring.d.ts +0 -29
- package/dist/cli-tui/tui-renderer/command-suite-wiring.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/command-suite-wiring.js +0 -108
- package/dist/cli-tui/tui-renderer/command-suite-wiring.js.map +0 -1
- package/dist/cli-tui/tui-renderer/compaction-controller.d.ts +0 -100
- package/dist/cli-tui/tui-renderer/compaction-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/compaction-controller.js +0 -160
- package/dist/cli-tui/tui-renderer/compaction-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/custom-commands-controller.d.ts +0 -42
- package/dist/cli-tui/tui-renderer/custom-commands-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/custom-commands-controller.js +0 -106
- package/dist/cli-tui/tui-renderer/custom-commands-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/delegating-command-handlers.d.ts +0 -37
- package/dist/cli-tui/tui-renderer/delegating-command-handlers.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/delegating-command-handlers.js +0 -139
- package/dist/cli-tui/tui-renderer/delegating-command-handlers.js.map +0 -1
- package/dist/cli-tui/tui-renderer/editor-bindings.d.ts +0 -21
- package/dist/cli-tui/tui-renderer/editor-bindings.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/editor-bindings.js +0 -76
- package/dist/cli-tui/tui-renderer/editor-bindings.js.map +0 -1
- package/dist/cli-tui/tui-renderer/footer-hints-controller.d.ts +0 -90
- package/dist/cli-tui/tui-renderer/footer-hints-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/footer-hints-controller.js +0 -152
- package/dist/cli-tui/tui-renderer/footer-hints-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/history-controller.d.ts +0 -35
- package/dist/cli-tui/tui-renderer/history-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/history-controller.js +0 -153
- package/dist/cli-tui/tui-renderer/history-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/hook-ui-controller.d.ts +0 -83
- package/dist/cli-tui/tui-renderer/hook-ui-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/hook-ui-controller.js +0 -309
- package/dist/cli-tui/tui-renderer/hook-ui-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/initial-preferences.d.ts +0 -19
- package/dist/cli-tui/tui-renderer/initial-preferences.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/initial-preferences.js +0 -54
- package/dist/cli-tui/tui-renderer/initial-preferences.js.map +0 -1
- package/dist/cli-tui/tui-renderer/input-controller.d.ts +0 -56
- package/dist/cli-tui/tui-renderer/input-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/input-controller.js +0 -104
- package/dist/cli-tui/tui-renderer/input-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/interrupt-setup.d.ts +0 -19
- package/dist/cli-tui/tui-renderer/interrupt-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/interrupt-setup.js +0 -18
- package/dist/cli-tui/tui-renderer/interrupt-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/loader-setup.d.ts +0 -14
- package/dist/cli-tui/tui-renderer/loader-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/loader-setup.js +0 -13
- package/dist/cli-tui/tui-renderer/loader-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/mcp-events-setup.d.ts +0 -55
- package/dist/cli-tui/tui-renderer/mcp-events-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/mcp-events-setup.js +0 -143
- package/dist/cli-tui/tui-renderer/mcp-events-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/misc-handlers.d.ts +0 -59
- package/dist/cli-tui/tui-renderer/misc-handlers.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/misc-handlers.js +0 -143
- package/dist/cli-tui/tui-renderer/misc-handlers.js.map +0 -1
- package/dist/cli-tui/tui-renderer/oauth-setup.d.ts +0 -14
- package/dist/cli-tui/tui-renderer/oauth-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/oauth-setup.js +0 -26
- package/dist/cli-tui/tui-renderer/oauth-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/plan-setup.d.ts +0 -19
- package/dist/cli-tui/tui-renderer/plan-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/plan-setup.js +0 -23
- package/dist/cli-tui/tui-renderer/plan-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.d.ts +0 -21
- package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.js +0 -64
- package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.js.map +0 -1
- package/dist/cli-tui/tui-renderer/queue-setup.d.ts +0 -18
- package/dist/cli-tui/tui-renderer/queue-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/queue-setup.js +0 -42
- package/dist/cli-tui/tui-renderer/queue-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/quick-settings-controller.d.ts +0 -53
- package/dist/cli-tui/tui-renderer/quick-settings-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/quick-settings-controller.js +0 -100
- package/dist/cli-tui/tui-renderer/quick-settings-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/session-setup.d.ts +0 -31
- package/dist/cli-tui/tui-renderer/session-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/session-setup.js +0 -45
- package/dist/cli-tui/tui-renderer/session-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/session-state-controller.d.ts +0 -66
- package/dist/cli-tui/tui-renderer/session-state-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/session-state-controller.js +0 -139
- package/dist/cli-tui/tui-renderer/session-state-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/skills-controller.d.ts +0 -70
- package/dist/cli-tui/tui-renderer/skills-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/skills-controller.js +0 -411
- package/dist/cli-tui/tui-renderer/skills-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/slash-hint-controller.d.ts +0 -90
- package/dist/cli-tui/tui-renderer/slash-hint-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/slash-hint-controller.js +0 -131
- package/dist/cli-tui/tui-renderer/slash-hint-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/tool-retry-setup.d.ts +0 -13
- package/dist/cli-tui/tui-renderer/tool-retry-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/tool-retry-setup.js +0 -5
- package/dist/cli-tui/tui-renderer/tool-retry-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/tooling-views-setup.d.ts +0 -38
- package/dist/cli-tui/tui-renderer/tooling-views-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/tooling-views-setup.js +0 -48
- package/dist/cli-tui/tui-renderer/tooling-views-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/ui-state-controller.d.ts +0 -70
- package/dist/cli-tui/tui-renderer/ui-state-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/ui-state-controller.js +0 -184
- package/dist/cli-tui/tui-renderer/ui-state-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer/ui-state-setup.d.ts +0 -13
- package/dist/cli-tui/tui-renderer/ui-state-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/ui-state-setup.js +0 -11
- package/dist/cli-tui/tui-renderer/ui-state-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/utility-views-setup.d.ts +0 -26
- package/dist/cli-tui/tui-renderer/utility-views-setup.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/utility-views-setup.js +0 -23
- package/dist/cli-tui/tui-renderer/utility-views-setup.js.map +0 -1
- package/dist/cli-tui/tui-renderer/viewport-controller.d.ts +0 -33
- package/dist/cli-tui/tui-renderer/viewport-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/viewport-controller.js +0 -98
- package/dist/cli-tui/tui-renderer/viewport-controller.js.map +0 -1
- package/dist/cli-tui/tui-renderer.d.ts +0 -268
- package/dist/cli-tui/tui-renderer.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer.js +0 -2131
- package/dist/cli-tui/tui-renderer.js.map +0 -1
- package/dist/cli-tui/ui-state.d.ts +0 -27
- package/dist/cli-tui/ui-state.d.ts.map +0 -1
- package/dist/cli-tui/ui-state.js +0 -88
- package/dist/cli-tui/ui-state.js.map +0 -1
- package/dist/cli-tui/update-view.d.ts +0 -16
- package/dist/cli-tui/update-view.d.ts.map +0 -1
- package/dist/cli-tui/update-view.js +0 -45
- package/dist/cli-tui/update-view.js.map +0 -1
- package/dist/cli-tui/user-message.d.ts +0 -17
- package/dist/cli-tui/user-message.d.ts.map +0 -1
- package/dist/cli-tui/user-message.js +0 -83
- package/dist/cli-tui/user-message.js.map +0 -1
- package/dist/cli-tui/utils/borders.d.ts +0 -131
- package/dist/cli-tui/utils/borders.d.ts.map +0 -1
- package/dist/cli-tui/utils/borders.js +0 -254
- package/dist/cli-tui/utils/borders.js.map +0 -1
- package/dist/cli-tui/utils/commands/command-palette-view.d.ts +0 -22
- package/dist/cli-tui/utils/commands/command-palette-view.d.ts.map +0 -1
- package/dist/cli-tui/utils/commands/command-palette-view.js +0 -31
- package/dist/cli-tui/utils/commands/command-palette-view.js.map +0 -1
- package/dist/cli-tui/utils/commands/command-palette.d.ts +0 -29
- package/dist/cli-tui/utils/commands/command-palette.d.ts.map +0 -1
- package/dist/cli-tui/utils/commands/command-palette.js +0 -213
- package/dist/cli-tui/utils/commands/command-palette.js.map +0 -1
- package/dist/cli-tui/utils/commands/command-registry-builder.d.ts +0 -8
- package/dist/cli-tui/utils/commands/command-registry-builder.d.ts.map +0 -1
- package/dist/cli-tui/utils/commands/command-registry-builder.js +0 -9
- package/dist/cli-tui/utils/commands/command-registry-builder.js.map +0 -1
- package/dist/cli-tui/utils/commands/review-prompt.d.ts +0 -10
- package/dist/cli-tui/utils/commands/review-prompt.d.ts.map +0 -1
- package/dist/cli-tui/utils/commands/review-prompt.js +0 -90
- package/dist/cli-tui/utils/commands/review-prompt.js.map +0 -1
- package/dist/cli-tui/utils/commands/slash-hint-bar.d.ts +0 -15
- package/dist/cli-tui/utils/commands/slash-hint-bar.d.ts.map +0 -1
- package/dist/cli-tui/utils/commands/slash-hint-bar.js +0 -106
- package/dist/cli-tui/utils/commands/slash-hint-bar.js.map +0 -1
- package/dist/cli-tui/utils/env-detect.d.ts +0 -11
- package/dist/cli-tui/utils/env-detect.d.ts.map +0 -1
- package/dist/cli-tui/utils/env-detect.js +0 -107
- package/dist/cli-tui/utils/env-detect.js.map +0 -1
- package/dist/cli-tui/utils/external-editor.d.ts +0 -7
- package/dist/cli-tui/utils/external-editor.d.ts.map +0 -1
- package/dist/cli-tui/utils/external-editor.js +0 -53
- package/dist/cli-tui/utils/external-editor.js.map +0 -1
- package/dist/cli-tui/utils/footer-utils.d.ts +0 -169
- package/dist/cli-tui/utils/footer-utils.d.ts.map +0 -1
- package/dist/cli-tui/utils/footer-utils.js +0 -716
- package/dist/cli-tui/utils/footer-utils.js.map +0 -1
- package/dist/cli-tui/utils/footer-visual-widgets.d.ts +0 -38
- package/dist/cli-tui/utils/footer-visual-widgets.d.ts.map +0 -1
- package/dist/cli-tui/utils/footer-visual-widgets.js +0 -141
- package/dist/cli-tui/utils/footer-visual-widgets.js.map +0 -1
- package/dist/cli-tui/utils/git-branch-tracker.d.ts +0 -38
- package/dist/cli-tui/utils/git-branch-tracker.d.ts.map +0 -1
- package/dist/cli-tui/utils/git-branch-tracker.js +0 -90
- package/dist/cli-tui/utils/git-branch-tracker.js.map +0 -1
- package/dist/cli-tui/utils/glyphs.d.ts +0 -207
- package/dist/cli-tui/utils/glyphs.d.ts.map +0 -1
- package/dist/cli-tui/utils/glyphs.js +0 -249
- package/dist/cli-tui/utils/glyphs.js.map +0 -1
- package/dist/cli-tui/utils/layout.d.ts +0 -77
- package/dist/cli-tui/utils/layout.d.ts.map +0 -1
- package/dist/cli-tui/utils/layout.js +0 -83
- package/dist/cli-tui/utils/layout.js.map +0 -1
- package/dist/cli-tui/utils/links.d.ts +0 -2
- package/dist/cli-tui/utils/links.d.ts.map +0 -1
- package/dist/cli-tui/utils/links.js +0 -14
- package/dist/cli-tui/utils/links.js.map +0 -1
- package/dist/cli-tui/utils/motion.d.ts +0 -4
- package/dist/cli-tui/utils/motion.d.ts.map +0 -1
- package/dist/cli-tui/utils/motion.js +0 -28
- package/dist/cli-tui/utils/motion.js.map +0 -1
- package/dist/cli-tui/utils/runtime-badges.d.ts +0 -26
- package/dist/cli-tui/utils/runtime-badges.d.ts.map +0 -1
- package/dist/cli-tui/utils/runtime-badges.js +0 -178
- package/dist/cli-tui/utils/runtime-badges.js.map +0 -1
- package/dist/cli-tui/utils/shimmer.d.ts +0 -12
- package/dist/cli-tui/utils/shimmer.d.ts.map +0 -1
- package/dist/cli-tui/utils/shimmer.js +0 -57
- package/dist/cli-tui/utils/shimmer.js.map +0 -1
- package/dist/cli-tui/utils/stage-labels.d.ts +0 -9
- package/dist/cli-tui/utils/stage-labels.d.ts.map +0 -1
- package/dist/cli-tui/utils/stage-labels.js +0 -65
- package/dist/cli-tui/utils/stage-labels.js.map +0 -1
- package/dist/cli-tui/utils/text-formatting.d.ts +0 -13
- package/dist/cli-tui/utils/text-formatting.d.ts.map +0 -1
- package/dist/cli-tui/utils/text-formatting.js +0 -109
- package/dist/cli-tui/utils/text-formatting.js.map +0 -1
- package/dist/cli-tui/utils/text-preview.d.ts +0 -10
- package/dist/cli-tui/utils/text-preview.d.ts.map +0 -1
- package/dist/cli-tui/utils/text-preview.js +0 -26
- package/dist/cli-tui/utils/text-preview.js.map +0 -1
- package/dist/cli-tui/utils/tool-text-utils.d.ts +0 -42
- package/dist/cli-tui/utils/tool-text-utils.d.ts.map +0 -1
- package/dist/cli-tui/utils/tool-text-utils.js +0 -361
- package/dist/cli-tui/utils/tool-text-utils.js.map +0 -1
- package/dist/cli-tui/welcome-animation.d.ts +0 -24
- package/dist/cli-tui/welcome-animation.d.ts.map +0 -1
- package/dist/cli-tui/welcome-animation.js +0 -99
- package/dist/cli-tui/welcome-animation.js.map +0 -1
- package/dist/cli-tui/welcome-colors.d.ts +0 -3
- package/dist/cli-tui/welcome-colors.d.ts.map +0 -1
- package/dist/cli-tui/welcome-colors.js +0 -39
- package/dist/cli-tui/welcome-colors.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/autocomplete.d.ts +0 -304
- package/dist/node_modules/@evalops/tui/dist/autocomplete.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/autocomplete.js +0 -712
- package/dist/node_modules/@evalops/tui/dist/autocomplete.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/editor.d.ts +0 -185
- package/dist/node_modules/@evalops/tui/dist/components/editor.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/editor.js +0 -1460
- package/dist/node_modules/@evalops/tui/dist/components/editor.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/input.d.ts +0 -117
- package/dist/node_modules/@evalops/tui/dist/components/input.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/input.js +0 -391
- package/dist/node_modules/@evalops/tui/dist/components/input.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/layout.d.ts +0 -256
- package/dist/node_modules/@evalops/tui/dist/components/layout.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/layout.js +0 -478
- package/dist/node_modules/@evalops/tui/dist/components/layout.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/loader.d.ts +0 -199
- package/dist/node_modules/@evalops/tui/dist/components/loader.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/loader.js +0 -374
- package/dist/node_modules/@evalops/tui/dist/components/loader.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/markdown.d.ts +0 -65
- package/dist/node_modules/@evalops/tui/dist/components/markdown.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/markdown.js +0 -562
- package/dist/node_modules/@evalops/tui/dist/components/markdown.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/scroll-container.d.ts +0 -262
- package/dist/node_modules/@evalops/tui/dist/components/scroll-container.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/scroll-container.js +0 -575
- package/dist/node_modules/@evalops/tui/dist/components/scroll-container.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/select-list.d.ts +0 -131
- package/dist/node_modules/@evalops/tui/dist/components/select-list.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/select-list.js +0 -257
- package/dist/node_modules/@evalops/tui/dist/components/select-list.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/spacer.d.ts +0 -11
- package/dist/node_modules/@evalops/tui/dist/components/spacer.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/spacer.js +0 -19
- package/dist/node_modules/@evalops/tui/dist/components/spacer.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/status-bar.d.ts +0 -22
- package/dist/node_modules/@evalops/tui/dist/components/status-bar.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/status-bar.js +0 -44
- package/dist/node_modules/@evalops/tui/dist/components/status-bar.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/text.d.ts +0 -26
- package/dist/node_modules/@evalops/tui/dist/components/text.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/text.js +0 -181
- package/dist/node_modules/@evalops/tui/dist/components/text.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/truncated-text.d.ts +0 -15
- package/dist/node_modules/@evalops/tui/dist/components/truncated-text.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/components/truncated-text.js +0 -84
- package/dist/node_modules/@evalops/tui/dist/components/truncated-text.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/index.d.ts +0 -87
- package/dist/node_modules/@evalops/tui/dist/index.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/index.js +0 -85
- package/dist/node_modules/@evalops/tui/dist/index.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/keymap.d.ts +0 -189
- package/dist/node_modules/@evalops/tui/dist/keymap.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/keymap.js +0 -363
- package/dist/node_modules/@evalops/tui/dist/keymap.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.d.ts +0 -25
- package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.js +0 -828
- package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.d.ts +0 -40
- package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.js +0 -474
- package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/terminal.d.ts +0 -201
- package/dist/node_modules/@evalops/tui/dist/terminal.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/terminal.js +0 -241
- package/dist/node_modules/@evalops/tui/dist/terminal.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/tui.d.ts +0 -263
- package/dist/node_modules/@evalops/tui/dist/tui.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/tui.js +0 -694
- package/dist/node_modules/@evalops/tui/dist/tui.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.d.ts +0 -14
- package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.js +0 -44
- package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.js.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/utils.d.ts +0 -32
- package/dist/node_modules/@evalops/tui/dist/utils.d.ts.map +0 -1
- package/dist/node_modules/@evalops/tui/dist/utils.js +0 -556
- package/dist/node_modules/@evalops/tui/dist/utils.js.map +0 -1
- package/dist/node_modules/@evalops/tui/package.json +0 -58
- package/dist/skills/artifact-metadata.d.ts +0 -16
- package/dist/skills/artifact-metadata.d.ts.map +0 -1
- package/dist/skills/artifact-metadata.js +0 -86
- package/dist/skills/artifact-metadata.js.map +0 -1
- package/dist/skills/composer-diagnostics.d.ts +0 -69
- package/dist/skills/composer-diagnostics.d.ts.map +0 -1
- package/dist/skills/composer-diagnostics.js +0 -78
- package/dist/skills/composer-diagnostics.js.map +0 -1
- package/dist/skills/composer.d.ts +0 -19
- package/dist/skills/composer.d.ts.map +0 -1
- package/dist/skills/composer.js +0 -52
- package/dist/skills/composer.js.map +0 -1
- package/dist/skills/eval-harness.d.ts +0 -38
- package/dist/skills/eval-harness.d.ts.map +0 -1
- package/dist/skills/eval-harness.js +0 -112
- package/dist/skills/eval-harness.js.map +0 -1
- package/dist/skills/index.d.ts +0 -40
- package/dist/skills/index.d.ts.map +0 -1
- package/dist/skills/index.js +0 -40
- package/dist/skills/index.js.map +0 -1
- package/dist/skills/linter.d.ts +0 -36
- package/dist/skills/linter.d.ts.map +0 -1
- package/dist/skills/linter.js +0 -399
- package/dist/skills/linter.js.map +0 -1
- package/dist/skills/loader.d.ts +0 -252
- package/dist/skills/loader.d.ts.map +0 -1
- package/dist/skills/loader.js +0 -957
- package/dist/skills/loader.js.map +0 -1
- package/dist/skills/package-contract.d.ts +0 -45
- package/dist/skills/package-contract.d.ts.map +0 -1
- package/dist/skills/package-contract.js +0 -153
- package/dist/skills/package-contract.js.map +0 -1
- package/dist/skills/runtime-activation.d.ts +0 -68
- package/dist/skills/runtime-activation.d.ts.map +0 -1
- package/dist/skills/runtime-activation.js +0 -228
- package/dist/skills/runtime-activation.js.map +0 -1
- package/dist/skills/scaffold-from-template.d.ts +0 -58
- package/dist/skills/scaffold-from-template.d.ts.map +0 -1
- package/dist/skills/scaffold-from-template.js +0 -72
- package/dist/skills/scaffold-from-template.js.map +0 -1
- package/dist/skills/scaffolder.d.ts +0 -65
- package/dist/skills/scaffolder.d.ts.map +0 -1
- package/dist/skills/scaffolder.js +0 -167
- package/dist/skills/scaffolder.js.map +0 -1
- package/dist/skills/service-client.d.ts +0 -56
- package/dist/skills/service-client.d.ts.map +0 -1
- package/dist/skills/service-client.js +0 -266
- package/dist/skills/service-client.js.map +0 -1
- package/dist/skills/skill-templates.d.ts +0 -70
- package/dist/skills/skill-templates.d.ts.map +0 -1
- package/dist/skills/skill-templates.js +0 -154
- package/dist/skills/skill-templates.js.map +0 -1
- package/dist/skills/tool.d.ts +0 -21
- package/dist/skills/tool.d.ts.map +0 -1
- package/dist/skills/tool.js +0 -334
- package/dist/skills/tool.js.map +0 -1
- package/dist/skills/trust-cache.d.ts +0 -58
- package/dist/skills/trust-cache.d.ts.map +0 -1
- package/dist/skills/trust-cache.js +0 -130
- package/dist/skills/trust-cache.js.map +0 -1
- package/dist/skills/types.d.ts +0 -91
- package/dist/skills/types.d.ts.map +0 -1
- package/dist/skills/types.js +0 -8
- package/dist/skills/types.js.map +0 -1
- /package/dist/{cli-tui → runtime}/prompt-queue.d.ts +0 -0
- /package/dist/{cli-tui → runtime}/prompt-queue.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route-auth.js","sourceRoot":"","sources":["../../src/server/route-auth.ts"],"names":[],"mappings":"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","sourcesContent":["import { HOSTED_RUNNER_DRAIN_PATH } from \"./handlers/hosted-runner-drain.js\";\nimport { HOSTED_RUNNER_IDENTITY_PATH } from \"./handlers/hosted-runner-identity.js\";\nimport { PLATFORM_A2A_PUSH_CALLBACK_PATH } from \"./handlers/platform-a2a-push.js\";\nimport type { Route, RouteAuthLevel, RouteAuthPolicy } from \"./router.js\";\n\nexport interface RouteAuthPolicyEntry {\n\tmethod: string;\n\tpath: string;\n\tauth: RouteAuthPolicy;\n}\n\nfunction p(\n\tmethod: string,\n\tpath: string,\n\tlevel: RouteAuthLevel,\n\toptions: Omit<RouteAuthPolicy, \"level\"> = {},\n): RouteAuthPolicyEntry {\n\treturn { method, path, auth: { level, ...options } };\n}\n\nexport const ROUTE_AUTH_POLICIES: readonly RouteAuthPolicyEntry[] = [\n\tp(\"GET\", \"/healthz\", \"public\"),\n\tp(\"GET\", \"/readyz\", \"public\"),\n\tp(\"GET\", HOSTED_RUNNER_IDENTITY_PATH, \"public\"),\n\tp(\"POST\", HOSTED_RUNNER_DRAIN_PATH, \"public\"),\n\tp(\"POST\", PLATFORM_A2A_PUSH_CALLBACK_PATH, \"authenticated\"),\n\tp(\"GET\", \"/api/a2a/cockpit\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/connections\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions\", \"authenticated\"),\n\tp(\"GET\", \"/api/headless/sessions/:id\", \"authenticated\"),\n\tp(\"GET\", \"/api/headless/sessions/:id/events\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/subscribe\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/unsubscribe\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/heartbeat\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/disconnect\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/messages\", \"authenticated\"),\n\tp(\"GET\", \"/debug/z\", \"authenticated\"),\n\tp(\"GET\", \"/api/files\", \"authenticated\"),\n\tp(\"GET\", \"/api/commands\", \"authenticated\"),\n\tp(\"GET\", \"/api/command-prefs\", \"authenticated\"),\n\tp(\"POST\", \"/api/command-prefs\", \"authenticated\"),\n\tp(\"GET\", \"/api/models\", \"authenticated\"),\n\tp(\"GET\", \"/api/status\", \"authenticated\"),\n\tp(\"POST\", \"/api/prompt-suggestion\", \"authenticated\"),\n\tp(\"POST\", \"/api/status\", \"authenticated\"),\n\tp(\"GET\", \"/api/bridge/status\", \"authenticated\"),\n\tp(\"GET\", \"/api/config\", \"authenticated\"),\n\tp(\"POST\", \"/api/config\", \"authenticated\"),\n\tp(\"GET\", \"/api/guardian/status\", \"authenticated\"),\n\tp(\"POST\", \"/api/guardian/run\", \"authenticated\"),\n\tp(\"POST\", \"/api/guardian/config\", \"authenticated\"),\n\tp(\"GET\", \"/api/plan\", \"authenticated\"),\n\tp(\"POST\", \"/api/plan\", \"authenticated\"),\n\tp(\"GET\", \"/api/mcp\", \"authenticated\"),\n\tp(\"POST\", \"/api/mcp\", \"authenticated\"),\n\tp(\"GET\", \"/api/package\", \"authenticated\"),\n\tp(\"POST\", \"/api/package\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/analytics\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/analytics/:period\", \"authenticated\"),\n\tp(\"POST\", \"/api/traces\", \"authenticated\"),\n\tp(\"GET\", \"/api/traces\", \"authenticated\"),\n\tp(\"GET\", \"/api/traces/:id\", \"authenticated\"),\n\tp(\"GET\", \"/api/workspace-configs\", \"authenticated\"),\n\tp(\"POST\", \"/api/workspace-configs\", \"authenticated\"),\n\tp(\"GET\", \"/api/workspace-configs/:workspaceId\", \"authenticated\"),\n\tp(\"PUT\", \"/api/workspace-configs/:workspaceId\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/workspace-configs/:workspaceId\", \"authenticated\"),\n\tp(\"POST\", \"/api/compliance/generate-report\", \"authenticated\"),\n\tp(\"GET\", \"/api/compliance/controls\", \"authenticated\"),\n\tp(\"GET\", \"/api/compliance/evidence/:controlId\", \"authenticated\"),\n\tp(\"POST\", \"/api/attribution/record-outcome\", \"authenticated\"),\n\tp(\"GET\", \"/api/attribution/roi/:agentId\", \"authenticated\"),\n\tp(\"GET\", \"/api/intelligent-router/decisions\", \"authenticated\"),\n\tp(\"POST\", \"/api/intelligent-router/decisions\", \"authenticated\"),\n\tp(\"GET\", \"/api/intelligent-router/metrics\", \"authenticated\"),\n\tp(\"POST\", \"/api/intelligent-router/metrics\", \"authenticated\"),\n\tp(\"GET\", \"/api/intelligent-router/overrides\", \"authenticated\"),\n\tp(\"POST\", \"/api/intelligent-router/overrides\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/intelligent-router/overrides/:taskType\", \"authenticated\"),\n\tp(\"GET\", \"/api/fleet\", \"authenticated\"),\n\tp(\"GET\", \"/api/background\", \"authenticated\"),\n\tp(\"POST\", \"/api/background\", \"authenticated\"),\n\tp(\"GET\", \"/api/automations\", \"authenticated\"),\n\tp(\"POST\", \"/api/automations\", \"authenticated\"),\n\tp(\"POST\", \"/api/automations/preview\", \"authenticated\"),\n\tp(\"GET\", \"/api/automations/magic-docs\", \"authenticated\"),\n\tp(\"PATCH\", \"/api/automations/:id\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/automations/:id\", \"authenticated\"),\n\tp(\"POST\", \"/api/automations/:id/run\", \"authenticated\"),\n\tp(\"GET\", \"/api/undo\", \"authenticated\"),\n\tp(\"POST\", \"/api/undo\", \"authenticated\"),\n\tp(\"GET\", \"/api/changes\", \"authenticated\"),\n\tp(\"GET\", \"/api/approvals\", \"authenticated\"),\n\tp(\"POST\", \"/api/approvals\", \"authenticated\"),\n\tp(\"GET\", \"/api/framework\", \"authenticated\"),\n\tp(\"POST\", \"/api/framework\", \"authenticated\"),\n\tp(\"GET\", \"/api/tools\", \"authenticated\"),\n\tp(\"GET\", \"/api/review\", \"authenticated\"),\n\tp(\"GET\", \"/api/context\", \"authenticated\"),\n\tp(\"GET\", \"/api/stats\", \"authenticated\"),\n\tp(\"GET\", \"/api/telemetry\", \"authenticated\"),\n\tp(\"POST\", \"/api/telemetry\", \"authenticated\"),\n\tp(\"GET\", \"/api/training\", \"authenticated\"),\n\tp(\"POST\", \"/api/training\", \"authenticated\"),\n\tp(\"GET\", \"/api/diagnostics\", \"authenticated\"),\n\tp(\"GET\", \"/api/lsp\", \"authenticated\"),\n\tp(\"POST\", \"/api/lsp\", \"authenticated\"),\n\tp(\"GET\", \"/api/workflow\", \"authenticated\"),\n\tp(\"POST\", \"/api/workflow\", \"authenticated\"),\n\tp(\"GET\", \"/api/run\", \"authenticated\"),\n\tp(\"POST\", \"/api/run\", \"authenticated\"),\n\tp(\"GET\", \"/api/ollama\", \"authenticated\"),\n\tp(\"POST\", \"/api/ollama\", \"authenticated\"),\n\tp(\"GET\", \"/api/preview\", \"authenticated\"),\n\tp(\"GET\", \"/api/composer\", \"authenticated\"),\n\tp(\"POST\", \"/api/composer\", \"authenticated\"),\n\tp(\"GET\", \"/api/cost\", \"authenticated\"),\n\tp(\"POST\", \"/api/cost\", \"authenticated\"),\n\tp(\"GET\", \"/api/quota\", \"authenticated\"),\n\tp(\"POST\", \"/api/quota\", \"authenticated\"),\n\tp(\"GET\", \"/api/memory\", \"authenticated\"),\n\tp(\"POST\", \"/api/memory\", \"authenticated\"),\n\tp(\"GET\", \"/api/mode\", \"authenticated\"),\n\tp(\"POST\", \"/api/mode\", \"authenticated\"),\n\tp(\"GET\", \"/api/zen\", \"authenticated\"),\n\tp(\"POST\", \"/api/zen\", \"authenticated\"),\n\tp(\"GET\", \"/api/ui\", \"authenticated\"),\n\tp(\"POST\", \"/api/ui\", \"authenticated\"),\n\tp(\"GET\", \"/api/queue\", \"authenticated\"),\n\tp(\"POST\", \"/api/queue\", \"authenticated\"),\n\tp(\"GET\", \"/api/branch\", \"authenticated\"),\n\tp(\"POST\", \"/api/branch\", \"authenticated\"),\n\tp(\"GET\", \"/api/model\", \"authenticated\"),\n\tp(\"POST\", \"/api/model\", \"authenticated\"),\n\tp(\"GET\", \"/api/metrics\", \"authenticated\"),\n\tp(\"POST\", \"/api/chat\", \"authenticated\"),\n\tp(\"POST\", \"/api/pending-requests/:requestId/resume\", \"owner\"),\n\tp(\"POST\", \"/api/chat/approval\", \"authenticated\"),\n\tp(\"POST\", \"/api/chat/client-tool-result\", \"authenticated\"),\n\tp(\"POST\", \"/api/chat/tool-retry\", \"authenticated\"),\n\tp(\"POST\", \"/api/attachments/extract\", \"authenticated\"),\n\tp(\"GET\", \"/api/sessions/:id/artifacts\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/artifact-access\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/artifacts.zip\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/artifacts/events\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/artifacts/:filename\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/artifacts/:filename/view\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/attachments/:attachmentId\", \"owner\"),\n\tp(\"POST\", \"/api/sessions/:id/attachments/:attachmentId/extract\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/timeline\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/replay-lab\", \"owner\"),\n\tp(\"GET\", \"/api/sessions\", \"authenticated\"),\n\tp(\"POST\", \"/api/sessions\", \"authenticated\"),\n\tp(\"GET\", \"/api/sessions/:id\", \"owner\"),\n\tp(\"PATCH\", \"/api/sessions/:id\", \"owner\"),\n\tp(\"DELETE\", \"/api/sessions/:id\", \"owner\"),\n\tp(\"POST\", \"/api/sessions/:id/share\", \"owner\"),\n\tp(\"POST\", \"/api/sessions/:id/export\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/shared/:token\", \"authenticated\"),\n\tp(\n\t\t\"GET\",\n\t\t\"/api/sessions/shared/:token/attachments/:attachmentId\",\n\t\t\"authenticated\",\n\t),\n\tp(\"POST\", \"/api/policy/validate\", \"authenticated\"),\n\tp(\"POST\", \"/api/admin/cleanup\", \"authenticated\"),\n\tp(\"POST\", \"/api/admin/warm-caches\", \"authenticated\"),\n] as const;\n\nexport const ENTERPRISE_ROUTE_AUTH_POLICIES: readonly RouteAuthPolicyEntry[] = [\n\tp(\"POST\", \"/api/auth/register\", \"public\"),\n\tp(\"POST\", \"/api/auth/login\", \"public\"),\n\tp(\"GET\", \"/api/auth/me\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/quota\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/org\", \"authenticated\"),\n\tp(\"GET\", \"/api/audit/logs\", \"authenticated\"),\n\tp(\"GET\", \"/api/alerts\", \"authenticated\"),\n\tp(\"POST\", \"/api/alerts/:alertId/read\", \"authenticated\"),\n\tp(\"POST\", \"/api/alerts/:alertId/resolve\", \"authenticated\"),\n\tp(\"GET\", \"/api/org/members\", \"authenticated\"),\n\tp(\"POST\", \"/api/org/members/invite\", \"authenticated\"),\n\tp(\"PUT\", \"/api/org/members/:userId/role\", \"authenticated\"),\n\tp(\"PUT\", \"/api/org/members/:userId/quota\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/org/members/:userId\", \"authenticated\"),\n\tp(\"GET\", \"/api/org/settings\", \"authenticated\"),\n\tp(\"PUT\", \"/api/org/settings\", \"authenticated\"),\n\tp(\"GET\", \"/api/roles\", \"authenticated\"),\n\tp(\"GET\", \"/api/models/approvals\", \"authenticated\"),\n\tp(\"POST\", \"/api/models/approvals/:modelId/approve\", \"authenticated\"),\n\tp(\"POST\", \"/api/models/approvals/:modelId/deny\", \"authenticated\"),\n\tp(\"GET\", \"/api/directory-rules\", \"authenticated\"),\n\tp(\"POST\", \"/api/directory-rules\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/directory-rules/:ruleId\", \"authenticated\"),\n] as const;\n\nfunction routeKey(method: string, path: string): string {\n\treturn `${method.toUpperCase()} ${path}`;\n}\n\nfunction toSegments(pathname: string): string[] {\n\tif (pathname === \"/\" || pathname === \"\") return [];\n\treturn pathname.replace(/^\\/+|\\/+$/g, \"\").split(\"/\");\n}\n\nfunction pathMatches(pattern: string, pathname: string): boolean {\n\tconst patternSegments = toSegments(pattern);\n\tconst pathSegments = toSegments(pathname);\n\tif (patternSegments.length !== pathSegments.length) return false;\n\tfor (let i = 0; i < patternSegments.length; i++) {\n\t\tconst patternSegment = patternSegments[i]!;\n\t\tconst pathSegment = pathSegments[i]!;\n\t\tif (patternSegment.startsWith(\":\")) continue;\n\t\tif (patternSegment !== pathSegment) return false;\n\t}\n\treturn true;\n}\n\nfunction validateUniquePolicies(\n\tpolicies: readonly RouteAuthPolicyEntry[],\n): Map<string, RouteAuthPolicy> {\n\tconst policyByRoute = new Map<string, RouteAuthPolicy>();\n\tconst duplicates: string[] = [];\n\tfor (const policy of policies) {\n\t\tconst key = routeKey(policy.method, policy.path);\n\t\tif (policyByRoute.has(key)) {\n\t\t\tduplicates.push(key);\n\t\t\tcontinue;\n\t\t}\n\t\tpolicyByRoute.set(key, policy.auth);\n\t}\n\tif (duplicates.length > 0) {\n\t\tthrow new Error(\n\t\t\t`Duplicate route auth policy entries: ${duplicates.join(\", \")}`,\n\t\t);\n\t}\n\treturn policyByRoute;\n}\n\nexport function withRouteAuthPolicies(\n\troutes: readonly Route[],\n\tpolicies: readonly RouteAuthPolicyEntry[] = ROUTE_AUTH_POLICIES,\n): Route[] {\n\tconst policyByRoute = validateUniquePolicies(policies);\n\tconst routeKeys = new Set<string>();\n\tconst duplicates: string[] = [];\n\tconst missing: string[] = [];\n\n\tfor (const route of routes) {\n\t\tconst key = routeKey(route.method, route.path);\n\t\tif (routeKeys.has(key)) {\n\t\t\tduplicates.push(key);\n\t\t}\n\t\trouteKeys.add(key);\n\t\tif (!policyByRoute.has(key)) {\n\t\t\tmissing.push(key);\n\t\t}\n\t}\n\n\tconst stale = Array.from(policyByRoute.keys()).filter(\n\t\t(key) => !routeKeys.has(key),\n\t);\n\tconst failures = [\n\t\tduplicates.length > 0\n\t\t\t? `Duplicate route definitions: ${duplicates.join(\", \")}`\n\t\t\t: null,\n\t\tmissing.length > 0\n\t\t\t? `Missing route auth policies: ${missing.join(\", \")}`\n\t\t\t: null,\n\t\tstale.length > 0 ? `Stale route auth policies: ${stale.join(\", \")}` : null,\n\t].filter((value): value is string => Boolean(value));\n\n\tif (failures.length > 0) {\n\t\tthrow new Error(failures.join(\"; \"));\n\t}\n\n\treturn routes.map((route) => ({\n\t\t...route,\n\t\tauth: policyByRoute.get(routeKey(route.method, route.path)),\n\t}));\n}\n\nexport function findRouteAuthPolicy(\n\tmethod: string,\n\tpathname: string,\n\troutes: readonly Route[],\n): RouteAuthPolicy | null {\n\tconst targetMethod = method.toUpperCase();\n\tfor (const route of routes) {\n\t\tif (route.method.toUpperCase() !== targetMethod) continue;\n\t\tif (pathMatches(route.path, pathname)) {\n\t\t\treturn route.auth ?? null;\n\t\t}\n\t}\n\treturn null;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"route-auth.js","sourceRoot":"","sources":["../../src/server/route-auth.ts"],"names":[],"mappings":"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","sourcesContent":["import { HOSTED_RUNNER_DRAIN_PATH } from \"./handlers/hosted-runner-drain.js\";\nimport { HOSTED_RUNNER_IDENTITY_PATH } from \"./handlers/hosted-runner-identity.js\";\nimport { PLATFORM_A2A_PUSH_CALLBACK_PATH } from \"./handlers/platform-a2a-push.js\";\nimport type { Route, RouteAuthLevel, RouteAuthPolicy } from \"./router.js\";\n\nexport interface RouteAuthPolicyEntry {\n\tmethod: string;\n\tpath: string;\n\tauth: RouteAuthPolicy;\n}\n\nfunction p(\n\tmethod: string,\n\tpath: string,\n\tlevel: RouteAuthLevel,\n\toptions: Omit<RouteAuthPolicy, \"level\"> = {},\n): RouteAuthPolicyEntry {\n\treturn { method, path, auth: { level, ...options } };\n}\n\nexport const ROUTE_AUTH_POLICIES: readonly RouteAuthPolicyEntry[] = [\n\tp(\"GET\", \"/healthz\", \"public\"),\n\tp(\"GET\", \"/readyz\", \"public\"),\n\tp(\"GET\", HOSTED_RUNNER_IDENTITY_PATH, \"public\"),\n\tp(\"POST\", HOSTED_RUNNER_DRAIN_PATH, \"public\"),\n\tp(\"POST\", PLATFORM_A2A_PUSH_CALLBACK_PATH, \"authenticated\"),\n\tp(\"GET\", \"/api/a2a/cockpit\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/connections\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions\", \"authenticated\"),\n\tp(\"GET\", \"/api/headless/sessions/:id\", \"authenticated\"),\n\tp(\"GET\", \"/api/headless/sessions/:id/events\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/subscribe\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/unsubscribe\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/heartbeat\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/disconnect\", \"authenticated\"),\n\tp(\"POST\", \"/api/headless/sessions/:id/messages\", \"authenticated\"),\n\tp(\"GET\", \"/debug/z\", \"authenticated\"),\n\tp(\"GET\", \"/api/files\", \"authenticated\"),\n\tp(\"GET\", \"/api/commands\", \"authenticated\"),\n\tp(\"GET\", \"/api/command-prefs\", \"authenticated\"),\n\tp(\"POST\", \"/api/command-prefs\", \"authenticated\"),\n\tp(\"GET\", \"/api/models\", \"authenticated\"),\n\tp(\"GET\", \"/api/status\", \"authenticated\"),\n\tp(\"POST\", \"/api/prompt-suggestion\", \"authenticated\"),\n\tp(\"POST\", \"/api/status\", \"authenticated\"),\n\tp(\"GET\", \"/api/bridge/status\", \"authenticated\"),\n\tp(\"GET\", \"/api/config\", \"authenticated\"),\n\tp(\"POST\", \"/api/config\", \"authenticated\"),\n\tp(\"GET\", \"/api/guardian/status\", \"authenticated\"),\n\tp(\"POST\", \"/api/guardian/run\", \"authenticated\"),\n\tp(\"POST\", \"/api/guardian/config\", \"authenticated\"),\n\tp(\"GET\", \"/api/plan\", \"authenticated\"),\n\tp(\"POST\", \"/api/plan\", \"authenticated\"),\n\tp(\"GET\", \"/api/mcp\", \"authenticated\"),\n\tp(\"POST\", \"/api/mcp\", \"authenticated\"),\n\tp(\"GET\", \"/api/package\", \"authenticated\"),\n\tp(\"POST\", \"/api/package\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/analytics\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/analytics/:period\", \"authenticated\"),\n\tp(\"POST\", \"/api/traces\", \"authenticated\"),\n\tp(\"GET\", \"/api/traces\", \"authenticated\"),\n\tp(\"GET\", \"/api/traces/:id\", \"authenticated\"),\n\tp(\"GET\", \"/api/workspace-configs\", \"authenticated\"),\n\tp(\"POST\", \"/api/workspace-configs\", \"authenticated\"),\n\tp(\"GET\", \"/api/workspace-configs/:workspaceId\", \"authenticated\"),\n\tp(\"PUT\", \"/api/workspace-configs/:workspaceId\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/workspace-configs/:workspaceId\", \"authenticated\"),\n\tp(\"POST\", \"/api/compliance/generate-report\", \"authenticated\"),\n\tp(\"GET\", \"/api/compliance/controls\", \"authenticated\"),\n\tp(\"GET\", \"/api/compliance/evidence/:controlId\", \"authenticated\"),\n\tp(\"POST\", \"/api/attribution/record-outcome\", \"authenticated\"),\n\tp(\"GET\", \"/api/attribution/roi/:agentId\", \"authenticated\"),\n\tp(\"GET\", \"/api/intelligent-router/decisions\", \"authenticated\"),\n\tp(\"POST\", \"/api/intelligent-router/decisions\", \"authenticated\"),\n\tp(\"GET\", \"/api/intelligent-router/metrics\", \"authenticated\"),\n\tp(\"POST\", \"/api/intelligent-router/metrics\", \"authenticated\"),\n\tp(\"GET\", \"/api/intelligent-router/overrides\", \"authenticated\"),\n\tp(\"POST\", \"/api/intelligent-router/overrides\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/intelligent-router/overrides/:taskType\", \"authenticated\"),\n\tp(\"GET\", \"/api/fleet\", \"authenticated\"),\n\tp(\"GET\", \"/api/background\", \"authenticated\"),\n\tp(\"POST\", \"/api/background\", \"authenticated\"),\n\tp(\"GET\", \"/api/automations\", \"authenticated\"),\n\tp(\"POST\", \"/api/automations\", \"authenticated\"),\n\tp(\"POST\", \"/api/automations/preview\", \"authenticated\"),\n\tp(\"GET\", \"/api/automations/magic-docs\", \"authenticated\"),\n\tp(\"PATCH\", \"/api/automations/:id\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/automations/:id\", \"authenticated\"),\n\tp(\"POST\", \"/api/automations/:id/run\", \"authenticated\"),\n\tp(\"GET\", \"/api/undo\", \"authenticated\"),\n\tp(\"POST\", \"/api/undo\", \"authenticated\"),\n\tp(\"GET\", \"/api/changes\", \"authenticated\"),\n\tp(\"GET\", \"/api/approvals\", \"authenticated\"),\n\tp(\"POST\", \"/api/approvals\", \"authenticated\"),\n\tp(\"GET\", \"/api/framework\", \"authenticated\"),\n\tp(\"POST\", \"/api/framework\", \"authenticated\"),\n\tp(\"GET\", \"/api/tools\", \"authenticated\"),\n\tp(\"GET\", \"/api/review\", \"authenticated\"),\n\tp(\"GET\", \"/api/context\", \"authenticated\"),\n\tp(\"GET\", \"/api/stats\", \"authenticated\"),\n\tp(\"GET\", \"/api/telemetry\", \"authenticated\"),\n\tp(\"POST\", \"/api/telemetry\", \"authenticated\"),\n\tp(\"GET\", \"/api/training\", \"authenticated\"),\n\tp(\"POST\", \"/api/training\", \"authenticated\"),\n\tp(\"GET\", \"/api/diagnostics\", \"authenticated\"),\n\tp(\"GET\", \"/api/lsp\", \"authenticated\"),\n\tp(\"POST\", \"/api/lsp\", \"authenticated\"),\n\tp(\"GET\", \"/api/workflow\", \"authenticated\"),\n\tp(\"POST\", \"/api/workflow\", \"authenticated\"),\n\tp(\"GET\", \"/api/run\", \"authenticated\"),\n\tp(\"POST\", \"/api/run\", \"authenticated\"),\n\tp(\"GET\", \"/api/ollama\", \"authenticated\"),\n\tp(\"POST\", \"/api/ollama\", \"authenticated\"),\n\tp(\"GET\", \"/api/preview\", \"authenticated\"),\n\tp(\"GET\", \"/api/composer\", \"authenticated\"),\n\tp(\"POST\", \"/api/composer\", \"authenticated\"),\n\tp(\"GET\", \"/api/cost\", \"authenticated\"),\n\tp(\"POST\", \"/api/cost\", \"authenticated\"),\n\tp(\"GET\", \"/api/quota\", \"authenticated\"),\n\tp(\"POST\", \"/api/quota\", \"authenticated\"),\n\tp(\"GET\", \"/api/memory\", \"authenticated\"),\n\tp(\"POST\", \"/api/memory\", \"authenticated\"),\n\tp(\"GET\", \"/api/mode\", \"authenticated\"),\n\tp(\"POST\", \"/api/mode\", \"authenticated\"),\n\tp(\"GET\", \"/api/zen\", \"authenticated\"),\n\tp(\"POST\", \"/api/zen\", \"authenticated\"),\n\tp(\"GET\", \"/api/ui\", \"authenticated\"),\n\tp(\"POST\", \"/api/ui\", \"authenticated\"),\n\tp(\"GET\", \"/api/queue\", \"authenticated\"),\n\tp(\"POST\", \"/api/queue\", \"authenticated\"),\n\tp(\"GET\", \"/api/branch\", \"authenticated\"),\n\tp(\"POST\", \"/api/branch\", \"authenticated\"),\n\tp(\"GET\", \"/api/model\", \"authenticated\"),\n\tp(\"POST\", \"/api/model\", \"authenticated\"),\n\tp(\"GET\", \"/api/metrics\", \"authenticated\"),\n\tp(\"POST\", \"/api/chat\", \"authenticated\"),\n\tp(\"POST\", \"/api/pending-requests/:requestId/resume\", \"owner\"),\n\tp(\"POST\", \"/api/chat/approval\", \"authenticated\"),\n\tp(\"POST\", \"/api/chat/client-tool-result\", \"authenticated\"),\n\tp(\"POST\", \"/api/chat/tool-retry\", \"authenticated\"),\n\tp(\"POST\", \"/api/attachments/extract\", \"authenticated\"),\n\tp(\"GET\", \"/api/sessions/:id/artifacts\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/artifact-access\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/artifacts.zip\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/artifacts/events\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/artifacts/:filename\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/artifacts/:filename/view\", \"owner\", {\n\t\tallowArtifactAccess: true,\n\t}),\n\tp(\"GET\", \"/api/sessions/:id/attachments/:attachmentId\", \"owner\"),\n\tp(\"POST\", \"/api/sessions/:id/attachments/:attachmentId/extract\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/timeline\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/:id/replay-lab\", \"owner\"),\n\tp(\"GET\", \"/api/sessions\", \"authenticated\"),\n\tp(\"POST\", \"/api/sessions\", \"authenticated\"),\n\tp(\"GET\", \"/api/sessions/:id\", \"owner\"),\n\tp(\"PATCH\", \"/api/sessions/:id\", \"owner\"),\n\tp(\"DELETE\", \"/api/sessions/:id\", \"owner\"),\n\tp(\"POST\", \"/api/sessions/:id/share\", \"owner\"),\n\tp(\"POST\", \"/api/sessions/:id/export\", \"owner\"),\n\tp(\"GET\", \"/api/sessions/shared/:token\", \"authenticated\"),\n\tp(\n\t\t\"GET\",\n\t\t\"/api/sessions/shared/:token/attachments/:attachmentId\",\n\t\t\"authenticated\",\n\t),\n\tp(\"POST\", \"/api/policy/validate\", \"authenticated\"),\n\tp(\"POST\", \"/api/admin/cleanup\", \"authenticated\"),\n\tp(\"POST\", \"/api/admin/warm-caches\", \"authenticated\"),\n] as const;\n\nexport const ENTERPRISE_ROUTE_AUTH_POLICIES: readonly RouteAuthPolicyEntry[] = [\n\tp(\"POST\", \"/api/auth/register\", \"public\"),\n\tp(\"POST\", \"/api/auth/login\", \"public\"),\n\tp(\"GET\", \"/api/auth/me\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/quota\", \"authenticated\"),\n\tp(\"GET\", \"/api/usage/org\", \"authenticated\"),\n\tp(\"GET\", \"/api/audit/logs\", \"authenticated\"),\n\tp(\"GET\", \"/api/alerts\", \"authenticated\"),\n\tp(\"POST\", \"/api/alerts/:alertId/read\", \"authenticated\"),\n\tp(\"POST\", \"/api/alerts/:alertId/resolve\", \"authenticated\"),\n\tp(\"GET\", \"/api/org/members\", \"authenticated\"),\n\tp(\"POST\", \"/api/org/members/invite\", \"authenticated\"),\n\tp(\"PUT\", \"/api/org/members/:userId/role\", \"authenticated\"),\n\tp(\"PUT\", \"/api/org/members/:userId/quota\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/org/members/:userId\", \"authenticated\"),\n\tp(\"GET\", \"/api/org/settings\", \"authenticated\"),\n\tp(\"PUT\", \"/api/org/settings\", \"authenticated\"),\n\tp(\"GET\", \"/api/user/settings\", \"authenticated\"),\n\tp(\"PUT\", \"/api/user/settings\", \"authenticated\"),\n\tp(\"GET\", \"/api/roles\", \"authenticated\"),\n\tp(\"GET\", \"/api/models/approvals\", \"authenticated\"),\n\tp(\"POST\", \"/api/models/approvals/:modelId/approve\", \"authenticated\"),\n\tp(\"POST\", \"/api/models/approvals/:modelId/deny\", \"authenticated\"),\n\tp(\"GET\", \"/api/directory-rules\", \"authenticated\"),\n\tp(\"POST\", \"/api/directory-rules\", \"authenticated\"),\n\tp(\"DELETE\", \"/api/directory-rules/:ruleId\", \"authenticated\"),\n] as const;\n\nfunction routeKey(method: string, path: string): string {\n\treturn `${method.toUpperCase()} ${path}`;\n}\n\nfunction toSegments(pathname: string): string[] {\n\tif (pathname === \"/\" || pathname === \"\") return [];\n\treturn pathname.replace(/^\\/+|\\/+$/g, \"\").split(\"/\");\n}\n\nfunction pathMatches(pattern: string, pathname: string): boolean {\n\tconst patternSegments = toSegments(pattern);\n\tconst pathSegments = toSegments(pathname);\n\tif (patternSegments.length !== pathSegments.length) return false;\n\tfor (let i = 0; i < patternSegments.length; i++) {\n\t\tconst patternSegment = patternSegments[i]!;\n\t\tconst pathSegment = pathSegments[i]!;\n\t\tif (patternSegment.startsWith(\":\")) continue;\n\t\tif (patternSegment !== pathSegment) return false;\n\t}\n\treturn true;\n}\n\nfunction validateUniquePolicies(\n\tpolicies: readonly RouteAuthPolicyEntry[],\n): Map<string, RouteAuthPolicy> {\n\tconst policyByRoute = new Map<string, RouteAuthPolicy>();\n\tconst duplicates: string[] = [];\n\tfor (const policy of policies) {\n\t\tconst key = routeKey(policy.method, policy.path);\n\t\tif (policyByRoute.has(key)) {\n\t\t\tduplicates.push(key);\n\t\t\tcontinue;\n\t\t}\n\t\tpolicyByRoute.set(key, policy.auth);\n\t}\n\tif (duplicates.length > 0) {\n\t\tthrow new Error(\n\t\t\t`Duplicate route auth policy entries: ${duplicates.join(\", \")}`,\n\t\t);\n\t}\n\treturn policyByRoute;\n}\n\nexport function withRouteAuthPolicies(\n\troutes: readonly Route[],\n\tpolicies: readonly RouteAuthPolicyEntry[] = ROUTE_AUTH_POLICIES,\n): Route[] {\n\tconst policyByRoute = validateUniquePolicies(policies);\n\tconst routeKeys = new Set<string>();\n\tconst duplicates: string[] = [];\n\tconst missing: string[] = [];\n\n\tfor (const route of routes) {\n\t\tconst key = routeKey(route.method, route.path);\n\t\tif (routeKeys.has(key)) {\n\t\t\tduplicates.push(key);\n\t\t}\n\t\trouteKeys.add(key);\n\t\tif (!policyByRoute.has(key)) {\n\t\t\tmissing.push(key);\n\t\t}\n\t}\n\n\tconst stale = Array.from(policyByRoute.keys()).filter(\n\t\t(key) => !routeKeys.has(key),\n\t);\n\tconst failures = [\n\t\tduplicates.length > 0\n\t\t\t? `Duplicate route definitions: ${duplicates.join(\", \")}`\n\t\t\t: null,\n\t\tmissing.length > 0\n\t\t\t? `Missing route auth policies: ${missing.join(\", \")}`\n\t\t\t: null,\n\t\tstale.length > 0 ? `Stale route auth policies: ${stale.join(\", \")}` : null,\n\t].filter((value): value is string => Boolean(value));\n\n\tif (failures.length > 0) {\n\t\tthrow new Error(failures.join(\"; \"));\n\t}\n\n\treturn routes.map((route) => ({\n\t\t...route,\n\t\tauth: policyByRoute.get(routeKey(route.method, route.path)),\n\t}));\n}\n\nexport function findRouteAuthPolicy(\n\tmethod: string,\n\tpathname: string,\n\troutes: readonly Route[],\n): RouteAuthPolicy | null {\n\tconst targetMethod = method.toUpperCase();\n\tfor (const route of routes) {\n\t\tif (route.method.toUpperCase() !== targetMethod) continue;\n\t\tif (pathMatches(route.path, pathname)) {\n\t\t\treturn route.auth ?? null;\n\t\t}\n\t}\n\treturn null;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-serialization.d.ts","sourceRoot":"","sources":["../../src/server/session-serialization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAGX,eAAe,EACf,gBAAgB,EAEhB,MAAM,oBAAoB,CAAC;AAM5B,OAAO,KAAK,EACX,UAAU,EAQV,KAAK,EACL,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"session-serialization.d.ts","sourceRoot":"","sources":["../../src/server/session-serialization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAGX,eAAe,EACf,gBAAgB,EAEhB,MAAM,oBAAoB,CAAC;AAM5B,OAAO,KAAK,EACX,UAAU,EAQV,KAAK,EACL,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG7D,gDAAgD;AAChD,MAAM,MAAM,6BAA6B,GAAG,eAAe,GAAG,eAAe,CAAC;AAE9E;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC3C,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,MAAM,CAAC,EAAE,6BAA6B,CAAC;CACvC;AAgCD;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAC;gBAEnC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,2BAA2B;CAKlE;AAiFD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,KAAK,CAcxC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAkBnE;AAmLD;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,UAAU,EACnB,KAAK,SAAI,EACT,OAAO,CAAC,EAAE;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,eAAe,CAiEjB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC3C,QAAQ,EAAE,UAAU,EAAE,EACtB,OAAO,CAAC,EAAE;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,eAAe,EAAE,CAInB;AAuDD;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,eAAe,EACtB,KAAK,SAAI,GACP,UAAU,EAAE,CA6Nd;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC3C,QAAQ,EAAE,eAAe,EAAE,EAC3B,KAAK,EAAE,eAAe,GACpB,UAAU,EAAE,CAOd"}
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
* - Tool calls are serialized with their results as separate messages
|
|
22
22
|
*/
|
|
23
23
|
import { isAssistantMessage, isToolResultMessage, isUserMessage, } from "../agent/type-guards.js";
|
|
24
|
+
import { isRecord } from "../utils/json.js";
|
|
24
25
|
/**
|
|
25
26
|
* Convert internal Usage to Maestro protocol format.
|
|
26
27
|
* Handles missing/undefined fields by defaulting to zero.
|
|
@@ -78,9 +79,6 @@ function safeStringify(value) {
|
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
81
|
/** Type guard for plain objects (not arrays or null) */
|
|
81
|
-
function isRecord(value) {
|
|
82
|
-
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
83
|
-
}
|
|
84
82
|
function toComposerAttachments(attachments, options) {
|
|
85
83
|
if (!attachments || attachments.length === 0)
|
|
86
84
|
return undefined;
|
|
@@ -368,6 +366,7 @@ export function convertAppMessageToComposer(message, index = 0, options) {
|
|
|
368
366
|
provider: message.provider,
|
|
369
367
|
api: message.api,
|
|
370
368
|
model: message.model,
|
|
369
|
+
routingReceipt: message.routingReceipt,
|
|
371
370
|
};
|
|
372
371
|
}
|
|
373
372
|
// Tool result messages - include tool name and error status
|
|
@@ -521,6 +520,7 @@ export function convertComposerMessageToApp(message, model, index = 0) {
|
|
|
521
520
|
: createEmptyUsage(),
|
|
522
521
|
stopReason: "stop",
|
|
523
522
|
timestamp: toTimestamp(message.timestamp, context),
|
|
523
|
+
routingReceipt: message.routingReceipt,
|
|
524
524
|
};
|
|
525
525
|
const results = [assistantMessage];
|
|
526
526
|
const toolCallBlocks = normalizedSequence.filter((block) => block.type === "toolCall");
|
|
@@ -579,6 +579,7 @@ export function convertComposerMessageToApp(message, model, index = 0) {
|
|
|
579
579
|
: createEmptyUsage(),
|
|
580
580
|
stopReason: "stop",
|
|
581
581
|
timestamp: toTimestamp(message.timestamp, context),
|
|
582
|
+
routingReceipt: message.routingReceipt,
|
|
582
583
|
};
|
|
583
584
|
const results = [assistantMessage];
|
|
584
585
|
// Generate tool result messages for each tool call
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-serialization.js","sourceRoot":"","sources":["../../src/server/session-serialization.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Session Serialization Module\n *\n * This module handles bidirectional conversion between internal agent message\n * types (AppMessage, AssistantMessage, etc.) and the external Maestro protocol\n * messages (ComposerMessage). This conversion is essential for:\n *\n * - Web API: Converting agent output to JSON for the web client\n * - Session persistence: Storing/loading sessions in a portable format\n * - History hydration: Reconstructing agent state from saved sessions\n *\n * The conversion handles several complexities:\n * - Multi-content messages (text, images, thinking blocks, tool calls)\n * - Tool call/result pairing across message boundaries\n * - Usage/cost tracking with nested structures\n * - Timestamp normalization between formats\n *\n * Key design decisions:\n * - Images are replaced with placeholders (too large for JSON)\n * - Thinking blocks are extracted to a separate field\n * - Tool calls are serialized with their results as separate messages\n */\n\nimport type {\n\tComposerAttachment,\n\tComposerContentBlock,\n\tComposerMessage,\n\tComposerToolCall,\n\tComposerUsage,\n} from \"@evalops/contracts\";\nimport {\n\tisAssistantMessage,\n\tisToolResultMessage,\n\tisUserMessage,\n} from \"../agent/type-guards.js\";\nimport type {\n\tAppMessage,\n\tAssistantMessage,\n\tAttachment,\n\tImageContent,\n\tTextContent,\n\tThinkingContent,\n\tToolCall,\n\tToolResultMessage,\n\tUsage,\n} from \"../agent/types.js\";\nimport type { RegisteredModel } from \"../models/registry.js\";\n\n/** Direction of conversion for error context */\nexport type SessionSerializationDirection = \"app->composer\" | \"composer->app\";\n\n/**\n * Context provided in serialization errors for debugging.\n * Includes message index and direction to locate the problematic message.\n */\nexport interface SessionSerializationContext {\n\t/** Index of the message in the array (0-based) */\n\tindex?: number;\n\t/** Role of the message being converted */\n\trole?: string;\n\t/** Direction of the conversion */\n\tsource?: SessionSerializationDirection;\n}\n\n/**\n * Convert internal Usage to Maestro protocol format.\n * Handles missing/undefined fields by defaulting to zero.\n */\nfunction toComposerUsage(usage?: Usage): ComposerUsage | undefined {\n\tif (!usage) return undefined;\n\treturn {\n\t\tinput: usage.input ?? 0,\n\t\toutput: usage.output ?? 0,\n\t\tcacheRead: usage.cacheRead ?? 0,\n\t\tcacheWrite: usage.cacheWrite ?? 0,\n\t\t// Ensure cost object always has all required fields\n\t\tcost: usage.cost\n\t\t\t? {\n\t\t\t\t\tinput: usage.cost.input ?? 0,\n\t\t\t\t\toutput: usage.cost.output ?? 0,\n\t\t\t\t\tcacheRead: usage.cost.cacheRead ?? 0,\n\t\t\t\t\tcacheWrite: usage.cost.cacheWrite ?? 0,\n\t\t\t\t\ttotal: usage.cost.total ?? 0,\n\t\t\t\t}\n\t\t\t: {\n\t\t\t\t\tinput: 0,\n\t\t\t\t\toutput: 0,\n\t\t\t\t\tcacheRead: 0,\n\t\t\t\t\tcacheWrite: 0,\n\t\t\t\t\ttotal: 0,\n\t\t\t\t},\n\t};\n}\n\n/**\n * Error thrown when serialization/deserialization fails.\n * Includes context about which message caused the failure.\n */\nexport class SessionSerializationError extends Error {\n\treadonly context?: SessionSerializationContext;\n\n\tconstructor(message: string, context?: SessionSerializationContext) {\n\t\tsuper(context ? `${message} (${JSON.stringify(context)})` : message);\n\t\tthis.name = \"SessionSerializationError\";\n\t\tthis.context = context;\n\t}\n}\n\n// Placeholder strings used when images can't be serialized to JSON\nconst IMAGE_PLACEHOLDER_PREFIX = \"[image:\";\nconst UNKNOWN_IMAGE_PLACEHOLDER = \"[image]\";\n\n/**\n * Safely stringify a value, returning a placeholder if serialization fails.\n * Handles circular references and BigInt values gracefully.\n */\nfunction safeStringify(value: unknown): string {\n\ttry {\n\t\treturn JSON.stringify(value);\n\t} catch {\n\t\treturn \"[unserializable]\";\n\t}\n}\n\n/** Type guard for plain objects (not arrays or null) */\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n\treturn Boolean(value) && typeof value === \"object\" && !Array.isArray(value);\n}\n\nfunction toComposerAttachments(\n\tattachments: Attachment[] | undefined,\n\toptions?: { includeAttachmentContent?: boolean },\n): ComposerAttachment[] | undefined {\n\tif (!attachments || attachments.length === 0) return undefined;\n\tconst includeAttachmentContent = options?.includeAttachmentContent !== false;\n\treturn attachments.map((a) => ({\n\t\tid: a.id,\n\t\ttype: a.type,\n\t\tfileName: a.fileName,\n\t\tmimeType: a.mimeType,\n\t\tsize: a.size,\n\t\tcontent: includeAttachmentContent ? a.content : undefined,\n\t\tcontentOmitted: includeAttachmentContent ? undefined : true,\n\t\textractedText: a.extractedText,\n\t\tpreview: a.preview,\n\t}));\n}\n\nfunction fromComposerAttachments(\n\tattachments: ComposerAttachment[] | undefined,\n): Attachment[] | undefined {\n\tif (!attachments || attachments.length === 0) return undefined;\n\n\tconst out: Attachment[] = [];\n\tfor (const a of attachments) {\n\t\tif (!a) continue;\n\t\tif (typeof a.id !== \"string\" || !a.id) continue;\n\t\tif (a.type !== \"image\" && a.type !== \"document\") continue;\n\t\tif (typeof a.fileName !== \"string\" || !a.fileName) continue;\n\t\tif (typeof a.mimeType !== \"string\" || !a.mimeType) continue;\n\t\tif (typeof a.size !== \"number\" || !Number.isFinite(a.size)) continue;\n\t\tif (typeof a.content !== \"string\" || a.content.length === 0) {\n\t\t\t// Content omitted in session responses; do not pass to agent.\n\t\t\tcontinue;\n\t\t}\n\t\tout.push({\n\t\t\tid: a.id,\n\t\t\ttype: a.type,\n\t\t\tfileName: a.fileName,\n\t\t\tmimeType: a.mimeType,\n\t\t\tsize: a.size,\n\t\t\tcontent: a.content,\n\t\t\textractedText:\n\t\t\t\ttypeof a.extractedText === \"string\" ? a.extractedText : undefined,\n\t\t\tpreview: typeof a.preview === \"string\" ? a.preview : undefined,\n\t\t});\n\t}\n\n\treturn out.length ? out : undefined;\n}\n\n/** Helper to construct error context from conversion parameters */\nfunction buildContext(\n\tsource: SessionSerializationDirection,\n\tindex: number,\n\trole?: string,\n): SessionSerializationContext {\n\treturn { source, index, role };\n}\n\n/**\n * Create a zero-initialized usage object.\n * Used when converting messages that don't have usage data.\n */\nexport function createEmptyUsage(): Usage {\n\treturn {\n\t\tinput: 0,\n\t\toutput: 0,\n\t\tcacheRead: 0,\n\t\tcacheWrite: 0,\n\t\tcost: {\n\t\t\tinput: 0,\n\t\t\toutput: 0,\n\t\t\tcacheRead: 0,\n\t\t\tcacheWrite: 0,\n\t\t\ttotal: 0,\n\t\t},\n\t};\n}\n\n/**\n * Serialize tool call content to a string for the tool result message.\n * Handles various result types: strings, primitives, objects.\n * Falls back to serializing args if result is missing.\n */\nexport function serializeToolContent(tool: ComposerToolCall): string {\n\t// String results are used directly\n\tif (typeof tool.result === \"string\") {\n\t\treturn tool.result;\n\t}\n\t// Primitives are converted to string\n\tif (typeof tool.result === \"number\" || typeof tool.result === \"boolean\") {\n\t\treturn String(tool.result);\n\t}\n\t// Objects are JSON-serialized\n\tif (tool.result && typeof tool.result === \"object\") {\n\t\treturn safeStringify(tool.result);\n\t}\n\t// Fallback: serialize the args if no result\n\tif (tool.args && typeof tool.args === \"object\") {\n\t\treturn safeStringify(tool.args);\n\t}\n\treturn \"\";\n}\n\n/**\n * Convert a timestamp to ISO string format.\n * Handles both numeric (ms since epoch) and string inputs.\n * Returns current time if input is undefined.\n */\nfunction toIsoString(\n\tinput: number | string | undefined,\n\tcontext: SessionSerializationContext,\n): string {\n\tif (typeof input === \"number\") {\n\t\t// Validate numeric timestamp (reject NaN, Infinity)\n\t\tif (!Number.isFinite(input)) {\n\t\t\tthrow new SessionSerializationError(\"Invalid numeric timestamp\", context);\n\t\t}\n\t\treturn new Date(input).toISOString();\n\t}\n\tif (typeof input === \"string\") {\n\t\t// Parse and validate string timestamp\n\t\tconst parsed = Date.parse(input);\n\t\tif (!Number.isFinite(parsed)) {\n\t\t\tthrow new SessionSerializationError(\"Invalid timestamp\", context);\n\t\t}\n\t\treturn new Date(parsed).toISOString();\n\t}\n\t// Default to current time if not provided\n\treturn new Date().toISOString();\n}\n\n/**\n * Convert an ISO string timestamp to numeric (ms since epoch).\n * Returns current time if input is undefined.\n */\nfunction toTimestamp(\n\tinput: string | undefined,\n\tcontext: SessionSerializationContext,\n): number {\n\tif (!input) return Date.now();\n\tconst parsed = Date.parse(input);\n\tif (!Number.isFinite(parsed)) {\n\t\tthrow new SessionSerializationError(\"Invalid timestamp\", context);\n\t}\n\treturn parsed;\n}\n\n/**\n * Extract text content from a message's content array.\n * Handles mixed content types:\n * - Text blocks are concatenated\n * - Images are replaced with placeholders\n * - Thinking and tool calls are skipped (handled separately)\n * - Unknown types get a placeholder\n */\nfunction extractTextContent(\n\tcontent?:\n\t\t| string\n\t\t| Array<TextContent | ThinkingContent | ToolCall | ImageContent>,\n): string {\n\tif (!content) return \"\";\n\tif (typeof content === \"string\") return content;\n\n\tconst fragments: string[] = [];\n\tfor (const block of content) {\n\t\tif (!block) continue;\n\n\t\t// Text blocks - include as-is\n\t\tif (block.type === \"text\") {\n\t\t\tfragments.push(block.text);\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Image blocks - replace with placeholder (too large for JSON)\n\t\tif (block.type === \"image\") {\n\t\t\tconst descriptor = block.mimeType\n\t\t\t\t? `${IMAGE_PLACEHOLDER_PREFIX}${block.mimeType}]`\n\t\t\t\t: UNKNOWN_IMAGE_PLACEHOLDER;\n\t\t\tfragments.push(descriptor);\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Thinking and tool calls are extracted separately, skip here\n\t\tif (block.type === \"thinking\" || block.type === \"toolCall\") {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Unknown content type - add placeholder with type info\n\t\tconst fallbackType = (block as { type?: string }).type || \"unknown\";\n\t\tfragments.push(`[content:${fallbackType}]`);\n\t}\n\n\treturn fragments.join(\"\\n\\n\");\n}\n\n/**\n * Extract thinking content from a message into a single string.\n * Returns undefined if no thinking blocks are present.\n */\nfunction extractThinking(\n\tcontent?:\n\t\t| string\n\t\t| Array<TextContent | ThinkingContent | ToolCall | ImageContent>,\n): string | undefined {\n\tif (!content || typeof content === \"string\") return undefined;\n\n\t// Filter to thinking blocks, extract text, and join\n\tconst thought = content\n\t\t.filter((block): block is ThinkingContent => block.type === \"thinking\")\n\t\t.map((block) => block.thinking.trim())\n\t\t.filter(Boolean)\n\t\t.join(\"\\n\\n\");\n\n\treturn thought.length ? thought : undefined;\n}\n\n/**\n * Extract tool calls from a message into Maestro format.\n * Returns empty array if no tool calls are present.\n */\nfunction extractToolCalls(\n\tcontent?:\n\t\t| string\n\t\t| Array<TextContent | ThinkingContent | ToolCall | ImageContent>,\n): ComposerToolCall[] {\n\tif (!content || typeof content === \"string\") return [];\n\n\treturn content\n\t\t.filter((block): block is ToolCall => block.type === \"toolCall\")\n\t\t.map((toolCall) => ({\n\t\t\tname: toolCall.name?.trim() || \"unnamed_tool\",\n\t\t\tstatus: \"completed\",\n\t\t\targs: toolCall.arguments || {},\n\t\t\ttoolCallId: toolCall.id,\n\t\t}));\n}\n\nfunction extractComposerTextContent(\n\tcontent: ComposerMessage[\"content\"],\n): string {\n\tif (typeof content === \"string\") return content;\n\tif (!Array.isArray(content)) return \"\";\n\treturn content\n\t\t.filter((block) => block.type === \"text\")\n\t\t.map((block) => block.text)\n\t\t.join(\"\");\n}\n\nfunction normalizeComposerContentBlocks(\n\tcontent: ComposerMessage[\"content\"],\n): Array<TextContent | ThinkingContent | ToolCall | ImageContent> {\n\tif (!Array.isArray(content)) return [];\n\tconst normalized: Array<\n\t\tTextContent | ThinkingContent | ToolCall | ImageContent\n\t> = [];\n\tfor (const block of content as ComposerContentBlock[]) {\n\t\tif (!block || typeof block !== \"object\") continue;\n\t\tif (block.type === \"text\") {\n\t\t\tnormalized.push({ type: \"text\", text: block.text });\n\t\t} else if (block.type === \"thinking\") {\n\t\t\tnormalized.push({ type: \"thinking\", thinking: block.thinking });\n\t\t} else if (block.type === \"toolCall\") {\n\t\t\tnormalized.push({\n\t\t\t\ttype: \"toolCall\",\n\t\t\t\tid: block.id,\n\t\t\t\tname: block.name,\n\t\t\t\targuments: block.arguments,\n\t\t\t\tthoughtSignature: block.thoughtSignature,\n\t\t\t});\n\t\t} else if (block.type === \"image\") {\n\t\t\tnormalized.push({\n\t\t\t\ttype: \"image\",\n\t\t\t\tdata: block.data,\n\t\t\t\tmimeType: block.mimeType,\n\t\t\t});\n\t\t}\n\t}\n\treturn normalized;\n}\n\n/**\n * Convert a single internal AppMessage to Maestro protocol format.\n *\n * This is the main app -> Maestro conversion function. It handles:\n * - User messages: Extract text content\n * - Assistant messages: Extract text, thinking, and tool calls\n * - Tool results: Extract result content and error status\n * - System messages: Extract text content\n *\n * @param message - The internal message to convert\n * @param index - Position in the message array (for error context)\n */\nexport function convertAppMessageToComposer(\n\tmessage: AppMessage,\n\tindex = 0,\n\toptions?: { includeAttachmentContent?: boolean },\n): ComposerMessage {\n\tconst context = buildContext(\"app->composer\", index, message.role);\n\tconst timestamp = toIsoString(\n\t\t\"timestamp\" in message ? message.timestamp : undefined,\n\t\tcontext,\n\t);\n\n\t// User messages - simple text extraction\n\tif (isUserMessage(message)) {\n\t\tconst attachments = toComposerAttachments(\n\t\t\t\"attachments\" in message\n\t\t\t\t? (message as { attachments?: Attachment[] }).attachments\n\t\t\t\t: undefined,\n\t\t\toptions,\n\t\t);\n\t\treturn {\n\t\t\trole: \"user\",\n\t\t\tcontent: extractTextContent(message.content),\n\t\t\ttimestamp,\n\t\t\tattachments,\n\t\t};\n\t}\n\n\t// Assistant messages - extract text, thinking, and tool calls\n\tif (isAssistantMessage(message)) {\n\t\tconst tools = extractToolCalls(message.content);\n\t\treturn {\n\t\t\trole: \"assistant\",\n\t\t\tcontent: extractTextContent(message.content),\n\t\t\tthinking: extractThinking(message.content),\n\t\t\ttimestamp,\n\t\t\ttools: tools.length ? tools : undefined,\n\t\t\tusage: toComposerUsage(message.usage),\n\t\t\tprovider: message.provider,\n\t\t\tapi: message.api,\n\t\t\tmodel: message.model,\n\t\t};\n\t}\n\n\t// Tool result messages - include tool name and error status\n\tif (isToolResultMessage(message)) {\n\t\treturn {\n\t\t\trole: \"tool\",\n\t\t\tcontent: extractTextContent(message.content),\n\t\t\ttimestamp,\n\t\t\ttoolName: message.toolName,\n\t\t\tisError: message.isError,\n\t\t};\n\t}\n\n\t// System messages (rare, but supported)\n\tconst systemLike = message as {\n\t\trole?: string;\n\t\tcontent?: string | Array<TextContent | ImageContent>;\n\t};\n\tif (systemLike.role === \"system\") {\n\t\treturn {\n\t\t\trole: \"system\",\n\t\t\tcontent: extractTextContent(systemLike.content),\n\t\t\ttimestamp,\n\t\t};\n\t}\n\n\tthrow new SessionSerializationError(\"Unsupported App role\", context);\n}\n\n/**\n * Convert an array of AppMessages to Maestro format.\n * Preserves message order and provides index context for errors.\n */\nexport function convertAppMessagesToComposer(\n\tmessages: AppMessage[],\n\toptions?: { includeAttachmentContent?: boolean },\n): ComposerMessage[] {\n\treturn messages.map((message, index) =>\n\t\tconvertAppMessageToComposer(message, index, options),\n\t);\n}\n\n/**\n * Normalize a Maestro tool call to internal ToolCall format.\n * Generates stable IDs if not provided.\n *\n * @param tool - The Maestro tool call to normalize\n * @param messageIndex - Message position (for generating fallback IDs)\n * @param contentIndex - Content block position (for generating fallback IDs)\n */\nfunction normalizeToolCall(\n\ttool: ComposerToolCall,\n\tmessageIndex: number,\n\tcontentIndex: number,\n): ToolCall {\n\t// Generate fallback name/ID if not provided\n\tconst name = tool.name?.trim() || `tool_${messageIndex}_${contentIndex}`;\n\tconst toolCallId =\n\t\ttool.toolCallId || `web-tool-${messageIndex}-${contentIndex}`;\n\t// Ensure args is a record (not array or primitive)\n\tconst args: Record<string, unknown> = isRecord(tool.args) ? tool.args : {};\n\n\treturn {\n\t\ttype: \"toolCall\",\n\t\tid: toolCallId,\n\t\tname,\n\t\targuments: args,\n\t};\n}\n\n/**\n * Create a ToolResultMessage from a Maestro tool call.\n * The result is derived from the tool call's embedded result field.\n */\nfunction normalizeToolResult(\n\ttool: ComposerToolCall,\n\tnormalizedCall: ToolCall,\n\ttimestamp: string | undefined,\n\tcontext: SessionSerializationContext,\n): ToolResultMessage {\n\treturn {\n\t\trole: \"toolResult\",\n\t\ttoolCallId: normalizedCall.id,\n\t\ttoolName: normalizedCall.name,\n\t\tcontent: [\n\t\t\t{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: serializeToolContent(tool),\n\t\t\t},\n\t\t],\n\t\tisError: tool.status === \"error\",\n\t\ttimestamp: toTimestamp(timestamp, context),\n\t};\n}\n\n/**\n * Convert a single Maestro message to internal AppMessage format.\n *\n * This is the main Maestro -> app conversion function. Note that a single\n * Maestro message may expand to multiple AppMessages when tool calls are\n * present (the assistant message + one toolResult per tool).\n *\n * @param message - The Maestro message to convert\n * @param model - Model metadata to attach to assistant messages\n * @param index - Position in the message array (for error context)\n * @returns Array of AppMessages (may be 1+ messages)\n */\nexport function convertComposerMessageToApp(\n\tmessage: ComposerMessage,\n\tmodel: RegisteredModel,\n\tindex = 0,\n): AppMessage[] {\n\tconst context = buildContext(\"composer->app\", index, message.role);\n\n\t// User messages - wrap content in text block\n\tif (message.role === \"user\") {\n\t\tconst attachments = fromComposerAttachments(message.attachments);\n\t\tif (Array.isArray(message.content)) {\n\t\t\tconst normalized = normalizeComposerContentBlocks(message.content).filter(\n\t\t\t\t(block) => block.type === \"text\" || block.type === \"image\",\n\t\t\t);\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\trole: \"user\",\n\t\t\t\t\tcontent:\n\t\t\t\t\t\tnormalized.length > 0 ? normalized : [{ type: \"text\", text: \"\" }],\n\t\t\t\t\tattachments,\n\t\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn [\n\t\t\t{\n\t\t\t\trole: \"user\",\n\t\t\t\tcontent: [\n\t\t\t\t\t{ type: \"text\", text: extractComposerTextContent(message.content) },\n\t\t\t\t],\n\t\t\t\tattachments,\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t},\n\t\t];\n\t}\n\n\t// Assistant messages - reconstruct content array from components\n\tif (message.role === \"assistant\") {\n\t\tconst resolvedProvider = message.provider ?? model.provider;\n\t\tconst resolvedApi = (message.api ?? model.api) as AssistantMessage[\"api\"];\n\t\tconst resolvedModel = message.model ?? model.id;\n\t\tif (Array.isArray(message.content)) {\n\t\t\tconst normalizedSequence = normalizeComposerContentBlocks(\n\t\t\t\tmessage.content,\n\t\t\t).filter(\n\t\t\t\t(block): block is TextContent | ThinkingContent | ToolCall =>\n\t\t\t\t\tblock.type !== \"image\",\n\t\t\t);\n\t\t\tconst hasThinking = normalizedSequence.some(\n\t\t\t\t(block) => block.type === \"thinking\",\n\t\t\t);\n\t\t\tconst hasToolCalls = normalizedSequence.some(\n\t\t\t\t(block) => block.type === \"toolCall\",\n\t\t\t);\n\n\t\t\tif (!hasThinking && message.thinking?.trim()) {\n\t\t\t\tnormalizedSequence.unshift({\n\t\t\t\t\ttype: \"thinking\",\n\t\t\t\t\tthinking: message.thinking.trim(),\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst tools = message.tools ?? [];\n\t\t\tif (!hasToolCalls && tools.length > 0) {\n\t\t\t\tconst baseContentLength = normalizedSequence.length;\n\t\t\t\tconst toolCalls: ToolCall[] = tools.map((tool, toolIndex) =>\n\t\t\t\t\tnormalizeToolCall(tool, index, baseContentLength + toolIndex),\n\t\t\t\t);\n\t\t\t\tnormalizedSequence.push(...toolCalls);\n\t\t\t}\n\n\t\t\tconst assistantMessage: AssistantMessage = {\n\t\t\t\trole: \"assistant\",\n\t\t\t\tcontent: normalizedSequence,\n\t\t\t\tapi: resolvedApi,\n\t\t\t\tprovider: resolvedProvider,\n\t\t\t\tmodel: resolvedModel,\n\t\t\t\tusage: message.usage\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tinput: message.usage.input ?? 0,\n\t\t\t\t\t\t\toutput: message.usage.output ?? 0,\n\t\t\t\t\t\t\tcacheRead: message.usage.cacheRead ?? 0,\n\t\t\t\t\t\t\tcacheWrite: message.usage.cacheWrite ?? 0,\n\t\t\t\t\t\t\tcost: {\n\t\t\t\t\t\t\t\tinput: message.usage.cost?.input ?? 0,\n\t\t\t\t\t\t\t\toutput: message.usage.cost?.output ?? 0,\n\t\t\t\t\t\t\t\tcacheRead: message.usage.cost?.cacheRead ?? 0,\n\t\t\t\t\t\t\t\tcacheWrite: message.usage.cost?.cacheWrite ?? 0,\n\t\t\t\t\t\t\t\ttotal: message.usage.cost?.total ?? 0,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}\n\t\t\t\t\t: createEmptyUsage(),\n\t\t\t\tstopReason: \"stop\",\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t};\n\n\t\t\tconst results: AppMessage[] = [assistantMessage];\n\t\t\tconst toolCallBlocks = normalizedSequence.filter(\n\t\t\t\t(block): block is ToolCall => block.type === \"toolCall\",\n\t\t\t);\n\n\t\t\t// Generate tool result messages for each tool call\n\t\t\ttools.forEach((tool, toolIndex) => {\n\t\t\t\tconst normalizedCall =\n\t\t\t\t\t(tool.toolCallId\n\t\t\t\t\t\t? toolCallBlocks.find((block) => block.id === tool.toolCallId)\n\t\t\t\t\t\t: toolCallBlocks[toolIndex]) ??\n\t\t\t\t\tnormalizeToolCall(tool, index, normalizedSequence.length + toolIndex);\n\t\t\t\tresults.push(\n\t\t\t\t\tnormalizeToolResult(tool, normalizedCall, message.timestamp, context),\n\t\t\t\t);\n\t\t\t});\n\n\t\t\treturn results;\n\t\t}\n\t\t// Build content array: thinking first, then text, then tool calls\n\t\tconst normalizedSequence: Array<TextContent | ThinkingContent | ToolCall> =\n\t\t\t[];\n\n\t\t// Add thinking block if present\n\t\tif (message.thinking?.trim()) {\n\t\t\tnormalizedSequence.push({\n\t\t\t\ttype: \"thinking\",\n\t\t\t\tthinking: message.thinking.trim(),\n\t\t\t});\n\t\t}\n\n\t\t// Add text content if present\n\t\tif (extractComposerTextContent(message.content)) {\n\t\t\tnormalizedSequence.push({\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: extractComposerTextContent(message.content),\n\t\t\t});\n\t\t}\n\n\t\t// Convert and add tool calls\n\t\tconst tools = message.tools ?? [];\n\t\tconst baseContentLength = normalizedSequence.length;\n\t\tconst toolCalls: ToolCall[] = tools.map((tool, toolIndex) =>\n\t\t\tnormalizeToolCall(tool, index, baseContentLength + toolIndex),\n\t\t);\n\t\tnormalizedSequence.push(...toolCalls);\n\n\t\t// Build the assistant message with model metadata\n\t\tconst assistantMessage: AssistantMessage = {\n\t\t\trole: \"assistant\",\n\t\t\tcontent: normalizedSequence,\n\t\t\tapi: resolvedApi,\n\t\t\tprovider: resolvedProvider,\n\t\t\tmodel: resolvedModel,\n\t\t\tusage: message.usage\n\t\t\t\t? {\n\t\t\t\t\t\tinput: message.usage.input ?? 0,\n\t\t\t\t\t\toutput: message.usage.output ?? 0,\n\t\t\t\t\t\tcacheRead: message.usage.cacheRead ?? 0,\n\t\t\t\t\t\tcacheWrite: message.usage.cacheWrite ?? 0,\n\t\t\t\t\t\tcost: {\n\t\t\t\t\t\t\tinput: message.usage.cost?.input ?? 0,\n\t\t\t\t\t\t\toutput: message.usage.cost?.output ?? 0,\n\t\t\t\t\t\t\tcacheRead: message.usage.cost?.cacheRead ?? 0,\n\t\t\t\t\t\t\tcacheWrite: message.usage.cost?.cacheWrite ?? 0,\n\t\t\t\t\t\t\ttotal: message.usage.cost?.total ?? 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t}\n\t\t\t\t: createEmptyUsage(),\n\t\t\tstopReason: \"stop\",\n\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t};\n\n\t\tconst results: AppMessage[] = [assistantMessage];\n\n\t\t// Generate tool result messages for each tool call\n\t\t// These follow the assistant message in the conversation\n\t\ttools.forEach((tool, toolIndex) => {\n\t\t\tconst normalizedCall = toolCalls[toolIndex]!;\n\t\t\tresults.push(\n\t\t\t\tnormalizeToolResult(tool, normalizedCall, message.timestamp, context),\n\t\t\t);\n\t\t});\n\n\t\treturn results;\n\t}\n\n\t// Standalone tool messages (less common, but supported)\n\tif (message.role === \"tool\") {\n\t\tconst toolName = message.toolName || \"web_tool\";\n\t\treturn [\n\t\t\t{\n\t\t\t\trole: \"toolResult\",\n\t\t\t\ttoolCallId: `${toolName}-${index}`,\n\t\t\t\ttoolName,\n\t\t\t\tcontent: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\ttext: extractComposerTextContent(message.content),\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tisError: Boolean(message.isError),\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t},\n\t\t];\n\t}\n\n\t// System messages are converted to assistant messages\n\t// (internal format doesn't have a separate system role in conversation)\n\tif (message.role === \"system\") {\n\t\treturn [\n\t\t\t{\n\t\t\t\trole: \"assistant\",\n\t\t\t\tcontent: [\n\t\t\t\t\t{ type: \"text\", text: extractComposerTextContent(message.content) },\n\t\t\t\t],\n\t\t\t\tapi: model.api,\n\t\t\t\tprovider: model.provider,\n\t\t\t\tmodel: model.id,\n\t\t\t\tusage: createEmptyUsage(),\n\t\t\t\tstopReason: \"stop\",\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t},\n\t\t];\n\t}\n\n\tthrow new SessionSerializationError(\"Unsupported Maestro role\", context);\n}\n\n/**\n * Convert an array of Maestro messages to internal AppMessage format.\n *\n * Note: The output array may be longer than the input because assistant\n * messages with tool calls expand to multiple AppMessages.\n */\nexport function convertComposerMessagesToApp(\n\tmessages: ComposerMessage[],\n\tmodel: RegisteredModel,\n): AppMessage[] {\n\tconst result: AppMessage[] = [];\n\tfor (const [index, message] of messages.entries()) {\n\t\t// Preserve relative ordering by pushing each expanded block in sequence\n\t\tresult.push(...convertComposerMessageToApp(message, model, index));\n\t}\n\treturn result;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"session-serialization.js","sourceRoot":"","sources":["../../src/server/session-serialization.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Session Serialization Module\n *\n * This module handles bidirectional conversion between internal agent message\n * types (AppMessage, AssistantMessage, etc.) and the external Maestro protocol\n * messages (ComposerMessage). This conversion is essential for:\n *\n * - Web API: Converting agent output to JSON for the web client\n * - Session persistence: Storing/loading sessions in a portable format\n * - History hydration: Reconstructing agent state from saved sessions\n *\n * The conversion handles several complexities:\n * - Multi-content messages (text, images, thinking blocks, tool calls)\n * - Tool call/result pairing across message boundaries\n * - Usage/cost tracking with nested structures\n * - Timestamp normalization between formats\n *\n * Key design decisions:\n * - Images are replaced with placeholders (too large for JSON)\n * - Thinking blocks are extracted to a separate field\n * - Tool calls are serialized with their results as separate messages\n */\n\nimport type {\n\tComposerAttachment,\n\tComposerContentBlock,\n\tComposerMessage,\n\tComposerToolCall,\n\tComposerUsage,\n} from \"@evalops/contracts\";\nimport {\n\tisAssistantMessage,\n\tisToolResultMessage,\n\tisUserMessage,\n} from \"../agent/type-guards.js\";\nimport type {\n\tAppMessage,\n\tAssistantMessage,\n\tAttachment,\n\tImageContent,\n\tTextContent,\n\tThinkingContent,\n\tToolCall,\n\tToolResultMessage,\n\tUsage,\n} from \"../agent/types.js\";\nimport type { RegisteredModel } from \"../models/registry.js\";\nimport { isRecord } from \"../utils/json.js\";\n\n/** Direction of conversion for error context */\nexport type SessionSerializationDirection = \"app->composer\" | \"composer->app\";\n\n/**\n * Context provided in serialization errors for debugging.\n * Includes message index and direction to locate the problematic message.\n */\nexport interface SessionSerializationContext {\n\t/** Index of the message in the array (0-based) */\n\tindex?: number;\n\t/** Role of the message being converted */\n\trole?: string;\n\t/** Direction of the conversion */\n\tsource?: SessionSerializationDirection;\n}\n\n/**\n * Convert internal Usage to Maestro protocol format.\n * Handles missing/undefined fields by defaulting to zero.\n */\nfunction toComposerUsage(usage?: Usage): ComposerUsage | undefined {\n\tif (!usage) return undefined;\n\treturn {\n\t\tinput: usage.input ?? 0,\n\t\toutput: usage.output ?? 0,\n\t\tcacheRead: usage.cacheRead ?? 0,\n\t\tcacheWrite: usage.cacheWrite ?? 0,\n\t\t// Ensure cost object always has all required fields\n\t\tcost: usage.cost\n\t\t\t? {\n\t\t\t\t\tinput: usage.cost.input ?? 0,\n\t\t\t\t\toutput: usage.cost.output ?? 0,\n\t\t\t\t\tcacheRead: usage.cost.cacheRead ?? 0,\n\t\t\t\t\tcacheWrite: usage.cost.cacheWrite ?? 0,\n\t\t\t\t\ttotal: usage.cost.total ?? 0,\n\t\t\t\t}\n\t\t\t: {\n\t\t\t\t\tinput: 0,\n\t\t\t\t\toutput: 0,\n\t\t\t\t\tcacheRead: 0,\n\t\t\t\t\tcacheWrite: 0,\n\t\t\t\t\ttotal: 0,\n\t\t\t\t},\n\t};\n}\n\n/**\n * Error thrown when serialization/deserialization fails.\n * Includes context about which message caused the failure.\n */\nexport class SessionSerializationError extends Error {\n\treadonly context?: SessionSerializationContext;\n\n\tconstructor(message: string, context?: SessionSerializationContext) {\n\t\tsuper(context ? `${message} (${JSON.stringify(context)})` : message);\n\t\tthis.name = \"SessionSerializationError\";\n\t\tthis.context = context;\n\t}\n}\n\n// Placeholder strings used when images can't be serialized to JSON\nconst IMAGE_PLACEHOLDER_PREFIX = \"[image:\";\nconst UNKNOWN_IMAGE_PLACEHOLDER = \"[image]\";\n\n/**\n * Safely stringify a value, returning a placeholder if serialization fails.\n * Handles circular references and BigInt values gracefully.\n */\nfunction safeStringify(value: unknown): string {\n\ttry {\n\t\treturn JSON.stringify(value);\n\t} catch {\n\t\treturn \"[unserializable]\";\n\t}\n}\n\n/** Type guard for plain objects (not arrays or null) */\n\nfunction toComposerAttachments(\n\tattachments: Attachment[] | undefined,\n\toptions?: { includeAttachmentContent?: boolean },\n): ComposerAttachment[] | undefined {\n\tif (!attachments || attachments.length === 0) return undefined;\n\tconst includeAttachmentContent = options?.includeAttachmentContent !== false;\n\treturn attachments.map((a) => ({\n\t\tid: a.id,\n\t\ttype: a.type,\n\t\tfileName: a.fileName,\n\t\tmimeType: a.mimeType,\n\t\tsize: a.size,\n\t\tcontent: includeAttachmentContent ? a.content : undefined,\n\t\tcontentOmitted: includeAttachmentContent ? undefined : true,\n\t\textractedText: a.extractedText,\n\t\tpreview: a.preview,\n\t}));\n}\n\nfunction fromComposerAttachments(\n\tattachments: ComposerAttachment[] | undefined,\n): Attachment[] | undefined {\n\tif (!attachments || attachments.length === 0) return undefined;\n\n\tconst out: Attachment[] = [];\n\tfor (const a of attachments) {\n\t\tif (!a) continue;\n\t\tif (typeof a.id !== \"string\" || !a.id) continue;\n\t\tif (a.type !== \"image\" && a.type !== \"document\") continue;\n\t\tif (typeof a.fileName !== \"string\" || !a.fileName) continue;\n\t\tif (typeof a.mimeType !== \"string\" || !a.mimeType) continue;\n\t\tif (typeof a.size !== \"number\" || !Number.isFinite(a.size)) continue;\n\t\tif (typeof a.content !== \"string\" || a.content.length === 0) {\n\t\t\t// Content omitted in session responses; do not pass to agent.\n\t\t\tcontinue;\n\t\t}\n\t\tout.push({\n\t\t\tid: a.id,\n\t\t\ttype: a.type,\n\t\t\tfileName: a.fileName,\n\t\t\tmimeType: a.mimeType,\n\t\t\tsize: a.size,\n\t\t\tcontent: a.content,\n\t\t\textractedText:\n\t\t\t\ttypeof a.extractedText === \"string\" ? a.extractedText : undefined,\n\t\t\tpreview: typeof a.preview === \"string\" ? a.preview : undefined,\n\t\t});\n\t}\n\n\treturn out.length ? out : undefined;\n}\n\n/** Helper to construct error context from conversion parameters */\nfunction buildContext(\n\tsource: SessionSerializationDirection,\n\tindex: number,\n\trole?: string,\n): SessionSerializationContext {\n\treturn { source, index, role };\n}\n\n/**\n * Create a zero-initialized usage object.\n * Used when converting messages that don't have usage data.\n */\nexport function createEmptyUsage(): Usage {\n\treturn {\n\t\tinput: 0,\n\t\toutput: 0,\n\t\tcacheRead: 0,\n\t\tcacheWrite: 0,\n\t\tcost: {\n\t\t\tinput: 0,\n\t\t\toutput: 0,\n\t\t\tcacheRead: 0,\n\t\t\tcacheWrite: 0,\n\t\t\ttotal: 0,\n\t\t},\n\t};\n}\n\n/**\n * Serialize tool call content to a string for the tool result message.\n * Handles various result types: strings, primitives, objects.\n * Falls back to serializing args if result is missing.\n */\nexport function serializeToolContent(tool: ComposerToolCall): string {\n\t// String results are used directly\n\tif (typeof tool.result === \"string\") {\n\t\treturn tool.result;\n\t}\n\t// Primitives are converted to string\n\tif (typeof tool.result === \"number\" || typeof tool.result === \"boolean\") {\n\t\treturn String(tool.result);\n\t}\n\t// Objects are JSON-serialized\n\tif (tool.result && typeof tool.result === \"object\") {\n\t\treturn safeStringify(tool.result);\n\t}\n\t// Fallback: serialize the args if no result\n\tif (tool.args && typeof tool.args === \"object\") {\n\t\treturn safeStringify(tool.args);\n\t}\n\treturn \"\";\n}\n\n/**\n * Convert a timestamp to ISO string format.\n * Handles both numeric (ms since epoch) and string inputs.\n * Returns current time if input is undefined.\n */\nfunction toIsoString(\n\tinput: number | string | undefined,\n\tcontext: SessionSerializationContext,\n): string {\n\tif (typeof input === \"number\") {\n\t\t// Validate numeric timestamp (reject NaN, Infinity)\n\t\tif (!Number.isFinite(input)) {\n\t\t\tthrow new SessionSerializationError(\"Invalid numeric timestamp\", context);\n\t\t}\n\t\treturn new Date(input).toISOString();\n\t}\n\tif (typeof input === \"string\") {\n\t\t// Parse and validate string timestamp\n\t\tconst parsed = Date.parse(input);\n\t\tif (!Number.isFinite(parsed)) {\n\t\t\tthrow new SessionSerializationError(\"Invalid timestamp\", context);\n\t\t}\n\t\treturn new Date(parsed).toISOString();\n\t}\n\t// Default to current time if not provided\n\treturn new Date().toISOString();\n}\n\n/**\n * Convert an ISO string timestamp to numeric (ms since epoch).\n * Returns current time if input is undefined.\n */\nfunction toTimestamp(\n\tinput: string | undefined,\n\tcontext: SessionSerializationContext,\n): number {\n\tif (!input) return Date.now();\n\tconst parsed = Date.parse(input);\n\tif (!Number.isFinite(parsed)) {\n\t\tthrow new SessionSerializationError(\"Invalid timestamp\", context);\n\t}\n\treturn parsed;\n}\n\n/**\n * Extract text content from a message's content array.\n * Handles mixed content types:\n * - Text blocks are concatenated\n * - Images are replaced with placeholders\n * - Thinking and tool calls are skipped (handled separately)\n * - Unknown types get a placeholder\n */\nfunction extractTextContent(\n\tcontent?:\n\t\t| string\n\t\t| Array<TextContent | ThinkingContent | ToolCall | ImageContent>,\n): string {\n\tif (!content) return \"\";\n\tif (typeof content === \"string\") return content;\n\n\tconst fragments: string[] = [];\n\tfor (const block of content) {\n\t\tif (!block) continue;\n\n\t\t// Text blocks - include as-is\n\t\tif (block.type === \"text\") {\n\t\t\tfragments.push(block.text);\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Image blocks - replace with placeholder (too large for JSON)\n\t\tif (block.type === \"image\") {\n\t\t\tconst descriptor = block.mimeType\n\t\t\t\t? `${IMAGE_PLACEHOLDER_PREFIX}${block.mimeType}]`\n\t\t\t\t: UNKNOWN_IMAGE_PLACEHOLDER;\n\t\t\tfragments.push(descriptor);\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Thinking and tool calls are extracted separately, skip here\n\t\tif (block.type === \"thinking\" || block.type === \"toolCall\") {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Unknown content type - add placeholder with type info\n\t\tconst fallbackType = (block as { type?: string }).type || \"unknown\";\n\t\tfragments.push(`[content:${fallbackType}]`);\n\t}\n\n\treturn fragments.join(\"\\n\\n\");\n}\n\n/**\n * Extract thinking content from a message into a single string.\n * Returns undefined if no thinking blocks are present.\n */\nfunction extractThinking(\n\tcontent?:\n\t\t| string\n\t\t| Array<TextContent | ThinkingContent | ToolCall | ImageContent>,\n): string | undefined {\n\tif (!content || typeof content === \"string\") return undefined;\n\n\t// Filter to thinking blocks, extract text, and join\n\tconst thought = content\n\t\t.filter((block): block is ThinkingContent => block.type === \"thinking\")\n\t\t.map((block) => block.thinking.trim())\n\t\t.filter(Boolean)\n\t\t.join(\"\\n\\n\");\n\n\treturn thought.length ? thought : undefined;\n}\n\n/**\n * Extract tool calls from a message into Maestro format.\n * Returns empty array if no tool calls are present.\n */\nfunction extractToolCalls(\n\tcontent?:\n\t\t| string\n\t\t| Array<TextContent | ThinkingContent | ToolCall | ImageContent>,\n): ComposerToolCall[] {\n\tif (!content || typeof content === \"string\") return [];\n\n\treturn content\n\t\t.filter((block): block is ToolCall => block.type === \"toolCall\")\n\t\t.map((toolCall) => ({\n\t\t\tname: toolCall.name?.trim() || \"unnamed_tool\",\n\t\t\tstatus: \"completed\",\n\t\t\targs: toolCall.arguments || {},\n\t\t\ttoolCallId: toolCall.id,\n\t\t}));\n}\n\nfunction extractComposerTextContent(\n\tcontent: ComposerMessage[\"content\"],\n): string {\n\tif (typeof content === \"string\") return content;\n\tif (!Array.isArray(content)) return \"\";\n\treturn content\n\t\t.filter((block) => block.type === \"text\")\n\t\t.map((block) => block.text)\n\t\t.join(\"\");\n}\n\nfunction normalizeComposerContentBlocks(\n\tcontent: ComposerMessage[\"content\"],\n): Array<TextContent | ThinkingContent | ToolCall | ImageContent> {\n\tif (!Array.isArray(content)) return [];\n\tconst normalized: Array<\n\t\tTextContent | ThinkingContent | ToolCall | ImageContent\n\t> = [];\n\tfor (const block of content as ComposerContentBlock[]) {\n\t\tif (!block || typeof block !== \"object\") continue;\n\t\tif (block.type === \"text\") {\n\t\t\tnormalized.push({ type: \"text\", text: block.text });\n\t\t} else if (block.type === \"thinking\") {\n\t\t\tnormalized.push({ type: \"thinking\", thinking: block.thinking });\n\t\t} else if (block.type === \"toolCall\") {\n\t\t\tnormalized.push({\n\t\t\t\ttype: \"toolCall\",\n\t\t\t\tid: block.id,\n\t\t\t\tname: block.name,\n\t\t\t\targuments: block.arguments,\n\t\t\t\tthoughtSignature: block.thoughtSignature,\n\t\t\t});\n\t\t} else if (block.type === \"image\") {\n\t\t\tnormalized.push({\n\t\t\t\ttype: \"image\",\n\t\t\t\tdata: block.data,\n\t\t\t\tmimeType: block.mimeType,\n\t\t\t});\n\t\t}\n\t}\n\treturn normalized;\n}\n\n/**\n * Convert a single internal AppMessage to Maestro protocol format.\n *\n * This is the main app -> Maestro conversion function. It handles:\n * - User messages: Extract text content\n * - Assistant messages: Extract text, thinking, and tool calls\n * - Tool results: Extract result content and error status\n * - System messages: Extract text content\n *\n * @param message - The internal message to convert\n * @param index - Position in the message array (for error context)\n */\nexport function convertAppMessageToComposer(\n\tmessage: AppMessage,\n\tindex = 0,\n\toptions?: { includeAttachmentContent?: boolean },\n): ComposerMessage {\n\tconst context = buildContext(\"app->composer\", index, message.role);\n\tconst timestamp = toIsoString(\n\t\t\"timestamp\" in message ? message.timestamp : undefined,\n\t\tcontext,\n\t);\n\n\t// User messages - simple text extraction\n\tif (isUserMessage(message)) {\n\t\tconst attachments = toComposerAttachments(\n\t\t\t\"attachments\" in message\n\t\t\t\t? (message as { attachments?: Attachment[] }).attachments\n\t\t\t\t: undefined,\n\t\t\toptions,\n\t\t);\n\t\treturn {\n\t\t\trole: \"user\",\n\t\t\tcontent: extractTextContent(message.content),\n\t\t\ttimestamp,\n\t\t\tattachments,\n\t\t};\n\t}\n\n\t// Assistant messages - extract text, thinking, and tool calls\n\tif (isAssistantMessage(message)) {\n\t\tconst tools = extractToolCalls(message.content);\n\t\treturn {\n\t\t\trole: \"assistant\",\n\t\t\tcontent: extractTextContent(message.content),\n\t\t\tthinking: extractThinking(message.content),\n\t\t\ttimestamp,\n\t\t\ttools: tools.length ? tools : undefined,\n\t\t\tusage: toComposerUsage(message.usage),\n\t\t\tprovider: message.provider,\n\t\t\tapi: message.api,\n\t\t\tmodel: message.model,\n\t\t\troutingReceipt: message.routingReceipt,\n\t\t};\n\t}\n\n\t// Tool result messages - include tool name and error status\n\tif (isToolResultMessage(message)) {\n\t\treturn {\n\t\t\trole: \"tool\",\n\t\t\tcontent: extractTextContent(message.content),\n\t\t\ttimestamp,\n\t\t\ttoolName: message.toolName,\n\t\t\tisError: message.isError,\n\t\t};\n\t}\n\n\t// System messages (rare, but supported)\n\tconst systemLike = message as {\n\t\trole?: string;\n\t\tcontent?: string | Array<TextContent | ImageContent>;\n\t};\n\tif (systemLike.role === \"system\") {\n\t\treturn {\n\t\t\trole: \"system\",\n\t\t\tcontent: extractTextContent(systemLike.content),\n\t\t\ttimestamp,\n\t\t};\n\t}\n\n\tthrow new SessionSerializationError(\"Unsupported App role\", context);\n}\n\n/**\n * Convert an array of AppMessages to Maestro format.\n * Preserves message order and provides index context for errors.\n */\nexport function convertAppMessagesToComposer(\n\tmessages: AppMessage[],\n\toptions?: { includeAttachmentContent?: boolean },\n): ComposerMessage[] {\n\treturn messages.map((message, index) =>\n\t\tconvertAppMessageToComposer(message, index, options),\n\t);\n}\n\n/**\n * Normalize a Maestro tool call to internal ToolCall format.\n * Generates stable IDs if not provided.\n *\n * @param tool - The Maestro tool call to normalize\n * @param messageIndex - Message position (for generating fallback IDs)\n * @param contentIndex - Content block position (for generating fallback IDs)\n */\nfunction normalizeToolCall(\n\ttool: ComposerToolCall,\n\tmessageIndex: number,\n\tcontentIndex: number,\n): ToolCall {\n\t// Generate fallback name/ID if not provided\n\tconst name = tool.name?.trim() || `tool_${messageIndex}_${contentIndex}`;\n\tconst toolCallId =\n\t\ttool.toolCallId || `web-tool-${messageIndex}-${contentIndex}`;\n\t// Ensure args is a record (not array or primitive)\n\tconst args: Record<string, unknown> = isRecord(tool.args) ? tool.args : {};\n\n\treturn {\n\t\ttype: \"toolCall\",\n\t\tid: toolCallId,\n\t\tname,\n\t\targuments: args,\n\t};\n}\n\n/**\n * Create a ToolResultMessage from a Maestro tool call.\n * The result is derived from the tool call's embedded result field.\n */\nfunction normalizeToolResult(\n\ttool: ComposerToolCall,\n\tnormalizedCall: ToolCall,\n\ttimestamp: string | undefined,\n\tcontext: SessionSerializationContext,\n): ToolResultMessage {\n\treturn {\n\t\trole: \"toolResult\",\n\t\ttoolCallId: normalizedCall.id,\n\t\ttoolName: normalizedCall.name,\n\t\tcontent: [\n\t\t\t{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: serializeToolContent(tool),\n\t\t\t},\n\t\t],\n\t\tisError: tool.status === \"error\",\n\t\ttimestamp: toTimestamp(timestamp, context),\n\t};\n}\n\n/**\n * Convert a single Maestro message to internal AppMessage format.\n *\n * This is the main Maestro -> app conversion function. Note that a single\n * Maestro message may expand to multiple AppMessages when tool calls are\n * present (the assistant message + one toolResult per tool).\n *\n * @param message - The Maestro message to convert\n * @param model - Model metadata to attach to assistant messages\n * @param index - Position in the message array (for error context)\n * @returns Array of AppMessages (may be 1+ messages)\n */\nexport function convertComposerMessageToApp(\n\tmessage: ComposerMessage,\n\tmodel: RegisteredModel,\n\tindex = 0,\n): AppMessage[] {\n\tconst context = buildContext(\"composer->app\", index, message.role);\n\n\t// User messages - wrap content in text block\n\tif (message.role === \"user\") {\n\t\tconst attachments = fromComposerAttachments(message.attachments);\n\t\tif (Array.isArray(message.content)) {\n\t\t\tconst normalized = normalizeComposerContentBlocks(message.content).filter(\n\t\t\t\t(block) => block.type === \"text\" || block.type === \"image\",\n\t\t\t);\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\trole: \"user\",\n\t\t\t\t\tcontent:\n\t\t\t\t\t\tnormalized.length > 0 ? normalized : [{ type: \"text\", text: \"\" }],\n\t\t\t\t\tattachments,\n\t\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn [\n\t\t\t{\n\t\t\t\trole: \"user\",\n\t\t\t\tcontent: [\n\t\t\t\t\t{ type: \"text\", text: extractComposerTextContent(message.content) },\n\t\t\t\t],\n\t\t\t\tattachments,\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t},\n\t\t];\n\t}\n\n\t// Assistant messages - reconstruct content array from components\n\tif (message.role === \"assistant\") {\n\t\tconst resolvedProvider = message.provider ?? model.provider;\n\t\tconst resolvedApi = (message.api ?? model.api) as AssistantMessage[\"api\"];\n\t\tconst resolvedModel = message.model ?? model.id;\n\t\tif (Array.isArray(message.content)) {\n\t\t\tconst normalizedSequence = normalizeComposerContentBlocks(\n\t\t\t\tmessage.content,\n\t\t\t).filter(\n\t\t\t\t(block): block is TextContent | ThinkingContent | ToolCall =>\n\t\t\t\t\tblock.type !== \"image\",\n\t\t\t);\n\t\t\tconst hasThinking = normalizedSequence.some(\n\t\t\t\t(block) => block.type === \"thinking\",\n\t\t\t);\n\t\t\tconst hasToolCalls = normalizedSequence.some(\n\t\t\t\t(block) => block.type === \"toolCall\",\n\t\t\t);\n\n\t\t\tif (!hasThinking && message.thinking?.trim()) {\n\t\t\t\tnormalizedSequence.unshift({\n\t\t\t\t\ttype: \"thinking\",\n\t\t\t\t\tthinking: message.thinking.trim(),\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst tools = message.tools ?? [];\n\t\t\tif (!hasToolCalls && tools.length > 0) {\n\t\t\t\tconst baseContentLength = normalizedSequence.length;\n\t\t\t\tconst toolCalls: ToolCall[] = tools.map((tool, toolIndex) =>\n\t\t\t\t\tnormalizeToolCall(tool, index, baseContentLength + toolIndex),\n\t\t\t\t);\n\t\t\t\tnormalizedSequence.push(...toolCalls);\n\t\t\t}\n\n\t\t\tconst assistantMessage: AssistantMessage = {\n\t\t\t\trole: \"assistant\",\n\t\t\t\tcontent: normalizedSequence,\n\t\t\t\tapi: resolvedApi,\n\t\t\t\tprovider: resolvedProvider,\n\t\t\t\tmodel: resolvedModel,\n\t\t\t\tusage: message.usage\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tinput: message.usage.input ?? 0,\n\t\t\t\t\t\t\toutput: message.usage.output ?? 0,\n\t\t\t\t\t\t\tcacheRead: message.usage.cacheRead ?? 0,\n\t\t\t\t\t\t\tcacheWrite: message.usage.cacheWrite ?? 0,\n\t\t\t\t\t\t\tcost: {\n\t\t\t\t\t\t\t\tinput: message.usage.cost?.input ?? 0,\n\t\t\t\t\t\t\t\toutput: message.usage.cost?.output ?? 0,\n\t\t\t\t\t\t\t\tcacheRead: message.usage.cost?.cacheRead ?? 0,\n\t\t\t\t\t\t\t\tcacheWrite: message.usage.cost?.cacheWrite ?? 0,\n\t\t\t\t\t\t\t\ttotal: message.usage.cost?.total ?? 0,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}\n\t\t\t\t\t: createEmptyUsage(),\n\t\t\t\tstopReason: \"stop\",\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t\troutingReceipt: message.routingReceipt,\n\t\t\t};\n\n\t\t\tconst results: AppMessage[] = [assistantMessage];\n\t\t\tconst toolCallBlocks = normalizedSequence.filter(\n\t\t\t\t(block): block is ToolCall => block.type === \"toolCall\",\n\t\t\t);\n\n\t\t\t// Generate tool result messages for each tool call\n\t\t\ttools.forEach((tool, toolIndex) => {\n\t\t\t\tconst normalizedCall =\n\t\t\t\t\t(tool.toolCallId\n\t\t\t\t\t\t? toolCallBlocks.find((block) => block.id === tool.toolCallId)\n\t\t\t\t\t\t: toolCallBlocks[toolIndex]) ??\n\t\t\t\t\tnormalizeToolCall(tool, index, normalizedSequence.length + toolIndex);\n\t\t\t\tresults.push(\n\t\t\t\t\tnormalizeToolResult(tool, normalizedCall, message.timestamp, context),\n\t\t\t\t);\n\t\t\t});\n\n\t\t\treturn results;\n\t\t}\n\t\t// Build content array: thinking first, then text, then tool calls\n\t\tconst normalizedSequence: Array<TextContent | ThinkingContent | ToolCall> =\n\t\t\t[];\n\n\t\t// Add thinking block if present\n\t\tif (message.thinking?.trim()) {\n\t\t\tnormalizedSequence.push({\n\t\t\t\ttype: \"thinking\",\n\t\t\t\tthinking: message.thinking.trim(),\n\t\t\t});\n\t\t}\n\n\t\t// Add text content if present\n\t\tif (extractComposerTextContent(message.content)) {\n\t\t\tnormalizedSequence.push({\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: extractComposerTextContent(message.content),\n\t\t\t});\n\t\t}\n\n\t\t// Convert and add tool calls\n\t\tconst tools = message.tools ?? [];\n\t\tconst baseContentLength = normalizedSequence.length;\n\t\tconst toolCalls: ToolCall[] = tools.map((tool, toolIndex) =>\n\t\t\tnormalizeToolCall(tool, index, baseContentLength + toolIndex),\n\t\t);\n\t\tnormalizedSequence.push(...toolCalls);\n\n\t\t// Build the assistant message with model metadata\n\t\tconst assistantMessage: AssistantMessage = {\n\t\t\trole: \"assistant\",\n\t\t\tcontent: normalizedSequence,\n\t\t\tapi: resolvedApi,\n\t\t\tprovider: resolvedProvider,\n\t\t\tmodel: resolvedModel,\n\t\t\tusage: message.usage\n\t\t\t\t? {\n\t\t\t\t\t\tinput: message.usage.input ?? 0,\n\t\t\t\t\t\toutput: message.usage.output ?? 0,\n\t\t\t\t\t\tcacheRead: message.usage.cacheRead ?? 0,\n\t\t\t\t\t\tcacheWrite: message.usage.cacheWrite ?? 0,\n\t\t\t\t\t\tcost: {\n\t\t\t\t\t\t\tinput: message.usage.cost?.input ?? 0,\n\t\t\t\t\t\t\toutput: message.usage.cost?.output ?? 0,\n\t\t\t\t\t\t\tcacheRead: message.usage.cost?.cacheRead ?? 0,\n\t\t\t\t\t\t\tcacheWrite: message.usage.cost?.cacheWrite ?? 0,\n\t\t\t\t\t\t\ttotal: message.usage.cost?.total ?? 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t}\n\t\t\t\t: createEmptyUsage(),\n\t\t\tstopReason: \"stop\",\n\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\troutingReceipt: message.routingReceipt,\n\t\t};\n\n\t\tconst results: AppMessage[] = [assistantMessage];\n\n\t\t// Generate tool result messages for each tool call\n\t\t// These follow the assistant message in the conversation\n\t\ttools.forEach((tool, toolIndex) => {\n\t\t\tconst normalizedCall = toolCalls[toolIndex]!;\n\t\t\tresults.push(\n\t\t\t\tnormalizeToolResult(tool, normalizedCall, message.timestamp, context),\n\t\t\t);\n\t\t});\n\n\t\treturn results;\n\t}\n\n\t// Standalone tool messages (less common, but supported)\n\tif (message.role === \"tool\") {\n\t\tconst toolName = message.toolName || \"web_tool\";\n\t\treturn [\n\t\t\t{\n\t\t\t\trole: \"toolResult\",\n\t\t\t\ttoolCallId: `${toolName}-${index}`,\n\t\t\t\ttoolName,\n\t\t\t\tcontent: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\ttext: extractComposerTextContent(message.content),\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tisError: Boolean(message.isError),\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t},\n\t\t];\n\t}\n\n\t// System messages are converted to assistant messages\n\t// (internal format doesn't have a separate system role in conversation)\n\tif (message.role === \"system\") {\n\t\treturn [\n\t\t\t{\n\t\t\t\trole: \"assistant\",\n\t\t\t\tcontent: [\n\t\t\t\t\t{ type: \"text\", text: extractComposerTextContent(message.content) },\n\t\t\t\t],\n\t\t\t\tapi: model.api,\n\t\t\t\tprovider: model.provider,\n\t\t\t\tmodel: model.id,\n\t\t\t\tusage: createEmptyUsage(),\n\t\t\t\tstopReason: \"stop\",\n\t\t\t\ttimestamp: toTimestamp(message.timestamp, context),\n\t\t\t},\n\t\t];\n\t}\n\n\tthrow new SessionSerializationError(\"Unsupported Maestro role\", context);\n}\n\n/**\n * Convert an array of Maestro messages to internal AppMessage format.\n *\n * Note: The output array may be longer than the input because assistant\n * messages with tool calls expand to multiple AppMessages.\n */\nexport function convertComposerMessagesToApp(\n\tmessages: ComposerMessage[],\n\tmodel: RegisteredModel,\n): AppMessage[] {\n\tconst result: AppMessage[] = [];\n\tfor (const [index, message] of messages.entries()) {\n\t\t// Preserve relative ordering by pushing each expanded block in sequence\n\t\tresult.push(...convertComposerMessageToApp(message, model, index));\n\t}\n\treturn result;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-timeline.d.ts","sourceRoot":"","sources":["../../src/server/session-timeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,sBAAsB,EAGtB,2BAA2B,EAE3B,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"session-timeline.d.ts","sourceRoot":"","sources":["../../src/server/session-timeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,sBAAsB,EAGtB,2BAA2B,EAE3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACX,UAAU,EAIV,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOxD,UAAU,+BAA+B;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAiyBD,wBAAgB,wBAAwB,CACvC,OAAO,EAAE,+BAA+B,GACtC,2BAA2B,CAgD7B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { getSkillArtifactMetadataFromDetails } from "../agent/skill-artifact-metadata.js";
|
|
1
2
|
import { getDiagnosticDeltaFromToolResult } from "../lsp/diagnostic-repair.js";
|
|
2
|
-
import { getSkillArtifactMetadataFromDetails } from "../skills/artifact-metadata.js";
|
|
3
3
|
import { compactTimelineMetadata, compactTimelineSummary, redactTimelineSecrets, } from "../timeline/redaction.js";
|
|
4
4
|
function normalizeTimestamp(value, fallback) {
|
|
5
5
|
if (typeof value === "string" || typeof value === "number") {
|