@evalops/maestro 0.10.51 → 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.d.ts.map +1 -1
- package/dist/agent/agent.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/modes.d.ts +1 -1
- package/dist/agent/modes.d.ts.map +1 -1
- package/dist/agent/modes.js +56 -0
- 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/google-gemini-cli.js +1 -0
- package/dist/agent/providers/google.js +1 -0
- package/dist/agent/providers/vertex.js +1 -0
- 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/{skills/artifact-metadata.d.ts → agent/skill-artifact-metadata.d.ts} +2 -4
- package/dist/agent/skill-artifact-metadata.d.ts.map +1 -0
- package/dist/{skills/artifact-metadata.js → agent/skill-artifact-metadata.js} +1 -38
- package/dist/agent/skill-artifact-metadata.js.map +1 -0
- package/dist/agent/subagent-specs.d.ts +1 -1
- package/dist/agent/subagent-specs.js +2 -2
- package/dist/agent/subagent-specs.js.map +1 -1
- 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/types.d.ts +4 -2
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/app-server/plugin-bundle-api.d.ts.map +1 -1
- package/dist/app-server/plugin-bundle-api.js +1 -0
- package/dist/app-server/plugin-bundle-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 +2 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +18 -1
- package/dist/cli/args.js.map +1 -1
- 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.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 +3 -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-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 +52529 -137615
- 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/{cli-tui → config}/ui-state.d.ts +6 -1
- package/dist/config/ui-state.d.ts.map +1 -0
- package/dist/{cli-tui → config}/ui-state.js +1 -1
- package/dist/config/ui-state.js.map +1 -0
- 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/db/schema.d.ts +2 -2
- 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/main.d.ts.map +1 -1
- package/dist/main.js +154 -882
- package/dist/main.js.map +1 -1
- package/dist/models/config-loader.d.ts +5 -5
- package/dist/node_modules/@evalops/contracts/dist/index.d.ts +45 -0
- package/dist/node_modules/@evalops/contracts/dist/index.d.ts.map +1 -1
- package/dist/node_modules/@evalops/contracts/dist/index.js +2 -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/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/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/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 +1 -0
- package/dist/runtime/env.d.ts.map +1 -1
- package/dist/runtime/env.js +1 -0
- package/dist/runtime/env.js.map +1 -1
- package/dist/{cli-tui → runtime}/prompt-queue.d.ts.map +1 -1
- package/dist/{cli-tui → runtime}/prompt-queue.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/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/queue.js +1 -1
- package/dist/server/handlers/queue.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/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/session-serialization.d.ts.map +1 -1
- package/dist/server/session-serialization.js +3 -0
- 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/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 +17 -0
- 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/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/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/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.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/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/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/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/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 +13 -11
- package/skills/incident-triage/SKILL.md +4 -3
- package/dist/cli/commands/agents.d.ts +0 -24
- package/dist/cli/commands/agents.d.ts.map +0 -1
- package/dist/cli/commands/agents.js +0 -429
- 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 -860
- 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 -305
- 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/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 -73
- package/dist/cli-tui/tui-renderer/skills-controller.d.ts.map +0 -1
- package/dist/cli-tui/tui-renderer/skills-controller.js +0 -455
- 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.map +0 -1
- 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.map +0 -1
- 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 -64
- 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 -41
- package/dist/skills/index.d.ts.map +0 -1
- package/dist/skills/index.js +0 -41
- package/dist/skills/index.js.map +0 -1
- package/dist/skills/learned-guidelines.d.ts +0 -33
- package/dist/skills/learned-guidelines.d.ts.map +0 -1
- package/dist/skills/learned-guidelines.js +0 -291
- package/dist/skills/learned-guidelines.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 -397
- 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 -69
- package/dist/skills/runtime-activation.d.ts.map +0 -1
- package/dist/skills/runtime-activation.js +0 -227
- 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 -339
- package/dist/skills/tool.js.map +0 -1
- package/dist/skills/trust-cache.d.ts +0 -65
- package/dist/skills/trust-cache.d.ts.map +0 -1
- package/dist/skills/trust-cache.js +0 -146
- 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":"maestro-publisher-conformance-fixture.js","sourceRoot":"","sources":["../../src/telemetry/maestro-publisher-conformance-fixture.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PromptMetadata } from \"../prompts/types.js\";\nimport type { SkillArtifactMetadata } from \"../skills/artifact-metadata.js\";\nimport {\n\tbuildAgentOperatingPlaneCorrelation,\n\tbuildAgentOperatingPlaneMetadata,\n} from \"./agent-operating-plane-context.js\";\nimport {\n\tMaestroBusEventType,\n\ttype MaestroCloudEvent,\n\ttype MaestroCorrelation,\n\trecordMaestroApprovalHit,\n\trecordMaestroSkillOutcome,\n\trecordMaestroToolCallAttempt,\n\trecordMaestroToolCallCompleted,\n\twithMaestroEventBusTransportOverride,\n} from \"./maestro-event-bus.js\";\n\nexport const CANONICAL_MAESTRO_PUBLISHER_CONFORMANCE_FIXTURE_NAME =\n\t\"maestro-publisher-critical-path\";\n\nconst ORGANIZATION_ID = \"org_evalops_fixture\";\nconst WORKSPACE_ID = \"workspace_publisher_fixture\";\nconst SESSION_ID = \"session_publisher_fixture_001\";\nconst AGENT_RUN_ID = \"agent_run_publisher_fixture_001\";\nconst BASH_AGENT_RUN_STEP_ID = \"agent_run_step_publisher_fixture_bash_001\";\nconst BASH_TOOL_CALL_ID = \"tool_call_publisher_fixture_bash_001\";\nconst BASH_TOOL_EXECUTION_ID = \"tool_exec_publisher_fixture_bash_001\";\nconst SKILL_AGENT_RUN_STEP_ID = \"agent_run_step_publisher_fixture_skill_001\";\nconst SKILL_TOOL_CALL_ID = \"tool_call_publisher_fixture_skill_001\";\nconst SKILL_TOOL_EXECUTION_ID = \"tool_exec_publisher_fixture_skill_001\";\nconst APPROVAL_REQUEST_ID = \"approval_publisher_fixture_001\";\nconst SKILL_INVOCATION_ID = \"skill_invocation_publisher_fixture_001\";\nconst SKILL_ID = \"skill_incident_review\";\nconst DATA_CLASSIFICATION = \"internal\";\nconst RETENTION_CLASS = \"operational_audit\";\n\nconst promptMetadata = {\n\tname: \"maestro-system\",\n\tlabel: \"production\",\n\tsurface: \"web\",\n\tversion: 9,\n\tversionId: \"prompt_version_9\",\n\thash: \"sha256:prompt-platform-replay\",\n\tsource: \"service\",\n} satisfies PromptMetadata;\n\nconst skillMetadata = {\n\tartifactId: SKILL_ID,\n\tname: \"incident-review\",\n\tversion: \"3\",\n\thash: \"sha256:skill-incident-review\",\n\tsource: \"service\",\n} satisfies SkillArtifactMetadata;\n\nconst fixtureEnv: NodeJS.ProcessEnv = {\n\tMAESTRO_EVENT_BUS_URL: \"nats://maestro-publisher-fixture.invalid:4222\",\n\tMAESTRO_EVENT_BUS_SOURCE: \"maestro-publisher-fixture\",\n\tMAESTRO_EVALOPS_ORG_ID: ORGANIZATION_ID,\n\tMAESTRO_EVALOPS_WORKSPACE_ID: WORKSPACE_ID,\n\tMAESTRO_SESSION_ID: SESSION_ID,\n\tMAESTRO_AGENT_RUN_ID: AGENT_RUN_ID,\n\tMAESTRO_AGENT_ID: \"agent_maestro_publisher_fixture\",\n\tMAESTRO_ACTOR_ID: \"user_publisher_fixture\",\n\tMAESTRO_PRINCIPAL_ID: \"principal_publisher_fixture\",\n\tMAESTRO_REQUEST_ID: \"request_publisher_fixture_001\",\n\tMAESTRO_REMOTE_RUNNER_SESSION_ID: \"remote_runner_publisher_fixture_001\",\n\tMAESTRO_OBJECTIVE_ID: \"objective_publisher_fixture_001\",\n\tMAESTRO_CONVERSATION_ID: \"conversation_publisher_fixture_001\",\n\tTRACE_ID: \"trace_publisher_fixture_001\",\n\tTRACESTATE: \"evalops=maestro-publisher-fixture\",\n\tMAESTRO_EVENT_BUS_ATTR_FIXTURE: \"maestro-publisher-conformance\",\n\tMAESTRO_EVENT_BUS_ATTR_PUBLISHER_CONTRACT: \"maestro.v1\",\n};\n\nconst baseCorrelation: MaestroCorrelation = buildAgentOperatingPlaneCorrelation(\n\t{\n\t\torganization_id: ORGANIZATION_ID,\n\t\tworkspace_id: WORKSPACE_ID,\n\t\tsession_id: SESSION_ID,\n\t\tagent_run_id: AGENT_RUN_ID,\n\t\tagent_id: \"agent_maestro_publisher_fixture\",\n\t\tactor_id: \"user_publisher_fixture\",\n\t\tprincipal_id: \"principal_publisher_fixture\",\n\t\ttrace_id: \"trace_publisher_fixture_001\",\n\t\trequest_id: \"request_publisher_fixture_001\",\n\t\tremote_runner_session_id: \"remote_runner_publisher_fixture_001\",\n\t\tobjective_id: \"objective_publisher_fixture_001\",\n\t\tconversation_id: \"conversation_publisher_fixture_001\",\n\t\ttracestate: \"evalops=maestro-publisher-fixture\",\n\t\tattributes: {\n\t\t\tfixture: \"maestro-publisher-conformance\",\n\t\t\tpublisher_contract: \"maestro.v1\",\n\t\t},\n\t},\n);\n\nconst eventPlan = [\n\t{\n\t\ttype: MaestroBusEventType.ApprovalHit,\n\t\tid: \"evt_maestro_publisher_001_approval_hit\",\n\t\ttime: \"2026-04-23T18:05:00.000Z\",\n\t},\n\t{\n\t\ttype: MaestroBusEventType.ToolCallAttempted,\n\t\tid: \"evt_maestro_publisher_002_tool_call_attempted\",\n\t\ttime: \"2026-04-23T18:06:00.000Z\",\n\t},\n\t{\n\t\ttype: MaestroBusEventType.ToolCallCompleted,\n\t\tid: \"evt_maestro_publisher_003_tool_call_completed\",\n\t\ttime: \"2026-04-23T18:07:00.000Z\",\n\t},\n\t{\n\t\ttype: MaestroBusEventType.SkillFailed,\n\t\tid: \"evt_maestro_publisher_004_skill_failed\",\n\t\ttime: \"2026-04-23T18:09:00.000Z\",\n\t},\n] as const;\n\nexport type MaestroPublisherConformanceFixtureEvent = MaestroCloudEvent<\n\tRecord<string, unknown>\n>;\n\nexport interface BuildMaestroPublisherConformanceFixtureOptions {\n\tsourceRevision?: string;\n}\n\nexport interface MaestroPublisherConformanceFixture {\n\tfixture_version: \"maestro-publisher-conformance/v1\";\n\tname: typeof CANONICAL_MAESTRO_PUBLISHER_CONFORMANCE_FIXTURE_NAME;\n\tevent_count: number;\n\torigin: {\n\t\trepository: \"evalops/maestro\";\n\t\tissue: \"evalops/maestro#434\";\n\t\tpublisher_package: \"packages/ai\";\n\t\tsource_paths: string[];\n\t\tgenerated_by: \"scripts/generate-maestro-publisher-conformance-fixture.ts\";\n\t\tsource_revision: string;\n\t};\n\tsubjects: MaestroBusEventType[];\n\tstable_untyped_keys: Record<string, string[]>;\n\texpected_assertions: {\n\t\trequired_event_types: MaestroBusEventType[];\n\t\trequired_subjects: MaestroBusEventType[];\n\t};\n\tevents: MaestroPublisherConformanceFixtureEvent[];\n}\n\nfunction bashCorrelation(index: number): MaestroCorrelation {\n\treturn {\n\t\t...baseCorrelation,\n\t\tagent_run_step_id: BASH_AGENT_RUN_STEP_ID,\n\t\ttraceparent: fixtureTraceparent(index),\n\t\ttracestate: fixtureTracestate(index),\n\t};\n}\n\nfunction skillCorrelation(index: number): MaestroCorrelation {\n\treturn {\n\t\t...baseCorrelation,\n\t\tagent_run_step_id: SKILL_AGENT_RUN_STEP_ID,\n\t\ttraceparent: fixtureTraceparent(index),\n\t\ttracestate: fixtureTracestate(index),\n\t};\n}\n\nfunction fixtureTraceparent(index: number): string {\n\treturn `00-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-${String(index + 1).padStart(16, \"0\")}-01`;\n}\n\nfunction fixtureTracestate(index: number): string {\n\treturn `evalops=maestro-publisher-${String(index + 1).padStart(2, \"0\")}`;\n}\n\nfunction operatingPlaneMetadata(safeSummary: string): Record<string, string> {\n\treturn buildAgentOperatingPlaneMetadata({\n\t\tdataClassification: DATA_CLASSIFICATION,\n\t\tretentionClass: RETENTION_CLASS,\n\t\tsafeSummary,\n\t});\n}\n\nasync function flushPublisherTasks(): Promise<void> {\n\tawait Promise.resolve();\n\tawait Promise.resolve();\n\tawait Promise.resolve();\n}\n\nasync function publishFixtureEvent(\n\tevents: MaestroPublisherConformanceFixtureEvent[],\n\trecord: () => void,\n): Promise<void> {\n\tconst previousLength = events.length;\n\trecord();\n\tawait flushPublisherTasks();\n\tif (events.length !== previousLength + 1) {\n\t\tthrow new Error(\"Maestro publisher fixture did not capture an event\");\n\t}\n}\n\nasync function buildPublisherEvents(): Promise<\n\tMaestroPublisherConformanceFixtureEvent[]\n> {\n\tconst events: MaestroPublisherConformanceFixtureEvent[] = [];\n\treturn withMaestroEventBusTransportOverride(\n\t\t{\n\t\t\tasync publish(_subject, payload) {\n\t\t\t\tevents.push(\n\t\t\t\t\tJSON.parse(payload) as MaestroPublisherConformanceFixtureEvent,\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\tasync () => {\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroApprovalHit({\n\t\t\t\t\tevent_id: eventPlan[0].id,\n\t\t\t\t\tapproval_request_id: APPROVAL_REQUEST_ID,\n\t\t\t\t\tgovernance_decision_id: \"governance_decision_publisher_fixture_001\",\n\t\t\t\t\taction: \"Run workspace test command\",\n\t\t\t\t\tcommand: \"workspace test command\",\n\t\t\t\t\trisk_level: \"RISK_LEVEL_MEDIUM\",\n\t\t\t\t\tdecision_mode: \"MAESTRO_DECISION_MODE_REQUIRE_APPROVAL\",\n\t\t\t\t\tpolicy_id: \"policy_workspace_test_approval\",\n\t\t\t\t\treason: \"publisher fixture approval path\",\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Governance approval requested for workspace command\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: bashCorrelation(0),\n\t\t\t\t\toccurred_at: eventPlan[0].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroToolCallAttempt({\n\t\t\t\t\tevent_id: eventPlan[1].id,\n\t\t\t\t\ttool_call_id: BASH_TOOL_CALL_ID,\n\t\t\t\t\ttool_execution_id: BASH_TOOL_EXECUTION_ID,\n\t\t\t\t\ttool_namespace: \"builtin\",\n\t\t\t\t\ttool_name: \"Bash\",\n\t\t\t\t\ttool_version: \"1\",\n\t\t\t\t\tcapability: \"workspace:test\",\n\t\t\t\t\trisk_level: \"RISK_LEVEL_MEDIUM\",\n\t\t\t\t\tsafe_arguments: {\n\t\t\t\t\t\tcommand_summary: \"Run telemetry test suite\",\n\t\t\t\t\t},\n\t\t\t\t\tprompt_metadata: promptMetadata,\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Tool call attempt recorded with safe argument summary\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: bashCorrelation(1),\n\t\t\t\t\tattempted_at: eventPlan[1].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroToolCallCompleted({\n\t\t\t\t\tevent_id: eventPlan[2].id,\n\t\t\t\t\ttool_call_id: BASH_TOOL_CALL_ID,\n\t\t\t\t\ttool_execution_id: BASH_TOOL_EXECUTION_ID,\n\t\t\t\t\tstatus: \"MAESTRO_TOOL_CALL_STATUS_SUCCEEDED\",\n\t\t\t\t\tapproval_request_id: APPROVAL_REQUEST_ID,\n\t\t\t\t\tsafe_output: {\n\t\t\t\t\t\texit_code: 0,\n\t\t\t\t\t\tsummary: \"8 telemetry tests passed\",\n\t\t\t\t\t},\n\t\t\t\t\tprompt_metadata: promptMetadata,\n\t\t\t\t\tskill_metadata: skillMetadata,\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Tool call completed with safe output summary\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: bashCorrelation(2),\n\t\t\t\t\tcompleted_at: eventPlan[2].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroSkillOutcome({\n\t\t\t\t\tevent_id: eventPlan[3].id,\n\t\t\t\t\tinvocation_id: SKILL_INVOCATION_ID,\n\t\t\t\t\tskill_id: SKILL_ID,\n\t\t\t\t\tstatus: \"MAESTRO_SKILL_OUTCOME_STATUS_EVALUATION_FAILED\",\n\t\t\t\t\ttool_call_id: SKILL_TOOL_CALL_ID,\n\t\t\t\t\ttool_execution_id: SKILL_TOOL_EXECUTION_ID,\n\t\t\t\t\tturn_status: \"evaluation_failed\",\n\t\t\t\t\terror_category: \"evaluation\",\n\t\t\t\t\terror_message: \"formatting checks failed\",\n\t\t\t\t\tevaluation_tool_name: \"Bash\",\n\t\t\t\t\tevaluation_tool_call_id: BASH_TOOL_CALL_ID,\n\t\t\t\t\tevaluation_tool_execution_id: BASH_TOOL_EXECUTION_ID,\n\t\t\t\t\tevaluation_score: 0.82,\n\t\t\t\t\tevaluation_threshold: 0.9,\n\t\t\t\t\tevaluation_assertion_count: 1,\n\t\t\t\t\tevaluation_rationale: \"formatting checks failed\",\n\t\t\t\t\tprompt_metadata: promptMetadata,\n\t\t\t\t\tskill_metadata: skillMetadata,\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Skill outcome failed the evaluation threshold\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: skillCorrelation(3),\n\t\t\t\t\toutcome_at: eventPlan[3].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\treturn events;\n\t\t},\n\t);\n}\n\nexport async function buildCanonicalMaestroPublisherConformanceFixture(\n\toptions: BuildMaestroPublisherConformanceFixtureOptions = {},\n): Promise<MaestroPublisherConformanceFixture> {\n\tconst events = await buildPublisherEvents();\n\tconst subjects = eventPlan.map((event) => event.type);\n\treturn {\n\t\tfixture_version: \"maestro-publisher-conformance/v1\",\n\t\tname: CANONICAL_MAESTRO_PUBLISHER_CONFORMANCE_FIXTURE_NAME,\n\t\tevent_count: events.length,\n\t\torigin: {\n\t\t\trepository: \"evalops/maestro\",\n\t\t\tissue: \"evalops/maestro#434\",\n\t\t\tpublisher_package: \"packages/ai\",\n\t\t\tsource_paths: [\n\t\t\t\t\"packages/ai/src/telemetry/index.ts\",\n\t\t\t\t\"src/telemetry/maestro-event-bus.ts\",\n\t\t\t\t\"src/telemetry/maestro-publisher-conformance-fixture.ts\",\n\t\t\t],\n\t\t\tgenerated_by: \"scripts/generate-maestro-publisher-conformance-fixture.ts\",\n\t\t\tsource_revision: options.sourceRevision ?? \"maestro-publisher-generator\",\n\t\t},\n\t\tsubjects,\n\t\tstable_untyped_keys: {\n\t\t\t\"correlation.attributes\": [\"fixture\", \"publisher_contract\"],\n\t\t\tprompt_metadata: [\n\t\t\t\t\"hash\",\n\t\t\t\t\"label\",\n\t\t\t\t\"name\",\n\t\t\t\t\"source\",\n\t\t\t\t\"surface\",\n\t\t\t\t\"version\",\n\t\t\t\t\"versionId\",\n\t\t\t],\n\t\t\tskill_metadata: [\"artifactId\", \"hash\", \"name\", \"source\", \"version\"],\n\t\t\tmetadata: [\"data_classification\", \"retention_class\", \"safe_summary\"],\n\t\t\tsafe_arguments: [\"command_summary\"],\n\t\t\tsafe_output: [\"exit_code\", \"summary\"],\n\t\t},\n\t\texpected_assertions: {\n\t\t\trequired_event_types: subjects,\n\t\t\trequired_subjects: subjects,\n\t\t},\n\t\tevents,\n\t};\n}\n\nexport async function canonicalMaestroPublisherConformanceFixtureJson(\n\toptions: BuildMaestroPublisherConformanceFixtureOptions = {},\n): Promise<string> {\n\treturn `${JSON.stringify(\n\t\tawait buildCanonicalMaestroPublisherConformanceFixture(options),\n\t\tnull,\n\t\t2,\n\t)}\\n`;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"maestro-publisher-conformance-fixture.js","sourceRoot":"","sources":["../../src/telemetry/maestro-publisher-conformance-fixture.ts"],"names":[],"mappings":"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","sourcesContent":["import type { SkillArtifactMetadata } from \"../agent/skill-artifact-metadata.js\";\nimport type { PromptMetadata } from \"../prompts/types.js\";\nimport {\n\tbuildAgentOperatingPlaneCorrelation,\n\tbuildAgentOperatingPlaneMetadata,\n} from \"./agent-operating-plane-context.js\";\nimport {\n\tMaestroBusEventType,\n\ttype MaestroCloudEvent,\n\ttype MaestroCorrelation,\n\trecordMaestroApprovalHit,\n\trecordMaestroSkillOutcome,\n\trecordMaestroToolCallAttempt,\n\trecordMaestroToolCallCompleted,\n\twithMaestroEventBusTransportOverride,\n} from \"./maestro-event-bus.js\";\n\nexport const CANONICAL_MAESTRO_PUBLISHER_CONFORMANCE_FIXTURE_NAME =\n\t\"maestro-publisher-critical-path\";\n\nconst ORGANIZATION_ID = \"org_evalops_fixture\";\nconst WORKSPACE_ID = \"workspace_publisher_fixture\";\nconst SESSION_ID = \"session_publisher_fixture_001\";\nconst AGENT_RUN_ID = \"agent_run_publisher_fixture_001\";\nconst BASH_AGENT_RUN_STEP_ID = \"agent_run_step_publisher_fixture_bash_001\";\nconst BASH_TOOL_CALL_ID = \"tool_call_publisher_fixture_bash_001\";\nconst BASH_TOOL_EXECUTION_ID = \"tool_exec_publisher_fixture_bash_001\";\nconst SKILL_AGENT_RUN_STEP_ID = \"agent_run_step_publisher_fixture_skill_001\";\nconst SKILL_TOOL_CALL_ID = \"tool_call_publisher_fixture_skill_001\";\nconst SKILL_TOOL_EXECUTION_ID = \"tool_exec_publisher_fixture_skill_001\";\nconst APPROVAL_REQUEST_ID = \"approval_publisher_fixture_001\";\nconst SKILL_INVOCATION_ID = \"skill_invocation_publisher_fixture_001\";\nconst SKILL_ID = \"skill_incident_review\";\nconst DATA_CLASSIFICATION = \"internal\";\nconst RETENTION_CLASS = \"operational_audit\";\n\nconst promptMetadata = {\n\tname: \"maestro-system\",\n\tlabel: \"production\",\n\tsurface: \"web\",\n\tversion: 9,\n\tversionId: \"prompt_version_9\",\n\thash: \"sha256:prompt-platform-replay\",\n\tsource: \"service\",\n} satisfies PromptMetadata;\n\nconst skillMetadata = {\n\tartifactId: SKILL_ID,\n\tname: \"incident-review\",\n\tversion: \"3\",\n\thash: \"sha256:skill-incident-review\",\n\tsource: \"service\",\n} satisfies SkillArtifactMetadata;\n\nconst fixtureEnv: NodeJS.ProcessEnv = {\n\tMAESTRO_EVENT_BUS_URL: \"nats://maestro-publisher-fixture.invalid:4222\",\n\tMAESTRO_EVENT_BUS_SOURCE: \"maestro-publisher-fixture\",\n\tMAESTRO_EVALOPS_ORG_ID: ORGANIZATION_ID,\n\tMAESTRO_EVALOPS_WORKSPACE_ID: WORKSPACE_ID,\n\tMAESTRO_SESSION_ID: SESSION_ID,\n\tMAESTRO_AGENT_RUN_ID: AGENT_RUN_ID,\n\tMAESTRO_AGENT_ID: \"agent_maestro_publisher_fixture\",\n\tMAESTRO_ACTOR_ID: \"user_publisher_fixture\",\n\tMAESTRO_PRINCIPAL_ID: \"principal_publisher_fixture\",\n\tMAESTRO_REQUEST_ID: \"request_publisher_fixture_001\",\n\tMAESTRO_REMOTE_RUNNER_SESSION_ID: \"remote_runner_publisher_fixture_001\",\n\tMAESTRO_OBJECTIVE_ID: \"objective_publisher_fixture_001\",\n\tMAESTRO_CONVERSATION_ID: \"conversation_publisher_fixture_001\",\n\tTRACE_ID: \"trace_publisher_fixture_001\",\n\tTRACESTATE: \"evalops=maestro-publisher-fixture\",\n\tMAESTRO_EVENT_BUS_ATTR_FIXTURE: \"maestro-publisher-conformance\",\n\tMAESTRO_EVENT_BUS_ATTR_PUBLISHER_CONTRACT: \"maestro.v1\",\n};\n\nconst baseCorrelation: MaestroCorrelation = buildAgentOperatingPlaneCorrelation(\n\t{\n\t\torganization_id: ORGANIZATION_ID,\n\t\tworkspace_id: WORKSPACE_ID,\n\t\tsession_id: SESSION_ID,\n\t\tagent_run_id: AGENT_RUN_ID,\n\t\tagent_id: \"agent_maestro_publisher_fixture\",\n\t\tactor_id: \"user_publisher_fixture\",\n\t\tprincipal_id: \"principal_publisher_fixture\",\n\t\ttrace_id: \"trace_publisher_fixture_001\",\n\t\trequest_id: \"request_publisher_fixture_001\",\n\t\tremote_runner_session_id: \"remote_runner_publisher_fixture_001\",\n\t\tobjective_id: \"objective_publisher_fixture_001\",\n\t\tconversation_id: \"conversation_publisher_fixture_001\",\n\t\ttracestate: \"evalops=maestro-publisher-fixture\",\n\t\tattributes: {\n\t\t\tfixture: \"maestro-publisher-conformance\",\n\t\t\tpublisher_contract: \"maestro.v1\",\n\t\t},\n\t},\n);\n\nconst eventPlan = [\n\t{\n\t\ttype: MaestroBusEventType.ApprovalHit,\n\t\tid: \"evt_maestro_publisher_001_approval_hit\",\n\t\ttime: \"2026-04-23T18:05:00.000Z\",\n\t},\n\t{\n\t\ttype: MaestroBusEventType.ToolCallAttempted,\n\t\tid: \"evt_maestro_publisher_002_tool_call_attempted\",\n\t\ttime: \"2026-04-23T18:06:00.000Z\",\n\t},\n\t{\n\t\ttype: MaestroBusEventType.ToolCallCompleted,\n\t\tid: \"evt_maestro_publisher_003_tool_call_completed\",\n\t\ttime: \"2026-04-23T18:07:00.000Z\",\n\t},\n\t{\n\t\ttype: MaestroBusEventType.SkillFailed,\n\t\tid: \"evt_maestro_publisher_004_skill_failed\",\n\t\ttime: \"2026-04-23T18:09:00.000Z\",\n\t},\n] as const;\n\nexport type MaestroPublisherConformanceFixtureEvent = MaestroCloudEvent<\n\tRecord<string, unknown>\n>;\n\nexport interface BuildMaestroPublisherConformanceFixtureOptions {\n\tsourceRevision?: string;\n}\n\nexport interface MaestroPublisherConformanceFixture {\n\tfixture_version: \"maestro-publisher-conformance/v1\";\n\tname: typeof CANONICAL_MAESTRO_PUBLISHER_CONFORMANCE_FIXTURE_NAME;\n\tevent_count: number;\n\torigin: {\n\t\trepository: \"evalops/maestro\";\n\t\tissue: \"evalops/maestro#434\";\n\t\tpublisher_package: \"packages/ai\";\n\t\tsource_paths: string[];\n\t\tgenerated_by: \"scripts/generate-maestro-publisher-conformance-fixture.ts\";\n\t\tsource_revision: string;\n\t};\n\tsubjects: MaestroBusEventType[];\n\tstable_untyped_keys: Record<string, string[]>;\n\texpected_assertions: {\n\t\trequired_event_types: MaestroBusEventType[];\n\t\trequired_subjects: MaestroBusEventType[];\n\t};\n\tevents: MaestroPublisherConformanceFixtureEvent[];\n}\n\nfunction bashCorrelation(index: number): MaestroCorrelation {\n\treturn {\n\t\t...baseCorrelation,\n\t\tagent_run_step_id: BASH_AGENT_RUN_STEP_ID,\n\t\ttraceparent: fixtureTraceparent(index),\n\t\ttracestate: fixtureTracestate(index),\n\t};\n}\n\nfunction skillCorrelation(index: number): MaestroCorrelation {\n\treturn {\n\t\t...baseCorrelation,\n\t\tagent_run_step_id: SKILL_AGENT_RUN_STEP_ID,\n\t\ttraceparent: fixtureTraceparent(index),\n\t\ttracestate: fixtureTracestate(index),\n\t};\n}\n\nfunction fixtureTraceparent(index: number): string {\n\treturn `00-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-${String(index + 1).padStart(16, \"0\")}-01`;\n}\n\nfunction fixtureTracestate(index: number): string {\n\treturn `evalops=maestro-publisher-${String(index + 1).padStart(2, \"0\")}`;\n}\n\nfunction operatingPlaneMetadata(safeSummary: string): Record<string, string> {\n\treturn buildAgentOperatingPlaneMetadata({\n\t\tdataClassification: DATA_CLASSIFICATION,\n\t\tretentionClass: RETENTION_CLASS,\n\t\tsafeSummary,\n\t});\n}\n\nasync function flushPublisherTasks(): Promise<void> {\n\tawait Promise.resolve();\n\tawait Promise.resolve();\n\tawait Promise.resolve();\n}\n\nasync function publishFixtureEvent(\n\tevents: MaestroPublisherConformanceFixtureEvent[],\n\trecord: () => void,\n): Promise<void> {\n\tconst previousLength = events.length;\n\trecord();\n\tawait flushPublisherTasks();\n\tif (events.length !== previousLength + 1) {\n\t\tthrow new Error(\"Maestro publisher fixture did not capture an event\");\n\t}\n}\n\nasync function buildPublisherEvents(): Promise<\n\tMaestroPublisherConformanceFixtureEvent[]\n> {\n\tconst events: MaestroPublisherConformanceFixtureEvent[] = [];\n\treturn withMaestroEventBusTransportOverride(\n\t\t{\n\t\t\tasync publish(_subject, payload) {\n\t\t\t\tevents.push(\n\t\t\t\t\tJSON.parse(payload) as MaestroPublisherConformanceFixtureEvent,\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\tasync () => {\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroApprovalHit({\n\t\t\t\t\tevent_id: eventPlan[0].id,\n\t\t\t\t\tapproval_request_id: APPROVAL_REQUEST_ID,\n\t\t\t\t\tgovernance_decision_id: \"governance_decision_publisher_fixture_001\",\n\t\t\t\t\taction: \"Run workspace test command\",\n\t\t\t\t\tcommand: \"workspace test command\",\n\t\t\t\t\trisk_level: \"RISK_LEVEL_MEDIUM\",\n\t\t\t\t\tdecision_mode: \"MAESTRO_DECISION_MODE_REQUIRE_APPROVAL\",\n\t\t\t\t\tpolicy_id: \"policy_workspace_test_approval\",\n\t\t\t\t\treason: \"publisher fixture approval path\",\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Governance approval requested for workspace command\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: bashCorrelation(0),\n\t\t\t\t\toccurred_at: eventPlan[0].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroToolCallAttempt({\n\t\t\t\t\tevent_id: eventPlan[1].id,\n\t\t\t\t\ttool_call_id: BASH_TOOL_CALL_ID,\n\t\t\t\t\ttool_execution_id: BASH_TOOL_EXECUTION_ID,\n\t\t\t\t\ttool_namespace: \"builtin\",\n\t\t\t\t\ttool_name: \"Bash\",\n\t\t\t\t\ttool_version: \"1\",\n\t\t\t\t\tcapability: \"workspace:test\",\n\t\t\t\t\trisk_level: \"RISK_LEVEL_MEDIUM\",\n\t\t\t\t\tsafe_arguments: {\n\t\t\t\t\t\tcommand_summary: \"Run telemetry test suite\",\n\t\t\t\t\t},\n\t\t\t\t\tprompt_metadata: promptMetadata,\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Tool call attempt recorded with safe argument summary\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: bashCorrelation(1),\n\t\t\t\t\tattempted_at: eventPlan[1].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroToolCallCompleted({\n\t\t\t\t\tevent_id: eventPlan[2].id,\n\t\t\t\t\ttool_call_id: BASH_TOOL_CALL_ID,\n\t\t\t\t\ttool_execution_id: BASH_TOOL_EXECUTION_ID,\n\t\t\t\t\tstatus: \"MAESTRO_TOOL_CALL_STATUS_SUCCEEDED\",\n\t\t\t\t\tapproval_request_id: APPROVAL_REQUEST_ID,\n\t\t\t\t\tsafe_output: {\n\t\t\t\t\t\texit_code: 0,\n\t\t\t\t\t\tsummary: \"8 telemetry tests passed\",\n\t\t\t\t\t},\n\t\t\t\t\tprompt_metadata: promptMetadata,\n\t\t\t\t\tskill_metadata: skillMetadata,\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Tool call completed with safe output summary\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: bashCorrelation(2),\n\t\t\t\t\tcompleted_at: eventPlan[2].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\tawait publishFixtureEvent(events, () => {\n\t\t\t\trecordMaestroSkillOutcome({\n\t\t\t\t\tevent_id: eventPlan[3].id,\n\t\t\t\t\tinvocation_id: SKILL_INVOCATION_ID,\n\t\t\t\t\tskill_id: SKILL_ID,\n\t\t\t\t\tstatus: \"MAESTRO_SKILL_OUTCOME_STATUS_EVALUATION_FAILED\",\n\t\t\t\t\ttool_call_id: SKILL_TOOL_CALL_ID,\n\t\t\t\t\ttool_execution_id: SKILL_TOOL_EXECUTION_ID,\n\t\t\t\t\tturn_status: \"evaluation_failed\",\n\t\t\t\t\terror_category: \"evaluation\",\n\t\t\t\t\terror_message: \"formatting checks failed\",\n\t\t\t\t\tevaluation_tool_name: \"Bash\",\n\t\t\t\t\tevaluation_tool_call_id: BASH_TOOL_CALL_ID,\n\t\t\t\t\tevaluation_tool_execution_id: BASH_TOOL_EXECUTION_ID,\n\t\t\t\t\tevaluation_score: 0.82,\n\t\t\t\t\tevaluation_threshold: 0.9,\n\t\t\t\t\tevaluation_assertion_count: 1,\n\t\t\t\t\tevaluation_rationale: \"formatting checks failed\",\n\t\t\t\t\tprompt_metadata: promptMetadata,\n\t\t\t\t\tskill_metadata: skillMetadata,\n\t\t\t\t\tmetadata: operatingPlaneMetadata(\n\t\t\t\t\t\t\"Skill outcome failed the evaluation threshold\",\n\t\t\t\t\t),\n\t\t\t\t\tcorrelation: skillCorrelation(3),\n\t\t\t\t\toutcome_at: eventPlan[3].time,\n\t\t\t\t\tenv: fixtureEnv,\n\t\t\t\t});\n\t\t\t});\n\t\t\treturn events;\n\t\t},\n\t);\n}\n\nexport async function buildCanonicalMaestroPublisherConformanceFixture(\n\toptions: BuildMaestroPublisherConformanceFixtureOptions = {},\n): Promise<MaestroPublisherConformanceFixture> {\n\tconst events = await buildPublisherEvents();\n\tconst subjects = eventPlan.map((event) => event.type);\n\treturn {\n\t\tfixture_version: \"maestro-publisher-conformance/v1\",\n\t\tname: CANONICAL_MAESTRO_PUBLISHER_CONFORMANCE_FIXTURE_NAME,\n\t\tevent_count: events.length,\n\t\torigin: {\n\t\t\trepository: \"evalops/maestro\",\n\t\t\tissue: \"evalops/maestro#434\",\n\t\t\tpublisher_package: \"packages/ai\",\n\t\t\tsource_paths: [\n\t\t\t\t\"packages/ai/src/telemetry/index.ts\",\n\t\t\t\t\"src/telemetry/maestro-event-bus.ts\",\n\t\t\t\t\"src/telemetry/maestro-publisher-conformance-fixture.ts\",\n\t\t\t],\n\t\t\tgenerated_by: \"scripts/generate-maestro-publisher-conformance-fixture.ts\",\n\t\t\tsource_revision: options.sourceRevision ?? \"maestro-publisher-generator\",\n\t\t},\n\t\tsubjects,\n\t\tstable_untyped_keys: {\n\t\t\t\"correlation.attributes\": [\"fixture\", \"publisher_contract\"],\n\t\t\tprompt_metadata: [\n\t\t\t\t\"hash\",\n\t\t\t\t\"label\",\n\t\t\t\t\"name\",\n\t\t\t\t\"source\",\n\t\t\t\t\"surface\",\n\t\t\t\t\"version\",\n\t\t\t\t\"versionId\",\n\t\t\t],\n\t\t\tskill_metadata: [\"artifactId\", \"hash\", \"name\", \"source\", \"version\"],\n\t\t\tmetadata: [\"data_classification\", \"retention_class\", \"safe_summary\"],\n\t\t\tsafe_arguments: [\"command_summary\"],\n\t\t\tsafe_output: [\"exit_code\", \"summary\"],\n\t\t},\n\t\texpected_assertions: {\n\t\t\trequired_event_types: subjects,\n\t\t\trequired_subjects: subjects,\n\t\t},\n\t\tevents,\n\t};\n}\n\nexport async function canonicalMaestroPublisherConformanceFixtureJson(\n\toptions: BuildMaestroPublisherConformanceFixtureOptions = {},\n): Promise<string> {\n\treturn `${JSON.stringify(\n\t\tawait buildCanonicalMaestroPublisherConformanceFixture(options),\n\t\tnull,\n\t\t2,\n\t)}\\n`;\n}\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { OraclePolicyExperimentAssignment } from "../agent/oracle-policy-experiment.js";
|
|
2
|
+
export declare function recordOraclePolicyExperimentAssignment(input: {
|
|
3
|
+
assignment: OraclePolicyExperimentAssignment;
|
|
4
|
+
sessionId: string;
|
|
5
|
+
}): void;
|
|
6
|
+
//# sourceMappingURL=oracle-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oracle-policy.d.ts","sourceRoot":"","sources":["../../src/telemetry/oracle-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AAG7F,wBAAgB,sCAAsC,CAAC,KAAK,EAAE;IAC7D,UAAU,EAAE,gCAAgC,CAAC;IAC7C,SAAS,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,CAcP"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { recordTelemetry } from "../telemetry.js";
|
|
2
|
+
export function recordOraclePolicyExperimentAssignment(input) {
|
|
3
|
+
void recordTelemetry({
|
|
4
|
+
type: "staged-rollout-surface",
|
|
5
|
+
timestamp: new Date().toISOString(),
|
|
6
|
+
event: "internal_gate_used",
|
|
7
|
+
surfaceId: "oracle-policy-experiment",
|
|
8
|
+
surfaceType: "internal_gate",
|
|
9
|
+
metadata: {
|
|
10
|
+
sessionId: input.sessionId,
|
|
11
|
+
"oracle.experiment_id": input.assignment.experimentId,
|
|
12
|
+
"oracle.arm": input.assignment.arm,
|
|
13
|
+
"oracle.policy_version": input.assignment.policyVersion,
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=oracle-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oracle-policy.js","sourceRoot":"","sources":["../../src/telemetry/oracle-policy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,UAAU,sCAAsC,CAAC,KAGtD;IACA,KAAK,eAAe,CAAC;QACpB,IAAI,EAAE,wBAAwB;QAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,0BAA0B;QACrC,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE;YACT,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,sBAAsB,EAAE,KAAK,CAAC,UAAU,CAAC,YAAY;YACrD,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG;YAClC,uBAAuB,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa;SACvD;KACD,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import type { OraclePolicyExperimentAssignment } from \"../agent/oracle-policy-experiment.js\";\nimport { recordTelemetry } from \"../telemetry.js\";\n\nexport function recordOraclePolicyExperimentAssignment(input: {\n\tassignment: OraclePolicyExperimentAssignment;\n\tsessionId: string;\n}): void {\n\tvoid recordTelemetry({\n\t\ttype: \"staged-rollout-surface\",\n\t\ttimestamp: new Date().toISOString(),\n\t\tevent: \"internal_gate_used\",\n\t\tsurfaceId: \"oracle-policy-experiment\",\n\t\tsurfaceType: \"internal_gate\",\n\t\tmetadata: {\n\t\t\tsessionId: input.sessionId,\n\t\t\t\"oracle.experiment_id\": input.assignment.experimentId,\n\t\t\t\"oracle.arm\": input.assignment.arm,\n\t\t\t\"oracle.policy_version\": input.assignment.policyVersion,\n\t\t},\n\t});\n}\n"]}
|
|
@@ -11,9 +11,9 @@
|
|
|
11
11
|
* - Tail sampling: always keep errors/slow, sample successes
|
|
12
12
|
* - Optimized for querying, not writing
|
|
13
13
|
*/
|
|
14
|
+
import type { SkillArtifactMetadata } from "../agent/skill-artifact-metadata.js";
|
|
14
15
|
import type { ToolPhaseSummary, ToolSchedulingDecision } from "../agent/types.js";
|
|
15
16
|
import type { PromptMetadata } from "../prompts/types.js";
|
|
16
|
-
import type { SkillArtifactMetadata } from "../skills/artifact-metadata.js";
|
|
17
17
|
export interface ToolExecution {
|
|
18
18
|
name: string;
|
|
19
19
|
callId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wide-events.d.ts","sourceRoot":"","sources":["../../src/telemetry/wide-events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"wide-events.d.ts","sourceRoot":"","sources":["../../src/telemetry/wide-events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wide-events.js","sourceRoot":"","sources":["../../src/telemetry/wide-events.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Wide Events Telemetry - Canonical Turn Events\n *\n * Implements the \"wide events\" pattern from loggingsucks.com:\n * Instead of scattered log statements, emit ONE rich event per agent turn\n * with comprehensive context for analytics-style querying.\n *\n * Key principles:\n * - One event per turn, not N log lines\n * - High-cardinality fields for queryability\n * - Tail sampling: always keep errors/slow, sample successes\n * - Optimized for querying, not writing\n */\n\nimport { randomUUID } from \"node:crypto\";\nimport type {\n\tToolPhaseDecisionOutcome,\n\tToolPhaseSummary,\n\tToolSchedulingDecision,\n} from \"../agent/types.js\";\nimport { isOpenTelemetryEnabled } from \"../opentelemetry.js\";\nimport type { PromptMetadata } from \"../prompts/types.js\";\nimport type { SkillArtifactMetadata } from \"../skills/artifact-metadata.js\";\nimport {\n\trecordAgentTurnMetric,\n\trecordLlmRequestMetric,\n\trecordLlmTokenUsageMetric,\n} from \"./metrics.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport interface ToolExecution {\n\tname: string;\n\tcallId: string;\n\tdurationMs: number;\n\tsuccess: boolean;\n\terrorCode?: string;\n\tinputSizeBytes?: number;\n\toutputSizeBytes?: number;\n\tscheduling?: ToolSchedulingDecision;\n}\n\nexport interface TokenUsage {\n\tinput: number;\n\toutput: number;\n\tcacheRead: number;\n\tcacheWrite: number;\n\tthinking?: number;\n}\n\nexport interface ModelInfo {\n\tid: string;\n\tprovider: string;\n\tthinkingLevel:\n\t\t| \"off\"\n\t\t| \"minimal\"\n\t\t| \"low\"\n\t\t| \"medium\"\n\t\t| \"high\"\n\t\t| \"max\"\n\t\t| \"ultra\";\n}\n\nexport interface SerializationReasonCount {\n\treason: string;\n\tcount: number;\n}\n\nexport interface ToolSchedulingSummary {\n\tmodelToolCallCount: number;\n\tmodelEmittedToolCallCount: number;\n\tschedulableWaveCount: number;\n\tparallelizedCallCount: number;\n\tactuallyParallelizedCallCount: number;\n\tserializedCallCount: number;\n\tdelayedCallCount: number;\n\tblockedByMutationCount: number;\n\tmcpOptInCallCount: number;\n\tmcpOptInUseCount: number;\n\tcacheHitCount: number;\n\ttotalToolWaitMs: number;\n\ttoolWaitTimeMs: number;\n\tserializationReasons: Record<string, number>;\n\ttopSerializationReasons: SerializationReasonCount[];\n}\n\n/**\n * Canonical Turn Event - One wide event per agent turn\n *\n * Contains all context needed to debug and analyze any turn without\n * correlating multiple log lines. Designed for high-cardinality querying.\n */\nexport interface CanonicalTurnEvent {\n\ttype: \"canonical-turn\";\n\ttimestamp: string;\n\n\t// ─── Identity ───────────────────────────────────────────────────────────\n\tsessionId: string;\n\tturnId: string;\n\tturnNumber: number;\n\ttraceId?: string;\n\n\t// ─── Model Context ──────────────────────────────────────────────────────\n\tmodel: ModelInfo;\n\tpromptMetadata?: PromptMetadata;\n\tskillMetadata?: SkillArtifactMetadata[];\n\n\t// ─── Timing ─────────────────────────────────────────────────────────────\n\ttotalDurationMs: number;\n\tllmDurationMs: number;\n\ttoolDurationMs: number;\n\tqueueWaitMs?: number;\n\n\t// ─── Tool Executions ────────────────────────────────────────────────────\n\ttools: ToolExecution[];\n\ttoolCount: number;\n\ttoolSuccessCount: number;\n\ttoolFailureCount: number;\n\ttoolScheduling?: ToolSchedulingSummary;\n\n\t// ─── Token Economics ────────────────────────────────────────────────────\n\ttokens: TokenUsage;\n\tcostUsd: number;\n\n\t// ─── Business Context (high cardinality = queryable) ────────────────────\n\tsandboxMode: \"docker\" | \"local\" | \"none\";\n\tapprovalMode: \"auto\" | \"prompt\" | \"fail\";\n\tmcpServerCount: number;\n\tmcpServers?: string[];\n\tcontextSourceCount: number;\n\tmessageCount: number;\n\tinputSizeBytes: number;\n\toutputSizeBytes: number;\n\n\t// ─── Feature Flags ──────────────────────────────────────────────────────\n\tfeatures: {\n\t\tsafeMode: boolean;\n\t\tguardianEnabled: boolean;\n\t\tcompactionEnabled: boolean;\n\t\thookCount: number;\n\t};\n\n\t// ─── Outcome ────────────────────────────────────────────────────────────\n\tstatus: \"success\" | \"error\" | \"aborted\" | \"rate_limited\";\n\terrorCategory?: string;\n\terrorMessage?: string;\n\tabortReason?: \"user\" | \"timeout\" | \"context_overflow\" | \"rate_limit\";\n\n\t// ─── Sampling Metadata ──────────────────────────────────────────────────\n\tsampled: boolean;\n\tsampleReason: \"always\" | \"error\" | \"slow\" | \"first_turn\" | \"random\";\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Tail Sampling Configuration\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport interface TailSamplingConfig {\n\t/** Sample rate for successful fast turns (0.0 to 1.0) */\n\tsuccessSampleRate: number;\n\t/** Threshold in ms above which a turn is considered \"slow\" */\n\tslowThresholdMs: number;\n\t/** Always sample first N turns of a session */\n\talwaysSampleFirstN: number;\n}\n\nconst DEFAULT_SAMPLING_CONFIG: TailSamplingConfig = {\n\tsuccessSampleRate: 0.05, // 5% of successful fast turns\n\tslowThresholdMs: 5000, // 5 seconds\n\talwaysSampleFirstN: 1, // Always sample first turn\n};\n\n/**\n * Telemetry recorder function type.\n * Injected to break circular dependency with telemetry.ts.\n */\nexport type TelemetryRecorder = (event: CanonicalTurnEvent) => Promise<void>;\n\n// Default recorder - imported lazily to break circular dependency\nlet defaultRecorder: TelemetryRecorder | undefined;\n\n/**\n * Set the default telemetry recorder.\n * Called once during initialization to inject the recordTelemetry function.\n */\nexport function setDefaultTelemetryRecorder(recorder: TelemetryRecorder): void {\n\tdefaultRecorder = recorder;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Turn Collector\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Collects context during a turn and emits a single wide event at completion.\n *\n * Usage:\n * ```typescript\n * const turn = new TurnCollector(sessionId, turnNumber);\n * turn.setModel({ id: \"claude-opus-4-6\", provider: \"anthropic\", thinkingLevel: \"medium\" });\n *\n * // During tool execution\n * turn.recordToolStart(\"bash\", \"call-123\");\n * // ... execute tool ...\n * turn.recordToolEnd(\"call-123\", true, 150);\n *\n * // At turn end\n * turn.complete(\"success\", tokens, costUsd);\n * ```\n */\nexport class TurnCollector {\n\tprivate readonly turnId: string;\n\tprivate readonly startTime: number;\n\tprivate llmStartTime?: number;\n\tprivate accumulatedLlmDurationMs = 0;\n\tprivate llmRequestCount = 0;\n\tprivate queueStartTime?: number;\n\n\tprivate model: ModelInfo = {\n\t\tid: \"unknown\",\n\t\tprovider: \"unknown\",\n\t\tthinkingLevel: \"off\",\n\t};\n\tprivate promptMetadata?: PromptMetadata;\n\tprivate readonly skillMetadata = new Map<string, SkillArtifactMetadata>();\n\tprivate tools: Map<\n\t\tstring,\n\t\t{ name: string; callId: string; startTime: number; inputSizeBytes?: number }\n\t> = new Map();\n\tprivate readonly toolSchedulingDecisions = new Map<\n\t\tstring,\n\t\tToolSchedulingDecision\n\t>();\n\tprivate readonly toolPhaseSummaries: ToolPhaseSummary[] = [];\n\tprivate completedTools: ToolExecution[] = [];\n\n\t// Context fields\n\tprivate sandboxMode: CanonicalTurnEvent[\"sandboxMode\"] = \"none\";\n\tprivate approvalMode: CanonicalTurnEvent[\"approvalMode\"] = \"prompt\";\n\tprivate mcpServers: string[] = [];\n\tprivate contextSourceCount = 0;\n\tprivate messageCount = 0;\n\tprivate inputSizeBytes = 0;\n\tprivate outputSizeBytes = 0;\n\tprivate features = {\n\t\tsafeMode: false,\n\t\tguardianEnabled: true,\n\t\tcompactionEnabled: true,\n\t\thookCount: 0,\n\t};\n\n\tprivate samplingConfig: TailSamplingConfig;\n\tprivate traceId?: string;\n\tprivate recorder?: TelemetryRecorder;\n\n\tconstructor(\n\t\tprivate readonly sessionId: string,\n\t\tprivate readonly turnNumber: number,\n\t\tsamplingConfig?: Partial<TailSamplingConfig>,\n\t\trecorder?: TelemetryRecorder,\n\t) {\n\t\tthis.turnId = randomUUID();\n\t\tthis.startTime = performance.now();\n\t\tthis.samplingConfig = { ...DEFAULT_SAMPLING_CONFIG, ...samplingConfig };\n\t\tthis.recorder = recorder;\n\t}\n\n\t// ─── Setters ──────────────────────────────────────────────────────────────\n\n\tsetModel(model: ModelInfo): this {\n\t\tthis.model = model;\n\t\treturn this;\n\t}\n\n\tsetPromptMetadata(promptMetadata: PromptMetadata | undefined): this {\n\t\tthis.promptMetadata = promptMetadata;\n\t\treturn this;\n\t}\n\n\trecordSkillMetadata(skillMetadata: SkillArtifactMetadata | undefined): this {\n\t\tif (!skillMetadata) {\n\t\t\treturn this;\n\t\t}\n\t\tconst key = [\n\t\t\tskillMetadata.artifactId,\n\t\t\tskillMetadata.source,\n\t\t\tskillMetadata.name,\n\t\t\tskillMetadata.version,\n\t\t\tskillMetadata.hash,\n\t\t]\n\t\t\t.filter(Boolean)\n\t\t\t.join(\":\");\n\t\tif (!key) {\n\t\t\treturn this;\n\t\t}\n\t\tthis.skillMetadata.set(key, skillMetadata);\n\t\treturn this;\n\t}\n\n\tsetTraceId(traceId: string): this {\n\t\tthis.traceId = traceId;\n\t\treturn this;\n\t}\n\n\tsetSandboxMode(mode: CanonicalTurnEvent[\"sandboxMode\"]): this {\n\t\tthis.sandboxMode = mode;\n\t\treturn this;\n\t}\n\n\tsetApprovalMode(mode: CanonicalTurnEvent[\"approvalMode\"]): this {\n\t\tthis.approvalMode = mode;\n\t\treturn this;\n\t}\n\n\tsetMcpServers(servers: string[]): this {\n\t\tthis.mcpServers = servers;\n\t\treturn this;\n\t}\n\n\tsetContextSourceCount(count: number): this {\n\t\tthis.contextSourceCount = count;\n\t\treturn this;\n\t}\n\n\tsetMessageCount(count: number): this {\n\t\tthis.messageCount = count;\n\t\treturn this;\n\t}\n\n\tsetInputSize(bytes: number): this {\n\t\tthis.inputSizeBytes = bytes;\n\t\treturn this;\n\t}\n\n\taddOutputSize(bytes: number): this {\n\t\tthis.outputSizeBytes += bytes;\n\t\treturn this;\n\t}\n\n\tsetFeatures(features: Partial<TurnCollector[\"features\"]>): this {\n\t\tthis.features = { ...this.features, ...features };\n\t\treturn this;\n\t}\n\n\t// ─── Timing ───────────────────────────────────────────────────────────────\n\n\trecordQueueStart(): this {\n\t\tthis.queueStartTime = performance.now();\n\t\treturn this;\n\t}\n\n\trecordLlmStart(): this {\n\t\tthis.llmRequestCount += 1;\n\t\tthis.llmStartTime = performance.now();\n\t\treturn this;\n\t}\n\n\trecordLlmEnd(): this {\n\t\t// Accumulate LLM duration (turns may have multiple LLM calls)\n\t\tif (this.llmStartTime !== undefined) {\n\t\t\tthis.accumulatedLlmDurationMs += performance.now() - this.llmStartTime;\n\t\t\tthis.llmStartTime = undefined;\n\t\t}\n\t\treturn this;\n\t}\n\n\t// ─── Tool Recording ───────────────────────────────────────────────────────\n\n\trecordToolStart(name: string, callId: string, inputSizeBytes?: number): this {\n\t\tthis.tools.set(callId, {\n\t\t\tname,\n\t\t\tcallId,\n\t\t\tinputSizeBytes,\n\t\t\t// Store start time; will be converted to duration in recordToolEnd\n\t\t\tstartTime: performance.now(),\n\t\t});\n\t\treturn this;\n\t}\n\n\trecordToolSchedulingDecision(decision: ToolSchedulingDecision): this {\n\t\tthis.toolSchedulingDecisions.set(decision.callId, {\n\t\t\t...decision,\n\t\t\tschedulerWaitMs:\n\t\t\t\tdecision.schedulerWaitMs !== undefined\n\t\t\t\t\t? Math.max(0, Math.round(decision.schedulerWaitMs))\n\t\t\t\t\t: undefined,\n\t\t});\n\t\treturn this;\n\t}\n\n\trecordToolPhaseSummary(summary: ToolPhaseSummary): this {\n\t\tthis.toolPhaseSummaries.push(summary);\n\t\tfor (const decision of summary.decisions ?? []) {\n\t\t\tthis.recordToolSchedulingDecision({\n\t\t\t\tcallId: decision.toolCallId,\n\t\t\t\ttoolName: decision.toolName,\n\t\t\t\temittedIndex: decision.emittedIndex,\n\t\t\t\twaveIndex: decision.waveIndex,\n\t\t\t\tdecision: decision.decision,\n\t\t\t\treason: decision.reason,\n\t\t\t\tschedulerWaitMs: decision.schedulerWaitMs,\n\t\t\t\tmcpOptIn: decision.mcpOptIn,\n\t\t\t\tcacheHit: decision.cacheHit,\n\t\t\t\tblockedByMutation: decision.blockedByMutation,\n\t\t\t});\n\t\t}\n\t\tfor (const tool of this.completedTools) {\n\t\t\ttool.scheduling ??= this.toolSchedulingDecisions.get(tool.callId);\n\t\t}\n\t\treturn this;\n\t}\n\n\trecordToolEnd(\n\t\tcallId: string,\n\t\tsuccess: boolean,\n\t\toutputSizeBytes?: number,\n\t\terrorCode?: string,\n\t): this {\n\t\tconst tool = this.tools.get(callId);\n\t\tif (tool && typeof tool.startTime === \"number\") {\n\t\t\tconst completed: ToolExecution = {\n\t\t\t\tname: tool.name ?? \"unknown\",\n\t\t\t\tcallId,\n\t\t\t\tdurationMs: performance.now() - tool.startTime,\n\t\t\t\tsuccess,\n\t\t\t\terrorCode,\n\t\t\t\tinputSizeBytes: tool.inputSizeBytes,\n\t\t\t\toutputSizeBytes,\n\t\t\t\tscheduling: this.toolSchedulingDecisions.get(callId),\n\t\t\t};\n\t\t\tthis.completedTools.push(completed);\n\t\t\tthis.tools.delete(callId);\n\t\t}\n\t\treturn this;\n\t}\n\n\t// ─── Completion ───────────────────────────────────────────────────────────\n\n\t/**\n\t * Complete the turn and emit the canonical event.\n\t * Applies tail sampling logic to decide whether to persist.\n\t */\n\tcomplete(\n\t\tstatus: CanonicalTurnEvent[\"status\"],\n\t\ttokens: TokenUsage,\n\t\tcostUsd: number,\n\t\terrorDetails?: { category?: string; message?: string },\n\t\tabortReason?: CanonicalTurnEvent[\"abortReason\"],\n\t\tmetricTokens: TokenUsage = tokens,\n\t): CanonicalTurnEvent {\n\t\tconst endTime = performance.now();\n\t\tconst totalDurationMs = endTime - this.startTime;\n\n\t\t// Calculate timing breakdown (use accumulated LLM duration for multi-call turns)\n\t\tconst llmDurationMs = this.accumulatedLlmDurationMs;\n\t\tconst toolDurationMs = this.completedTools.reduce(\n\t\t\t(sum, t) => sum + t.durationMs,\n\t\t\t0,\n\t\t);\n\t\t// Calculate queue wait time, clamping to 0 if queueStartTime > startTime\n\t\t// (which shouldn't happen but prevents negative values in telemetry)\n\t\tconst queueWaitMs =\n\t\t\tthis.queueStartTime !== undefined\n\t\t\t\t? Math.max(0, this.startTime - this.queueStartTime)\n\t\t\t\t: undefined;\n\t\tconst toolScheduling = this.summarizeToolScheduling();\n\n\t\t// Apply tail sampling\n\t\tconst { sampled, sampleReason } = this.shouldSample(\n\t\t\tstatus,\n\t\t\ttotalDurationMs,\n\t\t);\n\n\t\tconst event: CanonicalTurnEvent = {\n\t\t\ttype: \"canonical-turn\",\n\t\t\ttimestamp: new Date().toISOString(),\n\n\t\t\t// Identity\n\t\t\tsessionId: this.sessionId,\n\t\t\tturnId: this.turnId,\n\t\t\tturnNumber: this.turnNumber,\n\t\t\ttraceId: this.traceId,\n\n\t\t\t// Model\n\t\t\tmodel: this.model,\n\t\t\tpromptMetadata: this.promptMetadata,\n\t\t\tskillMetadata:\n\t\t\t\tthis.skillMetadata.size > 0\n\t\t\t\t\t? [...this.skillMetadata.values()]\n\t\t\t\t\t: undefined,\n\n\t\t\t// Timing\n\t\t\ttotalDurationMs: Math.round(totalDurationMs),\n\t\t\tllmDurationMs: Math.round(llmDurationMs),\n\t\t\ttoolDurationMs: Math.round(toolDurationMs),\n\t\t\tqueueWaitMs:\n\t\t\t\tqueueWaitMs !== undefined ? Math.round(queueWaitMs) : undefined,\n\n\t\t\t// Tools\n\t\t\ttools: this.completedTools,\n\t\t\ttoolCount: this.completedTools.length,\n\t\t\ttoolSuccessCount: this.completedTools.filter((t) => t.success).length,\n\t\t\ttoolFailureCount: this.completedTools.filter((t) => !t.success).length,\n\t\t\ttoolScheduling,\n\n\t\t\t// Tokens\n\t\t\ttokens,\n\t\t\tcostUsd,\n\n\t\t\t// Business context\n\t\t\tsandboxMode: this.sandboxMode,\n\t\t\tapprovalMode: this.approvalMode,\n\t\t\tmcpServerCount: this.mcpServers.length,\n\t\t\tmcpServers: this.mcpServers.length > 0 ? this.mcpServers : undefined,\n\t\t\tcontextSourceCount: this.contextSourceCount,\n\t\t\tmessageCount: this.messageCount,\n\t\t\tinputSizeBytes: this.inputSizeBytes,\n\t\t\toutputSizeBytes: this.outputSizeBytes,\n\n\t\t\t// Features\n\t\t\tfeatures: this.features,\n\n\t\t\t// Outcome\n\t\t\tstatus,\n\t\t\terrorCategory: errorDetails?.category,\n\t\t\terrorMessage: errorDetails?.message,\n\t\t\tabortReason,\n\n\t\t\t// Sampling\n\t\t\tsampled,\n\t\t\tsampleReason,\n\t\t};\n\n\t\tif (isOpenTelemetryEnabled()) {\n\t\t\ttry {\n\t\t\t\trecordAgentTurnMetric({\n\t\t\t\t\tdurationMs: event.totalDurationMs,\n\t\t\t\t\tstatus: event.status,\n\t\t\t\t\tmodelId: event.model.id,\n\t\t\t\t\tmodelProvider: event.model.provider,\n\t\t\t\t});\n\t\t\t\tconst llmRequestCount = Math.max(\n\t\t\t\t\tthis.llmRequestCount,\n\t\t\t\t\thasTokenUsage(metricTokens) ? 1 : 0,\n\t\t\t\t);\n\t\t\t\tfor (\n\t\t\t\t\tlet requestIndex = 0;\n\t\t\t\t\trequestIndex < llmRequestCount;\n\t\t\t\t\trequestIndex++\n\t\t\t\t) {\n\t\t\t\t\trecordLlmRequestMetric({\n\t\t\t\t\t\tprovider: event.model.provider,\n\t\t\t\t\t\tmodelId: event.model.id,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\trecordLlmTokenUsageMetric(metricTokens, {\n\t\t\t\t\t\"llm.model.provider\": event.model.provider,\n\t\t\t\t\t\"llm.model.id\": event.model.id,\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\t// Metrics must never affect canonical event creation or sampling.\n\t\t\t}\n\t\t}\n\n\t\t// Only persist if sampled\n\t\tif (sampled) {\n\t\t\tconst recorder = this.recorder ?? defaultRecorder;\n\t\t\tif (recorder) {\n\t\t\t\tvoid recorder(event);\n\t\t\t}\n\t\t}\n\n\t\treturn event;\n\t}\n\n\tprivate summarizeToolScheduling(): ToolSchedulingSummary | undefined {\n\t\tif (this.toolPhaseSummaries.length > 0) {\n\t\t\t// A turn can fail after per-call scheduling is recorded but before the\n\t\t\t// final phase summary is emitted; merge those unsummarized calls back in.\n\t\t\treturn summarizeToolPhaseSummaries(this.toolPhaseSummaries, [\n\t\t\t\t...this.toolSchedulingDecisions.values(),\n\t\t\t]);\n\t\t}\n\n\t\tconst decisions = [...this.toolSchedulingDecisions.values()].sort(\n\t\t\t(left, right) => left.emittedIndex - right.emittedIndex,\n\t\t);\n\t\treturn summarizeToolSchedulingDecisions(decisions);\n\t}\n\n\t// ─── Sampling Logic ───────────────────────────────────────────────────────\n\n\tprivate shouldSample(\n\t\tstatus: CanonicalTurnEvent[\"status\"],\n\t\ttotalDurationMs: number,\n\t): { sampled: boolean; sampleReason: CanonicalTurnEvent[\"sampleReason\"] } {\n\t\t// Always sample errors\n\t\tif (status === \"error\") {\n\t\t\treturn { sampled: true, sampleReason: \"error\" };\n\t\t}\n\n\t\t// Always sample first N turns\n\t\tif (this.turnNumber <= this.samplingConfig.alwaysSampleFirstN) {\n\t\t\treturn { sampled: true, sampleReason: \"first_turn\" };\n\t\t}\n\n\t\t// Always sample slow turns\n\t\tif (totalDurationMs >= this.samplingConfig.slowThresholdMs) {\n\t\t\treturn { sampled: true, sampleReason: \"slow\" };\n\t\t}\n\n\t\t// Random sampling for successful fast turns\n\t\tif (Math.random() < this.samplingConfig.successSampleRate) {\n\t\t\treturn { sampled: true, sampleReason: \"random\" };\n\t\t}\n\n\t\treturn { sampled: false, sampleReason: \"random\" };\n\t}\n}\n\nfunction summarizeToolSchedulingDecisions(\n\tdecisions: ToolSchedulingDecision[],\n): ToolSchedulingSummary | undefined {\n\tif (decisions.length === 0) {\n\t\treturn undefined;\n\t}\n\n\tconst sortedDecisions = [...decisions].sort(\n\t\t(left, right) => left.emittedIndex - right.emittedIndex,\n\t);\n\tconst waveCounts = new Map<number, number>();\n\tfor (const decision of sortedDecisions) {\n\t\tif (decision.waveIndex !== undefined) {\n\t\t\twaveCounts.set(\n\t\t\t\tdecision.waveIndex,\n\t\t\t\t(waveCounts.get(decision.waveIndex) ?? 0) + 1,\n\t\t\t);\n\t\t}\n\t}\n\tconst classifiedDecisions = sortedDecisions.map((decision) =>\n\t\tclassifyToolSchedulingDecision(\n\t\t\tdecision,\n\t\t\tdecision.waveIndex !== undefined\n\t\t\t\t? (waveCounts.get(decision.waveIndex) ?? 1)\n\t\t\t\t: 1,\n\t\t\tsortedDecisions.length,\n\t\t),\n\t);\n\tconst serializationReasons = new Map<string, number>();\n\tfor (const decision of classifiedDecisions) {\n\t\tif (decision.outcome === \"delayed\" || decision.outcome === \"serialized\") {\n\t\t\tserializationReasons.set(\n\t\t\t\tdecision.reason,\n\t\t\t\t(serializationReasons.get(decision.reason) ?? 0) + 1,\n\t\t\t);\n\t\t}\n\t}\n\n\treturn {\n\t\tmodelToolCallCount: sortedDecisions.length,\n\t\tmodelEmittedToolCallCount: sortedDecisions.length,\n\t\tschedulableWaveCount: waveCounts.size,\n\t\tparallelizedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) => decision.outcome === \"parallelized\",\n\t\t).length,\n\t\tactuallyParallelizedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) => decision.outcome === \"parallelized\",\n\t\t).length,\n\t\tserializedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) =>\n\t\t\t\tdecision.outcome === \"serialized\" || decision.outcome === \"delayed\",\n\t\t).length,\n\t\tdelayedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) => decision.outcome === \"delayed\",\n\t\t).length,\n\t\tblockedByMutationCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.blockedByMutation === true,\n\t\t).length,\n\t\tmcpOptInCallCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.mcpOptIn === true,\n\t\t).length,\n\t\tmcpOptInUseCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.mcpOptIn === true,\n\t\t).length,\n\t\tcacheHitCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.cacheHit === true,\n\t\t).length,\n\t\ttotalToolWaitMs: sortedDecisions.reduce(\n\t\t\t(total, decision) => total + (decision.schedulerWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\ttoolWaitTimeMs: sortedDecisions.reduce(\n\t\t\t(total, decision) => total + (decision.schedulerWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\tserializationReasons: Object.fromEntries(serializationReasons),\n\t\ttopSerializationReasons: topSerializationReasons(\n\t\t\tObject.fromEntries(serializationReasons),\n\t\t),\n\t};\n}\n\nfunction classifyToolSchedulingDecision(\n\tdecision: ToolSchedulingDecision,\n\twaveSize: number,\n\tmodelToolCallCount: number,\n): { outcome: ToolPhaseDecisionOutcome; reason: string } {\n\tconst outcome: ToolPhaseDecisionOutcome =\n\t\tdecision.cacheHit === true\n\t\t\t? \"cached\"\n\t\t\t: decision.decision === \"skipped\"\n\t\t\t\t? \"skipped\"\n\t\t\t\t: decision.decision === \"delayed\" || decision.blockedByMutation === true\n\t\t\t\t\t? \"delayed\"\n\t\t\t\t\t: decision.decision === \"parallelized\" ||\n\t\t\t\t\t\t\t(waveSize > 1 && decision.decision === \"scheduled\")\n\t\t\t\t\t\t? \"parallelized\"\n\t\t\t\t\t\t: \"serialized\";\n\tconst reason =\n\t\toutcome === \"cached\"\n\t\t\t? \"cache_hit\"\n\t\t\t: decision.blockedByMutation === true\n\t\t\t\t? decision.reason\n\t\t\t\t: decision.reason === \"workflow_state_serialized\"\n\t\t\t\t\t? \"workflow_state_serialized\"\n\t\t\t\t\t: decision.mcpOptIn === true\n\t\t\t\t\t\t? \"mcp_parallel_opt_in\"\n\t\t\t\t\t\t: decision.reason.startsWith(\"read_only\")\n\t\t\t\t\t\t\t? outcome === \"parallelized\"\n\t\t\t\t\t\t\t\t? \"read_only_parallel_safe\"\n\t\t\t\t\t\t\t\t: modelToolCallCount === 1\n\t\t\t\t\t\t\t\t\t? \"single_read_only_call\"\n\t\t\t\t\t\t\t\t\t: decision.reason\n\t\t\t\t\t\t\t: decision.reason.startsWith(\"path_scoped_mutation\")\n\t\t\t\t\t\t\t\t? \"path_scoped_mutation\"\n\t\t\t\t\t\t\t\t: decision.reason;\n\n\treturn { outcome, reason };\n}\n\nfunction countSerializationReasons(\n\tdecisions: ToolPhaseSummary[\"decisions\"],\n): Record<string, number> {\n\tconst reasons: Record<string, number> = {};\n\tfor (const decision of decisions) {\n\t\tif (decision.outcome === \"serialized\" || decision.outcome === \"delayed\") {\n\t\t\treasons[decision.reason] = (reasons[decision.reason] ?? 0) + 1;\n\t\t}\n\t}\n\treturn reasons;\n}\n\nfunction summarizeToolPhaseSummaries(\n\tsummaries: ToolPhaseSummary[],\n\trecordedDecisions: ToolSchedulingDecision[] = [],\n): ToolSchedulingSummary {\n\tconst summarizedCallIds = new Set(\n\t\tsummaries.flatMap((summary) =>\n\t\t\t(summary.decisions ?? []).map((decision) => decision.toolCallId),\n\t\t),\n\t);\n\tconst supplementalSummary = summarizeToolSchedulingDecisions(\n\t\trecordedDecisions.filter(\n\t\t\t(decision) => !summarizedCallIds.has(decision.callId),\n\t\t),\n\t);\n\tconst decisions = summaries.flatMap((summary) => summary.decisions ?? []);\n\tconst serializationReasons =\n\t\tdecisions.length > 0\n\t\t\t? countSerializationReasons(decisions)\n\t\t\t: mergeSerializationReasons(summaries);\n\n\tconst summary = {\n\t\tmodelToolCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.modelToolCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tmodelEmittedToolCallCount: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal +\n\t\t\t\t(summary.modelEmittedToolCallCount ?? summary.modelToolCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tschedulableWaveCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.schedulableWaveCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tparallelizedCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.parallelizedCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tactuallyParallelizedCallCount: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal +\n\t\t\t\t(summary.actuallyParallelizedCallCount ??\n\t\t\t\t\tsummary.parallelizedCallCount ??\n\t\t\t\t\t0),\n\t\t\t0,\n\t\t),\n\t\tserializedCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.serializedCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tdelayedCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.delayedCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tblockedByMutationCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.blockedByMutationCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tmcpOptInCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.mcpOptInCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tmcpOptInUseCount: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal + (summary.mcpOptInUseCount ?? summary.mcpOptInCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tcacheHitCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.cacheHitCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\ttotalToolWaitMs: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.totalToolWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\ttoolWaitTimeMs: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal + (summary.toolWaitTimeMs ?? summary.totalToolWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\tserializationReasons,\n\t\ttopSerializationReasons: topSerializationReasons(serializationReasons),\n\t};\n\n\treturn supplementalSummary\n\t\t? mergeToolSchedulingSummaries(summary, supplementalSummary)\n\t\t: summary;\n}\n\nfunction mergeToolSchedulingSummaries(\n\tleft: ToolSchedulingSummary,\n\tright: ToolSchedulingSummary,\n): ToolSchedulingSummary {\n\tconst serializationReasons = {\n\t\t...left.serializationReasons,\n\t};\n\tfor (const [reason, count] of Object.entries(right.serializationReasons)) {\n\t\tserializationReasons[reason] = (serializationReasons[reason] ?? 0) + count;\n\t}\n\n\treturn {\n\t\tmodelToolCallCount: left.modelToolCallCount + right.modelToolCallCount,\n\t\tmodelEmittedToolCallCount:\n\t\t\tleft.modelEmittedToolCallCount + right.modelEmittedToolCallCount,\n\t\tschedulableWaveCount:\n\t\t\tleft.schedulableWaveCount + right.schedulableWaveCount,\n\t\tparallelizedCallCount:\n\t\t\tleft.parallelizedCallCount + right.parallelizedCallCount,\n\t\tactuallyParallelizedCallCount:\n\t\t\tleft.actuallyParallelizedCallCount + right.actuallyParallelizedCallCount,\n\t\tserializedCallCount: left.serializedCallCount + right.serializedCallCount,\n\t\tdelayedCallCount: left.delayedCallCount + right.delayedCallCount,\n\t\tblockedByMutationCount:\n\t\t\tleft.blockedByMutationCount + right.blockedByMutationCount,\n\t\tmcpOptInCallCount: left.mcpOptInCallCount + right.mcpOptInCallCount,\n\t\tmcpOptInUseCount: left.mcpOptInUseCount + right.mcpOptInUseCount,\n\t\tcacheHitCount: left.cacheHitCount + right.cacheHitCount,\n\t\ttotalToolWaitMs: left.totalToolWaitMs + right.totalToolWaitMs,\n\t\ttoolWaitTimeMs: left.toolWaitTimeMs + right.toolWaitTimeMs,\n\t\tserializationReasons,\n\t\ttopSerializationReasons: topSerializationReasons(serializationReasons),\n\t};\n}\n\nfunction mergeSerializationReasons(\n\tsummaries: ToolPhaseSummary[],\n): Record<string, number> {\n\tconst reasons: Record<string, number> = {};\n\tfor (const summary of summaries) {\n\t\tfor (const [reason, count] of Object.entries(\n\t\t\tsummary.serializationReasons ?? {},\n\t\t)) {\n\t\t\treasons[reason] = (reasons[reason] ?? 0) + count;\n\t\t}\n\t}\n\treturn reasons;\n}\n\nfunction topSerializationReasons(\n\treasons: Record<string, number>,\n): SerializationReasonCount[] {\n\treturn Object.entries(reasons)\n\t\t.map(([reason, count]) => ({ reason, count }))\n\t\t.sort((left, right) => right.count - left.count);\n}\n\nfunction hasTokenUsage(tokens: TokenUsage): boolean {\n\treturn (\n\t\ttokens.input > 0 ||\n\t\ttokens.output > 0 ||\n\t\ttokens.cacheRead > 0 ||\n\t\ttokens.cacheWrite > 0\n\t);\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Convenience Functions\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Create a new turn collector for a session.\n */\nexport function createTurnCollector(\n\tsessionId: string,\n\tturnNumber: number,\n\tconfig?: Partial<TailSamplingConfig>,\n\trecorder?: TelemetryRecorder,\n): TurnCollector {\n\treturn new TurnCollector(sessionId, turnNumber, config, recorder);\n}\n\n/**\n * Environment-based sampling config override.\n */\nexport function getSamplingConfigFromEnv(): Partial<TailSamplingConfig> {\n\tconst config: Partial<TailSamplingConfig> = {};\n\n\tconst sampleRate = process.env.MAESTRO_WIDE_EVENT_SAMPLE_RATE;\n\tif (sampleRate) {\n\t\tconst rate = Number.parseFloat(sampleRate);\n\t\tif (!Number.isNaN(rate) && rate >= 0 && rate <= 1) {\n\t\t\tconfig.successSampleRate = rate;\n\t\t}\n\t}\n\n\tconst slowThreshold = process.env.MAESTRO_WIDE_EVENT_SLOW_THRESHOLD_MS;\n\tif (slowThreshold) {\n\t\tconst threshold = Number.parseInt(slowThreshold, 10);\n\t\tif (!Number.isNaN(threshold) && threshold > 0) {\n\t\t\tconfig.slowThresholdMs = threshold;\n\t\t}\n\t}\n\n\treturn config;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"wide-events.js","sourceRoot":"","sources":["../../src/telemetry/wide-events.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Wide Events Telemetry - Canonical Turn Events\n *\n * Implements the \"wide events\" pattern from loggingsucks.com:\n * Instead of scattered log statements, emit ONE rich event per agent turn\n * with comprehensive context for analytics-style querying.\n *\n * Key principles:\n * - One event per turn, not N log lines\n * - High-cardinality fields for queryability\n * - Tail sampling: always keep errors/slow, sample successes\n * - Optimized for querying, not writing\n */\n\nimport { randomUUID } from \"node:crypto\";\nimport type { SkillArtifactMetadata } from \"../agent/skill-artifact-metadata.js\";\nimport type {\n\tToolPhaseDecisionOutcome,\n\tToolPhaseSummary,\n\tToolSchedulingDecision,\n} from \"../agent/types.js\";\nimport { isOpenTelemetryEnabled } from \"../opentelemetry.js\";\nimport type { PromptMetadata } from \"../prompts/types.js\";\nimport {\n\trecordAgentTurnMetric,\n\trecordLlmRequestMetric,\n\trecordLlmTokenUsageMetric,\n} from \"./metrics.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport interface ToolExecution {\n\tname: string;\n\tcallId: string;\n\tdurationMs: number;\n\tsuccess: boolean;\n\terrorCode?: string;\n\tinputSizeBytes?: number;\n\toutputSizeBytes?: number;\n\tscheduling?: ToolSchedulingDecision;\n}\n\nexport interface TokenUsage {\n\tinput: number;\n\toutput: number;\n\tcacheRead: number;\n\tcacheWrite: number;\n\tthinking?: number;\n}\n\nexport interface ModelInfo {\n\tid: string;\n\tprovider: string;\n\tthinkingLevel:\n\t\t| \"off\"\n\t\t| \"minimal\"\n\t\t| \"low\"\n\t\t| \"medium\"\n\t\t| \"high\"\n\t\t| \"max\"\n\t\t| \"ultra\";\n}\n\nexport interface SerializationReasonCount {\n\treason: string;\n\tcount: number;\n}\n\nexport interface ToolSchedulingSummary {\n\tmodelToolCallCount: number;\n\tmodelEmittedToolCallCount: number;\n\tschedulableWaveCount: number;\n\tparallelizedCallCount: number;\n\tactuallyParallelizedCallCount: number;\n\tserializedCallCount: number;\n\tdelayedCallCount: number;\n\tblockedByMutationCount: number;\n\tmcpOptInCallCount: number;\n\tmcpOptInUseCount: number;\n\tcacheHitCount: number;\n\ttotalToolWaitMs: number;\n\ttoolWaitTimeMs: number;\n\tserializationReasons: Record<string, number>;\n\ttopSerializationReasons: SerializationReasonCount[];\n}\n\n/**\n * Canonical Turn Event - One wide event per agent turn\n *\n * Contains all context needed to debug and analyze any turn without\n * correlating multiple log lines. Designed for high-cardinality querying.\n */\nexport interface CanonicalTurnEvent {\n\ttype: \"canonical-turn\";\n\ttimestamp: string;\n\n\t// ─── Identity ───────────────────────────────────────────────────────────\n\tsessionId: string;\n\tturnId: string;\n\tturnNumber: number;\n\ttraceId?: string;\n\n\t// ─── Model Context ──────────────────────────────────────────────────────\n\tmodel: ModelInfo;\n\tpromptMetadata?: PromptMetadata;\n\tskillMetadata?: SkillArtifactMetadata[];\n\n\t// ─── Timing ─────────────────────────────────────────────────────────────\n\ttotalDurationMs: number;\n\tllmDurationMs: number;\n\ttoolDurationMs: number;\n\tqueueWaitMs?: number;\n\n\t// ─── Tool Executions ────────────────────────────────────────────────────\n\ttools: ToolExecution[];\n\ttoolCount: number;\n\ttoolSuccessCount: number;\n\ttoolFailureCount: number;\n\ttoolScheduling?: ToolSchedulingSummary;\n\n\t// ─── Token Economics ────────────────────────────────────────────────────\n\ttokens: TokenUsage;\n\tcostUsd: number;\n\n\t// ─── Business Context (high cardinality = queryable) ────────────────────\n\tsandboxMode: \"docker\" | \"local\" | \"none\";\n\tapprovalMode: \"auto\" | \"prompt\" | \"fail\";\n\tmcpServerCount: number;\n\tmcpServers?: string[];\n\tcontextSourceCount: number;\n\tmessageCount: number;\n\tinputSizeBytes: number;\n\toutputSizeBytes: number;\n\n\t// ─── Feature Flags ──────────────────────────────────────────────────────\n\tfeatures: {\n\t\tsafeMode: boolean;\n\t\tguardianEnabled: boolean;\n\t\tcompactionEnabled: boolean;\n\t\thookCount: number;\n\t};\n\n\t// ─── Outcome ────────────────────────────────────────────────────────────\n\tstatus: \"success\" | \"error\" | \"aborted\" | \"rate_limited\";\n\terrorCategory?: string;\n\terrorMessage?: string;\n\tabortReason?: \"user\" | \"timeout\" | \"context_overflow\" | \"rate_limit\";\n\n\t// ─── Sampling Metadata ──────────────────────────────────────────────────\n\tsampled: boolean;\n\tsampleReason: \"always\" | \"error\" | \"slow\" | \"first_turn\" | \"random\";\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Tail Sampling Configuration\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport interface TailSamplingConfig {\n\t/** Sample rate for successful fast turns (0.0 to 1.0) */\n\tsuccessSampleRate: number;\n\t/** Threshold in ms above which a turn is considered \"slow\" */\n\tslowThresholdMs: number;\n\t/** Always sample first N turns of a session */\n\talwaysSampleFirstN: number;\n}\n\nconst DEFAULT_SAMPLING_CONFIG: TailSamplingConfig = {\n\tsuccessSampleRate: 0.05, // 5% of successful fast turns\n\tslowThresholdMs: 5000, // 5 seconds\n\talwaysSampleFirstN: 1, // Always sample first turn\n};\n\n/**\n * Telemetry recorder function type.\n * Injected to break circular dependency with telemetry.ts.\n */\nexport type TelemetryRecorder = (event: CanonicalTurnEvent) => Promise<void>;\n\n// Default recorder - imported lazily to break circular dependency\nlet defaultRecorder: TelemetryRecorder | undefined;\n\n/**\n * Set the default telemetry recorder.\n * Called once during initialization to inject the recordTelemetry function.\n */\nexport function setDefaultTelemetryRecorder(recorder: TelemetryRecorder): void {\n\tdefaultRecorder = recorder;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Turn Collector\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Collects context during a turn and emits a single wide event at completion.\n *\n * Usage:\n * ```typescript\n * const turn = new TurnCollector(sessionId, turnNumber);\n * turn.setModel({ id: \"claude-opus-4-6\", provider: \"anthropic\", thinkingLevel: \"medium\" });\n *\n * // During tool execution\n * turn.recordToolStart(\"bash\", \"call-123\");\n * // ... execute tool ...\n * turn.recordToolEnd(\"call-123\", true, 150);\n *\n * // At turn end\n * turn.complete(\"success\", tokens, costUsd);\n * ```\n */\nexport class TurnCollector {\n\tprivate readonly turnId: string;\n\tprivate readonly startTime: number;\n\tprivate llmStartTime?: number;\n\tprivate accumulatedLlmDurationMs = 0;\n\tprivate llmRequestCount = 0;\n\tprivate queueStartTime?: number;\n\n\tprivate model: ModelInfo = {\n\t\tid: \"unknown\",\n\t\tprovider: \"unknown\",\n\t\tthinkingLevel: \"off\",\n\t};\n\tprivate promptMetadata?: PromptMetadata;\n\tprivate readonly skillMetadata = new Map<string, SkillArtifactMetadata>();\n\tprivate tools: Map<\n\t\tstring,\n\t\t{ name: string; callId: string; startTime: number; inputSizeBytes?: number }\n\t> = new Map();\n\tprivate readonly toolSchedulingDecisions = new Map<\n\t\tstring,\n\t\tToolSchedulingDecision\n\t>();\n\tprivate readonly toolPhaseSummaries: ToolPhaseSummary[] = [];\n\tprivate completedTools: ToolExecution[] = [];\n\n\t// Context fields\n\tprivate sandboxMode: CanonicalTurnEvent[\"sandboxMode\"] = \"none\";\n\tprivate approvalMode: CanonicalTurnEvent[\"approvalMode\"] = \"prompt\";\n\tprivate mcpServers: string[] = [];\n\tprivate contextSourceCount = 0;\n\tprivate messageCount = 0;\n\tprivate inputSizeBytes = 0;\n\tprivate outputSizeBytes = 0;\n\tprivate features = {\n\t\tsafeMode: false,\n\t\tguardianEnabled: true,\n\t\tcompactionEnabled: true,\n\t\thookCount: 0,\n\t};\n\n\tprivate samplingConfig: TailSamplingConfig;\n\tprivate traceId?: string;\n\tprivate recorder?: TelemetryRecorder;\n\n\tconstructor(\n\t\tprivate readonly sessionId: string,\n\t\tprivate readonly turnNumber: number,\n\t\tsamplingConfig?: Partial<TailSamplingConfig>,\n\t\trecorder?: TelemetryRecorder,\n\t) {\n\t\tthis.turnId = randomUUID();\n\t\tthis.startTime = performance.now();\n\t\tthis.samplingConfig = { ...DEFAULT_SAMPLING_CONFIG, ...samplingConfig };\n\t\tthis.recorder = recorder;\n\t}\n\n\t// ─── Setters ──────────────────────────────────────────────────────────────\n\n\tsetModel(model: ModelInfo): this {\n\t\tthis.model = model;\n\t\treturn this;\n\t}\n\n\tsetPromptMetadata(promptMetadata: PromptMetadata | undefined): this {\n\t\tthis.promptMetadata = promptMetadata;\n\t\treturn this;\n\t}\n\n\trecordSkillMetadata(skillMetadata: SkillArtifactMetadata | undefined): this {\n\t\tif (!skillMetadata) {\n\t\t\treturn this;\n\t\t}\n\t\tconst key = [\n\t\t\tskillMetadata.artifactId,\n\t\t\tskillMetadata.source,\n\t\t\tskillMetadata.name,\n\t\t\tskillMetadata.version,\n\t\t\tskillMetadata.hash,\n\t\t]\n\t\t\t.filter(Boolean)\n\t\t\t.join(\":\");\n\t\tif (!key) {\n\t\t\treturn this;\n\t\t}\n\t\tthis.skillMetadata.set(key, skillMetadata);\n\t\treturn this;\n\t}\n\n\tsetTraceId(traceId: string): this {\n\t\tthis.traceId = traceId;\n\t\treturn this;\n\t}\n\n\tsetSandboxMode(mode: CanonicalTurnEvent[\"sandboxMode\"]): this {\n\t\tthis.sandboxMode = mode;\n\t\treturn this;\n\t}\n\n\tsetApprovalMode(mode: CanonicalTurnEvent[\"approvalMode\"]): this {\n\t\tthis.approvalMode = mode;\n\t\treturn this;\n\t}\n\n\tsetMcpServers(servers: string[]): this {\n\t\tthis.mcpServers = servers;\n\t\treturn this;\n\t}\n\n\tsetContextSourceCount(count: number): this {\n\t\tthis.contextSourceCount = count;\n\t\treturn this;\n\t}\n\n\tsetMessageCount(count: number): this {\n\t\tthis.messageCount = count;\n\t\treturn this;\n\t}\n\n\tsetInputSize(bytes: number): this {\n\t\tthis.inputSizeBytes = bytes;\n\t\treturn this;\n\t}\n\n\taddOutputSize(bytes: number): this {\n\t\tthis.outputSizeBytes += bytes;\n\t\treturn this;\n\t}\n\n\tsetFeatures(features: Partial<TurnCollector[\"features\"]>): this {\n\t\tthis.features = { ...this.features, ...features };\n\t\treturn this;\n\t}\n\n\t// ─── Timing ───────────────────────────────────────────────────────────────\n\n\trecordQueueStart(): this {\n\t\tthis.queueStartTime = performance.now();\n\t\treturn this;\n\t}\n\n\trecordLlmStart(): this {\n\t\tthis.llmRequestCount += 1;\n\t\tthis.llmStartTime = performance.now();\n\t\treturn this;\n\t}\n\n\trecordLlmEnd(): this {\n\t\t// Accumulate LLM duration (turns may have multiple LLM calls)\n\t\tif (this.llmStartTime !== undefined) {\n\t\t\tthis.accumulatedLlmDurationMs += performance.now() - this.llmStartTime;\n\t\t\tthis.llmStartTime = undefined;\n\t\t}\n\t\treturn this;\n\t}\n\n\t// ─── Tool Recording ───────────────────────────────────────────────────────\n\n\trecordToolStart(name: string, callId: string, inputSizeBytes?: number): this {\n\t\tthis.tools.set(callId, {\n\t\t\tname,\n\t\t\tcallId,\n\t\t\tinputSizeBytes,\n\t\t\t// Store start time; will be converted to duration in recordToolEnd\n\t\t\tstartTime: performance.now(),\n\t\t});\n\t\treturn this;\n\t}\n\n\trecordToolSchedulingDecision(decision: ToolSchedulingDecision): this {\n\t\tthis.toolSchedulingDecisions.set(decision.callId, {\n\t\t\t...decision,\n\t\t\tschedulerWaitMs:\n\t\t\t\tdecision.schedulerWaitMs !== undefined\n\t\t\t\t\t? Math.max(0, Math.round(decision.schedulerWaitMs))\n\t\t\t\t\t: undefined,\n\t\t});\n\t\treturn this;\n\t}\n\n\trecordToolPhaseSummary(summary: ToolPhaseSummary): this {\n\t\tthis.toolPhaseSummaries.push(summary);\n\t\tfor (const decision of summary.decisions ?? []) {\n\t\t\tthis.recordToolSchedulingDecision({\n\t\t\t\tcallId: decision.toolCallId,\n\t\t\t\ttoolName: decision.toolName,\n\t\t\t\temittedIndex: decision.emittedIndex,\n\t\t\t\twaveIndex: decision.waveIndex,\n\t\t\t\tdecision: decision.decision,\n\t\t\t\treason: decision.reason,\n\t\t\t\tschedulerWaitMs: decision.schedulerWaitMs,\n\t\t\t\tmcpOptIn: decision.mcpOptIn,\n\t\t\t\tcacheHit: decision.cacheHit,\n\t\t\t\tblockedByMutation: decision.blockedByMutation,\n\t\t\t});\n\t\t}\n\t\tfor (const tool of this.completedTools) {\n\t\t\ttool.scheduling ??= this.toolSchedulingDecisions.get(tool.callId);\n\t\t}\n\t\treturn this;\n\t}\n\n\trecordToolEnd(\n\t\tcallId: string,\n\t\tsuccess: boolean,\n\t\toutputSizeBytes?: number,\n\t\terrorCode?: string,\n\t): this {\n\t\tconst tool = this.tools.get(callId);\n\t\tif (tool && typeof tool.startTime === \"number\") {\n\t\t\tconst completed: ToolExecution = {\n\t\t\t\tname: tool.name ?? \"unknown\",\n\t\t\t\tcallId,\n\t\t\t\tdurationMs: performance.now() - tool.startTime,\n\t\t\t\tsuccess,\n\t\t\t\terrorCode,\n\t\t\t\tinputSizeBytes: tool.inputSizeBytes,\n\t\t\t\toutputSizeBytes,\n\t\t\t\tscheduling: this.toolSchedulingDecisions.get(callId),\n\t\t\t};\n\t\t\tthis.completedTools.push(completed);\n\t\t\tthis.tools.delete(callId);\n\t\t}\n\t\treturn this;\n\t}\n\n\t// ─── Completion ───────────────────────────────────────────────────────────\n\n\t/**\n\t * Complete the turn and emit the canonical event.\n\t * Applies tail sampling logic to decide whether to persist.\n\t */\n\tcomplete(\n\t\tstatus: CanonicalTurnEvent[\"status\"],\n\t\ttokens: TokenUsage,\n\t\tcostUsd: number,\n\t\terrorDetails?: { category?: string; message?: string },\n\t\tabortReason?: CanonicalTurnEvent[\"abortReason\"],\n\t\tmetricTokens: TokenUsage = tokens,\n\t): CanonicalTurnEvent {\n\t\tconst endTime = performance.now();\n\t\tconst totalDurationMs = endTime - this.startTime;\n\n\t\t// Calculate timing breakdown (use accumulated LLM duration for multi-call turns)\n\t\tconst llmDurationMs = this.accumulatedLlmDurationMs;\n\t\tconst toolDurationMs = this.completedTools.reduce(\n\t\t\t(sum, t) => sum + t.durationMs,\n\t\t\t0,\n\t\t);\n\t\t// Calculate queue wait time, clamping to 0 if queueStartTime > startTime\n\t\t// (which shouldn't happen but prevents negative values in telemetry)\n\t\tconst queueWaitMs =\n\t\t\tthis.queueStartTime !== undefined\n\t\t\t\t? Math.max(0, this.startTime - this.queueStartTime)\n\t\t\t\t: undefined;\n\t\tconst toolScheduling = this.summarizeToolScheduling();\n\n\t\t// Apply tail sampling\n\t\tconst { sampled, sampleReason } = this.shouldSample(\n\t\t\tstatus,\n\t\t\ttotalDurationMs,\n\t\t);\n\n\t\tconst event: CanonicalTurnEvent = {\n\t\t\ttype: \"canonical-turn\",\n\t\t\ttimestamp: new Date().toISOString(),\n\n\t\t\t// Identity\n\t\t\tsessionId: this.sessionId,\n\t\t\tturnId: this.turnId,\n\t\t\tturnNumber: this.turnNumber,\n\t\t\ttraceId: this.traceId,\n\n\t\t\t// Model\n\t\t\tmodel: this.model,\n\t\t\tpromptMetadata: this.promptMetadata,\n\t\t\tskillMetadata:\n\t\t\t\tthis.skillMetadata.size > 0\n\t\t\t\t\t? [...this.skillMetadata.values()]\n\t\t\t\t\t: undefined,\n\n\t\t\t// Timing\n\t\t\ttotalDurationMs: Math.round(totalDurationMs),\n\t\t\tllmDurationMs: Math.round(llmDurationMs),\n\t\t\ttoolDurationMs: Math.round(toolDurationMs),\n\t\t\tqueueWaitMs:\n\t\t\t\tqueueWaitMs !== undefined ? Math.round(queueWaitMs) : undefined,\n\n\t\t\t// Tools\n\t\t\ttools: this.completedTools,\n\t\t\ttoolCount: this.completedTools.length,\n\t\t\ttoolSuccessCount: this.completedTools.filter((t) => t.success).length,\n\t\t\ttoolFailureCount: this.completedTools.filter((t) => !t.success).length,\n\t\t\ttoolScheduling,\n\n\t\t\t// Tokens\n\t\t\ttokens,\n\t\t\tcostUsd,\n\n\t\t\t// Business context\n\t\t\tsandboxMode: this.sandboxMode,\n\t\t\tapprovalMode: this.approvalMode,\n\t\t\tmcpServerCount: this.mcpServers.length,\n\t\t\tmcpServers: this.mcpServers.length > 0 ? this.mcpServers : undefined,\n\t\t\tcontextSourceCount: this.contextSourceCount,\n\t\t\tmessageCount: this.messageCount,\n\t\t\tinputSizeBytes: this.inputSizeBytes,\n\t\t\toutputSizeBytes: this.outputSizeBytes,\n\n\t\t\t// Features\n\t\t\tfeatures: this.features,\n\n\t\t\t// Outcome\n\t\t\tstatus,\n\t\t\terrorCategory: errorDetails?.category,\n\t\t\terrorMessage: errorDetails?.message,\n\t\t\tabortReason,\n\n\t\t\t// Sampling\n\t\t\tsampled,\n\t\t\tsampleReason,\n\t\t};\n\n\t\tif (isOpenTelemetryEnabled()) {\n\t\t\ttry {\n\t\t\t\trecordAgentTurnMetric({\n\t\t\t\t\tdurationMs: event.totalDurationMs,\n\t\t\t\t\tstatus: event.status,\n\t\t\t\t\tmodelId: event.model.id,\n\t\t\t\t\tmodelProvider: event.model.provider,\n\t\t\t\t});\n\t\t\t\tconst llmRequestCount = Math.max(\n\t\t\t\t\tthis.llmRequestCount,\n\t\t\t\t\thasTokenUsage(metricTokens) ? 1 : 0,\n\t\t\t\t);\n\t\t\t\tfor (\n\t\t\t\t\tlet requestIndex = 0;\n\t\t\t\t\trequestIndex < llmRequestCount;\n\t\t\t\t\trequestIndex++\n\t\t\t\t) {\n\t\t\t\t\trecordLlmRequestMetric({\n\t\t\t\t\t\tprovider: event.model.provider,\n\t\t\t\t\t\tmodelId: event.model.id,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\trecordLlmTokenUsageMetric(metricTokens, {\n\t\t\t\t\t\"llm.model.provider\": event.model.provider,\n\t\t\t\t\t\"llm.model.id\": event.model.id,\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\t// Metrics must never affect canonical event creation or sampling.\n\t\t\t}\n\t\t}\n\n\t\t// Only persist if sampled\n\t\tif (sampled) {\n\t\t\tconst recorder = this.recorder ?? defaultRecorder;\n\t\t\tif (recorder) {\n\t\t\t\tvoid recorder(event);\n\t\t\t}\n\t\t}\n\n\t\treturn event;\n\t}\n\n\tprivate summarizeToolScheduling(): ToolSchedulingSummary | undefined {\n\t\tif (this.toolPhaseSummaries.length > 0) {\n\t\t\t// A turn can fail after per-call scheduling is recorded but before the\n\t\t\t// final phase summary is emitted; merge those unsummarized calls back in.\n\t\t\treturn summarizeToolPhaseSummaries(this.toolPhaseSummaries, [\n\t\t\t\t...this.toolSchedulingDecisions.values(),\n\t\t\t]);\n\t\t}\n\n\t\tconst decisions = [...this.toolSchedulingDecisions.values()].sort(\n\t\t\t(left, right) => left.emittedIndex - right.emittedIndex,\n\t\t);\n\t\treturn summarizeToolSchedulingDecisions(decisions);\n\t}\n\n\t// ─── Sampling Logic ───────────────────────────────────────────────────────\n\n\tprivate shouldSample(\n\t\tstatus: CanonicalTurnEvent[\"status\"],\n\t\ttotalDurationMs: number,\n\t): { sampled: boolean; sampleReason: CanonicalTurnEvent[\"sampleReason\"] } {\n\t\t// Always sample errors\n\t\tif (status === \"error\") {\n\t\t\treturn { sampled: true, sampleReason: \"error\" };\n\t\t}\n\n\t\t// Always sample first N turns\n\t\tif (this.turnNumber <= this.samplingConfig.alwaysSampleFirstN) {\n\t\t\treturn { sampled: true, sampleReason: \"first_turn\" };\n\t\t}\n\n\t\t// Always sample slow turns\n\t\tif (totalDurationMs >= this.samplingConfig.slowThresholdMs) {\n\t\t\treturn { sampled: true, sampleReason: \"slow\" };\n\t\t}\n\n\t\t// Random sampling for successful fast turns\n\t\tif (Math.random() < this.samplingConfig.successSampleRate) {\n\t\t\treturn { sampled: true, sampleReason: \"random\" };\n\t\t}\n\n\t\treturn { sampled: false, sampleReason: \"random\" };\n\t}\n}\n\nfunction summarizeToolSchedulingDecisions(\n\tdecisions: ToolSchedulingDecision[],\n): ToolSchedulingSummary | undefined {\n\tif (decisions.length === 0) {\n\t\treturn undefined;\n\t}\n\n\tconst sortedDecisions = [...decisions].sort(\n\t\t(left, right) => left.emittedIndex - right.emittedIndex,\n\t);\n\tconst waveCounts = new Map<number, number>();\n\tfor (const decision of sortedDecisions) {\n\t\tif (decision.waveIndex !== undefined) {\n\t\t\twaveCounts.set(\n\t\t\t\tdecision.waveIndex,\n\t\t\t\t(waveCounts.get(decision.waveIndex) ?? 0) + 1,\n\t\t\t);\n\t\t}\n\t}\n\tconst classifiedDecisions = sortedDecisions.map((decision) =>\n\t\tclassifyToolSchedulingDecision(\n\t\t\tdecision,\n\t\t\tdecision.waveIndex !== undefined\n\t\t\t\t? (waveCounts.get(decision.waveIndex) ?? 1)\n\t\t\t\t: 1,\n\t\t\tsortedDecisions.length,\n\t\t),\n\t);\n\tconst serializationReasons = new Map<string, number>();\n\tfor (const decision of classifiedDecisions) {\n\t\tif (decision.outcome === \"delayed\" || decision.outcome === \"serialized\") {\n\t\t\tserializationReasons.set(\n\t\t\t\tdecision.reason,\n\t\t\t\t(serializationReasons.get(decision.reason) ?? 0) + 1,\n\t\t\t);\n\t\t}\n\t}\n\n\treturn {\n\t\tmodelToolCallCount: sortedDecisions.length,\n\t\tmodelEmittedToolCallCount: sortedDecisions.length,\n\t\tschedulableWaveCount: waveCounts.size,\n\t\tparallelizedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) => decision.outcome === \"parallelized\",\n\t\t).length,\n\t\tactuallyParallelizedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) => decision.outcome === \"parallelized\",\n\t\t).length,\n\t\tserializedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) =>\n\t\t\t\tdecision.outcome === \"serialized\" || decision.outcome === \"delayed\",\n\t\t).length,\n\t\tdelayedCallCount: classifiedDecisions.filter(\n\t\t\t(decision) => decision.outcome === \"delayed\",\n\t\t).length,\n\t\tblockedByMutationCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.blockedByMutation === true,\n\t\t).length,\n\t\tmcpOptInCallCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.mcpOptIn === true,\n\t\t).length,\n\t\tmcpOptInUseCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.mcpOptIn === true,\n\t\t).length,\n\t\tcacheHitCount: sortedDecisions.filter(\n\t\t\t(decision) => decision.cacheHit === true,\n\t\t).length,\n\t\ttotalToolWaitMs: sortedDecisions.reduce(\n\t\t\t(total, decision) => total + (decision.schedulerWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\ttoolWaitTimeMs: sortedDecisions.reduce(\n\t\t\t(total, decision) => total + (decision.schedulerWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\tserializationReasons: Object.fromEntries(serializationReasons),\n\t\ttopSerializationReasons: topSerializationReasons(\n\t\t\tObject.fromEntries(serializationReasons),\n\t\t),\n\t};\n}\n\nfunction classifyToolSchedulingDecision(\n\tdecision: ToolSchedulingDecision,\n\twaveSize: number,\n\tmodelToolCallCount: number,\n): { outcome: ToolPhaseDecisionOutcome; reason: string } {\n\tconst outcome: ToolPhaseDecisionOutcome =\n\t\tdecision.cacheHit === true\n\t\t\t? \"cached\"\n\t\t\t: decision.decision === \"skipped\"\n\t\t\t\t? \"skipped\"\n\t\t\t\t: decision.decision === \"delayed\" || decision.blockedByMutation === true\n\t\t\t\t\t? \"delayed\"\n\t\t\t\t\t: decision.decision === \"parallelized\" ||\n\t\t\t\t\t\t\t(waveSize > 1 && decision.decision === \"scheduled\")\n\t\t\t\t\t\t? \"parallelized\"\n\t\t\t\t\t\t: \"serialized\";\n\tconst reason =\n\t\toutcome === \"cached\"\n\t\t\t? \"cache_hit\"\n\t\t\t: decision.blockedByMutation === true\n\t\t\t\t? decision.reason\n\t\t\t\t: decision.reason === \"workflow_state_serialized\"\n\t\t\t\t\t? \"workflow_state_serialized\"\n\t\t\t\t\t: decision.mcpOptIn === true\n\t\t\t\t\t\t? \"mcp_parallel_opt_in\"\n\t\t\t\t\t\t: decision.reason.startsWith(\"read_only\")\n\t\t\t\t\t\t\t? outcome === \"parallelized\"\n\t\t\t\t\t\t\t\t? \"read_only_parallel_safe\"\n\t\t\t\t\t\t\t\t: modelToolCallCount === 1\n\t\t\t\t\t\t\t\t\t? \"single_read_only_call\"\n\t\t\t\t\t\t\t\t\t: decision.reason\n\t\t\t\t\t\t\t: decision.reason.startsWith(\"path_scoped_mutation\")\n\t\t\t\t\t\t\t\t? \"path_scoped_mutation\"\n\t\t\t\t\t\t\t\t: decision.reason;\n\n\treturn { outcome, reason };\n}\n\nfunction countSerializationReasons(\n\tdecisions: ToolPhaseSummary[\"decisions\"],\n): Record<string, number> {\n\tconst reasons: Record<string, number> = {};\n\tfor (const decision of decisions) {\n\t\tif (decision.outcome === \"serialized\" || decision.outcome === \"delayed\") {\n\t\t\treasons[decision.reason] = (reasons[decision.reason] ?? 0) + 1;\n\t\t}\n\t}\n\treturn reasons;\n}\n\nfunction summarizeToolPhaseSummaries(\n\tsummaries: ToolPhaseSummary[],\n\trecordedDecisions: ToolSchedulingDecision[] = [],\n): ToolSchedulingSummary {\n\tconst summarizedCallIds = new Set(\n\t\tsummaries.flatMap((summary) =>\n\t\t\t(summary.decisions ?? []).map((decision) => decision.toolCallId),\n\t\t),\n\t);\n\tconst supplementalSummary = summarizeToolSchedulingDecisions(\n\t\trecordedDecisions.filter(\n\t\t\t(decision) => !summarizedCallIds.has(decision.callId),\n\t\t),\n\t);\n\tconst decisions = summaries.flatMap((summary) => summary.decisions ?? []);\n\tconst serializationReasons =\n\t\tdecisions.length > 0\n\t\t\t? countSerializationReasons(decisions)\n\t\t\t: mergeSerializationReasons(summaries);\n\n\tconst summary = {\n\t\tmodelToolCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.modelToolCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tmodelEmittedToolCallCount: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal +\n\t\t\t\t(summary.modelEmittedToolCallCount ?? summary.modelToolCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tschedulableWaveCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.schedulableWaveCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tparallelizedCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.parallelizedCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tactuallyParallelizedCallCount: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal +\n\t\t\t\t(summary.actuallyParallelizedCallCount ??\n\t\t\t\t\tsummary.parallelizedCallCount ??\n\t\t\t\t\t0),\n\t\t\t0,\n\t\t),\n\t\tserializedCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.serializedCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tdelayedCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.delayedCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tblockedByMutationCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.blockedByMutationCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tmcpOptInCallCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.mcpOptInCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tmcpOptInUseCount: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal + (summary.mcpOptInUseCount ?? summary.mcpOptInCallCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\tcacheHitCount: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.cacheHitCount ?? 0),\n\t\t\t0,\n\t\t),\n\t\ttotalToolWaitMs: summaries.reduce(\n\t\t\t(total, summary) => total + (summary.totalToolWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\ttoolWaitTimeMs: summaries.reduce(\n\t\t\t(total, summary) =>\n\t\t\t\ttotal + (summary.toolWaitTimeMs ?? summary.totalToolWaitMs ?? 0),\n\t\t\t0,\n\t\t),\n\t\tserializationReasons,\n\t\ttopSerializationReasons: topSerializationReasons(serializationReasons),\n\t};\n\n\treturn supplementalSummary\n\t\t? mergeToolSchedulingSummaries(summary, supplementalSummary)\n\t\t: summary;\n}\n\nfunction mergeToolSchedulingSummaries(\n\tleft: ToolSchedulingSummary,\n\tright: ToolSchedulingSummary,\n): ToolSchedulingSummary {\n\tconst serializationReasons = {\n\t\t...left.serializationReasons,\n\t};\n\tfor (const [reason, count] of Object.entries(right.serializationReasons)) {\n\t\tserializationReasons[reason] = (serializationReasons[reason] ?? 0) + count;\n\t}\n\n\treturn {\n\t\tmodelToolCallCount: left.modelToolCallCount + right.modelToolCallCount,\n\t\tmodelEmittedToolCallCount:\n\t\t\tleft.modelEmittedToolCallCount + right.modelEmittedToolCallCount,\n\t\tschedulableWaveCount:\n\t\t\tleft.schedulableWaveCount + right.schedulableWaveCount,\n\t\tparallelizedCallCount:\n\t\t\tleft.parallelizedCallCount + right.parallelizedCallCount,\n\t\tactuallyParallelizedCallCount:\n\t\t\tleft.actuallyParallelizedCallCount + right.actuallyParallelizedCallCount,\n\t\tserializedCallCount: left.serializedCallCount + right.serializedCallCount,\n\t\tdelayedCallCount: left.delayedCallCount + right.delayedCallCount,\n\t\tblockedByMutationCount:\n\t\t\tleft.blockedByMutationCount + right.blockedByMutationCount,\n\t\tmcpOptInCallCount: left.mcpOptInCallCount + right.mcpOptInCallCount,\n\t\tmcpOptInUseCount: left.mcpOptInUseCount + right.mcpOptInUseCount,\n\t\tcacheHitCount: left.cacheHitCount + right.cacheHitCount,\n\t\ttotalToolWaitMs: left.totalToolWaitMs + right.totalToolWaitMs,\n\t\ttoolWaitTimeMs: left.toolWaitTimeMs + right.toolWaitTimeMs,\n\t\tserializationReasons,\n\t\ttopSerializationReasons: topSerializationReasons(serializationReasons),\n\t};\n}\n\nfunction mergeSerializationReasons(\n\tsummaries: ToolPhaseSummary[],\n): Record<string, number> {\n\tconst reasons: Record<string, number> = {};\n\tfor (const summary of summaries) {\n\t\tfor (const [reason, count] of Object.entries(\n\t\t\tsummary.serializationReasons ?? {},\n\t\t)) {\n\t\t\treasons[reason] = (reasons[reason] ?? 0) + count;\n\t\t}\n\t}\n\treturn reasons;\n}\n\nfunction topSerializationReasons(\n\treasons: Record<string, number>,\n): SerializationReasonCount[] {\n\treturn Object.entries(reasons)\n\t\t.map(([reason, count]) => ({ reason, count }))\n\t\t.sort((left, right) => right.count - left.count);\n}\n\nfunction hasTokenUsage(tokens: TokenUsage): boolean {\n\treturn (\n\t\ttokens.input > 0 ||\n\t\ttokens.output > 0 ||\n\t\ttokens.cacheRead > 0 ||\n\t\ttokens.cacheWrite > 0\n\t);\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Convenience Functions\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Create a new turn collector for a session.\n */\nexport function createTurnCollector(\n\tsessionId: string,\n\tturnNumber: number,\n\tconfig?: Partial<TailSamplingConfig>,\n\trecorder?: TelemetryRecorder,\n): TurnCollector {\n\treturn new TurnCollector(sessionId, turnNumber, config, recorder);\n}\n\n/**\n * Environment-based sampling config override.\n */\nexport function getSamplingConfigFromEnv(): Partial<TailSamplingConfig> {\n\tconst config: Partial<TailSamplingConfig> = {};\n\n\tconst sampleRate = process.env.MAESTRO_WIDE_EVENT_SAMPLE_RATE;\n\tif (sampleRate) {\n\t\tconst rate = Number.parseFloat(sampleRate);\n\t\tif (!Number.isNaN(rate) && rate >= 0 && rate <= 1) {\n\t\t\tconfig.successSampleRate = rate;\n\t\t}\n\t}\n\n\tconst slowThreshold = process.env.MAESTRO_WIDE_EVENT_SLOW_THRESHOLD_MS;\n\tif (slowThreshold) {\n\t\tconst threshold = Number.parseInt(slowThreshold, 10);\n\t\tif (!Number.isNaN(threshold) && threshold > 0) {\n\t\t\tconfig.slowThresholdMs = threshold;\n\t\t}\n\t}\n\n\treturn config;\n}\n"]}
|
package/dist/theme/theme.d.ts
CHANGED
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Theme System for Maestro
|
|
3
|
-
*
|
|
4
|
-
* Adapted from pi-mono (MIT License)
|
|
5
|
-
* Copyright (c) 2025 Mario Zechner
|
|
6
|
-
* https://github.com/badlogic/pi-mono
|
|
7
|
-
*/
|
|
8
|
-
import type { EditorTheme, MarkdownTheme, SelectListTheme } from "@evalops/tui";
|
|
9
1
|
import { type ColorMode } from "./color-utils.js";
|
|
10
2
|
import type { ThemeBg, ThemeColor } from "./theme-schema.js";
|
|
3
|
+
import type { EditorTheme, MarkdownTheme, SelectListTheme } from "./tui-theme-types.js";
|
|
4
|
+
export type { EditorTheme, MarkdownTheme, SelectListTheme, } from "./tui-theme-types.js";
|
|
11
5
|
export type { ThemeBg, ThemeColor } from "./theme-schema.js";
|
|
12
6
|
export { getAvailableThemes } from "./theme-loader.js";
|
|
13
7
|
export declare class Theme {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/theme/theme.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/theme/theme.ts"],"names":[],"mappings":"AASA,OAAO,EACN,KAAK,SAAS,EAId,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAa,MAAM,mBAAmB,CAAC;AAOxE,OAAO,KAAK,EACX,WAAW,EACX,aAAa,EACb,eAAe,EACf,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACX,WAAW,EACX,aAAa,EACb,eAAe,GACf,MAAM,sBAAsB,CAAC;AAM9B,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAMvD,qBAAa,KAAK;IACjB,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,IAAI,CAAY;gBAGvB,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC,EAC7C,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,EAC1C,IAAI,EAAE,SAAS;IAmBhB,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAM3C,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAMxC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI1B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI5B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI/B,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM;IAMpC,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAMjC,YAAY,IAAI,SAAS;IAIzB,sBAAsB,CACrB,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAClD,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM;CAiB1B;AAgDD,eAAO,IAAI,KAAK,EAAE,KAA0B,CAAC;AAsB7C,wBAAgB,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAYlD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAkB3E;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAExD;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,wBAAgB,gBAAgB,IAAI,aAAa,CAEhD;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAEpD;AAED,wBAAgB,cAAc,IAAI,WAAW,CAE5C"}
|
package/dist/theme/theme.js
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Theme System for Maestro
|
|
3
|
+
*
|
|
4
|
+
* Adapted from pi-mono (MIT License)
|
|
5
|
+
* Copyright (c) 2025 Mario Zechner
|
|
6
|
+
* https://github.com/badlogic/pi-mono
|
|
7
|
+
*/
|
|
1
8
|
import chalk from "chalk";
|
|
2
9
|
import { sanitizeWithStaticMask } from "../utils/secret-redactor.js";
|
|
3
10
|
import { bgAnsi, detectColorMode, fgAnsi, } from "./color-utils.js";
|
package/dist/theme/theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/theme/theme.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Theme System for Maestro\n *\n * Adapted from pi-mono (MIT License)\n * Copyright (c) 2025 Mario Zechner\n * https://github.com/badlogic/pi-mono\n */\nimport type { EditorTheme, MarkdownTheme, SelectListTheme } from \"@evalops/tui\";\nimport chalk from \"chalk\";\nimport { sanitizeWithStaticMask } from \"../utils/secret-redactor.js\";\nimport {\n\ttype ColorMode,\n\tbgAnsi,\n\tdetectColorMode,\n\tfgAnsi,\n} from \"./color-utils.js\";\nimport { embeddedThemes, loadThemeJson } from \"./theme-loader.js\";\nimport { resolveThemePalette } from \"./theme-resolver.js\";\nimport type { ThemeBg, ThemeColor, ThemeJson } from \"./theme-schema.js\";\nimport { startThemeWatcher } from \"./theme-watcher.js\";\nimport {\n\tcreateEditorTheme,\n\tcreateMarkdownTheme,\n\tcreateSelectListTheme,\n} from \"./tui-theme-helpers.js\";\n\n// ============================================================================\n// Types & Schema\n// ============================================================================\n\nexport type { ThemeBg, ThemeColor } from \"./theme-schema.js\";\nexport { getAvailableThemes } from \"./theme-loader.js\";\n\n// ============================================================================\n// Theme Class\n// ============================================================================\n\nexport class Theme {\n\tprivate fgColors: Map<ThemeColor, string>;\n\tprivate bgColors: Map<ThemeBg, string>;\n\tprivate mode: ColorMode;\n\n\tconstructor(\n\t\tfgColors: Record<ThemeColor, string | number>,\n\t\tbgColors: Record<ThemeBg, string | number>,\n\t\tmode: ColorMode,\n\t) {\n\t\tthis.mode = mode;\n\t\tthis.fgColors = new Map();\n\t\tfor (const [key, value] of Object.entries(fgColors) as [\n\t\t\tThemeColor,\n\t\t\tstring | number,\n\t\t][]) {\n\t\t\tthis.fgColors.set(key, fgAnsi(value, mode));\n\t\t}\n\t\tthis.bgColors = new Map();\n\t\tfor (const [key, value] of Object.entries(bgColors) as [\n\t\t\tThemeBg,\n\t\t\tstring | number,\n\t\t][]) {\n\t\t\tthis.bgColors.set(key, bgAnsi(value, mode));\n\t\t}\n\t}\n\n\tfg(color: ThemeColor, text: string): string {\n\t\tconst ansi = this.fgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme color: ${color}`);\n\t\treturn `${ansi}${text}\\x1b[39m`; // Reset only foreground color\n\t}\n\n\tbg(color: ThemeBg, text: string): string {\n\t\tconst ansi = this.bgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme background color: ${color}`);\n\t\treturn `${ansi}${text}\\x1b[49m`; // Reset only background color\n\t}\n\n\tbold(text: string): string {\n\t\treturn chalk.bold(text);\n\t}\n\n\titalic(text: string): string {\n\t\treturn chalk.italic(text);\n\t}\n\n\tunderline(text: string): string {\n\t\treturn chalk.underline(text);\n\t}\n\n\tgetFgAnsi(color: ThemeColor): string {\n\t\tconst ansi = this.fgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme color: ${color}`);\n\t\treturn ansi;\n\t}\n\n\tgetBgAnsi(color: ThemeBg): string {\n\t\tconst ansi = this.bgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme background color: ${color}`);\n\t\treturn ansi;\n\t}\n\n\tgetColorMode(): ColorMode {\n\t\treturn this.mode;\n\t}\n\n\tgetThinkingBorderColor(\n\t\tlevel: \"off\" | \"minimal\" | \"low\" | \"medium\" | \"high\",\n\t): (str: string) => string {\n\t\t// Map thinking levels to dedicated theme colors\n\t\tswitch (level) {\n\t\t\tcase \"off\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingOff\", str);\n\t\t\tcase \"minimal\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingMinimal\", str);\n\t\t\tcase \"low\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingLow\", str);\n\t\t\tcase \"medium\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingMedium\", str);\n\t\t\tcase \"high\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingHigh\", str);\n\t\t\tdefault:\n\t\t\t\treturn (str: string) => this.fg(\"thinkingOff\", str);\n\t\t}\n\t}\n}\n\n// ============================================================================\n// Theme Loading\n// ============================================================================\n\nfunction createTheme(themeJson: ThemeJson, mode?: ColorMode): Theme {\n\tconst palette = resolveThemePalette(themeJson, mode);\n\treturn new Theme(palette.fgColors, palette.bgColors, palette.mode);\n}\n\nfunction loadTheme(name: string, mode?: ColorMode): Theme {\n\tconst themeJson = loadThemeJson(name);\n\treturn createTheme(themeJson, mode);\n}\n\nfunction detectTerminalBackground(): \"dark\" | \"light\" {\n\tconst colorfgbg = process.env.COLORFGBG || \"\";\n\tif (colorfgbg) {\n\t\tconst parts = colorfgbg.split(\";\");\n\t\tif (parts.length >= 2 && parts[1] !== undefined) {\n\t\t\tconst bg = Number.parseInt(parts[1], 10);\n\t\t\tif (!Number.isNaN(bg)) {\n\t\t\t\tconst result = bg < 8 ? \"dark\" : \"light\";\n\t\t\t\treturn result;\n\t\t\t}\n\t\t}\n\t}\n\treturn \"dark\";\n}\n\nfunction getDefaultTheme(): string {\n\treturn detectTerminalBackground();\n}\n\n// ============================================================================\n// Global Theme Instance\n// ============================================================================\n\nfunction loadInitialTheme(): Theme {\n\ttry {\n\t\treturn loadTheme(\"dark\");\n\t} catch (error) {\n\t\treturn createTheme(embeddedThemes.dark, detectColorMode());\n\t}\n}\n\n// Initialize theme with dark as default\nexport let theme: Theme = loadInitialTheme();\nlet currentThemeName: string | undefined;\nlet onThemeChangeCallback: (() => void) | undefined;\n\nfunction getWatcherCallbacks() {\n\treturn {\n\t\treloadTheme(name: string) {\n\t\t\ttheme = loadTheme(name);\n\t\t\tif (onThemeChangeCallback) {\n\t\t\t\tonThemeChangeCallback();\n\t\t\t}\n\t\t},\n\t\thandleThemeDeleted() {\n\t\t\tcurrentThemeName = \"dark\";\n\t\t\ttheme = loadTheme(\"dark\");\n\t\t\tif (onThemeChangeCallback) {\n\t\t\t\tonThemeChangeCallback();\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport function initTheme(themeName?: string): void {\n\tconst name = themeName ?? getDefaultTheme();\n\tcurrentThemeName = name;\n\ttry {\n\t\ttheme = loadTheme(name);\n\t\tstartThemeWatcher(currentThemeName, getWatcherCallbacks());\n\t} catch (error) {\n\t\t// Theme is invalid - fall back to dark theme silently\n\t\tcurrentThemeName = \"dark\";\n\t\ttheme = loadTheme(\"dark\");\n\t\t// Don't start watcher for fallback theme\n\t}\n}\n\nexport function setTheme(name: string): { success: boolean; error?: string } {\n\tcurrentThemeName = name;\n\ttry {\n\t\ttheme = loadTheme(name);\n\t\tstartThemeWatcher(currentThemeName, getWatcherCallbacks());\n\t\treturn { success: true };\n\t} catch (error) {\n\t\t// Theme is invalid - fall back to dark theme\n\t\tcurrentThemeName = \"dark\";\n\t\ttheme = loadTheme(\"dark\");\n\t\t// Don't start watcher for fallback theme\n\t\treturn {\n\t\t\tsuccess: false,\n\t\t\terror: sanitizeWithStaticMask(\n\t\t\t\terror instanceof Error ? error.message : String(error),\n\t\t\t),\n\t\t};\n\t}\n}\n\nexport function onThemeChange(callback: () => void): void {\n\tonThemeChangeCallback = callback;\n}\n\nexport function getCurrentThemeName(): string {\n\treturn currentThemeName ?? \"dark\";\n}\n\nexport { stopThemeWatcher } from \"./theme-watcher.js\";\n\n// ============================================================================\n// TUI Helpers (delegating to pure functions)\n// ============================================================================\n\nexport function getMarkdownTheme(): MarkdownTheme {\n\treturn createMarkdownTheme(theme);\n}\n\nexport function getSelectListTheme(): SelectListTheme {\n\treturn createSelectListTheme(theme);\n}\n\nexport function getEditorTheme(): EditorTheme {\n\treturn createEditorTheme(theme);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/theme/theme.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Theme System for Maestro\n *\n * Adapted from pi-mono (MIT License)\n * Copyright (c) 2025 Mario Zechner\n * https://github.com/badlogic/pi-mono\n */\nimport chalk from \"chalk\";\nimport { sanitizeWithStaticMask } from \"../utils/secret-redactor.js\";\nimport {\n\ttype ColorMode,\n\tbgAnsi,\n\tdetectColorMode,\n\tfgAnsi,\n} from \"./color-utils.js\";\nimport { embeddedThemes, loadThemeJson } from \"./theme-loader.js\";\nimport { resolveThemePalette } from \"./theme-resolver.js\";\nimport type { ThemeBg, ThemeColor, ThemeJson } from \"./theme-schema.js\";\nimport { startThemeWatcher } from \"./theme-watcher.js\";\nimport {\n\tcreateEditorTheme,\n\tcreateMarkdownTheme,\n\tcreateSelectListTheme,\n} from \"./tui-theme-helpers.js\";\nimport type {\n\tEditorTheme,\n\tMarkdownTheme,\n\tSelectListTheme,\n} from \"./tui-theme-types.js\";\n\nexport type {\n\tEditorTheme,\n\tMarkdownTheme,\n\tSelectListTheme,\n} from \"./tui-theme-types.js\";\n\n// ============================================================================\n// Types & Schema\n// ============================================================================\n\nexport type { ThemeBg, ThemeColor } from \"./theme-schema.js\";\nexport { getAvailableThemes } from \"./theme-loader.js\";\n\n// ============================================================================\n// Theme Class\n// ============================================================================\n\nexport class Theme {\n\tprivate fgColors: Map<ThemeColor, string>;\n\tprivate bgColors: Map<ThemeBg, string>;\n\tprivate mode: ColorMode;\n\n\tconstructor(\n\t\tfgColors: Record<ThemeColor, string | number>,\n\t\tbgColors: Record<ThemeBg, string | number>,\n\t\tmode: ColorMode,\n\t) {\n\t\tthis.mode = mode;\n\t\tthis.fgColors = new Map();\n\t\tfor (const [key, value] of Object.entries(fgColors) as [\n\t\t\tThemeColor,\n\t\t\tstring | number,\n\t\t][]) {\n\t\t\tthis.fgColors.set(key, fgAnsi(value, mode));\n\t\t}\n\t\tthis.bgColors = new Map();\n\t\tfor (const [key, value] of Object.entries(bgColors) as [\n\t\t\tThemeBg,\n\t\t\tstring | number,\n\t\t][]) {\n\t\t\tthis.bgColors.set(key, bgAnsi(value, mode));\n\t\t}\n\t}\n\n\tfg(color: ThemeColor, text: string): string {\n\t\tconst ansi = this.fgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme color: ${color}`);\n\t\treturn `${ansi}${text}\\x1b[39m`; // Reset only foreground color\n\t}\n\n\tbg(color: ThemeBg, text: string): string {\n\t\tconst ansi = this.bgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme background color: ${color}`);\n\t\treturn `${ansi}${text}\\x1b[49m`; // Reset only background color\n\t}\n\n\tbold(text: string): string {\n\t\treturn chalk.bold(text);\n\t}\n\n\titalic(text: string): string {\n\t\treturn chalk.italic(text);\n\t}\n\n\tunderline(text: string): string {\n\t\treturn chalk.underline(text);\n\t}\n\n\tgetFgAnsi(color: ThemeColor): string {\n\t\tconst ansi = this.fgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme color: ${color}`);\n\t\treturn ansi;\n\t}\n\n\tgetBgAnsi(color: ThemeBg): string {\n\t\tconst ansi = this.bgColors.get(color);\n\t\tif (!ansi) throw new Error(`Unknown theme background color: ${color}`);\n\t\treturn ansi;\n\t}\n\n\tgetColorMode(): ColorMode {\n\t\treturn this.mode;\n\t}\n\n\tgetThinkingBorderColor(\n\t\tlevel: \"off\" | \"minimal\" | \"low\" | \"medium\" | \"high\",\n\t): (str: string) => string {\n\t\t// Map thinking levels to dedicated theme colors\n\t\tswitch (level) {\n\t\t\tcase \"off\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingOff\", str);\n\t\t\tcase \"minimal\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingMinimal\", str);\n\t\t\tcase \"low\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingLow\", str);\n\t\t\tcase \"medium\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingMedium\", str);\n\t\t\tcase \"high\":\n\t\t\t\treturn (str: string) => this.fg(\"thinkingHigh\", str);\n\t\t\tdefault:\n\t\t\t\treturn (str: string) => this.fg(\"thinkingOff\", str);\n\t\t}\n\t}\n}\n\n// ============================================================================\n// Theme Loading\n// ============================================================================\n\nfunction createTheme(themeJson: ThemeJson, mode?: ColorMode): Theme {\n\tconst palette = resolveThemePalette(themeJson, mode);\n\treturn new Theme(palette.fgColors, palette.bgColors, palette.mode);\n}\n\nfunction loadTheme(name: string, mode?: ColorMode): Theme {\n\tconst themeJson = loadThemeJson(name);\n\treturn createTheme(themeJson, mode);\n}\n\nfunction detectTerminalBackground(): \"dark\" | \"light\" {\n\tconst colorfgbg = process.env.COLORFGBG || \"\";\n\tif (colorfgbg) {\n\t\tconst parts = colorfgbg.split(\";\");\n\t\tif (parts.length >= 2 && parts[1] !== undefined) {\n\t\t\tconst bg = Number.parseInt(parts[1], 10);\n\t\t\tif (!Number.isNaN(bg)) {\n\t\t\t\tconst result = bg < 8 ? \"dark\" : \"light\";\n\t\t\t\treturn result;\n\t\t\t}\n\t\t}\n\t}\n\treturn \"dark\";\n}\n\nfunction getDefaultTheme(): string {\n\treturn detectTerminalBackground();\n}\n\n// ============================================================================\n// Global Theme Instance\n// ============================================================================\n\nfunction loadInitialTheme(): Theme {\n\ttry {\n\t\treturn loadTheme(\"dark\");\n\t} catch (error) {\n\t\treturn createTheme(embeddedThemes.dark, detectColorMode());\n\t}\n}\n\n// Initialize theme with dark as default\nexport let theme: Theme = loadInitialTheme();\nlet currentThemeName: string | undefined;\nlet onThemeChangeCallback: (() => void) | undefined;\n\nfunction getWatcherCallbacks() {\n\treturn {\n\t\treloadTheme(name: string) {\n\t\t\ttheme = loadTheme(name);\n\t\t\tif (onThemeChangeCallback) {\n\t\t\t\tonThemeChangeCallback();\n\t\t\t}\n\t\t},\n\t\thandleThemeDeleted() {\n\t\t\tcurrentThemeName = \"dark\";\n\t\t\ttheme = loadTheme(\"dark\");\n\t\t\tif (onThemeChangeCallback) {\n\t\t\t\tonThemeChangeCallback();\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport function initTheme(themeName?: string): void {\n\tconst name = themeName ?? getDefaultTheme();\n\tcurrentThemeName = name;\n\ttry {\n\t\ttheme = loadTheme(name);\n\t\tstartThemeWatcher(currentThemeName, getWatcherCallbacks());\n\t} catch (error) {\n\t\t// Theme is invalid - fall back to dark theme silently\n\t\tcurrentThemeName = \"dark\";\n\t\ttheme = loadTheme(\"dark\");\n\t\t// Don't start watcher for fallback theme\n\t}\n}\n\nexport function setTheme(name: string): { success: boolean; error?: string } {\n\tcurrentThemeName = name;\n\ttry {\n\t\ttheme = loadTheme(name);\n\t\tstartThemeWatcher(currentThemeName, getWatcherCallbacks());\n\t\treturn { success: true };\n\t} catch (error) {\n\t\t// Theme is invalid - fall back to dark theme\n\t\tcurrentThemeName = \"dark\";\n\t\ttheme = loadTheme(\"dark\");\n\t\t// Don't start watcher for fallback theme\n\t\treturn {\n\t\t\tsuccess: false,\n\t\t\terror: sanitizeWithStaticMask(\n\t\t\t\terror instanceof Error ? error.message : String(error),\n\t\t\t),\n\t\t};\n\t}\n}\n\nexport function onThemeChange(callback: () => void): void {\n\tonThemeChangeCallback = callback;\n}\n\nexport function getCurrentThemeName(): string {\n\treturn currentThemeName ?? \"dark\";\n}\n\nexport { stopThemeWatcher } from \"./theme-watcher.js\";\n\n// ============================================================================\n// TUI Helpers (delegating to pure functions)\n// ============================================================================\n\nexport function getMarkdownTheme(): MarkdownTheme {\n\treturn createMarkdownTheme(theme);\n}\n\nexport function getSelectListTheme(): SelectListTheme {\n\treturn createSelectListTheme(theme);\n}\n\nexport function getEditorTheme(): EditorTheme {\n\treturn createEditorTheme(theme);\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type { EditorTheme, MarkdownTheme, SelectListTheme } from "@evalops/tui";
|
|
2
1
|
import type { Theme } from "./theme.js";
|
|
2
|
+
import type { EditorTheme, MarkdownTheme, SelectListTheme } from "./tui-theme-types.js";
|
|
3
|
+
export type { EditorTheme, MarkdownTheme, SelectListTheme, } from "./tui-theme-types.js";
|
|
3
4
|
export declare function createMarkdownTheme(t: Theme): MarkdownTheme;
|
|
4
5
|
export declare function createSelectListTheme(t: Theme): SelectListTheme;
|
|
5
6
|
export declare function createEditorTheme(t: Theme): EditorTheme;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui-theme-helpers.d.ts","sourceRoot":"","sources":["../../src/theme/tui-theme-helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tui-theme-helpers.d.ts","sourceRoot":"","sources":["../../src/theme/tui-theme-helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EACX,WAAW,EACX,aAAa,EACb,eAAe,EACf,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACX,WAAW,EACX,aAAa,EACb,eAAe,GACf,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,KAAK,GAAG,aAAa,CAiB3D;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,KAAK,GAAG,eAAe,CAQ/D;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,KAAK,GAAG,WAAW,CAKvD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui-theme-helpers.js","sourceRoot":"","sources":["../../src/theme/tui-theme-helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tui-theme-helpers.js","sourceRoot":"","sources":["../../src/theme/tui-theme-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,MAAM,UAAU,mBAAmB,CAAC,CAAQ;IAC3C,OAAO;QACN,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC;QAClD,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;QAC5C,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC;QAClD,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;QAC5C,SAAS,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC;QACtD,eAAe,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAAC;QAClE,KAAK,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC;QAC9C,WAAW,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC;QAC1D,EAAE,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;QACxC,UAAU,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC;QACxD,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACpC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzD,SAAS,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;QAC9C,aAAa,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;KAC1D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,CAAQ;IAC7C,OAAO;QACN,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;QACtD,YAAY,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;QACpD,WAAW,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC;QAClD,UAAU,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC;QACjD,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC;KAC9C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,CAAQ;IACzC,OAAO;QACN,WAAW,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC;QACxD,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAC;KACpC,CAAC;AACH,CAAC","sourcesContent":["import chalk from \"chalk\";\nimport type { Theme } from \"./theme.js\";\nimport type {\n\tEditorTheme,\n\tMarkdownTheme,\n\tSelectListTheme,\n} from \"./tui-theme-types.js\";\n\nexport type {\n\tEditorTheme,\n\tMarkdownTheme,\n\tSelectListTheme,\n} from \"./tui-theme-types.js\";\n\nexport function createMarkdownTheme(t: Theme): MarkdownTheme {\n\treturn {\n\t\theading: (text: string) => t.fg(\"mdHeading\", text),\n\t\tlink: (text: string) => t.fg(\"mdLink\", text),\n\t\tlinkUrl: (text: string) => t.fg(\"mdLinkUrl\", text),\n\t\tcode: (text: string) => t.fg(\"mdCode\", text),\n\t\tcodeBlock: (text: string) => t.fg(\"mdCodeBlock\", text),\n\t\tcodeBlockBorder: (text: string) => t.fg(\"mdCodeBlockBorder\", text),\n\t\tquote: (text: string) => t.fg(\"mdQuote\", text),\n\t\tquoteBorder: (text: string) => t.fg(\"mdQuoteBorder\", text),\n\t\thr: (text: string) => t.fg(\"mdHr\", text),\n\t\tlistBullet: (text: string) => t.fg(\"mdListBullet\", text),\n\t\tbold: (text: string) => t.bold(text),\n\t\titalic: (text: string) => t.fg(\"mdQuote\", t.italic(text)),\n\t\tunderline: (text: string) => t.underline(text),\n\t\tstrikethrough: (text: string) => chalk.strikethrough(text),\n\t};\n}\n\nexport function createSelectListTheme(t: Theme): SelectListTheme {\n\treturn {\n\t\tselectedPrefix: (text: string) => t.fg(\"accent\", text),\n\t\tselectedText: (text: string) => t.fg(\"accent\", text),\n\t\tdescription: (text: string) => t.fg(\"muted\", text),\n\t\tscrollInfo: (text: string) => t.fg(\"muted\", text),\n\t\tnoMatch: (text: string) => t.fg(\"muted\", text),\n\t};\n}\n\nexport function createEditorTheme(t: Theme): EditorTheme {\n\treturn {\n\t\tborderColor: (text: string) => t.fg(\"borderMuted\", text),\n\t\tselectList: createSelectListTheme(t),\n\t};\n}\n"]}
|