pulseed 0.6.1 → 0.6.3
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 -1
- package/dist/adapters/agents/claude-api.d.ts +2 -2
- package/dist/adapters/agents/claude-api.d.ts.map +1 -1
- package/dist/adapters/agents/claude-api.js +3 -2
- package/dist/adapters/agents/claude-api.js.map +1 -1
- package/dist/adapters/agents/openai-codex.d.ts +3 -0
- package/dist/adapters/agents/openai-codex.d.ts.map +1 -1
- package/dist/adapters/agents/openai-codex.js +5 -0
- package/dist/adapters/agents/openai-codex.js.map +1 -1
- package/dist/adapters/datasources/artifact-metric-datasource.d.ts +3 -0
- package/dist/adapters/datasources/artifact-metric-datasource.d.ts.map +1 -1
- package/dist/adapters/datasources/artifact-metric-datasource.js +20 -1
- package/dist/adapters/datasources/artifact-metric-datasource.js.map +1 -1
- package/dist/adapters/types/a2a.d.ts +24 -24
- package/dist/base/config/global-config.d.ts +4 -4
- package/dist/base/llm/codex-llm-client.d.ts +3 -0
- package/dist/base/llm/codex-llm-client.d.ts.map +1 -1
- package/dist/base/llm/codex-llm-client.js +71 -7
- package/dist/base/llm/codex-llm-client.js.map +1 -1
- package/dist/base/llm/llm-client.d.ts +2 -0
- package/dist/base/llm/llm-client.d.ts.map +1 -1
- package/dist/base/llm/llm-client.js +2 -2
- package/dist/base/llm/llm-client.js.map +1 -1
- package/dist/base/llm/ollama-client.d.ts.map +1 -1
- package/dist/base/llm/ollama-client.js +12 -0
- package/dist/base/llm/ollama-client.js.map +1 -1
- package/dist/base/llm/openai-client.d.ts +4 -0
- package/dist/base/llm/openai-client.d.ts.map +1 -1
- package/dist/base/llm/openai-client.js +29 -15
- package/dist/base/llm/openai-client.js.map +1 -1
- package/dist/base/llm/provider-config.d.ts +12 -2
- package/dist/base/llm/provider-config.d.ts.map +1 -1
- package/dist/base/llm/provider-config.js +46 -5
- package/dist/base/llm/provider-config.js.map +1 -1
- package/dist/base/llm/provider-factory.d.ts +1 -1
- package/dist/base/llm/provider-factory.d.ts.map +1 -1
- package/dist/base/llm/provider-factory.js +7 -2
- package/dist/base/llm/provider-factory.js.map +1 -1
- package/dist/base/state/state-manager-goal-write.d.ts +1 -1
- package/dist/base/state/state-manager-goal-write.d.ts.map +1 -1
- package/dist/base/state/state-manager.d.ts +2 -6
- package/dist/base/state/state-manager.d.ts.map +1 -1
- package/dist/base/state/state-manager.js.map +1 -1
- package/dist/base/state/state-write-fence.d.ts +7 -0
- package/dist/base/state/state-write-fence.d.ts.map +1 -0
- package/dist/base/state/state-write-fence.js +2 -0
- package/dist/base/state/state-write-fence.js.map +1 -0
- package/dist/base/types/companion.d.ts +2 -0
- package/dist/base/types/companion.d.ts.map +1 -0
- package/dist/base/types/companion.js +2 -0
- package/dist/base/types/companion.js.map +1 -0
- package/dist/base/types/core.d.ts +1 -1
- package/dist/base/types/core.d.ts.map +1 -1
- package/dist/base/types/core.js +1 -0
- package/dist/base/types/core.js.map +1 -1
- package/dist/base/types/index.d.ts +1 -0
- package/dist/base/types/index.d.ts.map +1 -1
- package/dist/base/types/index.js +1 -0
- package/dist/base/types/index.js.map +1 -1
- package/dist/base/utils/execFileNoThrow.d.ts +4 -0
- package/dist/base/utils/execFileNoThrow.d.ts.map +1 -1
- package/dist/base/utils/execFileNoThrow.js +81 -2
- package/dist/base/utils/execFileNoThrow.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/interface/chat/chat-event-state.d.ts +2 -0
- package/dist/interface/chat/chat-event-state.d.ts.map +1 -1
- package/dist/interface/chat/chat-event-state.js +28 -11
- package/dist/interface/chat/chat-event-state.js.map +1 -1
- package/dist/interface/chat/chat-events.d.ts +9 -1
- package/dist/interface/chat/chat-events.d.ts.map +1 -1
- package/dist/interface/chat/chat-history.d.ts +4739 -1
- package/dist/interface/chat/chat-history.d.ts.map +1 -1
- package/dist/interface/chat/chat-history.js +40 -2
- package/dist/interface/chat/chat-history.js.map +1 -1
- package/dist/interface/chat/chat-runner-command-helpers.d.ts +1 -0
- package/dist/interface/chat/chat-runner-command-helpers.d.ts.map +1 -1
- package/dist/interface/chat/chat-runner-command-helpers.js +1 -0
- package/dist/interface/chat/chat-runner-command-helpers.js.map +1 -1
- package/dist/interface/chat/chat-runner-commands.d.ts +4 -32
- package/dist/interface/chat/chat-runner-commands.d.ts.map +1 -1
- package/dist/interface/chat/chat-runner-commands.js +156 -7
- package/dist/interface/chat/chat-runner-commands.js.map +1 -1
- package/dist/interface/chat/chat-runner-contracts.d.ts +153 -0
- package/dist/interface/chat/chat-runner-contracts.d.ts.map +1 -0
- package/dist/interface/chat/chat-runner-contracts.js +2 -0
- package/dist/interface/chat/chat-runner-contracts.js.map +1 -0
- package/dist/interface/chat/chat-runner-event-bridge.d.ts +8 -2
- package/dist/interface/chat/chat-runner-event-bridge.d.ts.map +1 -1
- package/dist/interface/chat/chat-runner-event-bridge.js +76 -11
- package/dist/interface/chat/chat-runner-event-bridge.js.map +1 -1
- package/dist/interface/chat/chat-runner-routes.d.ts +66 -12
- package/dist/interface/chat/chat-runner-routes.d.ts.map +1 -1
- package/dist/interface/chat/chat-runner-routes.js +322 -30
- package/dist/interface/chat/chat-runner-routes.js.map +1 -1
- package/dist/interface/chat/chat-runner-runtime.d.ts +1 -1
- package/dist/interface/chat/chat-runner-runtime.d.ts.map +1 -1
- package/dist/interface/chat/chat-runner-runtime.js +4 -0
- package/dist/interface/chat/chat-runner-runtime.js.map +1 -1
- package/dist/interface/chat/chat-runner.d.ts +11 -71
- package/dist/interface/chat/chat-runner.d.ts.map +1 -1
- package/dist/interface/chat/chat-runner.js +440 -58
- package/dist/interface/chat/chat-runner.js.map +1 -1
- package/dist/interface/chat/chat-session-store.d.ts +2 -0
- package/dist/interface/chat/chat-session-store.d.ts.map +1 -1
- package/dist/interface/chat/chat-session-store.js +3 -6
- package/dist/interface/chat/chat-session-store.js.map +1 -1
- package/dist/interface/chat/chat-state-service.d.ts +1 -0
- package/dist/interface/chat/chat-state-service.d.ts.map +1 -1
- package/dist/interface/chat/chat-state-service.js +1 -0
- package/dist/interface/chat/chat-state-service.js.map +1 -1
- package/dist/interface/chat/cross-platform-session-global.d.ts +2 -1
- package/dist/interface/chat/cross-platform-session-global.d.ts.map +1 -1
- package/dist/interface/chat/cross-platform-session-global.js +4 -10
- package/dist/interface/chat/cross-platform-session-global.js.map +1 -1
- package/dist/interface/chat/cross-platform-session.d.ts +30 -1
- package/dist/interface/chat/cross-platform-session.d.ts.map +1 -1
- package/dist/interface/chat/cross-platform-session.js +413 -52
- package/dist/interface/chat/cross-platform-session.js.map +1 -1
- package/dist/interface/chat/event-subscriber.js +2 -2
- package/dist/interface/chat/event-subscriber.js.map +1 -1
- package/dist/interface/chat/failure-recovery.js +1 -1
- package/dist/interface/chat/failure-recovery.js.map +1 -1
- package/dist/interface/chat/freeform-route-classifier.d.ts +5 -5
- package/dist/interface/chat/freeform-route-classifier.js +3 -2
- package/dist/interface/chat/freeform-route-classifier.js.map +1 -1
- package/dist/interface/chat/gateway-setup-status.d.ts +33 -0
- package/dist/interface/chat/gateway-setup-status.d.ts.map +1 -0
- package/dist/interface/chat/gateway-setup-status.js +44 -0
- package/dist/interface/chat/gateway-setup-status.js.map +1 -0
- package/dist/interface/chat/ingress-router.d.ts +22 -0
- package/dist/interface/chat/ingress-router.d.ts.map +1 -1
- package/dist/interface/chat/ingress-router.js +148 -11
- package/dist/interface/chat/ingress-router.js.map +1 -1
- package/dist/interface/chat/operation-progress.d.ts +17 -0
- package/dist/interface/chat/operation-progress.d.ts.map +1 -0
- package/dist/interface/chat/operation-progress.js +29 -0
- package/dist/interface/chat/operation-progress.js.map +1 -0
- package/dist/interface/chat/setup-config-write.d.ts +27 -0
- package/dist/interface/chat/setup-config-write.d.ts.map +1 -0
- package/dist/interface/chat/setup-config-write.js +79 -0
- package/dist/interface/chat/setup-config-write.js.map +1 -0
- package/dist/interface/chat/setup-dialogue.d.ts +199 -0
- package/dist/interface/chat/setup-dialogue.d.ts.map +1 -0
- package/dist/interface/chat/setup-dialogue.js +97 -0
- package/dist/interface/chat/setup-dialogue.js.map +1 -0
- package/dist/interface/chat/setup-secret-intake.d.ts +68 -0
- package/dist/interface/chat/setup-secret-intake.d.ts.map +1 -0
- package/dist/interface/chat/setup-secret-intake.js +84 -0
- package/dist/interface/chat/setup-secret-intake.js.map +1 -0
- package/dist/interface/chat/turn-language.d.ts +23 -0
- package/dist/interface/chat/turn-language.d.ts.map +1 -0
- package/dist/interface/chat/turn-language.js +46 -0
- package/dist/interface/chat/turn-language.js.map +1 -0
- package/dist/interface/cli/cli-command-registry.d.ts +1 -1
- package/dist/interface/cli/cli-command-registry.d.ts.map +1 -1
- package/dist/interface/cli/cli-runner.js +1 -1
- package/dist/interface/cli/cli-runner.js.map +1 -1
- package/dist/interface/cli/commands/config.d.ts.map +1 -1
- package/dist/interface/cli/commands/config.js +12 -1
- package/dist/interface/cli/commands/config.js.map +1 -1
- package/dist/interface/cli/commands/daemon.d.ts.map +1 -1
- package/dist/interface/cli/commands/daemon.js +62 -1
- package/dist/interface/cli/commands/daemon.js.map +1 -1
- package/dist/interface/cli/commands/doctor.d.ts +1 -0
- package/dist/interface/cli/commands/doctor.d.ts.map +1 -1
- package/dist/interface/cli/commands/doctor.js +69 -0
- package/dist/interface/cli/commands/doctor.js.map +1 -1
- package/dist/interface/cli/commands/goal-dispatch.d.ts.map +1 -1
- package/dist/interface/cli/commands/goal-dispatch.js +9 -1
- package/dist/interface/cli/commands/goal-dispatch.js.map +1 -1
- package/dist/interface/cli/commands/goal-raw.d.ts +1 -0
- package/dist/interface/cli/commands/goal-raw.d.ts.map +1 -1
- package/dist/interface/cli/commands/goal-raw.js +34 -2
- package/dist/interface/cli/commands/goal-raw.js.map +1 -1
- package/dist/interface/cli/commands/operator-binding-status.d.ts +59 -0
- package/dist/interface/cli/commands/operator-binding-status.d.ts.map +1 -0
- package/dist/interface/cli/commands/operator-binding-status.js +257 -0
- package/dist/interface/cli/commands/operator-binding-status.js.map +1 -0
- package/dist/interface/cli/commands/run.d.ts +2 -2
- package/dist/interface/cli/commands/run.d.ts.map +1 -1
- package/dist/interface/cli/commands/run.js.map +1 -1
- package/dist/interface/cli/commands/runtime.d.ts.map +1 -1
- package/dist/interface/cli/commands/runtime.js +8 -1
- package/dist/interface/cli/commands/runtime.js.map +1 -1
- package/dist/interface/cli/commands/setup/import/flow.d.ts.map +1 -1
- package/dist/interface/cli/commands/setup/import/flow.js +2 -0
- package/dist/interface/cli/commands/setup/import/flow.js.map +1 -1
- package/dist/interface/cli/commands/setup/import/provider.d.ts.map +1 -1
- package/dist/interface/cli/commands/setup/import/provider.js +5 -1
- package/dist/interface/cli/commands/setup/import/provider.js.map +1 -1
- package/dist/interface/cli/commands/setup/import/types.d.ts +1 -0
- package/dist/interface/cli/commands/setup/import/types.d.ts.map +1 -1
- package/dist/interface/cli/commands/setup/steps-gateway.js +14 -3
- package/dist/interface/cli/commands/setup/steps-gateway.js.map +1 -1
- package/dist/interface/cli/commands/setup-shared.d.ts +2 -0
- package/dist/interface/cli/commands/setup-shared.d.ts.map +1 -1
- package/dist/interface/cli/commands/setup-shared.js +4 -1
- package/dist/interface/cli/commands/setup-shared.js.map +1 -1
- package/dist/interface/cli/commands/setup-wizard.d.ts +33 -0
- package/dist/interface/cli/commands/setup-wizard.d.ts.map +1 -1
- package/dist/interface/cli/commands/setup-wizard.js +124 -4
- package/dist/interface/cli/commands/setup-wizard.js.map +1 -1
- package/dist/interface/cli/commands/setup.d.ts.map +1 -1
- package/dist/interface/cli/commands/setup.js +13 -1
- package/dist/interface/cli/commands/setup.js.map +1 -1
- package/dist/interface/cli/commands/telegram.d.ts.map +1 -1
- package/dist/interface/cli/commands/telegram.js +27 -3
- package/dist/interface/cli/commands/telegram.js.map +1 -1
- package/dist/interface/cli/setup.d.ts +3 -3
- package/dist/interface/cli/setup.d.ts.map +1 -1
- package/dist/interface/cli/setup.js +3 -2
- package/dist/interface/cli/setup.js.map +1 -1
- package/dist/interface/cli/utils/loop-runner.d.ts +1 -1
- package/dist/interface/cli/utils/loop-runner.d.ts.map +1 -1
- package/dist/interface/cli/utils.js +1 -1
- package/dist/interface/tui/actions.d.ts.map +1 -1
- package/dist/interface/tui/actions.js +14 -6
- package/dist/interface/tui/actions.js.map +1 -1
- package/dist/interface/tui/app.d.ts +1 -7
- package/dist/interface/tui/app.d.ts.map +1 -1
- package/dist/interface/tui/app.js +71 -120
- package/dist/interface/tui/app.js.map +1 -1
- package/dist/interface/tui/chat/suggestions.js +1 -1
- package/dist/interface/tui/chat/suggestions.js.map +1 -1
- package/dist/interface/tui/chat-surface.d.ts +1 -0
- package/dist/interface/tui/chat-surface.d.ts.map +1 -1
- package/dist/interface/tui/chat-surface.js +15 -0
- package/dist/interface/tui/chat-surface.js.map +1 -1
- package/dist/interface/tui/entry-approval.js +2 -2
- package/dist/interface/tui/entry-approval.js.map +1 -1
- package/dist/interface/tui/entry-deps.d.ts +1 -1
- package/dist/interface/tui/entry-deps.d.ts.map +1 -1
- package/dist/interface/tui/entry-deps.js +54 -8
- package/dist/interface/tui/entry-deps.js.map +1 -1
- package/dist/interface/tui/input-action.d.ts +49 -0
- package/dist/interface/tui/input-action.d.ts.map +1 -0
- package/dist/interface/tui/input-action.js +46 -0
- package/dist/interface/tui/input-action.js.map +1 -0
- package/dist/interface/tui/markdown-renderer.d.ts.map +1 -1
- package/dist/interface/tui/markdown-renderer.js +4 -1
- package/dist/interface/tui/markdown-renderer.js.map +1 -1
- package/dist/interface/tui/use-loop.d.ts +1 -1
- package/dist/interface/tui/use-loop.d.ts.map +1 -1
- package/dist/orchestrator/execution/adapter-layer.d.ts +1 -1
- package/dist/orchestrator/execution/adapter-layer.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.js +12 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-context-assembler.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.d.ts +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js +18 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-default-profile.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-events.d.ts +3 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-events.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-events.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-model-client.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-model-client.js +1 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-model-client.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-model.d.ts +2 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-model.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-model.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-result.d.ts +17 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-result.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-tool-output.d.ts +3 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-tool-output.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.d.ts +1 -0
- package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.js +20 -3
- package/dist/orchestrator/execution/agent-loop/agent-loop-tool-runtime.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-trace-store.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-loop-trace-store.js +5 -3
- package/dist/orchestrator/execution/agent-loop/agent-loop-trace-store.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-timeline.d.ts +3 -1
- package/dist/orchestrator/execution/agent-loop/agent-timeline.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/agent-timeline.js +8 -20
- package/dist/orchestrator/execution/agent-loop/agent-timeline.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/anthropic-messages-agent-loop-model-client.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/anthropic-messages-agent-loop-model-client.js +5 -2
- package/dist/orchestrator/execution/agent-loop/anthropic-messages-agent-loop-model-client.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js +43 -25
- package/dist/orchestrator/execution/agent-loop/bounded-agent-loop-runner.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js +20 -4
- package/dist/orchestrator/execution/agent-loop/chat-agent-loop-runner.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/core-loop-control-tools.d.ts +1 -51
- package/dist/orchestrator/execution/agent-loop/core-loop-control-tools.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/core-loop-control-tools.js +3 -239
- package/dist/orchestrator/execution/agent-loop/core-loop-control-tools.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/durable-loop-control-tools.d.ts +60 -0
- package/dist/orchestrator/execution/agent-loop/durable-loop-control-tools.d.ts.map +1 -0
- package/dist/orchestrator/execution/agent-loop/durable-loop-control-tools.js +244 -0
- package/dist/orchestrator/execution/agent-loop/durable-loop-control-tools.js.map +1 -0
- package/dist/orchestrator/execution/agent-loop/index.d.ts +1 -1
- package/dist/orchestrator/execution/agent-loop/index.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/index.js +1 -1
- package/dist/orchestrator/execution/agent-loop/index.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/openai-responses-agent-loop-model-client.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/openai-responses-agent-loop-model-client.js +5 -2
- package/dist/orchestrator/execution/agent-loop/openai-responses-agent-loop-model-client.js.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.d.ts.map +1 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.js +2 -1
- package/dist/orchestrator/execution/agent-loop/task-agent-loop-result.js.map +1 -1
- package/dist/orchestrator/execution/task/task-generation.d.ts +50 -2
- package/dist/orchestrator/execution/task/task-generation.d.ts.map +1 -1
- package/dist/orchestrator/execution/task/task-generation.js +19 -1
- package/dist/orchestrator/execution/task/task-generation.js.map +1 -1
- package/dist/orchestrator/execution/task/task-lifecycle-runner.d.ts +2 -1
- package/dist/orchestrator/execution/task/task-lifecycle-runner.d.ts.map +1 -1
- package/dist/orchestrator/execution/task/task-lifecycle-runner.js +1 -1
- package/dist/orchestrator/execution/task/task-lifecycle-runner.js.map +1 -1
- package/dist/orchestrator/execution/task/task-lifecycle.d.ts +2 -1
- package/dist/orchestrator/execution/task/task-lifecycle.d.ts.map +1 -1
- package/dist/orchestrator/execution/task/task-lifecycle.js +20 -14
- package/dist/orchestrator/execution/task/task-lifecycle.js.map +1 -1
- package/dist/orchestrator/execution/task/task-prompt-builder.d.ts.map +1 -1
- package/dist/orchestrator/execution/task/task-prompt-builder.js +9 -0
- package/dist/orchestrator/execution/task/task-prompt-builder.js.map +1 -1
- package/dist/orchestrator/execution/task/task-verifier-rules.d.ts +3 -1
- package/dist/orchestrator/execution/task/task-verifier-rules.d.ts.map +1 -1
- package/dist/orchestrator/execution/task/task-verifier-rules.js +37 -33
- package/dist/orchestrator/execution/task/task-verifier-rules.js.map +1 -1
- package/dist/orchestrator/execution/task/task-verifier.d.ts.map +1 -1
- package/dist/orchestrator/execution/task/task-verifier.js +10 -2
- package/dist/orchestrator/execution/task/task-verifier.js.map +1 -1
- package/dist/orchestrator/execution/task/task-workspace.d.ts +8 -0
- package/dist/orchestrator/execution/task/task-workspace.d.ts.map +1 -0
- package/dist/orchestrator/execution/task/task-workspace.js +22 -0
- package/dist/orchestrator/execution/task/task-workspace.js.map +1 -0
- package/dist/orchestrator/execution/types/task-group.d.ts +73 -9
- package/dist/orchestrator/execution/types/task-group.d.ts.map +1 -1
- package/dist/orchestrator/execution/types/task.d.ts +103 -5
- package/dist/orchestrator/execution/types/task.d.ts.map +1 -1
- package/dist/orchestrator/execution/types/task.js +10 -0
- package/dist/orchestrator/execution/types/task.js.map +1 -1
- package/dist/orchestrator/goal/goal-decomposer.d.ts.map +1 -1
- package/dist/orchestrator/goal/goal-decomposer.js +2 -1
- package/dist/orchestrator/goal/goal-decomposer.js.map +1 -1
- package/dist/orchestrator/goal/goal-negotiator.d.ts.map +1 -1
- package/dist/orchestrator/goal/goal-negotiator.js +5 -2
- package/dist/orchestrator/goal/goal-negotiator.js.map +1 -1
- package/dist/orchestrator/goal/goal-suggest.d.ts +6 -6
- package/dist/orchestrator/goal/goal-validation.d.ts +4 -5
- package/dist/orchestrator/goal/goal-validation.d.ts.map +1 -1
- package/dist/orchestrator/goal/goal-validation.js +11 -17
- package/dist/orchestrator/goal/goal-validation.js.map +1 -1
- package/dist/orchestrator/goal/negotiator-prompts.d.ts.map +1 -1
- package/dist/orchestrator/goal/negotiator-prompts.js +8 -4
- package/dist/orchestrator/goal/negotiator-prompts.js.map +1 -1
- package/dist/orchestrator/goal/negotiator-steps.d.ts.map +1 -1
- package/dist/orchestrator/goal/negotiator-steps.js +7 -11
- package/dist/orchestrator/goal/negotiator-steps.js.map +1 -1
- package/dist/orchestrator/goal/types/goal-refiner.d.ts +6 -6
- package/dist/orchestrator/goal/types/goal.d.ts +167 -6
- package/dist/orchestrator/goal/types/goal.d.ts.map +1 -1
- package/dist/orchestrator/goal/types/goal.js +8 -0
- package/dist/orchestrator/goal/types/goal.js.map +1 -1
- package/dist/orchestrator/goal/types/negotiation.d.ts +120 -6
- package/dist/orchestrator/goal/types/negotiation.d.ts.map +1 -1
- package/dist/orchestrator/goal/types/negotiation.js +3 -0
- package/dist/orchestrator/goal/types/negotiation.js.map +1 -1
- package/dist/orchestrator/goal/types/suggest.d.ts +6 -6
- package/dist/orchestrator/loop/checkpoint-manager-loop.d.ts +1 -1
- package/dist/orchestrator/loop/checkpoint-manager-loop.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/capability.d.ts +1 -21
- package/dist/orchestrator/loop/core-loop/capability.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/capability.js +1 -150
- package/dist/orchestrator/loop/core-loop/capability.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/contracts.d.ts +1 -318
- package/dist/orchestrator/loop/core-loop/contracts.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/contracts.js +1 -39
- package/dist/orchestrator/loop/core-loop/contracts.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/control.d.ts +1 -26
- package/dist/orchestrator/loop/core-loop/control.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/control.js +1 -71
- package/dist/orchestrator/loop/core-loop/control.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/decision-engine.d.ts +1 -78
- package/dist/orchestrator/loop/core-loop/decision-engine.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/decision-engine.js +1 -144
- package/dist/orchestrator/loop/core-loop/decision-engine.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/dream-review-checkpoint.d.ts +1 -47
- package/dist/orchestrator/loop/core-loop/dream-review-checkpoint.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/dream-review-checkpoint.js +1 -385
- package/dist/orchestrator/loop/core-loop/dream-review-checkpoint.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/evidence-ledger.d.ts +1 -21
- package/dist/orchestrator/loop/core-loop/evidence-ledger.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/evidence-ledger.js +1 -35
- package/dist/orchestrator/loop/core-loop/evidence-ledger.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/iteration-kernel-knowledge.d.ts +1 -6
- package/dist/orchestrator/loop/core-loop/iteration-kernel-knowledge.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/iteration-kernel-knowledge.js +1 -42
- package/dist/orchestrator/loop/core-loop/iteration-kernel-knowledge.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/iteration-kernel-wait.d.ts +1 -13
- package/dist/orchestrator/loop/core-loop/iteration-kernel-wait.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/iteration-kernel-wait.js +1 -40
- package/dist/orchestrator/loop/core-loop/iteration-kernel-wait.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/iteration-kernel.d.ts +1 -36
- package/dist/orchestrator/loop/core-loop/iteration-kernel.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/iteration-kernel.js +1 -834
- package/dist/orchestrator/loop/core-loop/iteration-kernel.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/learning.d.ts +1 -30
- package/dist/orchestrator/loop/core-loop/learning.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/learning.js +1 -91
- package/dist/orchestrator/loop/core-loop/learning.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-policy.d.ts +1 -19
- package/dist/orchestrator/loop/core-loop/phase-policy.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-policy.js +1 -157
- package/dist/orchestrator/loop/core-loop/phase-policy.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-runtime.d.ts +1 -30
- package/dist/orchestrator/loop/core-loop/phase-runtime.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-runtime.js +1 -102
- package/dist/orchestrator/loop/core-loop/phase-runtime.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-specs.d.ts +1 -1268
- package/dist/orchestrator/loop/core-loop/phase-specs.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/phase-specs.js +1 -348
- package/dist/orchestrator/loop/core-loop/phase-specs.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/preparation.d.ts +1 -58
- package/dist/orchestrator/loop/core-loop/preparation.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/preparation.js +1 -367
- package/dist/orchestrator/loop/core-loop/preparation.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/public-research.d.ts +1 -31
- package/dist/orchestrator/loop/core-loop/public-research.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/public-research.js +1 -111
- package/dist/orchestrator/loop/core-loop/public-research.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/task-cycle-stall.d.ts +1 -8
- package/dist/orchestrator/loop/core-loop/task-cycle-stall.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/task-cycle-stall.js +1 -432
- package/dist/orchestrator/loop/core-loop/task-cycle-stall.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/task-cycle-wait.d.ts +1 -10
- package/dist/orchestrator/loop/core-loop/task-cycle-wait.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/task-cycle-wait.js +1 -175
- package/dist/orchestrator/loop/core-loop/task-cycle-wait.js.map +1 -1
- package/dist/orchestrator/loop/core-loop/task-cycle.d.ts +1 -40
- package/dist/orchestrator/loop/core-loop/task-cycle.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop/task-cycle.js +1 -429
- package/dist/orchestrator/loop/core-loop/task-cycle.js.map +1 -1
- package/dist/orchestrator/loop/core-loop.d.ts +1 -85
- package/dist/orchestrator/loop/core-loop.d.ts.map +1 -1
- package/dist/orchestrator/loop/core-loop.js +3 -625
- package/dist/orchestrator/loop/core-loop.js.map +1 -1
- package/dist/orchestrator/loop/durable-loop/capability.d.ts +22 -0
- package/dist/orchestrator/loop/durable-loop/capability.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/capability.js +151 -0
- package/dist/orchestrator/loop/durable-loop/capability.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/contracts.d.ts +319 -0
- package/dist/orchestrator/loop/durable-loop/contracts.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/contracts.js +40 -0
- package/dist/orchestrator/loop/durable-loop/contracts.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/control.d.ts +27 -0
- package/dist/orchestrator/loop/durable-loop/control.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/control.js +72 -0
- package/dist/orchestrator/loop/durable-loop/control.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/decision-engine.d.ts +79 -0
- package/dist/orchestrator/loop/durable-loop/decision-engine.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/decision-engine.js +145 -0
- package/dist/orchestrator/loop/durable-loop/decision-engine.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/dream-review-checkpoint.d.ts +48 -0
- package/dist/orchestrator/loop/durable-loop/dream-review-checkpoint.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/dream-review-checkpoint.js +386 -0
- package/dist/orchestrator/loop/durable-loop/dream-review-checkpoint.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/evidence-ledger.d.ts +22 -0
- package/dist/orchestrator/loop/durable-loop/evidence-ledger.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/evidence-ledger.js +36 -0
- package/dist/orchestrator/loop/durable-loop/evidence-ledger.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-knowledge.d.ts +7 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-knowledge.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-knowledge.js +43 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-knowledge.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-wait.d.ts +14 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-wait.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-wait.js +41 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel-wait.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel.d.ts +38 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel.js +835 -0
- package/dist/orchestrator/loop/durable-loop/iteration-kernel.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/learning.d.ts +31 -0
- package/dist/orchestrator/loop/durable-loop/learning.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/learning.js +92 -0
- package/dist/orchestrator/loop/durable-loop/learning.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/phase-policy.d.ts +20 -0
- package/dist/orchestrator/loop/durable-loop/phase-policy.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/phase-policy.js +158 -0
- package/dist/orchestrator/loop/durable-loop/phase-policy.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/phase-runtime.d.ts +31 -0
- package/dist/orchestrator/loop/durable-loop/phase-runtime.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/phase-runtime.js +103 -0
- package/dist/orchestrator/loop/durable-loop/phase-runtime.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/phase-specs.d.ts +1269 -0
- package/dist/orchestrator/loop/durable-loop/phase-specs.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/phase-specs.js +349 -0
- package/dist/orchestrator/loop/durable-loop/phase-specs.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/preparation.d.ts +59 -0
- package/dist/orchestrator/loop/durable-loop/preparation.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/preparation.js +368 -0
- package/dist/orchestrator/loop/durable-loop/preparation.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/public-research.d.ts +32 -0
- package/dist/orchestrator/loop/durable-loop/public-research.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/public-research.js +112 -0
- package/dist/orchestrator/loop/durable-loop/public-research.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-stall.d.ts +9 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-stall.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-stall.js +464 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-stall.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-wait.d.ts +11 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-wait.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-wait.js +176 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle-wait.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle.d.ts +42 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle.js +430 -0
- package/dist/orchestrator/loop/durable-loop/task-cycle.js.map +1 -0
- package/dist/orchestrator/loop/durable-loop.d.ts +93 -0
- package/dist/orchestrator/loop/durable-loop.d.ts.map +1 -0
- package/dist/orchestrator/loop/durable-loop.js +651 -0
- package/dist/orchestrator/loop/durable-loop.js.map +1 -0
- package/dist/orchestrator/loop/loop-report-helper.d.ts +1 -1
- package/dist/orchestrator/loop/loop-report-helper.d.ts.map +1 -1
- package/dist/orchestrator/loop/loop-result-types.d.ts +1 -1
- package/dist/orchestrator/loop/loop-result-types.d.ts.map +1 -1
- package/dist/orchestrator/loop/parallel-dispatch.d.ts +2 -2
- package/dist/orchestrator/loop/parallel-dispatch.d.ts.map +1 -1
- package/dist/orchestrator/loop/post-loop-hooks.d.ts +1 -1
- package/dist/orchestrator/loop/post-loop-hooks.d.ts.map +1 -1
- package/dist/orchestrator/loop/run-policy.d.ts +1 -1
- package/dist/orchestrator/loop/run-policy.d.ts.map +1 -1
- package/dist/orchestrator/loop/tree-loop-runner.d.ts +1 -1
- package/dist/orchestrator/loop/tree-loop-runner.d.ts.map +1 -1
- package/dist/orchestrator/loop/tree-loop-runner.js +1 -1
- package/dist/orchestrator/loop/tree-loop-runner.js.map +1 -1
- package/dist/orchestrator/strategy/divergent-exploration.d.ts +2 -1
- package/dist/orchestrator/strategy/divergent-exploration.d.ts.map +1 -1
- package/dist/orchestrator/strategy/divergent-exploration.js +119 -36
- package/dist/orchestrator/strategy/divergent-exploration.js.map +1 -1
- package/dist/orchestrator/strategy/strategy-helpers.d.ts +86 -4
- package/dist/orchestrator/strategy/strategy-helpers.d.ts.map +1 -1
- package/dist/orchestrator/strategy/strategy-manager-base.d.ts +6 -2
- package/dist/orchestrator/strategy/strategy-manager-base.d.ts.map +1 -1
- package/dist/orchestrator/strategy/strategy-manager-base.js +71 -18
- package/dist/orchestrator/strategy/strategy-manager-base.js.map +1 -1
- package/dist/orchestrator/strategy/types/strategy.d.ts +450 -14
- package/dist/orchestrator/strategy/types/strategy.d.ts.map +1 -1
- package/dist/orchestrator/strategy/types/strategy.js +30 -0
- package/dist/orchestrator/strategy/types/strategy.js.map +1 -1
- package/dist/platform/code-search/contracts.d.ts +3 -0
- package/dist/platform/code-search/contracts.d.ts.map +1 -1
- package/dist/platform/code-search/contracts.js.map +1 -1
- package/dist/platform/code-search/indexes/indexer.d.ts.map +1 -1
- package/dist/platform/code-search/indexes/indexer.js +3 -0
- package/dist/platform/code-search/indexes/indexer.js.map +1 -1
- package/dist/platform/code-search/indexes/semantic-index.d.ts.map +1 -1
- package/dist/platform/code-search/indexes/semantic-index.js +3 -0
- package/dist/platform/code-search/indexes/semantic-index.js.map +1 -1
- package/dist/platform/code-search/orchestrator.d.ts.map +1 -1
- package/dist/platform/code-search/orchestrator.js +14 -3
- package/dist/platform/code-search/orchestrator.js.map +1 -1
- package/dist/platform/code-search/query-planner.d.ts.map +1 -1
- package/dist/platform/code-search/query-planner.js +1 -17
- package/dist/platform/code-search/query-planner.js.map +1 -1
- package/dist/platform/code-search/reranker.d.ts +5 -1
- package/dist/platform/code-search/reranker.d.ts.map +1 -1
- package/dist/platform/code-search/reranker.js +9 -5
- package/dist/platform/code-search/reranker.js.map +1 -1
- package/dist/platform/corrections/memory-correction-ledger.d.ts +30 -30
- package/dist/platform/dream/dream-activation.d.ts +161 -1
- package/dist/platform/dream/dream-activation.d.ts.map +1 -1
- package/dist/platform/dream/dream-activation.js +63 -14
- package/dist/platform/dream/dream-activation.js.map +1 -1
- package/dist/platform/dream/dream-event-workflows.d.ts +2 -2
- package/dist/platform/dream/dream-types.d.ts +52 -52
- package/dist/platform/dream/playbook-memory.d.ts +3 -3
- package/dist/platform/drive/stall-detector/repetitive.d.ts.map +1 -1
- package/dist/platform/drive/stall-detector/repetitive.js +50 -5
- package/dist/platform/drive/stall-detector/repetitive.js.map +1 -1
- package/dist/platform/drive/stall-detector.d.ts +19 -0
- package/dist/platform/drive/stall-detector.d.ts.map +1 -1
- package/dist/platform/drive/stall-detector.js.map +1 -1
- package/dist/platform/drive/types/stall.d.ts +1 -1
- package/dist/platform/knowledge/memory/memory-selection.d.ts.map +1 -1
- package/dist/platform/knowledge/memory/memory-selection.js +24 -18
- package/dist/platform/knowledge/memory/memory-selection.js.map +1 -1
- package/dist/platform/knowledge/transfer/knowledge-transfer-apply.d.ts.map +1 -1
- package/dist/platform/knowledge/transfer/knowledge-transfer-apply.js +7 -3
- package/dist/platform/knowledge/transfer/knowledge-transfer-apply.js.map +1 -1
- package/dist/platform/knowledge/types/agent-memory.d.ts +46 -46
- package/dist/platform/knowledge/types/embedding.d.ts +4 -4
- package/dist/platform/knowledge/types/knowledge.d.ts +53 -0
- package/dist/platform/knowledge/types/knowledge.d.ts.map +1 -1
- package/dist/platform/knowledge/types/knowledge.js +15 -0
- package/dist/platform/knowledge/types/knowledge.js.map +1 -1
- package/dist/platform/knowledge/types/memory-lifecycle.d.ts +2 -2
- package/dist/platform/observation/capability-detector/types.d.ts +4 -4
- package/dist/platform/observation/context-provider/collector.d.ts +2 -0
- package/dist/platform/observation/context-provider/collector.d.ts.map +1 -1
- package/dist/platform/observation/context-provider/collector.js +27 -2
- package/dist/platform/observation/context-provider/collector.js.map +1 -1
- package/dist/platform/observation/context-provider.d.ts +4 -0
- package/dist/platform/observation/context-provider.d.ts.map +1 -1
- package/dist/platform/observation/context-provider.js.map +1 -1
- package/dist/platform/observation/engine/observe-datasource-stage.d.ts +3 -2
- package/dist/platform/observation/engine/observe-datasource-stage.d.ts.map +1 -1
- package/dist/platform/observation/engine/observe-datasource-stage.js +2 -2
- package/dist/platform/observation/engine/observe-datasource-stage.js.map +1 -1
- package/dist/platform/observation/observation-apply.d.ts +1 -1
- package/dist/platform/observation/observation-apply.d.ts.map +1 -1
- package/dist/platform/observation/observation-apply.js +3 -3
- package/dist/platform/observation/observation-apply.js.map +1 -1
- package/dist/platform/observation/observation-datasource.d.ts +2 -2
- package/dist/platform/observation/observation-datasource.d.ts.map +1 -1
- package/dist/platform/observation/observation-datasource.js +13 -7
- package/dist/platform/observation/observation-datasource.js.map +1 -1
- package/dist/platform/observation/observation-engine.d.ts +1 -1
- package/dist/platform/observation/observation-engine.d.ts.map +1 -1
- package/dist/platform/observation/observation-engine.js +48 -7
- package/dist/platform/observation/observation-engine.js.map +1 -1
- package/dist/platform/observation/types/capability.d.ts +16 -16
- package/dist/platform/observation/types/data-source.d.ts +12 -0
- package/dist/platform/observation/types/data-source.d.ts.map +1 -1
- package/dist/platform/observation/types/data-source.js +1 -0
- package/dist/platform/observation/types/data-source.js.map +1 -1
- package/dist/platform/observation/workspace-context.d.ts +8 -1
- package/dist/platform/observation/workspace-context.d.ts.map +1 -1
- package/dist/platform/observation/workspace-context.js +35 -14
- package/dist/platform/observation/workspace-context.js.map +1 -1
- package/dist/platform/profile/profile-change-proposal.d.ts +20 -20
- package/dist/platform/profile/relationship-profile.d.ts +6 -6
- package/dist/platform/profile/user-md-profile-import.d.ts +2 -2
- package/dist/platform/soil/contracts.d.ts +98 -98
- package/dist/platform/soil/types.d.ts +8 -8
- package/dist/platform/traits/curiosity-engine.d.ts +2 -5
- package/dist/platform/traits/curiosity-engine.d.ts.map +1 -1
- package/dist/platform/traits/curiosity-engine.js.map +1 -1
- package/dist/platform/traits/curiosity-proposals.d.ts +2 -0
- package/dist/platform/traits/curiosity-proposals.d.ts.map +1 -1
- package/dist/platform/traits/curiosity-proposals.js +36 -17
- package/dist/platform/traits/curiosity-proposals.js.map +1 -1
- package/dist/platform/traits/curiosity-transfer.d.ts +9 -5
- package/dist/platform/traits/curiosity-transfer.d.ts.map +1 -1
- package/dist/platform/traits/curiosity-transfer.js +4 -1
- package/dist/platform/traits/curiosity-transfer.js.map +1 -1
- package/dist/platform/traits/ethics-gate.d.ts +16 -17
- package/dist/platform/traits/ethics-gate.d.ts.map +1 -1
- package/dist/platform/traits/ethics-gate.js +83 -47
- package/dist/platform/traits/ethics-gate.js.map +1 -1
- package/dist/platform/traits/ethics-rules.d.ts +4 -6
- package/dist/platform/traits/ethics-rules.d.ts.map +1 -1
- package/dist/platform/traits/ethics-rules.js +19 -261
- package/dist/platform/traits/ethics-rules.js.map +1 -1
- package/dist/platform/traits/types/curiosity.d.ts +157 -10
- package/dist/platform/traits/types/curiosity.d.ts.map +1 -1
- package/dist/platform/traits/types/curiosity.js +10 -0
- package/dist/platform/traits/types/curiosity.js.map +1 -1
- package/dist/platform/traits/types/guardrail.d.ts +6 -6
- package/dist/prompt/purposes/curiosity.d.ts +4 -4
- package/dist/runtime/approval-broker.d.ts +33 -0
- package/dist/runtime/approval-broker.d.ts.map +1 -1
- package/dist/runtime/approval-broker.js +155 -17
- package/dist/runtime/approval-broker.js.map +1 -1
- package/dist/runtime/companion-policy.d.ts +27 -0
- package/dist/runtime/companion-policy.d.ts.map +1 -0
- package/dist/runtime/companion-policy.js +135 -0
- package/dist/runtime/companion-policy.js.map +1 -0
- package/dist/runtime/confirmation-decision.d.ts +2 -2
- package/dist/runtime/control/daemon-runtime-control-executor.d.ts +0 -6
- package/dist/runtime/control/daemon-runtime-control-executor.d.ts.map +1 -1
- package/dist/runtime/control/daemon-runtime-control-executor.js +1 -1
- package/dist/runtime/control/daemon-runtime-control-executor.js.map +1 -1
- package/dist/runtime/control/index.d.ts +6 -3
- package/dist/runtime/control/index.d.ts.map +1 -1
- package/dist/runtime/control/index.js +2 -1
- package/dist/runtime/control/index.js.map +1 -1
- package/dist/runtime/control/runtime-control-intent.d.ts +16 -1
- package/dist/runtime/control/runtime-control-intent.d.ts.map +1 -1
- package/dist/runtime/control/runtime-control-intent.js +26 -13
- package/dist/runtime/control/runtime-control-intent.js.map +1 -1
- package/dist/runtime/control/runtime-control-service.d.ts +1 -1
- package/dist/runtime/control/runtime-control-service.d.ts.map +1 -1
- package/dist/runtime/control/runtime-control-service.js +29 -64
- package/dist/runtime/control/runtime-control-service.js.map +1 -1
- package/dist/runtime/control/runtime-target-resolver.d.ts +39 -0
- package/dist/runtime/control/runtime-target-resolver.d.ts.map +1 -0
- package/dist/runtime/control/runtime-target-resolver.js +112 -0
- package/dist/runtime/control/runtime-target-resolver.js.map +1 -0
- package/dist/runtime/conversational-approval-decision.d.ts +29 -0
- package/dist/runtime/conversational-approval-decision.d.ts.map +1 -0
- package/dist/runtime/conversational-approval-decision.js +92 -0
- package/dist/runtime/conversational-approval-decision.js.map +1 -0
- package/dist/runtime/daemon/client.d.ts +1 -4
- package/dist/runtime/daemon/client.d.ts.map +1 -1
- package/dist/runtime/daemon/client.js +0 -3
- package/dist/runtime/daemon/client.js.map +1 -1
- package/dist/runtime/daemon/control-contracts.d.ts +7 -0
- package/dist/runtime/daemon/control-contracts.d.ts.map +1 -0
- package/dist/runtime/daemon/control-contracts.js +2 -0
- package/dist/runtime/daemon/control-contracts.js.map +1 -0
- package/dist/runtime/daemon/runner-startup.js +1 -1
- package/dist/runtime/daemon/runner-startup.js.map +1 -1
- package/dist/runtime/daemon/runner.d.ts +1 -1
- package/dist/runtime/daemon/runner.d.ts.map +1 -1
- package/dist/runtime/executor/goal-worker.d.ts +9 -4
- package/dist/runtime/executor/goal-worker.d.ts.map +1 -1
- package/dist/runtime/executor/goal-worker.js +18 -1
- package/dist/runtime/executor/goal-worker.js.map +1 -1
- package/dist/runtime/executor/loop-supervisor.d.ts +3 -2
- package/dist/runtime/executor/loop-supervisor.d.ts.map +1 -1
- package/dist/runtime/executor/loop-supervisor.js +60 -8
- package/dist/runtime/executor/loop-supervisor.js.map +1 -1
- package/dist/runtime/gateway/channel-adapter.d.ts +19 -0
- package/dist/runtime/gateway/channel-adapter.d.ts.map +1 -1
- package/dist/runtime/gateway/channel-policy.d.ts +1 -0
- package/dist/runtime/gateway/channel-policy.d.ts.map +1 -1
- package/dist/runtime/gateway/channel-policy.js +6 -4
- package/dist/runtime/gateway/channel-policy.js.map +1 -1
- package/dist/runtime/gateway/chat-event-rendering.d.ts +34 -0
- package/dist/runtime/gateway/chat-event-rendering.d.ts.map +1 -0
- package/dist/runtime/gateway/chat-event-rendering.js +61 -0
- package/dist/runtime/gateway/chat-event-rendering.js.map +1 -0
- package/dist/runtime/gateway/chat-session-dispatch.d.ts +2 -13
- package/dist/runtime/gateway/chat-session-dispatch.d.ts.map +1 -1
- package/dist/runtime/gateway/chat-session-dispatch.js +6 -3
- package/dist/runtime/gateway/chat-session-dispatch.js.map +1 -1
- package/dist/runtime/gateway/chat-session-port.d.ts +25 -0
- package/dist/runtime/gateway/chat-session-port.d.ts.map +1 -0
- package/dist/runtime/gateway/chat-session-port.js +20 -0
- package/dist/runtime/gateway/chat-session-port.js.map +1 -0
- package/dist/runtime/gateway/discord-gateway-adapter.d.ts +3 -1
- package/dist/runtime/gateway/discord-gateway-adapter.d.ts.map +1 -1
- package/dist/runtime/gateway/discord-gateway-adapter.js +34 -2
- package/dist/runtime/gateway/discord-gateway-adapter.js.map +1 -1
- package/dist/runtime/gateway/index.d.ts +2 -0
- package/dist/runtime/gateway/index.d.ts.map +1 -1
- package/dist/runtime/gateway/index.js +1 -0
- package/dist/runtime/gateway/index.js.map +1 -1
- package/dist/runtime/gateway/ingress-gateway.d.ts.map +1 -1
- package/dist/runtime/gateway/ingress-gateway.js +1 -0
- package/dist/runtime/gateway/ingress-gateway.js.map +1 -1
- package/dist/runtime/gateway/signal-gateway-adapter.d.ts +2 -1
- package/dist/runtime/gateway/signal-gateway-adapter.d.ts.map +1 -1
- package/dist/runtime/gateway/signal-gateway-adapter.js +13 -3
- package/dist/runtime/gateway/signal-gateway-adapter.js.map +1 -1
- package/dist/runtime/gateway/slack-channel-adapter.d.ts +2 -1
- package/dist/runtime/gateway/slack-channel-adapter.d.ts.map +1 -1
- package/dist/runtime/gateway/slack-channel-adapter.js +6 -2
- package/dist/runtime/gateway/slack-channel-adapter.js.map +1 -1
- package/dist/runtime/gateway/telegram-gateway-adapter.d.ts +9 -2
- package/dist/runtime/gateway/telegram-gateway-adapter.d.ts.map +1 -1
- package/dist/runtime/gateway/telegram-gateway-adapter.js +141 -13
- package/dist/runtime/gateway/telegram-gateway-adapter.js.map +1 -1
- package/dist/runtime/gateway/typing-indicator.d.ts +11 -0
- package/dist/runtime/gateway/typing-indicator.d.ts.map +1 -0
- package/dist/runtime/gateway/typing-indicator.js +68 -0
- package/dist/runtime/gateway/typing-indicator.js.map +1 -0
- package/dist/runtime/gateway/whatsapp-gateway-adapter.d.ts +2 -1
- package/dist/runtime/gateway/whatsapp-gateway-adapter.d.ts.map +1 -1
- package/dist/runtime/gateway/whatsapp-gateway-adapter.js +22 -8
- package/dist/runtime/gateway/whatsapp-gateway-adapter.js.map +1 -1
- package/dist/runtime/gateway/ws-channel-adapter.d.ts.map +1 -1
- package/dist/runtime/gateway/ws-channel-adapter.js +1 -0
- package/dist/runtime/gateway/ws-channel-adapter.js.map +1 -1
- package/dist/runtime/interactive-automation/failure-classifier.d.ts +0 -1
- package/dist/runtime/interactive-automation/failure-classifier.d.ts.map +1 -1
- package/dist/runtime/interactive-automation/failure-classifier.js +0 -19
- package/dist/runtime/interactive-automation/failure-classifier.js.map +1 -1
- package/dist/runtime/interactive-automation/providers/manus-browser.d.ts.map +1 -1
- package/dist/runtime/interactive-automation/providers/manus-browser.js +30 -1
- package/dist/runtime/interactive-automation/providers/manus-browser.js.map +1 -1
- package/dist/runtime/logger.d.ts.map +1 -1
- package/dist/runtime/logger.js +5 -2
- package/dist/runtime/logger.js.map +1 -1
- package/dist/runtime/plugin-loader.js +2 -2
- package/dist/runtime/plugin-loader.js.map +1 -1
- package/dist/runtime/run-spec/derive.d.ts +24 -24
- package/dist/runtime/run-spec/derive.d.ts.map +1 -1
- package/dist/runtime/run-spec/derive.js +6 -0
- package/dist/runtime/run-spec/derive.js.map +1 -1
- package/dist/runtime/run-spec/handoff.d.ts +74 -0
- package/dist/runtime/run-spec/handoff.d.ts.map +1 -0
- package/dist/runtime/run-spec/handoff.js +496 -0
- package/dist/runtime/run-spec/handoff.js.map +1 -0
- package/dist/runtime/run-spec/index.d.ts +2 -0
- package/dist/runtime/run-spec/index.d.ts.map +1 -1
- package/dist/runtime/run-spec/index.js +2 -0
- package/dist/runtime/run-spec/index.js.map +1 -1
- package/dist/runtime/run-spec/pending-dialogue-arbiter.d.ts +25 -0
- package/dist/runtime/run-spec/pending-dialogue-arbiter.d.ts.map +1 -0
- package/dist/runtime/run-spec/pending-dialogue-arbiter.js +81 -0
- package/dist/runtime/run-spec/pending-dialogue-arbiter.js.map +1 -0
- package/dist/runtime/run-spec/types.d.ts +91 -42
- package/dist/runtime/run-spec/types.d.ts.map +1 -1
- package/dist/runtime/run-spec/types.js +7 -0
- package/dist/runtime/run-spec/types.js.map +1 -1
- package/dist/runtime/schedule/engine-execution.js +2 -35
- package/dist/runtime/schedule/engine-execution.js.map +1 -1
- package/dist/runtime/schedule/history.d.ts +2 -2
- package/dist/runtime/schedule/presets.d.ts +4 -4
- package/dist/runtime/schedule/source.d.ts +1 -1
- package/dist/runtime/session-registry/registry.d.ts.map +1 -1
- package/dist/runtime/session-registry/registry.js +27 -2
- package/dist/runtime/session-registry/registry.js.map +1 -1
- package/dist/runtime/session-registry/types.d.ts +120 -112
- package/dist/runtime/session-registry/types.d.ts.map +1 -1
- package/dist/runtime/session-registry/types.js +1 -0
- package/dist/runtime/session-registry/types.js.map +1 -1
- package/dist/runtime/store/artifact-retention.d.ts +11 -6
- package/dist/runtime/store/artifact-retention.d.ts.map +1 -1
- package/dist/runtime/store/artifact-retention.js +0 -13
- package/dist/runtime/store/artifact-retention.js.map +1 -1
- package/dist/runtime/store/background-run-store.d.ts +1 -0
- package/dist/runtime/store/background-run-store.d.ts.map +1 -1
- package/dist/runtime/store/background-run-store.js +1 -0
- package/dist/runtime/store/background-run-store.js.map +1 -1
- package/dist/runtime/store/budget-store.d.ts +8 -8
- package/dist/runtime/store/dream-checkpoints.d.ts +1 -1
- package/dist/runtime/store/dream-checkpoints.d.ts.map +1 -1
- package/dist/runtime/store/evaluator-results.d.ts +1 -1
- package/dist/runtime/store/evaluator-results.d.ts.map +1 -1
- package/dist/runtime/store/evidence-ledger.d.ts +39 -6377
- package/dist/runtime/store/evidence-ledger.d.ts.map +1 -1
- package/dist/runtime/store/evidence-ledger.js +415 -501
- package/dist/runtime/store/evidence-ledger.js.map +1 -1
- package/dist/runtime/store/evidence-types.d.ts +6378 -0
- package/dist/runtime/store/evidence-types.d.ts.map +1 -0
- package/dist/runtime/store/evidence-types.js +459 -0
- package/dist/runtime/store/evidence-types.js.map +1 -0
- package/dist/runtime/store/experiment-queue-store.d.ts +109 -109
- package/dist/runtime/store/experiment-queue-store.d.ts.map +1 -1
- package/dist/runtime/store/experiment-queue-store.js +1 -1
- package/dist/runtime/store/experiment-queue-store.js.map +1 -1
- package/dist/runtime/store/index.d.ts +4 -4
- package/dist/runtime/store/index.d.ts.map +1 -1
- package/dist/runtime/store/index.js +2 -2
- package/dist/runtime/store/index.js.map +1 -1
- package/dist/runtime/store/metric-history.d.ts +1 -1
- package/dist/runtime/store/metric-history.d.ts.map +1 -1
- package/dist/runtime/store/operator-handoff-store.d.ts +12 -12
- package/dist/runtime/store/postmortem-report.d.ts +40 -40
- package/dist/runtime/store/postmortem-report.js.map +1 -1
- package/dist/runtime/store/proactive-intervention-store.d.ts +8 -8
- package/dist/runtime/store/reproducibility-manifest.d.ts +27 -27
- package/dist/runtime/store/reproducibility-manifest.d.ts.map +1 -1
- package/dist/runtime/store/reproducibility-manifest.js.map +1 -1
- package/dist/runtime/store/research-evidence.d.ts +1 -1
- package/dist/runtime/store/research-evidence.d.ts.map +1 -1
- package/dist/runtime/store/runtime-operation-schemas.d.ts +46 -46
- package/dist/runtime/store/runtime-schemas.d.ts +73 -12
- package/dist/runtime/store/runtime-schemas.d.ts.map +1 -1
- package/dist/runtime/store/runtime-schemas.js +9 -0
- package/dist/runtime/store/runtime-schemas.js.map +1 -1
- package/dist/runtime/types/companion.d.ts +394 -0
- package/dist/runtime/types/companion.d.ts.map +1 -0
- package/dist/runtime/types/companion.js +87 -0
- package/dist/runtime/types/companion.js.map +1 -0
- package/dist/runtime/types/daemon.d.ts +3 -3
- package/dist/runtime/types/hook.d.ts +12 -12
- package/dist/runtime/types/schedule.d.ts +32 -32
- package/dist/tools/builtin/exports.d.ts +2 -0
- package/dist/tools/builtin/exports.d.ts.map +1 -1
- package/dist/tools/builtin/exports.js +2 -0
- package/dist/tools/builtin/exports.js.map +1 -1
- package/dist/tools/builtin/factory.d.ts +10 -1
- package/dist/tools/builtin/factory.d.ts.map +1 -1
- package/dist/tools/builtin/factory.js +18 -1
- package/dist/tools/builtin/factory.js.map +1 -1
- package/dist/tools/executor.d.ts.map +1 -1
- package/dist/tools/executor.js +8 -6
- package/dist/tools/executor.js.map +1 -1
- package/dist/tools/fs/ApplyPatchTool/ApplyPatchTool.d.ts.map +1 -1
- package/dist/tools/fs/ApplyPatchTool/ApplyPatchTool.js +1 -0
- package/dist/tools/fs/ApplyPatchTool/ApplyPatchTool.js.map +1 -1
- package/dist/tools/fs/FileEditTool/FileEditTool.d.ts.map +1 -1
- package/dist/tools/fs/FileEditTool/FileEditTool.js +1 -0
- package/dist/tools/fs/FileEditTool/FileEditTool.js.map +1 -1
- package/dist/tools/fs/FileWriteTool/FileWriteTool.d.ts.map +1 -1
- package/dist/tools/fs/FileWriteTool/FileWriteTool.js +1 -0
- package/dist/tools/fs/FileWriteTool/FileWriteTool.js.map +1 -1
- package/dist/tools/fs/GlobTool/GlobTool.d.ts.map +1 -1
- package/dist/tools/fs/GlobTool/GlobTool.js +1 -0
- package/dist/tools/fs/GlobTool/GlobTool.js.map +1 -1
- package/dist/tools/fs/GrepTool/GrepTool.d.ts.map +1 -1
- package/dist/tools/fs/GrepTool/GrepTool.js +1 -0
- package/dist/tools/fs/GrepTool/GrepTool.js.map +1 -1
- package/dist/tools/fs/JsonQueryTool/JsonQueryTool.d.ts.map +1 -1
- package/dist/tools/fs/JsonQueryTool/JsonQueryTool.js +1 -0
- package/dist/tools/fs/JsonQueryTool/JsonQueryTool.js.map +1 -1
- package/dist/tools/fs/ListDirTool/ListDirTool.d.ts.map +1 -1
- package/dist/tools/fs/ListDirTool/ListDirTool.js +1 -0
- package/dist/tools/fs/ListDirTool/ListDirTool.js.map +1 -1
- package/dist/tools/fs/ReadTool/ReadTool.d.ts.map +1 -1
- package/dist/tools/fs/ReadTool/ReadTool.js +1 -0
- package/dist/tools/fs/ReadTool/ReadTool.js.map +1 -1
- package/dist/tools/kaggle/KaggleSubmissionTools.d.ts +4 -4
- package/dist/tools/kaggle/metrics.d.ts +4 -4
- package/dist/tools/mutation/TaskCreateTool/TaskCreateTool.d.ts +4 -4
- package/dist/tools/mutation/TaskUpdateTool/TaskUpdateTool.d.ts +10 -10
- package/dist/tools/network/GitHubCliTool/GitHubCliTool.d.ts +8 -8
- package/dist/tools/network/HttpFetchTool/HttpFetchTool.d.ts.map +1 -1
- package/dist/tools/network/HttpFetchTool/HttpFetchTool.js +1 -0
- package/dist/tools/network/HttpFetchTool/HttpFetchTool.js.map +1 -1
- package/dist/tools/network/WebSearchTool/WebSearchTool.d.ts.map +1 -1
- package/dist/tools/network/WebSearchTool/WebSearchTool.js +1 -0
- package/dist/tools/network/WebSearchTool/WebSearchTool.js.map +1 -1
- package/dist/tools/query/ArchitectureTool/ArchitectureTool.js +3 -3
- package/dist/tools/query/ArchitectureTool/ArchitectureTool.js.map +1 -1
- package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.d.ts +20 -20
- package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.d.ts.map +1 -1
- package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.js +1 -0
- package/dist/tools/query/CodeReadContextTool/CodeReadContextTool.js.map +1 -1
- package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.d.ts.map +1 -1
- package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.js +1 -0
- package/dist/tools/query/CodeSearchRepairTool/CodeSearchRepairTool.js.map +1 -1
- package/dist/tools/query/CodeSearchTool/CodeSearchTool.d.ts.map +1 -1
- package/dist/tools/query/CodeSearchTool/CodeSearchTool.js +1 -0
- package/dist/tools/query/CodeSearchTool/CodeSearchTool.js.map +1 -1
- package/dist/tools/query/ConfigTool/ConfigTool.d.ts.map +1 -1
- package/dist/tools/query/ConfigTool/ConfigTool.js +1 -0
- package/dist/tools/query/ConfigTool/ConfigTool.js.map +1 -1
- package/dist/tools/query/KnowledgeQueryTool/KnowledgeQueryTool.d.ts.map +1 -1
- package/dist/tools/query/KnowledgeQueryTool/KnowledgeQueryTool.js +1 -0
- package/dist/tools/query/KnowledgeQueryTool/KnowledgeQueryTool.js.map +1 -1
- package/dist/tools/query/SkillSearchTool/SkillSearchTool.d.ts.map +1 -1
- package/dist/tools/query/SkillSearchTool/SkillSearchTool.js +1 -0
- package/dist/tools/query/SkillSearchTool/SkillSearchTool.js.map +1 -1
- package/dist/tools/query/ToolSearchTool/ToolSearchTool.d.ts.map +1 -1
- package/dist/tools/query/ToolSearchTool/ToolSearchTool.js +1 -0
- package/dist/tools/query/ToolSearchTool/ToolSearchTool.js.map +1 -1
- package/dist/tools/runtime/LongRunningRuntimeTools.d.ts +32 -32
- package/dist/tools/runtime/RunSpecHandoffTools.d.ts +12 -0
- package/dist/tools/runtime/RunSpecHandoffTools.d.ts.map +1 -0
- package/dist/tools/runtime/RunSpecHandoffTools.js +224 -0
- package/dist/tools/runtime/RunSpecHandoffTools.js.map +1 -0
- package/dist/tools/runtime/SetupRuntimeControlTools.d.ts +11 -0
- package/dist/tools/runtime/SetupRuntimeControlTools.d.ts.map +1 -0
- package/dist/tools/runtime/SetupRuntimeControlTools.js +463 -0
- package/dist/tools/runtime/SetupRuntimeControlTools.js.map +1 -0
- package/dist/tools/schedule/CreateScheduleTool/CreateScheduleTool.d.ts +28 -28
- package/dist/tools/schedule/UpdateScheduleTool/UpdateScheduleTool.d.ts +32 -32
- package/dist/tools/system/GitDiffTool/GitDiffTool.d.ts.map +1 -1
- package/dist/tools/system/GitDiffTool/GitDiffTool.js +1 -0
- package/dist/tools/system/GitDiffTool/GitDiffTool.js.map +1 -1
- package/dist/tools/system/GitLogTool/GitLogTool.d.ts.map +1 -1
- package/dist/tools/system/GitLogTool/GitLogTool.js +1 -0
- package/dist/tools/system/GitLogTool/GitLogTool.js.map +1 -1
- package/dist/tools/system/ShellTool/ShellTool.d.ts.map +1 -1
- package/dist/tools/system/ShellTool/ShellTool.js +2 -1
- package/dist/tools/system/ShellTool/ShellTool.js.map +1 -1
- package/dist/tools/system/TestRunnerTool/TestRunnerTool.d.ts.map +1 -1
- package/dist/tools/system/TestRunnerTool/TestRunnerTool.js +2 -1
- package/dist/tools/system/TestRunnerTool/TestRunnerTool.js.map +1 -1
- package/dist/tools/system/UpdatePlanTool/UpdatePlanTool.d.ts.map +1 -1
- package/dist/tools/system/UpdatePlanTool/UpdatePlanTool.js +1 -0
- package/dist/tools/system/UpdatePlanTool/UpdatePlanTool.js.map +1 -1
- package/dist/tools/types.d.ts +62 -2
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/types.js +25 -0
- package/dist/tools/types.js.map +1 -1
- package/package.json +1 -1
- package/dist/interface/tui/approval-overlay.d.ts +0 -8
- package/dist/interface/tui/approval-overlay.d.ts.map +0 -1
- package/dist/interface/tui/approval-overlay.js +0 -21
- package/dist/interface/tui/approval-overlay.js.map +0 -1
|
@@ -1,458 +1,15 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import * as fsp from "node:fs/promises";
|
|
3
3
|
import * as path from "node:path";
|
|
4
|
-
import { z } from "zod";
|
|
5
4
|
import { createRuntimeStorePaths, ensureRuntimeStorePaths, } from "./runtime-paths.js";
|
|
6
|
-
import { correctionStateForTarget, MemoryCorrectionEntrySchema,
|
|
7
|
-
import {
|
|
8
|
-
import { summarizeEvidenceMetricTrends } from "./metric-history.js";
|
|
5
|
+
import { correctionStateForTarget, MemoryCorrectionEntrySchema, summarizeMemoryCorrectionState, } from "../../platform/corrections/memory-correction-ledger.js";
|
|
6
|
+
import { extractMetricObservationsFromEvidence, summarizeEvidenceMetricTrends, } from "./metric-history.js";
|
|
9
7
|
import { summarizeEvidenceEvaluatorResults, } from "./evaluator-results.js";
|
|
10
8
|
import { summarizeEvidenceResearchMemos, } from "./research-evidence.js";
|
|
11
9
|
import { summarizeEvidenceDreamCheckpoints, } from "./dream-checkpoints.js";
|
|
12
|
-
import { summarizeArtifactRetention,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
"regressed",
|
|
16
|
-
"inconclusive",
|
|
17
|
-
"failed",
|
|
18
|
-
"blocked",
|
|
19
|
-
"continued",
|
|
20
|
-
]);
|
|
21
|
-
export const RuntimeEvidenceEntryKindSchema = z.enum([
|
|
22
|
-
"observation",
|
|
23
|
-
"strategy",
|
|
24
|
-
"task_generation",
|
|
25
|
-
"execution",
|
|
26
|
-
"verification",
|
|
27
|
-
"decision",
|
|
28
|
-
"metric",
|
|
29
|
-
"evaluator",
|
|
30
|
-
"research",
|
|
31
|
-
"dream_checkpoint",
|
|
32
|
-
"artifact",
|
|
33
|
-
"failure",
|
|
34
|
-
"correction",
|
|
35
|
-
"other",
|
|
36
|
-
]);
|
|
37
|
-
export const RuntimeEvidenceArtifactRefSchema = z.object({
|
|
38
|
-
label: z.string().min(1),
|
|
39
|
-
path: z.string().min(1).optional(),
|
|
40
|
-
state_relative_path: z.string().min(1).optional(),
|
|
41
|
-
url: z.string().url().optional(),
|
|
42
|
-
kind: z.enum(["log", "metrics", "report", "diff", "url", "other"]).default("other"),
|
|
43
|
-
retention_class: RuntimeArtifactRetentionClassSchema.optional(),
|
|
44
|
-
size_bytes: z.number().int().nonnegative().optional(),
|
|
45
|
-
source: z.string().min(1).optional(),
|
|
46
|
-
dependency_refs: z.array(z.string().min(1)).optional(),
|
|
47
|
-
}).strict();
|
|
48
|
-
export const RuntimeEvidenceMetricSchema = z.object({
|
|
49
|
-
label: z.string().min(1),
|
|
50
|
-
value: z.union([z.string(), z.number(), z.boolean(), z.null()]).optional(),
|
|
51
|
-
unit: z.string().min(1).optional(),
|
|
52
|
-
direction: z.enum(["maximize", "minimize", "neutral"]).optional(),
|
|
53
|
-
confidence: z.number().min(0).max(1).optional(),
|
|
54
|
-
observed_at: z.string().datetime().optional(),
|
|
55
|
-
source: z.string().min(1).optional(),
|
|
56
|
-
summary: z.string().min(1).optional(),
|
|
57
|
-
}).strict();
|
|
58
|
-
export const RuntimeEvidenceCandidateDispositionSchema = z.enum(["retained", "promoted", "retired"]);
|
|
59
|
-
export const RuntimeEvidenceCandidateLineageSchema = z.object({
|
|
60
|
-
parent_candidate_id: z.string().min(1).optional(),
|
|
61
|
-
source_candidate_id: z.string().min(1).optional(),
|
|
62
|
-
source_strategy_id: z.string().min(1).optional(),
|
|
63
|
-
source_strategy: z.string().min(1).optional(),
|
|
64
|
-
strategy_family: z.string().min(1),
|
|
65
|
-
feature_lineage: z.array(z.string().min(1)).default([]),
|
|
66
|
-
model_lineage: z.array(z.string().min(1)).default([]),
|
|
67
|
-
config_lineage: z.array(z.string().min(1)).default([]),
|
|
68
|
-
seed_lineage: z.array(z.string().min(1)).default([]),
|
|
69
|
-
fold_lineage: z.array(z.string().min(1)).default([]),
|
|
70
|
-
postprocess_lineage: z.array(z.string().min(1)).default([]),
|
|
71
|
-
notes: z.string().min(1).optional(),
|
|
72
|
-
}).strict();
|
|
73
|
-
export const RuntimeEvidenceCandidateSimilaritySchema = z.object({
|
|
74
|
-
candidate_id: z.string().min(1),
|
|
75
|
-
similarity: z.number().min(0).max(1),
|
|
76
|
-
signal: z.enum(["declared", "lineage", "metric_correlation", "artifact_overlap", "other"]).default("declared"),
|
|
77
|
-
summary: z.string().min(1).optional(),
|
|
78
|
-
}).strict();
|
|
79
|
-
export const RuntimeEvidenceCandidateNearMissReasonSchema = z.enum([
|
|
80
|
-
"close_to_best",
|
|
81
|
-
"stability",
|
|
82
|
-
"novelty",
|
|
83
|
-
"weak_dimension_improvement",
|
|
84
|
-
"complementarity",
|
|
85
|
-
"ensemble_potential",
|
|
86
|
-
]);
|
|
87
|
-
export const RuntimeEvidenceCandidateNearMissSchema = z.object({
|
|
88
|
-
status: z.enum(["retained", "promoted", "rejected"]).default("retained"),
|
|
89
|
-
reason_to_keep: z.array(RuntimeEvidenceCandidateNearMissReasonSchema).min(1),
|
|
90
|
-
margin_to_best: z.number().min(0).optional(),
|
|
91
|
-
weak_dimensions: z.array(z.string().min(1)).default([]),
|
|
92
|
-
complementary_candidate_ids: z.array(z.string().min(1)).default([]),
|
|
93
|
-
follow_up: z.object({
|
|
94
|
-
title: z.string().min(1),
|
|
95
|
-
rationale: z.string().min(1),
|
|
96
|
-
target_dimensions: z.array(z.string().min(1)).default([]),
|
|
97
|
-
expected_evidence_gain: z.string().min(1).optional(),
|
|
98
|
-
}).strict().optional(),
|
|
99
|
-
evidence_refs: z.array(z.string().min(1)).default([]),
|
|
100
|
-
summary: z.string().min(1).optional(),
|
|
101
|
-
}).strict();
|
|
102
|
-
export const RuntimeEvidenceCandidateRecordSchema = z.object({
|
|
103
|
-
candidate_id: z.string().min(1),
|
|
104
|
-
label: z.string().min(1).optional(),
|
|
105
|
-
lineage: RuntimeEvidenceCandidateLineageSchema,
|
|
106
|
-
metrics: z.array(RuntimeEvidenceMetricSchema).default([]),
|
|
107
|
-
artifacts: z.array(RuntimeEvidenceArtifactRefSchema).default([]),
|
|
108
|
-
similarity: z.array(RuntimeEvidenceCandidateSimilaritySchema).default([]),
|
|
109
|
-
robustness: z.object({
|
|
110
|
-
stability_score: z.number().min(0).max(1).optional(),
|
|
111
|
-
diversity_score: z.number().min(0).max(1).optional(),
|
|
112
|
-
risk_penalty: z.number().min(0).max(1).optional(),
|
|
113
|
-
robust_score: z.number().min(0).max(1).optional(),
|
|
114
|
-
evidence_confidence: z.number().min(0).max(1).optional(),
|
|
115
|
-
repeated_evaluations: z.number().int().nonnegative().optional(),
|
|
116
|
-
mean_score: z.number().optional(),
|
|
117
|
-
max_score: z.number().optional(),
|
|
118
|
-
score_stddev: z.number().min(0).optional(),
|
|
119
|
-
fold_score_range: z.number().min(0).optional(),
|
|
120
|
-
seed_score_range: z.number().min(0).optional(),
|
|
121
|
-
weak_dimensions: z.array(z.string().min(1)).default([]),
|
|
122
|
-
provenance_refs: z.array(z.string().min(1)).default([]),
|
|
123
|
-
summary: z.string().min(1).optional(),
|
|
124
|
-
}).strict().optional(),
|
|
125
|
-
near_miss: RuntimeEvidenceCandidateNearMissSchema.optional(),
|
|
126
|
-
disposition: RuntimeEvidenceCandidateDispositionSchema.default("retained"),
|
|
127
|
-
disposition_reason: z.string().min(1).optional(),
|
|
128
|
-
produced_at: z.string().datetime().optional(),
|
|
129
|
-
}).strict();
|
|
130
|
-
export const RuntimeEvidenceEvaluatorSignalSchema = z.enum(["local", "external"]);
|
|
131
|
-
export const RuntimeEvidenceEvaluatorStatusSchema = z.enum([
|
|
132
|
-
"pending",
|
|
133
|
-
"ready",
|
|
134
|
-
"approval_required",
|
|
135
|
-
"submitted",
|
|
136
|
-
"passed",
|
|
137
|
-
"succeeded",
|
|
138
|
-
"completed",
|
|
139
|
-
"failed",
|
|
140
|
-
"regressed",
|
|
141
|
-
"blocked",
|
|
142
|
-
"unknown",
|
|
143
|
-
]);
|
|
144
|
-
export const RuntimeEvidenceEvaluatorPublishActionSchema = z.object({
|
|
145
|
-
id: z.string().min(1),
|
|
146
|
-
label: z.string().min(1),
|
|
147
|
-
tool_name: z.string().min(1).optional(),
|
|
148
|
-
payload_ref: z.string().min(1).optional(),
|
|
149
|
-
approval_required: z.literal(true).default(true),
|
|
150
|
-
status: z.enum(["approval_required", "approved", "submitted", "completed", "blocked"]).optional(),
|
|
151
|
-
}).strict();
|
|
152
|
-
export const RuntimeEvidenceEvaluatorValidationSchema = z.object({
|
|
153
|
-
status: z.enum(["pending", "passed", "failed", "blocked", "unknown"]).default("unknown"),
|
|
154
|
-
command: z.string().min(1).optional(),
|
|
155
|
-
summary: z.string().min(1).optional(),
|
|
156
|
-
}).strict();
|
|
157
|
-
export const RuntimeEvidenceEvaluatorProvenanceSchema = z.object({
|
|
158
|
-
kind: z.enum(["local_command", "external_url", "ci", "benchmark", "human_review", "other"]).default("other"),
|
|
159
|
-
command: z.string().min(1).optional(),
|
|
160
|
-
url: z.string().url().optional(),
|
|
161
|
-
run_id: z.string().min(1).optional(),
|
|
162
|
-
external_id: z.string().min(1).optional(),
|
|
163
|
-
raw_ref: z.string().min(1).optional(),
|
|
164
|
-
retrieved_at: z.string().datetime().optional(),
|
|
165
|
-
}).strict();
|
|
166
|
-
export const RuntimeEvidenceEvaluatorBudgetSchema = z.object({
|
|
167
|
-
policy_id: z.string().min(1).optional(),
|
|
168
|
-
max_attempts: z.number().int().positive().optional(),
|
|
169
|
-
used_attempts: z.number().int().nonnegative().optional(),
|
|
170
|
-
remaining_attempts: z.number().int().nonnegative(),
|
|
171
|
-
approval_required: z.boolean().default(true),
|
|
172
|
-
deadline_at: z.string().datetime().optional(),
|
|
173
|
-
phase: z.enum(["exploration", "consolidation", "finalization", "other"]).optional(),
|
|
174
|
-
portfolio_policy: z.object({
|
|
175
|
-
diversified_portfolio_required: z.boolean().default(false),
|
|
176
|
-
reserve_for_finalization: z.boolean().default(false),
|
|
177
|
-
min_strategy_families: z.number().int().positive().optional(),
|
|
178
|
-
}).strict().optional(),
|
|
179
|
-
}).strict();
|
|
180
|
-
export const RuntimeEvidenceEvaluatorCandidateSnapshotSchema = z.object({
|
|
181
|
-
evidence_entry_id: z.string().min(1).optional(),
|
|
182
|
-
primary_metric_label: z.string().min(1).optional(),
|
|
183
|
-
local_metrics: z.array(RuntimeEvidenceMetricSchema).default([]),
|
|
184
|
-
robust_selection: z.object({
|
|
185
|
-
raw_rank: z.number().int().positive().optional(),
|
|
186
|
-
robust_score: z.number().min(0).max(1).optional(),
|
|
187
|
-
stability_score: z.number().min(0).max(1).optional(),
|
|
188
|
-
diversity_score: z.number().min(0).max(1).optional(),
|
|
189
|
-
risk_penalty: z.number().min(0).max(1).optional(),
|
|
190
|
-
portfolio_role: z.enum(["raw_best", "robust_best", "safe", "aggressive", "diverse", "near_miss", "other"]).optional(),
|
|
191
|
-
}).strict().optional(),
|
|
192
|
-
summary: z.string().min(1).optional(),
|
|
193
|
-
}).strict();
|
|
194
|
-
export const RuntimeEvidenceEvaluatorCalibrationSchema = z.object({
|
|
195
|
-
mode: z.literal("calibration_only").default("calibration_only"),
|
|
196
|
-
use_for_selection: z.boolean().default(false),
|
|
197
|
-
direct_optimization_allowed: z.literal(false).default(false),
|
|
198
|
-
minimum_observations: z.number().int().positive().default(1),
|
|
199
|
-
conclusion: z.string().min(1).optional(),
|
|
200
|
-
}).strict();
|
|
201
|
-
export const RuntimeEvidenceEvaluatorObservationSchema = z.object({
|
|
202
|
-
evaluator_id: z.string().min(1),
|
|
203
|
-
signal: RuntimeEvidenceEvaluatorSignalSchema,
|
|
204
|
-
source: z.string().min(1),
|
|
205
|
-
candidate_id: z.string().min(1),
|
|
206
|
-
candidate_label: z.string().min(1).optional(),
|
|
207
|
-
artifact_labels: z.array(z.string().min(1)).optional(),
|
|
208
|
-
status: RuntimeEvidenceEvaluatorStatusSchema.default("unknown"),
|
|
209
|
-
score: z.union([z.string(), z.number(), z.boolean(), z.null()]).optional(),
|
|
210
|
-
score_label: z.string().min(1).optional(),
|
|
211
|
-
direction: z.enum(["maximize", "minimize", "neutral"]).optional(),
|
|
212
|
-
observed_at: z.string().datetime().optional(),
|
|
213
|
-
expected_score: z.union([z.string(), z.number(), z.boolean(), z.null()]).optional(),
|
|
214
|
-
expected_status: RuntimeEvidenceEvaluatorStatusSchema.optional(),
|
|
215
|
-
expectation_source: z.string().min(1).optional(),
|
|
216
|
-
validation: RuntimeEvidenceEvaluatorValidationSchema.optional(),
|
|
217
|
-
publish_action: RuntimeEvidenceEvaluatorPublishActionSchema.optional(),
|
|
218
|
-
provenance: RuntimeEvidenceEvaluatorProvenanceSchema.optional(),
|
|
219
|
-
budget: RuntimeEvidenceEvaluatorBudgetSchema.optional(),
|
|
220
|
-
candidate_snapshot: RuntimeEvidenceEvaluatorCandidateSnapshotSchema.optional(),
|
|
221
|
-
calibration: RuntimeEvidenceEvaluatorCalibrationSchema.optional(),
|
|
222
|
-
summary: z.string().min(1).optional(),
|
|
223
|
-
}).strict();
|
|
224
|
-
export const RuntimeEvidenceResearchSourceSchema = z.object({
|
|
225
|
-
url: z.string().url(),
|
|
226
|
-
title: z.string().min(1).optional(),
|
|
227
|
-
source_type: z.enum(["official_docs", "maintainer", "paper", "issue_thread", "example", "writeup", "other"]).default("other"),
|
|
228
|
-
provenance: z.enum(["quoted", "paraphrased", "summarized"]).default("summarized"),
|
|
229
|
-
relevance: z.string().min(1).optional(),
|
|
230
|
-
}).strict();
|
|
231
|
-
export const RuntimeEvidenceResearchFindingSchema = z.object({
|
|
232
|
-
finding: z.string().min(1),
|
|
233
|
-
source_urls: z.array(z.string().url()).min(1),
|
|
234
|
-
applicability: z.string().min(1),
|
|
235
|
-
risks_constraints: z.array(z.string().min(1)).default([]),
|
|
236
|
-
proposed_experiment: z.string().min(1),
|
|
237
|
-
expected_metric_impact: z.string().min(1),
|
|
238
|
-
fact_vs_adaptation: z.object({
|
|
239
|
-
facts: z.array(z.string().min(1)).default([]),
|
|
240
|
-
adaptation: z.string().min(1),
|
|
241
|
-
}).strict(),
|
|
242
|
-
}).strict();
|
|
243
|
-
export const RuntimeEvidenceResearchExternalActionSchema = z.object({
|
|
244
|
-
label: z.string().min(1),
|
|
245
|
-
reason: z.string().min(1),
|
|
246
|
-
approval_required: z.literal(true).default(true),
|
|
247
|
-
}).strict();
|
|
248
|
-
export const RuntimeEvidenceResearchMemoSchema = z.object({
|
|
249
|
-
trigger: z.enum(["plateau", "uncertainty", "knowledge_gap"]),
|
|
250
|
-
query: z.string().min(1),
|
|
251
|
-
summary: z.string().min(1),
|
|
252
|
-
sources: z.array(RuntimeEvidenceResearchSourceSchema).min(1),
|
|
253
|
-
findings: z.array(RuntimeEvidenceResearchFindingSchema).min(1),
|
|
254
|
-
candidate_playbook: z.object({
|
|
255
|
-
title: z.string().min(1),
|
|
256
|
-
steps: z.array(z.string().min(1)).default([]),
|
|
257
|
-
source_urls: z.array(z.string().url()).default([]),
|
|
258
|
-
}).strict().optional(),
|
|
259
|
-
untrusted_content_policy: z.literal("webpage_instructions_are_untrusted").default("webpage_instructions_are_untrusted"),
|
|
260
|
-
external_actions: z.array(RuntimeEvidenceResearchExternalActionSchema).default([]),
|
|
261
|
-
confidence: z.number().min(0).max(1).default(0.5),
|
|
262
|
-
}).strict();
|
|
263
|
-
export const RuntimeEvidenceDreamCheckpointTriggerSchema = z.enum([
|
|
264
|
-
"iteration",
|
|
265
|
-
"plateau",
|
|
266
|
-
"breakthrough",
|
|
267
|
-
"pre_finalization",
|
|
268
|
-
]);
|
|
269
|
-
export const RuntimeEvidenceMemoryUsageStatsSchema = z.object({
|
|
270
|
-
last_used_at: z.string().datetime().nullable().default(null),
|
|
271
|
-
use_count: z.number().int().nonnegative().default(0),
|
|
272
|
-
validated_count: z.number().int().nonnegative().default(0),
|
|
273
|
-
negative_outcome_count: z.number().int().nonnegative().default(0),
|
|
274
|
-
}).strict();
|
|
275
|
-
export const RuntimeEvidenceDreamCheckpointMemoryRefSchema = z.object({
|
|
276
|
-
source_type: z.enum(["soil", "playbook", "runtime_evidence", "other"]),
|
|
277
|
-
ref: z.string().min(1).optional(),
|
|
278
|
-
summary: z.string().min(1),
|
|
279
|
-
authority: z.literal("advisory_only").default("advisory_only"),
|
|
280
|
-
relevance_score: z.number().min(0).max(1).optional(),
|
|
281
|
-
source_reliability: z.number().min(0).max(1).optional(),
|
|
282
|
-
verification_status: MemoryVerificationStatusSchema.optional(),
|
|
283
|
-
provenance: MemoryProvenanceSchema.optional(),
|
|
284
|
-
quarantine_state: MemoryQuarantineStateSchema.optional(),
|
|
285
|
-
recency_score: z.number().min(0).max(1).optional(),
|
|
286
|
-
prior_success_contribution: z.number().min(0).max(1).optional(),
|
|
287
|
-
retrieval: z.object({
|
|
288
|
-
kind: z.enum(["route_hit", "fallback_hit", "checkpoint", "manual", "unknown"]).default("unknown"),
|
|
289
|
-
score: z.number().min(0).max(1).optional(),
|
|
290
|
-
confidence: z.number().min(0).max(1).optional(),
|
|
291
|
-
}).strict().optional(),
|
|
292
|
-
usage_stats: RuntimeEvidenceMemoryUsageStatsSchema.optional(),
|
|
293
|
-
ranking_trace: z.object({
|
|
294
|
-
score: z.number().min(0).max(1),
|
|
295
|
-
decision: z.enum(["admitted", "rejected"]),
|
|
296
|
-
reason: z.string().min(1),
|
|
297
|
-
}).strict().optional(),
|
|
298
|
-
}).strict();
|
|
299
|
-
export const RuntimeEvidenceDreamCheckpointStrategyCandidateSchema = z.object({
|
|
300
|
-
candidate_ref: z.string().min(1).optional(),
|
|
301
|
-
title: z.string().min(1),
|
|
302
|
-
rationale: z.string().min(1),
|
|
303
|
-
target_dimensions: z.array(z.string().min(1)).default([]),
|
|
304
|
-
expected_evidence_gain: z.string().min(1).optional(),
|
|
305
|
-
retry_reason: z.string().min(1).optional(),
|
|
306
|
-
failed_lineage_warning: z.object({
|
|
307
|
-
fingerprint: z.string().min(1),
|
|
308
|
-
count: z.number().int().positive(),
|
|
309
|
-
reason: z.string().min(1),
|
|
310
|
-
}).strict().optional(),
|
|
311
|
-
}).strict();
|
|
312
|
-
export const RuntimeEvidenceDreamCheckpointActiveHypothesisSchema = z.object({
|
|
313
|
-
hypothesis: z.string().min(1),
|
|
314
|
-
supporting_evidence_ref: z.string().min(1).optional(),
|
|
315
|
-
target_metric_or_dimension: z.string().min(1),
|
|
316
|
-
expected_next_observation: z.string().min(1),
|
|
317
|
-
status: z.enum(["active", "testing", "supported", "weakened"]).default("active"),
|
|
318
|
-
}).strict();
|
|
319
|
-
export const RuntimeEvidenceDreamCheckpointRejectedApproachSchema = z.object({
|
|
320
|
-
approach: z.string().min(1),
|
|
321
|
-
rejection_reason: z.string().min(1),
|
|
322
|
-
candidate_ref: z.string().min(1).optional(),
|
|
323
|
-
evidence_ref: z.string().min(1).optional(),
|
|
324
|
-
revisit_condition: z.string().min(1).optional(),
|
|
325
|
-
confidence: z.number().min(0).max(1).default(0.5),
|
|
326
|
-
}).strict();
|
|
327
|
-
export const RuntimeEvidenceDreamRunControlRecommendationSchema = z.object({
|
|
328
|
-
id: z.string().min(1).optional(),
|
|
329
|
-
action: z.enum([
|
|
330
|
-
"stay_current_mode",
|
|
331
|
-
"widen_exploration",
|
|
332
|
-
"consolidate_candidates",
|
|
333
|
-
"freeze_experiment_queue",
|
|
334
|
-
"enter_finalization",
|
|
335
|
-
"preserve_near_miss_candidates",
|
|
336
|
-
"retire_low_value_lineage",
|
|
337
|
-
"request_operator_approval",
|
|
338
|
-
]),
|
|
339
|
-
rationale: z.string().min(1),
|
|
340
|
-
evidence: z.array(z.object({
|
|
341
|
-
kind: z.enum(["metric", "artifact", "lineage", "task_history", "deadline", "external_feedback", "memory", "runtime_state"]),
|
|
342
|
-
ref: z.string().min(1).optional(),
|
|
343
|
-
summary: z.string().min(1),
|
|
344
|
-
}).strict()).min(1),
|
|
345
|
-
target_mode: z.enum(["exploration", "consolidation", "finalization"]).optional(),
|
|
346
|
-
target_strategy_family: z.string().min(1).optional(),
|
|
347
|
-
candidate_refs: z.array(z.string().min(1)).default([]),
|
|
348
|
-
lineage_refs: z.array(z.string().min(1)).default([]),
|
|
349
|
-
approval_required: z.boolean().default(false),
|
|
350
|
-
risk: z.enum(["low", "medium", "high"]).default("medium"),
|
|
351
|
-
confidence: z.number().min(0).max(1).default(0.5),
|
|
352
|
-
policy_decision: z.object({
|
|
353
|
-
disposition: z.enum(["auto_apply", "approval_required", "advisory_only"]),
|
|
354
|
-
reason: z.string().min(1),
|
|
355
|
-
}).strict().optional(),
|
|
356
|
-
}).strict();
|
|
357
|
-
export const RuntimeEvidenceDreamCheckpointSchema = z.object({
|
|
358
|
-
trigger: RuntimeEvidenceDreamCheckpointTriggerSchema,
|
|
359
|
-
summary: z.string().min(1),
|
|
360
|
-
current_goal: z.string().min(1),
|
|
361
|
-
active_dimensions: z.array(z.string().min(1)).default([]),
|
|
362
|
-
best_evidence_so_far: z.string().min(1).optional(),
|
|
363
|
-
recent_strategy_families: z.array(z.string().min(1)).default([]),
|
|
364
|
-
exhausted: z.array(z.string().min(1)).default([]),
|
|
365
|
-
promising: z.array(z.string().min(1)).default([]),
|
|
366
|
-
relevant_memories: z.array(RuntimeEvidenceDreamCheckpointMemoryRefSchema).default([]),
|
|
367
|
-
active_hypotheses: z.array(RuntimeEvidenceDreamCheckpointActiveHypothesisSchema).default([]),
|
|
368
|
-
rejected_approaches: z.array(RuntimeEvidenceDreamCheckpointRejectedApproachSchema).default([]),
|
|
369
|
-
next_strategy_candidates: z.array(RuntimeEvidenceDreamCheckpointStrategyCandidateSchema).default([]),
|
|
370
|
-
run_control_recommendations: z.array(RuntimeEvidenceDreamRunControlRecommendationSchema).optional(),
|
|
371
|
-
guidance: z.string().min(1),
|
|
372
|
-
uncertainty: z.array(z.string().min(1)).default([]),
|
|
373
|
-
context_authority: z.literal("advisory_only").default("advisory_only"),
|
|
374
|
-
confidence: z.number().min(0).max(1).default(0.5),
|
|
375
|
-
}).strict();
|
|
376
|
-
export const RuntimeEvidenceDivergentHypothesisSchema = z.object({
|
|
377
|
-
strategy_id: z.string().min(1).optional(),
|
|
378
|
-
hypothesis: z.string().min(1),
|
|
379
|
-
strategy_family: z.string().min(1),
|
|
380
|
-
role: z.enum(["exploitation", "adjacent_exploration", "divergent_exploration"]),
|
|
381
|
-
novelty_score: z.number().min(0).max(1),
|
|
382
|
-
similarity_to_recent_failures: z.number().min(0).max(1).default(0),
|
|
383
|
-
expected_cost: z.enum(["low", "medium", "high"]),
|
|
384
|
-
relationship_to_lineage: z.enum([
|
|
385
|
-
"current_best",
|
|
386
|
-
"neighbor",
|
|
387
|
-
"failed_lineage",
|
|
388
|
-
"different_mechanism",
|
|
389
|
-
"different_assumption",
|
|
390
|
-
"unknown",
|
|
391
|
-
]),
|
|
392
|
-
prior_evidence: z.string().min(1).optional(),
|
|
393
|
-
downrank_reason: z.string().min(1).optional(),
|
|
394
|
-
smoke_status: z.enum(["not_run", "promote", "defer", "retire"]).default("not_run"),
|
|
395
|
-
smoke_reason: z.string().min(1).optional(),
|
|
396
|
-
smoke_evidence_ref: z.string().min(1).optional(),
|
|
397
|
-
evidence_authority: z.literal("speculative_hypothesis").default("speculative_hypothesis"),
|
|
398
|
-
}).strict();
|
|
399
|
-
export const RuntimeEvidenceEntrySchema = z.object({
|
|
400
|
-
schema_version: z.literal("runtime-evidence-entry-v1"),
|
|
401
|
-
id: z.string().min(1),
|
|
402
|
-
occurred_at: z.string().datetime(),
|
|
403
|
-
kind: RuntimeEvidenceEntryKindSchema,
|
|
404
|
-
scope: z.object({
|
|
405
|
-
goal_id: z.string().min(1).optional(),
|
|
406
|
-
run_id: z.string().min(1).optional(),
|
|
407
|
-
task_id: z.string().min(1).optional(),
|
|
408
|
-
loop_index: z.number().int().nonnegative().optional(),
|
|
409
|
-
phase: z.string().min(1).optional(),
|
|
410
|
-
}).strict(),
|
|
411
|
-
hypothesis: z.string().min(1).optional(),
|
|
412
|
-
strategy: z.string().min(1).optional(),
|
|
413
|
-
task: z.object({
|
|
414
|
-
id: z.string().min(1).optional(),
|
|
415
|
-
description: z.string().min(1).optional(),
|
|
416
|
-
action: z.string().min(1).optional(),
|
|
417
|
-
primary_dimension: z.string().min(1).optional(),
|
|
418
|
-
}).strict().optional(),
|
|
419
|
-
verification: z.object({
|
|
420
|
-
command: z.string().min(1).optional(),
|
|
421
|
-
verdict: z.string().min(1).optional(),
|
|
422
|
-
confidence: z.number().min(0).max(1).optional(),
|
|
423
|
-
summary: z.string().min(1).optional(),
|
|
424
|
-
}).strict().optional(),
|
|
425
|
-
metrics: z.array(RuntimeEvidenceMetricSchema).default([]),
|
|
426
|
-
evaluators: z.array(RuntimeEvidenceEvaluatorObservationSchema).optional(),
|
|
427
|
-
research: z.array(RuntimeEvidenceResearchMemoSchema).optional(),
|
|
428
|
-
dream_checkpoints: z.array(RuntimeEvidenceDreamCheckpointSchema).optional(),
|
|
429
|
-
divergent_exploration: z.array(RuntimeEvidenceDivergentHypothesisSchema).optional(),
|
|
430
|
-
correction: MemoryCorrectionEntrySchema.optional(),
|
|
431
|
-
correction_state: MemoryCorrectionTargetStateSchema.optional(),
|
|
432
|
-
verification_status: MemoryVerificationStatusSchema.optional(),
|
|
433
|
-
provenance: MemoryProvenanceSchema.optional(),
|
|
434
|
-
quarantine_state: MemoryQuarantineStateSchema.optional(),
|
|
435
|
-
candidates: z.array(RuntimeEvidenceCandidateRecordSchema).optional(),
|
|
436
|
-
artifacts: z.array(RuntimeEvidenceArtifactRefSchema).default([]),
|
|
437
|
-
result: z.object({
|
|
438
|
-
status: z.string().min(1).optional(),
|
|
439
|
-
summary: z.string().min(1).optional(),
|
|
440
|
-
error: z.string().min(1).optional(),
|
|
441
|
-
}).strict().optional(),
|
|
442
|
-
outcome: RuntimeEvidenceOutcomeSchema.optional(),
|
|
443
|
-
decision_reason: z.string().min(1).optional(),
|
|
444
|
-
raw_refs: z.array(z.object({
|
|
445
|
-
kind: z.string().min(1),
|
|
446
|
-
id: z.string().min(1).optional(),
|
|
447
|
-
path: z.string().min(1).optional(),
|
|
448
|
-
state_relative_path: z.string().min(1).optional(),
|
|
449
|
-
url: z.string().url().optional(),
|
|
450
|
-
}).strict()).default([]),
|
|
451
|
-
summary: z.string().min(1).optional(),
|
|
452
|
-
}).strict().refine((entry) => entry.scope.goal_id || entry.scope.run_id, {
|
|
453
|
-
message: "goal_id or run_id is required",
|
|
454
|
-
path: ["scope"],
|
|
455
|
-
});
|
|
10
|
+
import { summarizeArtifactRetention, } from "./artifact-retention.js";
|
|
11
|
+
import { RuntimeEvidenceEntrySchema, } from "./evidence-types.js";
|
|
12
|
+
export { RuntimeArtifactRetentionClassSchema, RuntimeEvidenceArtifactRefSchema, RuntimeEvidenceCandidateDispositionSchema, RuntimeEvidenceCandidateLineageSchema, RuntimeEvidenceCandidateNearMissReasonSchema, RuntimeEvidenceCandidateNearMissSchema, RuntimeEvidenceCandidateRecordSchema, RuntimeEvidenceCandidateSimilaritySchema, RuntimeEvidenceDivergentHypothesisSchema, RuntimeEvidenceDreamCheckpointSchema, RuntimeEvidenceDreamCheckpointActiveHypothesisSchema, RuntimeEvidenceDreamCheckpointMemoryRefSchema, RuntimeEvidenceDreamCheckpointRejectedApproachSchema, RuntimeEvidenceDreamCheckpointStrategyCandidateSchema, RuntimeEvidenceDreamCheckpointTriggerSchema, RuntimeEvidenceDreamRunControlRecommendationSchema, RuntimeEvidenceEntryKindSchema, RuntimeEvidenceEntrySchema, RuntimeEvidenceEvaluatorBudgetSchema, RuntimeEvidenceEvaluatorCalibrationSchema, RuntimeEvidenceEvaluatorCandidateSnapshotSchema, RuntimeEvidenceEvaluatorObservationSchema, RuntimeEvidenceEvaluatorProvenanceSchema, RuntimeEvidenceEvaluatorPublishActionSchema, RuntimeEvidenceEvaluatorSignalSchema, RuntimeEvidenceEvaluatorStatusSchema, RuntimeEvidenceEvaluatorValidationSchema, RuntimeEvidenceMetricSchema, RuntimeEvidenceMemoryUsageStatsSchema, RuntimeEvidenceOutcomeSchema, RuntimeEvidenceResearchExternalActionSchema, RuntimeEvidenceResearchFindingSchema, RuntimeEvidenceResearchMemoSchema, RuntimeEvidenceResearchSourceSchema, } from "./evidence-types.js";
|
|
456
13
|
const summaryIndexUpdateLocks = new Map();
|
|
457
14
|
export class RuntimeEvidenceLedger {
|
|
458
15
|
paths;
|
|
@@ -495,9 +52,9 @@ export class RuntimeEvidenceLedger {
|
|
|
495
52
|
await Promise.all([...targets].map(async (target) => {
|
|
496
53
|
await withSummaryIndexUpdateLock(target, async () => {
|
|
497
54
|
await fsp.mkdir(path.dirname(target), { recursive: true });
|
|
498
|
-
const
|
|
55
|
+
const preAppendIndex = await readPreAppendSummaryIndex(target);
|
|
499
56
|
await fsp.appendFile(target, `${JSON.stringify(entry)}\n`, "utf8");
|
|
500
|
-
await updateSummaryIndexAfterAppend(target, this.paths, [entry],
|
|
57
|
+
await updateSummaryIndexAfterAppend(target, this.paths, [entry], preAppendIndex);
|
|
501
58
|
});
|
|
502
59
|
}));
|
|
503
60
|
return [entry];
|
|
@@ -559,7 +116,14 @@ async function rebuildSummaryIndex(canonicalPath, paths) {
|
|
|
559
116
|
const read = await readEvidenceFile(canonicalPath);
|
|
560
117
|
const manifests = await readReproducibilityManifests(paths, scope);
|
|
561
118
|
const summary = summarizeEvidence(scope, read, manifests);
|
|
562
|
-
|
|
119
|
+
const activeRead = manifests.length === 0 ? activeEvidenceRead(read) : null;
|
|
120
|
+
await writeSummaryIndex(canonicalPath, summary, activeRead
|
|
121
|
+
? {
|
|
122
|
+
warnings: read.warnings,
|
|
123
|
+
primaryMetric: resolvePrimaryMetricKey([...activeRead.entries].reverse()) ?? undefined,
|
|
124
|
+
metricObservationState: buildMetricObservationState(activeRead.entries),
|
|
125
|
+
}
|
|
126
|
+
: undefined);
|
|
563
127
|
return summary;
|
|
564
128
|
}
|
|
565
129
|
async function withSummaryIndexUpdateLock(canonicalPath, action) {
|
|
@@ -581,21 +145,28 @@ async function withSummaryIndexUpdateLock(canonicalPath, action) {
|
|
|
581
145
|
}
|
|
582
146
|
}
|
|
583
147
|
}
|
|
584
|
-
async function updateSummaryIndexAfterAppend(canonicalPath, paths, appendedEntries,
|
|
148
|
+
async function updateSummaryIndexAfterAppend(canonicalPath, paths, appendedEntries, preAppendIndex) {
|
|
585
149
|
const scope = summaryScopeFromPath(canonicalPath);
|
|
586
150
|
const manifests = await readReproducibilityManifests(paths, scope);
|
|
587
151
|
if (manifests.length > 0) {
|
|
588
152
|
return rebuildSummaryIndex(canonicalPath, paths);
|
|
589
153
|
}
|
|
590
|
-
if (!
|
|
154
|
+
if (!preAppendIndex) {
|
|
591
155
|
return rebuildSummaryIndex(canonicalPath, paths);
|
|
592
156
|
}
|
|
593
|
-
const
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
const
|
|
598
|
-
|
|
157
|
+
const warnings = readWarningsFromSummaryIndex(preAppendIndex);
|
|
158
|
+
if (!warnings)
|
|
159
|
+
return rebuildSummaryIndex(canonicalPath, paths);
|
|
160
|
+
const metricState = readMetricObservationStateFromSummaryIndex(preAppendIndex);
|
|
161
|
+
const primaryMetric = preAppendIndex.append_state?.primary_metric;
|
|
162
|
+
const summary = updateSummaryFromAppend(scope, preAppendIndex.summary, appendedEntries, warnings, metricState, primaryMetric);
|
|
163
|
+
if (!summary)
|
|
164
|
+
return rebuildSummaryIndex(canonicalPath, paths);
|
|
165
|
+
await writeSummaryIndex(canonicalPath, summary, {
|
|
166
|
+
warnings,
|
|
167
|
+
primaryMetric,
|
|
168
|
+
metricObservationState: updateMetricObservationState(metricState, appendedEntries),
|
|
169
|
+
});
|
|
599
170
|
return summary;
|
|
600
171
|
}
|
|
601
172
|
function summaryIndexPath(canonicalPath) {
|
|
@@ -647,20 +218,37 @@ function isManifestArtifactRef(value) {
|
|
|
647
218
|
async function readSummaryIndex(canonicalPath, expectedScope) {
|
|
648
219
|
return readSummaryIndexWithStat(canonicalPath, expectedScope);
|
|
649
220
|
}
|
|
650
|
-
async function
|
|
221
|
+
async function readPreAppendSummaryIndex(canonicalPath) {
|
|
651
222
|
try {
|
|
652
223
|
const stat = await fsp.stat(canonicalPath);
|
|
653
224
|
if (stat.size === 0)
|
|
654
|
-
return
|
|
225
|
+
return emptySummaryIndex(canonicalPath);
|
|
655
226
|
}
|
|
656
227
|
catch (err) {
|
|
657
228
|
if (err.code === "ENOENT")
|
|
658
|
-
return
|
|
229
|
+
return emptySummaryIndex(canonicalPath);
|
|
659
230
|
throw err;
|
|
660
231
|
}
|
|
661
232
|
const scope = summaryScopeFromPath(canonicalPath);
|
|
662
|
-
|
|
663
|
-
|
|
233
|
+
return readSummaryIndexWithStat(canonicalPath, scope);
|
|
234
|
+
}
|
|
235
|
+
async function emptySummaryIndex(canonicalPath) {
|
|
236
|
+
const scope = summaryScopeFromPath(canonicalPath);
|
|
237
|
+
const summary = summarizeEvidence(scope, { entries: [], warnings: [] });
|
|
238
|
+
return {
|
|
239
|
+
schema_version: "runtime-evidence-summary-index-v1",
|
|
240
|
+
generated_at: new Date().toISOString(),
|
|
241
|
+
canonical_log_path: canonicalPath,
|
|
242
|
+
canonical_log_size: 0,
|
|
243
|
+
canonical_log_mtime_ms: 0,
|
|
244
|
+
summary,
|
|
245
|
+
append_state: {
|
|
246
|
+
schema_version: "runtime-evidence-summary-append-state-v1",
|
|
247
|
+
warnings: [],
|
|
248
|
+
primary_metric: undefined,
|
|
249
|
+
metric_observations: [],
|
|
250
|
+
},
|
|
251
|
+
};
|
|
664
252
|
}
|
|
665
253
|
async function readSummaryIndexWithStat(canonicalPath, expectedScope) {
|
|
666
254
|
let text;
|
|
@@ -721,6 +309,46 @@ function readCheckpointFromSummaryIndex(index) {
|
|
|
721
309
|
}
|
|
722
310
|
return { entries, warnings };
|
|
723
311
|
}
|
|
312
|
+
function readWarningsFromSummaryIndex(index) {
|
|
313
|
+
if (index.append_state?.schema_version === "runtime-evidence-summary-append-state-v1") {
|
|
314
|
+
return validateRuntimeEvidenceWarnings(index.append_state.warnings);
|
|
315
|
+
}
|
|
316
|
+
return readCheckpointFromSummaryIndex(index)?.warnings ?? null;
|
|
317
|
+
}
|
|
318
|
+
function readMetricObservationStateFromSummaryIndex(index) {
|
|
319
|
+
const state = index.append_state?.metric_observations;
|
|
320
|
+
if (!state)
|
|
321
|
+
return null;
|
|
322
|
+
if (!Array.isArray(state))
|
|
323
|
+
return null;
|
|
324
|
+
for (const group of state) {
|
|
325
|
+
if (typeof group !== "object"
|
|
326
|
+
|| group === null
|
|
327
|
+
|| typeof group.metric_key !== "string"
|
|
328
|
+
|| (group.direction !== "maximize" && group.direction !== "minimize")
|
|
329
|
+
|| typeof group.count !== "number"
|
|
330
|
+
|| !Array.isArray(group.recent)) {
|
|
331
|
+
return null;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
return state;
|
|
335
|
+
}
|
|
336
|
+
function validateRuntimeEvidenceWarnings(value) {
|
|
337
|
+
if (!Array.isArray(value))
|
|
338
|
+
return null;
|
|
339
|
+
const warnings = [];
|
|
340
|
+
for (const warning of value) {
|
|
341
|
+
if (typeof warning !== "object"
|
|
342
|
+
|| warning === null
|
|
343
|
+
|| typeof warning.file !== "string"
|
|
344
|
+
|| typeof warning.line !== "number"
|
|
345
|
+
|| typeof warning.message !== "string") {
|
|
346
|
+
return null;
|
|
347
|
+
}
|
|
348
|
+
warnings.push(warning);
|
|
349
|
+
}
|
|
350
|
+
return warnings;
|
|
351
|
+
}
|
|
724
352
|
function isCurrentEvidenceSummaryShape(summary) {
|
|
725
353
|
return summary.context_policy_version === "quarantine-filtered-planning-context-v2"
|
|
726
354
|
&& Array.isArray(summary.candidate_lineages)
|
|
@@ -736,8 +364,316 @@ function isCurrentEvidenceSummaryShape(summary) {
|
|
|
736
364
|
&& typeof summary.candidate_selection_summary === "object"
|
|
737
365
|
&& summary.candidate_selection_summary !== null;
|
|
738
366
|
}
|
|
367
|
+
function updateSummaryFromAppend(scope, previous, appendedEntries, warnings, metricState, primaryMetric) {
|
|
368
|
+
if (appendedEntries.length === 0) {
|
|
369
|
+
return {
|
|
370
|
+
...previous,
|
|
371
|
+
generated_at: new Date().toISOString(),
|
|
372
|
+
warnings,
|
|
373
|
+
};
|
|
374
|
+
}
|
|
375
|
+
if (!canIncrementSummaryWithEntries(appendedEntries))
|
|
376
|
+
return null;
|
|
377
|
+
if (previous.total_entries > 0 && !primaryMetric)
|
|
378
|
+
return null;
|
|
379
|
+
if (!canPreservePrimaryMetric(appendedEntries, primaryMetric))
|
|
380
|
+
return null;
|
|
381
|
+
const combinedRecent = [...appendedEntries, ...previous.recent_entries]
|
|
382
|
+
.sort((a, b) => b.occurred_at.localeCompare(a.occurred_at));
|
|
383
|
+
const recentEntries = dedupeEvidenceEntriesById(combinedRecent).slice(0, 10);
|
|
384
|
+
const recentFailedAttempts = dedupeEvidenceEntriesById([
|
|
385
|
+
...appendedEntries.filter(isFailedEvidenceEntry),
|
|
386
|
+
...previous.recent_failed_attempts,
|
|
387
|
+
].sort((a, b) => b.occurred_at.localeCompare(a.occurred_at))).slice(0, 5);
|
|
388
|
+
const latestStrategyCandidates = appendedEntries.filter((entry) => entry.kind === "strategy" || Boolean(entry.strategy) || Boolean(entry.decision_reason));
|
|
389
|
+
const latestStrategy = [...latestStrategyCandidates, previous.latest_strategy].filter((entry) => Boolean(entry))
|
|
390
|
+
.sort((a, b) => b.occurred_at.localeCompare(a.occurred_at))[0] ?? null;
|
|
391
|
+
const bestEvidence = updateBestEvidenceFromAppend(previous.best_evidence, appendedEntries, primaryMetric);
|
|
392
|
+
if (bestEvidence === undefined)
|
|
393
|
+
return null;
|
|
394
|
+
if (!metricState)
|
|
395
|
+
return null;
|
|
396
|
+
const metricTrends = summarizeMetricState(updateMetricObservationState(metricState, appendedEntries));
|
|
397
|
+
return {
|
|
398
|
+
...previous,
|
|
399
|
+
generated_at: new Date().toISOString(),
|
|
400
|
+
scope,
|
|
401
|
+
total_entries: previous.total_entries + appendedEntries.length,
|
|
402
|
+
latest_strategy: latestStrategy,
|
|
403
|
+
best_evidence: bestEvidence,
|
|
404
|
+
metric_trends: metricTrends.length > 0 ? metricTrends : previous.metric_trends,
|
|
405
|
+
recent_failed_attempts: recentFailedAttempts,
|
|
406
|
+
recent_entries: recentEntries,
|
|
407
|
+
warnings,
|
|
408
|
+
};
|
|
409
|
+
}
|
|
410
|
+
function activeEvidenceRead(read) {
|
|
411
|
+
const entries = [...read.entries].sort((a, b) => a.occurred_at.localeCompare(b.occurred_at));
|
|
412
|
+
const corrections = entries.flatMap((entry) => entry.correction ? [entry.correction] : []);
|
|
413
|
+
const correctionState = summarizeMemoryCorrectionState(corrections);
|
|
414
|
+
return {
|
|
415
|
+
entries: entries.filter((entry) => isRuntimeEvidenceEntryActive(entry, correctionState)),
|
|
416
|
+
warnings: read.warnings,
|
|
417
|
+
};
|
|
418
|
+
}
|
|
419
|
+
function updateBestEvidenceFromAppend(previousBest, appendedEntries, primaryMetric) {
|
|
420
|
+
if (!primaryMetric) {
|
|
421
|
+
return chooseBestEvidence(dedupeEvidenceEntriesById([
|
|
422
|
+
...appendedEntries,
|
|
423
|
+
...(previousBest ? [previousBest] : []),
|
|
424
|
+
].sort((a, b) => b.occurred_at.localeCompare(a.occurred_at))));
|
|
425
|
+
}
|
|
426
|
+
let best = previousBest;
|
|
427
|
+
for (const entry of appendedEntries) {
|
|
428
|
+
const metric = findComparableMetric([entry], primaryMetric);
|
|
429
|
+
if (!metric)
|
|
430
|
+
continue;
|
|
431
|
+
if (!best) {
|
|
432
|
+
best = entry;
|
|
433
|
+
continue;
|
|
434
|
+
}
|
|
435
|
+
const current = chooseBestEvidence([entry, best].sort((a, b) => b.occurred_at.localeCompare(a.occurred_at)));
|
|
436
|
+
if (!current)
|
|
437
|
+
return undefined;
|
|
438
|
+
best = current;
|
|
439
|
+
}
|
|
440
|
+
return best;
|
|
441
|
+
}
|
|
442
|
+
function canPreservePrimaryMetric(appendedEntries, primaryMetric) {
|
|
443
|
+
if (!primaryMetric)
|
|
444
|
+
return appendedEntries.every((entry) => entry.metrics.length === 0);
|
|
445
|
+
return appendedEntries.every((entry) => entry.metrics.every((metric) => metric.direction === undefined
|
|
446
|
+
|| metric.direction === "neutral"
|
|
447
|
+
|| (metric.label === primaryMetric.label && metric.direction === primaryMetric.direction))
|
|
448
|
+
&& (!entry.task?.primary_dimension || entry.task.primary_dimension === primaryMetric.label));
|
|
449
|
+
}
|
|
450
|
+
function buildMetricObservationState(entries) {
|
|
451
|
+
return updateMetricObservationState([], entries);
|
|
452
|
+
}
|
|
453
|
+
function updateMetricObservationState(previous, appendedEntries) {
|
|
454
|
+
const groups = new Map();
|
|
455
|
+
for (const group of previous ?? []) {
|
|
456
|
+
groups.set(`${group.metric_key}\0${group.direction}`, {
|
|
457
|
+
...group,
|
|
458
|
+
recent: [...group.recent],
|
|
459
|
+
});
|
|
460
|
+
}
|
|
461
|
+
for (const observation of extractMetricObservationsFromEvidence(appendedEntries).sort((a, b) => a.observed_at.localeCompare(b.observed_at))) {
|
|
462
|
+
const key = `${observation.metric_key}\0${observation.direction}`;
|
|
463
|
+
const next = updateMetricState(groups.get(key), observation);
|
|
464
|
+
groups.set(key, next);
|
|
465
|
+
}
|
|
466
|
+
return [...groups.values()];
|
|
467
|
+
}
|
|
468
|
+
function updateMetricState(previous, observation) {
|
|
469
|
+
const normalized = observation.direction === "maximize" ? observation.value : -observation.value;
|
|
470
|
+
if (!previous) {
|
|
471
|
+
return {
|
|
472
|
+
metric_key: observation.metric_key,
|
|
473
|
+
direction: observation.direction,
|
|
474
|
+
count: 1,
|
|
475
|
+
confidence_sum: observation.confidence,
|
|
476
|
+
first_value: observation.value,
|
|
477
|
+
first_normalized: normalized,
|
|
478
|
+
first_observed_at: observation.observed_at,
|
|
479
|
+
latest_value: observation.value,
|
|
480
|
+
latest_normalized: normalized,
|
|
481
|
+
latest_observed_at: observation.observed_at,
|
|
482
|
+
best_value: observation.value,
|
|
483
|
+
best_normalized: normalized,
|
|
484
|
+
best_observed_at: observation.observed_at,
|
|
485
|
+
previous_best_normalized: normalized,
|
|
486
|
+
last_meaningful_improvement_delta: null,
|
|
487
|
+
last_meaningful_improvement_observed_at: null,
|
|
488
|
+
last_meaningful_improvement_index: null,
|
|
489
|
+
last_breakthrough_delta: null,
|
|
490
|
+
post_improvement_min_normalized: normalized,
|
|
491
|
+
post_improvement_max_normalized: normalized,
|
|
492
|
+
recent: [{ value: observation.value, normalized, observed_at: observation.observed_at, source: observation.source }],
|
|
493
|
+
};
|
|
494
|
+
}
|
|
495
|
+
const improvementThreshold = 0.01;
|
|
496
|
+
const breakthroughThreshold = 0.05;
|
|
497
|
+
const delta = normalized - previous.latest_normalized;
|
|
498
|
+
const meaningful = delta >= improvementThreshold;
|
|
499
|
+
const breakthrough = delta >= breakthroughThreshold;
|
|
500
|
+
const count = previous.count + 1;
|
|
501
|
+
const bestImproved = normalized > previous.best_normalized;
|
|
502
|
+
const postMin = meaningful ? normalized : Math.min(previous.post_improvement_min_normalized, normalized);
|
|
503
|
+
const postMax = meaningful ? normalized : Math.max(previous.post_improvement_max_normalized, normalized);
|
|
504
|
+
return {
|
|
505
|
+
...previous,
|
|
506
|
+
count,
|
|
507
|
+
confidence_sum: previous.confidence_sum + observation.confidence,
|
|
508
|
+
latest_value: observation.value,
|
|
509
|
+
latest_normalized: normalized,
|
|
510
|
+
latest_observed_at: observation.observed_at,
|
|
511
|
+
best_value: bestImproved ? observation.value : previous.best_value,
|
|
512
|
+
best_normalized: bestImproved ? normalized : previous.best_normalized,
|
|
513
|
+
best_observed_at: bestImproved ? observation.observed_at : previous.best_observed_at,
|
|
514
|
+
previous_best_normalized: previous.best_normalized,
|
|
515
|
+
last_meaningful_improvement_delta: meaningful ? delta : previous.last_meaningful_improvement_delta,
|
|
516
|
+
last_meaningful_improvement_observed_at: meaningful
|
|
517
|
+
? observation.observed_at
|
|
518
|
+
: previous.last_meaningful_improvement_observed_at,
|
|
519
|
+
last_meaningful_improvement_index: meaningful ? count - 1 : previous.last_meaningful_improvement_index,
|
|
520
|
+
last_breakthrough_delta: breakthrough ? delta : previous.last_breakthrough_delta,
|
|
521
|
+
post_improvement_min_normalized: postMin,
|
|
522
|
+
post_improvement_max_normalized: postMax,
|
|
523
|
+
recent: [
|
|
524
|
+
...previous.recent,
|
|
525
|
+
{ value: observation.value, normalized, observed_at: observation.observed_at, source: observation.source },
|
|
526
|
+
].slice(-5),
|
|
527
|
+
};
|
|
528
|
+
}
|
|
529
|
+
function summarizeMetricState(states) {
|
|
530
|
+
return states.map(metricTrendFromState);
|
|
531
|
+
}
|
|
532
|
+
function metricTrendFromState(state) {
|
|
533
|
+
const improvementThreshold = 0.01;
|
|
534
|
+
const breakthroughThreshold = 0.05;
|
|
535
|
+
const noiseBand = 0.005;
|
|
536
|
+
const recentValues = state.recent.map((entry) => entry.normalized);
|
|
537
|
+
const recentSlope = linearSlope(recentValues);
|
|
538
|
+
const minRecent = Math.min(...recentValues);
|
|
539
|
+
const maxRecent = Math.max(...recentValues);
|
|
540
|
+
const recentRange = maxRecent - minRecent;
|
|
541
|
+
const latestBestDelta = state.latest_normalized - state.previous_best_normalized;
|
|
542
|
+
const latestDeltaFromBest = state.latest_normalized - state.best_normalized;
|
|
543
|
+
const latestDeltaFromFirst = state.latest_normalized - state.first_normalized;
|
|
544
|
+
const bestDelta = state.best_normalized - state.first_normalized;
|
|
545
|
+
const postImprovementRange = state.post_improvement_max_normalized - state.post_improvement_min_normalized;
|
|
546
|
+
const observationsSinceLastMeaningfulImprovement = state.last_meaningful_improvement_index === null
|
|
547
|
+
? null
|
|
548
|
+
: (state.count - 1) - state.last_meaningful_improvement_index;
|
|
549
|
+
const trend = classifyCompactMetricTrend({
|
|
550
|
+
count: state.count,
|
|
551
|
+
latestBestDelta,
|
|
552
|
+
latestDeltaFromBest,
|
|
553
|
+
latestDeltaFromFirst,
|
|
554
|
+
bestDelta,
|
|
555
|
+
recentSlope,
|
|
556
|
+
recentRange,
|
|
557
|
+
postImprovementRange,
|
|
558
|
+
observationsSinceLastMeaningfulImprovement,
|
|
559
|
+
improvementThreshold,
|
|
560
|
+
breakthroughThreshold,
|
|
561
|
+
noiseBand,
|
|
562
|
+
});
|
|
563
|
+
const meanConfidence = state.confidence_sum / state.count;
|
|
564
|
+
const sampleConfidence = Math.min(1, state.count / 5);
|
|
565
|
+
const trendConfidence = trend === "noisy"
|
|
566
|
+
? Math.max(0.35, Math.min(0.75, noiseBand / Math.max(recentRange, Number.EPSILON)))
|
|
567
|
+
: 1;
|
|
568
|
+
const confidence = clamp01(meanConfidence * sampleConfidence * trendConfidence);
|
|
569
|
+
return {
|
|
570
|
+
metric_key: state.metric_key,
|
|
571
|
+
direction: state.direction,
|
|
572
|
+
trend,
|
|
573
|
+
latest_value: state.latest_value,
|
|
574
|
+
latest_observed_at: state.latest_observed_at,
|
|
575
|
+
best_value: state.best_value,
|
|
576
|
+
best_observed_at: state.best_observed_at,
|
|
577
|
+
observation_count: state.count,
|
|
578
|
+
recent_slope_per_observation: denormalizeMetricDelta(recentSlope, state.direction),
|
|
579
|
+
best_delta: denormalizeMetricDelta(bestDelta, state.direction),
|
|
580
|
+
last_meaningful_improvement_delta: state.last_meaningful_improvement_delta === null
|
|
581
|
+
? null
|
|
582
|
+
: denormalizeMetricDelta(state.last_meaningful_improvement_delta, state.direction),
|
|
583
|
+
last_breakthrough_delta: state.last_breakthrough_delta === null
|
|
584
|
+
? null
|
|
585
|
+
: denormalizeMetricDelta(state.last_breakthrough_delta, state.direction),
|
|
586
|
+
time_since_last_meaningful_improvement_ms: state.last_meaningful_improvement_observed_at
|
|
587
|
+
? Math.max(0, Date.now() - Date.parse(state.last_meaningful_improvement_observed_at))
|
|
588
|
+
: null,
|
|
589
|
+
improvement_threshold: denormalizeMetricDelta(improvementThreshold, state.direction),
|
|
590
|
+
breakthrough_threshold: denormalizeMetricDelta(breakthroughThreshold, state.direction),
|
|
591
|
+
noise_band: denormalizeMetricDelta(noiseBand, state.direction),
|
|
592
|
+
confidence,
|
|
593
|
+
source_refs: state.recent.map((entry) => entry.source),
|
|
594
|
+
summary: `${state.metric_key} trend is ${trend} from ${state.count} observation(s); latest=${state.latest_value}, best=${state.best_value}`,
|
|
595
|
+
};
|
|
596
|
+
}
|
|
597
|
+
function classifyCompactMetricTrend(input) {
|
|
598
|
+
if (input.count < 2)
|
|
599
|
+
return "noisy";
|
|
600
|
+
if (input.latestBestDelta >= input.breakthroughThreshold)
|
|
601
|
+
return "breakthrough";
|
|
602
|
+
if (input.latestBestDelta >= input.improvementThreshold)
|
|
603
|
+
return "improving";
|
|
604
|
+
if (input.latestDeltaFromBest <= -input.improvementThreshold)
|
|
605
|
+
return "regressing";
|
|
606
|
+
if (input.observationsSinceLastMeaningfulImprovement !== null
|
|
607
|
+
&& input.observationsSinceLastMeaningfulImprovement >= 2
|
|
608
|
+
&& input.postImprovementRange <= input.noiseBand) {
|
|
609
|
+
return "stalled";
|
|
610
|
+
}
|
|
611
|
+
if (input.latestDeltaFromFirst <= -input.improvementThreshold || input.recentSlope <= -input.improvementThreshold) {
|
|
612
|
+
return "regressing";
|
|
613
|
+
}
|
|
614
|
+
if (input.recentSlope >= input.improvementThreshold)
|
|
615
|
+
return "improving";
|
|
616
|
+
if (input.recentRange === 0 || input.recentRange <= Number.EPSILON)
|
|
617
|
+
return "stalled";
|
|
618
|
+
if (input.recentRange <= input.noiseBand || Math.abs(input.recentSlope) < input.noiseBand) {
|
|
619
|
+
return input.bestDelta >= input.improvementThreshold ? "stalled" : "noisy";
|
|
620
|
+
}
|
|
621
|
+
if (input.bestDelta < input.improvementThreshold)
|
|
622
|
+
return "stalled";
|
|
623
|
+
return "noisy";
|
|
624
|
+
}
|
|
625
|
+
function linearSlope(values) {
|
|
626
|
+
if (values.length < 2)
|
|
627
|
+
return 0;
|
|
628
|
+
const n = values.length;
|
|
629
|
+
const meanX = (n - 1) / 2;
|
|
630
|
+
const meanY = values.reduce((sum, value) => sum + value, 0) / n;
|
|
631
|
+
let numerator = 0;
|
|
632
|
+
let denominator = 0;
|
|
633
|
+
for (let index = 0; index < n; index += 1) {
|
|
634
|
+
const dx = index - meanX;
|
|
635
|
+
numerator += dx * (values[index] - meanY);
|
|
636
|
+
denominator += dx * dx;
|
|
637
|
+
}
|
|
638
|
+
return denominator === 0 ? 0 : numerator / denominator;
|
|
639
|
+
}
|
|
640
|
+
function denormalizeMetricDelta(delta, direction) {
|
|
641
|
+
return direction === "maximize" ? delta : -delta;
|
|
642
|
+
}
|
|
643
|
+
function canIncrementSummaryWithEntries(entries) {
|
|
644
|
+
return entries.every((entry) => entry.kind !== "correction"
|
|
645
|
+
&& entry.kind !== "failure"
|
|
646
|
+
&& entry.outcome !== "failed"
|
|
647
|
+
&& entry.outcome !== "regressed"
|
|
648
|
+
&& entry.result?.status !== "failed"
|
|
649
|
+
&& entry.verification?.verdict !== "fail"
|
|
650
|
+
&& !entry.correction
|
|
651
|
+
&& !entry.correction_state
|
|
652
|
+
&& !entry.evaluators?.length
|
|
653
|
+
&& !entry.research?.length
|
|
654
|
+
&& !entry.dream_checkpoints?.length
|
|
655
|
+
&& !entry.divergent_exploration?.length
|
|
656
|
+
&& !entry.candidates?.length
|
|
657
|
+
&& !entry.artifacts.length
|
|
658
|
+
&& !entry.quarantine_state
|
|
659
|
+
&& entry.verification_status !== "suspicious"
|
|
660
|
+
&& entry.verification_status !== "contradicted"
|
|
661
|
+
&& !isSuspiciousProvenance(entry.provenance));
|
|
662
|
+
}
|
|
663
|
+
function dedupeEvidenceEntriesById(entries) {
|
|
664
|
+
const seen = new Set();
|
|
665
|
+
const unique = [];
|
|
666
|
+
for (const entry of entries) {
|
|
667
|
+
if (seen.has(entry.id))
|
|
668
|
+
continue;
|
|
669
|
+
seen.add(entry.id);
|
|
670
|
+
unique.push(entry);
|
|
671
|
+
}
|
|
672
|
+
return unique;
|
|
673
|
+
}
|
|
739
674
|
async function writeSummaryIndex(canonicalPath, summary, checkpointRead) {
|
|
740
675
|
const stat = await fsp.stat(canonicalPath);
|
|
676
|
+
const warnings = checkpointRead ? checkpointRead.warnings : [];
|
|
741
677
|
const index = {
|
|
742
678
|
schema_version: "runtime-evidence-summary-index-v1",
|
|
743
679
|
generated_at: new Date().toISOString(),
|
|
@@ -745,12 +681,22 @@ async function writeSummaryIndex(canonicalPath, summary, checkpointRead) {
|
|
|
745
681
|
canonical_log_size: stat.size,
|
|
746
682
|
canonical_log_mtime_ms: stat.mtimeMs,
|
|
747
683
|
summary,
|
|
748
|
-
|
|
684
|
+
append_state: {
|
|
685
|
+
schema_version: "runtime-evidence-summary-append-state-v1",
|
|
686
|
+
warnings,
|
|
687
|
+
...(checkpointRead && "primaryMetric" in checkpointRead && checkpointRead.primaryMetric
|
|
688
|
+
? { primary_metric: checkpointRead.primaryMetric }
|
|
689
|
+
: {}),
|
|
690
|
+
metric_observations: checkpointRead && "metricObservationState" in checkpointRead
|
|
691
|
+
? checkpointRead.metricObservationState
|
|
692
|
+
: buildMetricObservationState(summary.recent_entries),
|
|
693
|
+
},
|
|
694
|
+
...(checkpointRead && "entries" in checkpointRead
|
|
749
695
|
? {
|
|
750
696
|
checkpoint: {
|
|
751
697
|
schema_version: "runtime-evidence-summary-checkpoint-v1",
|
|
752
698
|
entries: checkpointRead.entries,
|
|
753
|
-
warnings
|
|
699
|
+
warnings,
|
|
754
700
|
},
|
|
755
701
|
}
|
|
756
702
|
: {}),
|
|
@@ -1008,7 +954,7 @@ function scoreCandidateSelectionContexts(rawRanked, calibration = []) {
|
|
|
1008
954
|
const diversityScore = clamp01(candidate.robustness?.diversity_score === undefined
|
|
1009
955
|
? inferredDiversity
|
|
1010
956
|
: Math.min(candidate.robustness.diversity_score, inferredDiversity));
|
|
1011
|
-
const riskPenalty = clamp01(candidate.robustness?.risk_penalty ??
|
|
957
|
+
const riskPenalty = clamp01(candidate.robustness?.risk_penalty ?? 0);
|
|
1012
958
|
const evidenceConfidence = clamp01(candidate.robustness?.evidence_confidence ?? context.metric?.confidence ?? 0.5);
|
|
1013
959
|
const calibrationAdjustment = evaluatorCalibrationAdjustment(candidate.candidate_id, calibration);
|
|
1014
960
|
const robustScore = clamp01(candidate.robustness?.robust_score
|
|
@@ -1081,19 +1027,6 @@ function highestKnownSimilarity(candidate, allCandidates) {
|
|
|
1081
1027
|
}
|
|
1082
1028
|
return highest;
|
|
1083
1029
|
}
|
|
1084
|
-
function inferredCandidateRiskPenalty(candidate) {
|
|
1085
|
-
const lineageText = [
|
|
1086
|
-
...candidate.lineage.config_lineage,
|
|
1087
|
-
...candidate.lineage.postprocess_lineage,
|
|
1088
|
-
].map(normalizeLineageText).join(" ");
|
|
1089
|
-
if (lineageText.includes("manual") || lineageText.includes("threshold") || lineageText.includes("postprocess")) {
|
|
1090
|
-
return 0.15;
|
|
1091
|
-
}
|
|
1092
|
-
if (lineageText.includes("calibration") || lineageText.includes("weight")) {
|
|
1093
|
-
return 0.08;
|
|
1094
|
-
}
|
|
1095
|
-
return 0;
|
|
1096
|
-
}
|
|
1097
1030
|
function candidateSelectionReasons(candidate, scores) {
|
|
1098
1031
|
const reasons = [];
|
|
1099
1032
|
if (scores.stabilityScore >= 0.8)
|
|
@@ -1172,6 +1105,8 @@ function summarizeNearMissCandidates(entriesOldestFirst) {
|
|
|
1172
1105
|
}
|
|
1173
1106
|
function nearMissReasonsForCandidate(context, rawBest, scored) {
|
|
1174
1107
|
const explicit = context.candidate.near_miss?.reason_to_keep ?? [];
|
|
1108
|
+
if (explicit.length > 0)
|
|
1109
|
+
return [...explicit];
|
|
1175
1110
|
const reasons = new Set(explicit);
|
|
1176
1111
|
if (context.candidate.near_miss?.status === "retained" || context.candidate.near_miss?.status === "promoted") {
|
|
1177
1112
|
for (const reason of inferredNearMissReasons(context, rawBest, scored))
|
|
@@ -1204,14 +1139,6 @@ function inferredNearMissReasons(context, rawBest, scored) {
|
|
|
1204
1139
|
if (complementaryCandidateIds(context.candidate).length > 0 || highestKnownSimilarity(context.candidate, [context.candidate, rawBest.candidate]) <= 0.5) {
|
|
1205
1140
|
reasons.push("complementarity");
|
|
1206
1141
|
}
|
|
1207
|
-
const lineageText = [
|
|
1208
|
-
...context.candidate.lineage.model_lineage,
|
|
1209
|
-
...context.candidate.lineage.config_lineage,
|
|
1210
|
-
...(context.candidate.near_miss?.summary ? [context.candidate.near_miss.summary] : []),
|
|
1211
|
-
].map(normalizeLineageText).join(" ");
|
|
1212
|
-
if (lineageText.includes("stack") || lineageText.includes("ensemble") || lineageText.includes("blend")) {
|
|
1213
|
-
reasons.push("ensemble_potential");
|
|
1214
|
-
}
|
|
1215
1142
|
return reasons;
|
|
1216
1143
|
}
|
|
1217
1144
|
function isImplicitNearMiss(context, rawBest, scored) {
|
|
@@ -1369,25 +1296,12 @@ function resolvePrimaryCandidateMetricKey(entriesOldestFirst) {
|
|
|
1369
1296
|
const coverageDelta = b.candidate_count - a.candidate_count;
|
|
1370
1297
|
if (coverageDelta !== 0)
|
|
1371
1298
|
return coverageDelta;
|
|
1372
|
-
const localityDelta = Number(isLocalValidationMetricLabel(b.key.label)) - Number(isLocalValidationMetricLabel(a.key.label));
|
|
1373
|
-
if (localityDelta !== 0)
|
|
1374
|
-
return localityDelta;
|
|
1375
1299
|
const positionDelta = a.position_sum / a.candidate_count - b.position_sum / b.candidate_count;
|
|
1376
1300
|
if (positionDelta !== 0)
|
|
1377
1301
|
return positionDelta;
|
|
1378
1302
|
return b.latest_index - a.latest_index;
|
|
1379
1303
|
})[0]?.key ?? null;
|
|
1380
1304
|
}
|
|
1381
|
-
function isLocalValidationMetricLabel(label) {
|
|
1382
|
-
const normalized = normalizeLineageText(label);
|
|
1383
|
-
const externalHints = ["public", "private", "leaderboard", "external", "lb", "submission"];
|
|
1384
|
-
for (const hint of externalHints) {
|
|
1385
|
-
if (normalized === hint || normalized.includes(hint)) {
|
|
1386
|
-
return false;
|
|
1387
|
-
}
|
|
1388
|
-
}
|
|
1389
|
-
return true;
|
|
1390
|
-
}
|
|
1391
1305
|
function candidateComparableMetric(candidate, primaryMetric) {
|
|
1392
1306
|
for (const metric of candidate.metrics) {
|
|
1393
1307
|
if (primaryMetric && (metric.label !== primaryMetric.label || metric.direction !== primaryMetric.direction))
|