@bastani/atomic 0.9.5-alpha.1 → 0.9.5-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +124 -2
- package/README.md +2 -2
- package/dist/builtin/cursor/CHANGELOG.md +6 -0
- package/dist/builtin/cursor/package.json +3 -3
- package/dist/builtin/cursor/src/model-mapper.ts +6 -3
- package/dist/builtin/intercom/CHANGELOG.md +31 -0
- package/dist/builtin/intercom/README.md +29 -21
- package/dist/builtin/intercom/broker/broker.ts +9 -120
- package/dist/builtin/intercom/broker/client.ts +29 -54
- package/dist/builtin/intercom/broker/delivered-message-cache.ts +44 -0
- package/dist/builtin/intercom/broker/paths.ts +42 -5
- package/dist/builtin/intercom/broker/pending-send-registry.ts +142 -0
- package/dist/builtin/intercom/broker/send-handler.ts +106 -0
- package/dist/builtin/intercom/broker/send-signature.ts +37 -0
- package/dist/builtin/intercom/broker/spawn.ts +78 -10
- package/dist/builtin/intercom/config.ts +6 -3
- package/dist/builtin/intercom/contact-supervisor-tool.ts +6 -4
- package/dist/builtin/intercom/foreground-detach-handoff.ts +136 -0
- package/dist/builtin/intercom/index-heavy.ts +50 -54
- package/dist/builtin/intercom/index.ts +320 -272
- package/dist/builtin/intercom/intercom-tool.ts +9 -3
- package/dist/builtin/intercom/lazy-heavy-proxy.ts +114 -0
- package/dist/builtin/intercom/lazy-subagent-ack.ts +20 -0
- package/dist/builtin/intercom/lazy-tool-execution.ts +39 -0
- package/dist/builtin/intercom/lifecycle-lease.ts +51 -0
- package/dist/builtin/intercom/lifecycle.ts +37 -20
- package/dist/builtin/intercom/package.json +12 -6
- package/dist/builtin/intercom/reply-routing.ts +17 -0
- package/dist/builtin/intercom/result-renderers.ts +1 -1
- package/dist/builtin/intercom/subagent-relay.ts +58 -12
- package/dist/builtin/intercom/types.ts +3 -3
- package/dist/builtin/intercom/ui/compose.ts +2 -2
- package/dist/builtin/intercom/ui/inline-message.ts +2 -2
- package/dist/builtin/intercom/ui/session-list.ts +2 -2
- package/dist/builtin/mcp/CHANGELOG.md +23 -0
- package/dist/builtin/mcp/OAUTH.md +1 -0
- package/dist/builtin/mcp/README.md +10 -6
- package/dist/builtin/mcp/apps-cancellation.ts +32 -0
- package/dist/builtin/mcp/call-tool-result.ts +9 -0
- package/dist/builtin/mcp/caller-wait.ts +50 -0
- package/dist/builtin/mcp/command-registration.ts +82 -0
- package/dist/builtin/mcp/direct-tool-executor.ts +279 -0
- package/dist/builtin/mcp/direct-tools.ts +40 -255
- package/dist/builtin/mcp/host-html-template.ts +4 -2
- package/dist/builtin/mcp/index.ts +274 -239
- package/dist/builtin/mcp/init.ts +96 -126
- package/dist/builtin/mcp/mcp-auth-flow.ts +247 -237
- package/dist/builtin/mcp/mcp-callback-server.ts +89 -68
- package/dist/builtin/mcp/mcp-oauth-provider.ts +23 -1
- package/dist/builtin/mcp/metadata-hydration.ts +52 -0
- package/dist/builtin/mcp/package.json +3 -3
- package/dist/builtin/mcp/proxy-auth.ts +4 -4
- package/dist/builtin/mcp/proxy-call.ts +111 -40
- package/dist/builtin/mcp/proxy-connect.ts +35 -15
- package/dist/builtin/mcp/proxy-info-modes.ts +106 -23
- package/dist/builtin/mcp/proxy-modes.ts +3 -3
- package/dist/builtin/mcp/session-cleanup-barrier.ts +43 -0
- package/dist/builtin/mcp/startup-warmup.ts +98 -0
- package/dist/builtin/mcp/state-lease.ts +12 -0
- package/dist/builtin/mcp/tool-result-renderer.ts +3 -3
- package/dist/builtin/mcp/ui-server.ts +8 -8
- package/dist/builtin/mcp/ui-session.ts +9 -18
- package/dist/builtin/subagents/CHANGELOG.md +60 -0
- package/dist/builtin/subagents/README.md +30 -29
- package/dist/builtin/subagents/agents/code-simplifier.md +2 -2
- package/dist/builtin/subagents/agents/codebase-analyzer.md +2 -2
- package/dist/builtin/subagents/agents/codebase-locator.md +2 -2
- package/dist/builtin/subagents/agents/codebase-online-researcher.md +2 -2
- package/dist/builtin/subagents/agents/codebase-pattern-finder.md +2 -2
- package/dist/builtin/subagents/agents/codebase-research-analyzer.md +2 -2
- package/dist/builtin/subagents/agents/codebase-research-locator.md +2 -2
- package/dist/builtin/subagents/agents/debugger.md +2 -2
- package/dist/builtin/subagents/agents/worker.md +2 -2
- package/dist/builtin/subagents/package.json +5 -5
- package/dist/builtin/subagents/prompts/review-loop.md +1 -1
- package/dist/builtin/subagents/skills/subagent/SKILL.md +37 -36
- package/dist/builtin/subagents/src/extension/api-lifecycle.ts +64 -0
- package/dist/builtin/subagents/src/extension/fanout-child.ts +44 -51
- package/dist/builtin/subagents/src/extension/index.ts +289 -320
- package/dist/builtin/subagents/src/extension/prompt-guidance.ts +7 -10
- package/dist/builtin/subagents/src/extension/schemas.ts +22 -5
- package/dist/builtin/subagents/src/extension/startup-maintenance.ts +89 -0
- package/dist/builtin/subagents/src/extension/tool-description.ts +29 -0
- package/dist/builtin/subagents/src/intercom/intercom-bridge.ts +13 -2
- package/dist/builtin/subagents/src/intercom/result-intercom.ts +4 -4
- package/dist/builtin/subagents/src/runs/background/async-event-journal.ts +106 -0
- package/dist/builtin/subagents/src/runs/background/async-execution-common.ts +26 -20
- package/dist/builtin/subagents/src/runs/background/async-execution-single.ts +13 -2
- package/dist/builtin/subagents/src/runs/background/async-execution-types.ts +3 -0
- package/dist/builtin/subagents/src/runs/background/async-job-tracker.ts +1 -1
- package/dist/builtin/subagents/src/runs/background/completion-claims.ts +189 -0
- package/dist/builtin/subagents/src/runs/background/completion-dedupe.ts +44 -7
- package/dist/builtin/subagents/src/runs/background/completion-notification.ts +34 -0
- package/dist/builtin/subagents/src/runs/background/notify.ts +72 -22
- package/dist/builtin/subagents/src/runs/background/result-delivery-processor.ts +232 -0
- package/dist/builtin/subagents/src/runs/background/result-file-claims.ts +151 -0
- package/dist/builtin/subagents/src/runs/background/result-quarantine.ts +72 -0
- package/dist/builtin/subagents/src/runs/background/result-retry-scheduler.ts +48 -0
- package/dist/builtin/subagents/src/runs/background/result-status.ts +81 -0
- package/dist/builtin/subagents/src/runs/background/result-watcher-data.ts +59 -0
- package/dist/builtin/subagents/src/runs/background/result-watcher.ts +177 -233
- package/dist/builtin/subagents/src/runs/background/run-id-resolver.ts +3 -2
- package/dist/builtin/subagents/src/runs/background/stale-run-reconciler.ts +73 -14
- package/dist/builtin/subagents/src/runs/background/subagent-runner-streaming.ts +29 -15
- package/dist/builtin/subagents/src/runs/background/top-level-async.ts +1 -2
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-dynamic-step.ts +1 -0
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-runner.ts +1 -0
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-step.ts +1 -0
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-sequential-step.ts +7 -9
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-types.ts +3 -13
- package/dist/builtin/subagents/src/runs/foreground/chain-execution.ts +2 -15
- package/dist/builtin/subagents/src/runs/foreground/execution-attempt-finalize.ts +2 -2
- package/dist/builtin/subagents/src/runs/foreground/execution-attempt.ts +63 -46
- package/dist/builtin/subagents/src/runs/foreground/execution-detach-reservations.ts +48 -0
- package/dist/builtin/subagents/src/runs/foreground/execution-detach-route.ts +17 -0
- package/dist/builtin/subagents/src/runs/foreground/execution-run-sync.ts +39 -26
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-async.ts +3 -1
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-chain.ts +3 -51
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-context.ts +6 -11
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-input.ts +11 -2
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel-task.ts +2 -0
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +5 -112
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-resume.ts +2 -0
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +68 -118
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +79 -7
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-types.ts +2 -2
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor.ts +3 -0
- package/dist/builtin/subagents/src/runs/shared/pi-args.ts +2 -2
- package/dist/builtin/subagents/src/runs/shared/pi-spawn.ts +55 -12
- package/dist/builtin/subagents/src/shared/artifacts.ts +22 -11
- package/dist/builtin/subagents/src/shared/event-jsonl-writer.ts +294 -0
- package/dist/builtin/subagents/src/shared/exclusive-file-publication.ts +44 -0
- package/dist/builtin/subagents/src/shared/jsonl-writer.ts +1 -0
- package/dist/builtin/subagents/src/shared/model-info.ts +2 -2
- package/dist/builtin/subagents/src/shared/settings.ts +20 -10
- package/dist/builtin/subagents/src/shared/types-async.ts +3 -1
- package/dist/builtin/subagents/src/shared/types-config.ts +2 -0
- package/dist/builtin/subagents/src/shared/types-runtime.ts +3 -2
- package/dist/builtin/subagents/src/slash/slash-commands.ts +9 -12
- package/dist/builtin/subagents/src/slash/slash-live-state.ts +63 -32
- package/dist/builtin/subagents/src/tui/render-event-formatting.ts +15 -48
- package/dist/builtin/subagents/src/tui/render-layout.ts +9 -0
- package/dist/builtin/subagents/src/tui/render-result.ts +7 -0
- package/dist/builtin/subagents/src/tui/render-stable-output.ts +1 -0
- package/dist/builtin/subagents/src/tui/render-widget-graph.ts +27 -25
- package/dist/builtin/subagents/src/tui/render-widget.ts +177 -132
- package/dist/builtin/subagents/src/tui/render.ts +1 -1
- package/dist/builtin/web-access/CHANGELOG.md +14 -0
- package/dist/builtin/web-access/README.md +4 -0
- package/dist/builtin/web-access/content-tools.ts +8 -3
- package/dist/builtin/web-access/index-heavy.ts +1 -1
- package/dist/builtin/web-access/index.ts +190 -46
- package/dist/builtin/web-access/lifecycle-lease.ts +38 -0
- package/dist/builtin/web-access/package.json +2 -2
- package/dist/builtin/web-access/result-renderers.ts +1 -1
- package/dist/builtin/web-access/summary-review.ts +1 -1
- package/dist/builtin/web-access/web-search-activity.ts +1 -1
- package/dist/builtin/web-access/web-search-return.ts +7 -0
- package/dist/builtin/web-access/web-search-summary.ts +1 -1
- package/dist/builtin/web-access/web-search-tool.ts +4 -2
- package/dist/builtin/workflows/CHANGELOG.md +86 -0
- package/dist/builtin/workflows/README.md +8 -6
- package/dist/builtin/workflows/builtin/deep-research-codebase-utils.ts +33 -9
- package/dist/builtin/workflows/builtin/goal-artifacts.ts +3 -1
- package/dist/builtin/workflows/builtin/goal-prompts.ts +25 -2
- package/dist/builtin/workflows/builtin/goal-reducer.ts +21 -0
- package/dist/builtin/workflows/builtin/goal-review.ts +60 -6
- package/dist/builtin/workflows/builtin/goal-runner.ts +119 -48
- package/dist/builtin/workflows/builtin/goal-types.ts +8 -1
- package/dist/builtin/workflows/builtin/goal.d.ts +2 -0
- package/dist/builtin/workflows/builtin/goal.ts +9 -0
- package/dist/builtin/workflows/builtin/index.d.ts +2 -0
- package/dist/builtin/workflows/builtin/open-claude-design-runner.ts +16 -5
- package/dist/builtin/workflows/builtin/ralph-core.ts +61 -13
- package/dist/builtin/workflows/builtin/ralph-models.ts +98 -66
- package/dist/builtin/workflows/builtin/ralph-review-gate.ts +10 -3
- package/dist/builtin/workflows/builtin/ralph-reviewer-prompt.ts +159 -0
- package/dist/builtin/workflows/builtin/ralph-runner.ts +67 -164
- package/dist/builtin/workflows/builtin/review-convergence.ts +111 -0
- package/dist/builtin/workflows/builtin/shared-prompts.ts +5 -0
- package/dist/builtin/workflows/package.json +2 -2
- package/dist/builtin/workflows/skills/create-spec/SKILL.md +2 -0
- package/dist/builtin/workflows/skills/impeccable/SKILL.md +16 -13
- package/dist/builtin/workflows/skills/impeccable/reference/adapt.md +1 -0
- package/dist/builtin/workflows/skills/impeccable/reference/adapt.native.md +58 -0
- package/dist/builtin/workflows/skills/impeccable/reference/android.md +40 -0
- package/dist/builtin/workflows/skills/impeccable/reference/animate.md +2 -0
- package/dist/builtin/workflows/skills/impeccable/reference/audit.md +2 -0
- package/dist/builtin/workflows/skills/impeccable/reference/audit.native.md +139 -0
- package/dist/builtin/workflows/skills/impeccable/reference/bolder.md +69 -62
- package/dist/builtin/workflows/skills/impeccable/reference/critique.md +21 -7
- package/dist/builtin/workflows/skills/impeccable/reference/document.md +1 -1
- package/dist/builtin/workflows/skills/impeccable/reference/hooks.md +92 -0
- package/dist/builtin/workflows/skills/impeccable/reference/init.md +29 -7
- package/dist/builtin/workflows/skills/impeccable/reference/ios.md +45 -0
- package/dist/builtin/workflows/skills/impeccable/reference/layout.md +25 -1
- package/dist/builtin/workflows/skills/impeccable/reference/typeset.md +23 -1
- package/dist/builtin/workflows/skills/impeccable/scripts/context-signals.mjs +2 -1
- package/dist/builtin/workflows/skills/impeccable/scripts/context.mjs +75 -14
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/browser/injected/index.mjs +1 -1
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/cli/main.mjs +31 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/design-system.mjs +64 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +118 -11
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +16 -11
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/registry/antipatterns.mjs +66 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/rules/checks.mjs +42 -10
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/shared/fonts.mjs +30 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/detector/shared/page.mjs +4 -6
- package/dist/builtin/workflows/skills/impeccable/scripts/hook-admin.mjs +660 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/hook-before-edit.mjs +516 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/hook-lib.mjs +1764 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/hook.mjs +61 -0
- package/dist/builtin/workflows/skills/impeccable/scripts/lib/impeccable-config.mjs +4 -2
- package/dist/builtin/workflows/skills/impeccable/scripts/lib/is-generated.mjs +2 -2
- package/dist/builtin/workflows/skills/impeccable/scripts/live/svelte-component.mjs +13 -16
- package/dist/builtin/workflows/skills/impeccable/scripts/live-accept.mjs +17 -11
- package/dist/builtin/workflows/skills/impeccable/scripts/live-browser.js +104 -37
- package/dist/builtin/workflows/skills/impeccable/scripts/live-wrap.mjs +9 -0
- package/dist/builtin/workflows/src/durable/backend.ts +12 -0
- package/dist/builtin/workflows/src/durable/child-primitive.ts +12 -8
- package/dist/builtin/workflows/src/durable/dbos-backend.ts +63 -2
- package/dist/builtin/workflows/src/durable/dbos-envelope.ts +28 -0
- package/dist/builtin/workflows/src/durable/resume-catalog.ts +12 -0
- package/dist/builtin/workflows/src/durable/resume-runtime.ts +5 -2
- package/dist/builtin/workflows/src/durable/stage-primitive.ts +167 -28
- package/dist/builtin/workflows/src/durable/types.ts +30 -1
- package/dist/builtin/workflows/src/engine/primitives/task.ts +3 -1
- package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +1 -2
- package/dist/builtin/workflows/src/engine/run-returned-status.ts +50 -16
- package/dist/builtin/workflows/src/engine/run.ts +32 -32
- package/dist/builtin/workflows/src/engine/runtime.ts +5 -0
- package/dist/builtin/workflows/src/extension/extension-factory.ts +3 -0
- package/dist/builtin/workflows/src/extension/extension-lifecycle.ts +9 -2
- package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +137 -27
- package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +22 -6
- package/dist/builtin/workflows/src/extension/public-types.ts +1 -1
- package/dist/builtin/workflows/src/extension/workflow-command-completions.ts +13 -1
- package/dist/builtin/workflows/src/extension/workflow-command-registration.ts +19 -4
- package/dist/builtin/workflows/src/extension/workflow-command-surfaces.ts +9 -0
- package/dist/builtin/workflows/src/extension/workflow-prompts.ts +17 -17
- package/dist/builtin/workflows/src/extension/workflow-run-control-command.ts +48 -23
- package/dist/builtin/workflows/src/extension/workflow-schema.ts +15 -2
- package/dist/builtin/workflows/src/extension/workflow-tool-control.ts +20 -8
- package/dist/builtin/workflows/src/extension/workflow-tool.ts +24 -8
- package/dist/builtin/workflows/src/runs/background/status.ts +4 -3
- package/dist/builtin/workflows/src/runs/foreground/executor-continuation.ts +13 -3
- package/dist/builtin/workflows/src/runs/foreground/executor-direct-helpers.ts +29 -8
- package/dist/builtin/workflows/src/runs/foreground/executor-hil.ts +1 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +8 -0
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +4 -3
- package/dist/builtin/workflows/src/runs/foreground/stage-control-registry.ts +2 -0
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +18 -19
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-unresolved-overflow.ts +38 -0
- package/dist/builtin/workflows/src/runs/foreground/stage-tool-execution-buffer.ts +47 -0
- package/dist/builtin/workflows/src/runs/shared/model-fallback-candidates.ts +1 -1
- package/dist/builtin/workflows/src/runs/shared/worktree-git.ts +155 -20
- package/dist/builtin/workflows/src/runs/shared/worktree-types.ts +6 -0
- package/dist/builtin/workflows/src/runs/shared/worktree.ts +2 -1
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +2 -2
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +2 -2
- package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +18 -1
- package/dist/builtin/workflows/src/shared/persistence-restore.ts +23 -5
- package/dist/builtin/workflows/src/shared/persistence-session-entries.ts +4 -0
- package/dist/builtin/workflows/src/shared/resume-continuation.ts +2 -0
- package/dist/builtin/workflows/src/shared/returned-run-status.ts +116 -0
- package/dist/builtin/workflows/src/shared/workflow-failures-decisions.ts +2 -0
- package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +21 -3
- package/dist/builtin/workflows/src/tui/graph-view-state.ts +3 -0
- package/dist/builtin/workflows/src/tui/graph-view-types.ts +3 -0
- package/dist/builtin/workflows/src/tui/stage-chat-view-archive-history.ts +1 -23
- package/dist/builtin/workflows/src/tui/stage-chat-view-footer-status.ts +54 -9
- package/dist/builtin/workflows/src/tui/stage-chat-view-pending-tools.ts +9 -0
- package/dist/builtin/workflows/src/tui/stage-chat-view-render-settings.ts +27 -0
- package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +5 -6
- package/dist/builtin/workflows/src/tui/stage-chat-view.ts +5 -2
- package/dist/builtin/workflows/src/tui/status-list.ts +22 -15
- package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +4 -4
- package/dist/bun/internal-intercom-broker.d.ts +6 -0
- package/dist/bun/internal-intercom-broker.d.ts.map +1 -0
- package/dist/bun/internal-intercom-broker.js +39 -0
- package/dist/bun/internal-intercom-broker.js.map +1 -0
- package/dist/bun/split-loader.d.ts +2 -0
- package/dist/bun/split-loader.d.ts.map +1 -0
- package/dist/bun/split-loader.js +50 -0
- package/dist/bun/split-loader.js.map +1 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +2 -2
- package/dist/cli/args.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +6 -4
- package/dist/config.js.map +1 -1
- package/dist/core/agent-session-auto-compaction.d.ts +26 -6
- package/dist/core/agent-session-auto-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-auto-compaction.js +178 -19
- package/dist/core/agent-session-auto-compaction.js.map +1 -1
- package/dist/core/agent-session-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-compaction.js +25 -4
- package/dist/core/agent-session-compaction.js.map +1 -1
- package/dist/core/agent-session-events.d.ts.map +1 -1
- package/dist/core/agent-session-events.js +12 -2
- package/dist/core/agent-session-events.js.map +1 -1
- package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
- package/dist/core/agent-session-extension-bindings.js +1 -1
- package/dist/core/agent-session-extension-bindings.js.map +1 -1
- package/dist/core/agent-session-message-queue.d.ts.map +1 -1
- package/dist/core/agent-session-message-queue.js +1 -1
- package/dist/core/agent-session-message-queue.js.map +1 -1
- package/dist/core/agent-session-methods.d.ts +13 -4
- package/dist/core/agent-session-methods.d.ts.map +1 -1
- package/dist/core/agent-session-methods.js.map +1 -1
- package/dist/core/agent-session-models.d.ts +2 -2
- package/dist/core/agent-session-models.d.ts.map +1 -1
- package/dist/core/agent-session-models.js.map +1 -1
- package/dist/core/agent-session-prompt.d.ts.map +1 -1
- package/dist/core/agent-session-prompt.js +2 -1
- package/dist/core/agent-session-prompt.js.map +1 -1
- package/dist/core/agent-session-retry.d.ts +2 -0
- package/dist/core/agent-session-retry.d.ts.map +1 -1
- package/dist/core/agent-session-retry.js +152 -4
- package/dist/core/agent-session-retry.js.map +1 -1
- package/dist/core/agent-session-services.d.ts +1 -0
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js +4 -2
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session-types.d.ts +15 -1
- package/dist/core/agent-session-types.d.ts.map +1 -1
- package/dist/core/agent-session-types.js +1 -1
- package/dist/core/agent-session-types.js.map +1 -1
- package/dist/core/agent-session.d.ts +6 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +6 -0
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/anthropic-thinking-guard.d.ts +5 -5
- package/dist/core/anthropic-thinking-guard.d.ts.map +1 -1
- package/dist/core/anthropic-thinking-guard.js +42 -32
- package/dist/core/anthropic-thinking-guard.js.map +1 -1
- package/dist/core/atomic-guide-command.d.ts.map +1 -1
- package/dist/core/atomic-guide-command.js +15 -15
- package/dist/core/atomic-guide-command.js.map +1 -1
- package/dist/core/auth-storage.d.ts.map +1 -1
- package/dist/core/auth-storage.js +14 -9
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/builtin-packages.d.ts.map +1 -1
- package/dist/core/builtin-packages.js +8 -4
- package/dist/core/builtin-packages.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts +2 -0
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js +79 -46
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/compaction/context-assistant-turns.d.ts +42 -0
- package/dist/core/compaction/context-assistant-turns.d.ts.map +1 -0
- package/dist/core/compaction/context-assistant-turns.js +87 -0
- package/dist/core/compaction/context-assistant-turns.js.map +1 -0
- package/dist/core/compaction/context-compaction-critical.d.ts +15 -0
- package/dist/core/compaction/context-compaction-critical.d.ts.map +1 -0
- package/dist/core/compaction/context-compaction-critical.js +57 -0
- package/dist/core/compaction/context-compaction-critical.js.map +1 -0
- package/dist/core/compaction/context-compaction-eviction-alternates.d.ts +18 -0
- package/dist/core/compaction/context-compaction-eviction-alternates.d.ts.map +1 -0
- package/dist/core/compaction/context-compaction-eviction-alternates.js +186 -0
- package/dist/core/compaction/context-compaction-eviction-alternates.js.map +1 -0
- package/dist/core/compaction/context-compaction-eviction.d.ts +12 -0
- package/dist/core/compaction/context-compaction-eviction.d.ts.map +1 -0
- package/dist/core/compaction/context-compaction-eviction.js +222 -0
- package/dist/core/compaction/context-compaction-eviction.js.map +1 -0
- package/dist/core/compaction/context-compaction-prompt.d.ts.map +1 -1
- package/dist/core/compaction/context-compaction-prompt.js +1 -1
- package/dist/core/compaction/context-compaction-prompt.js.map +1 -1
- package/dist/core/compaction/context-compaction-runner.d.ts +7 -1
- package/dist/core/compaction/context-compaction-runner.d.ts.map +1 -1
- package/dist/core/compaction/context-compaction-runner.js +113 -21
- package/dist/core/compaction/context-compaction-runner.js.map +1 -1
- package/dist/core/compaction/context-compaction-types.d.ts +2 -0
- package/dist/core/compaction/context-compaction-types.d.ts.map +1 -1
- package/dist/core/compaction/context-compaction-types.js.map +1 -1
- package/dist/core/compaction/context-deletion-application.d.ts +5 -4
- package/dist/core/compaction/context-deletion-application.d.ts.map +1 -1
- package/dist/core/compaction/context-deletion-application.js +17 -15
- package/dist/core/compaction/context-deletion-application.js.map +1 -1
- package/dist/core/compaction/context-deletion-store.d.ts.map +1 -1
- package/dist/core/compaction/context-deletion-store.js +1 -1
- package/dist/core/compaction/context-deletion-store.js.map +1 -1
- package/dist/core/compaction/context-deletion-targets.d.ts +2 -1
- package/dist/core/compaction/context-deletion-targets.d.ts.map +1 -1
- package/dist/core/compaction/context-deletion-targets.js +36 -31
- package/dist/core/compaction/context-deletion-targets.js.map +1 -1
- package/dist/core/compaction/context-deletion-tool-helpers.d.ts.map +1 -1
- package/dist/core/compaction/context-deletion-tool-helpers.js +116 -43
- package/dist/core/compaction/context-deletion-tool-helpers.js.map +1 -1
- package/dist/core/compaction/context-transcript-analysis.d.ts +4 -2
- package/dist/core/compaction/context-transcript-analysis.d.ts.map +1 -1
- package/dist/core/compaction/context-transcript-analysis.js +36 -40
- package/dist/core/compaction/context-transcript-analysis.js.map +1 -1
- package/dist/core/copilot-anthropic-sse-repair.d.ts +23 -0
- package/dist/core/copilot-anthropic-sse-repair.d.ts.map +1 -0
- package/dist/core/copilot-anthropic-sse-repair.js +340 -0
- package/dist/core/copilot-anthropic-sse-repair.js.map +1 -0
- package/dist/core/copilot-gemini-reasoning.d.ts +16 -8
- package/dist/core/copilot-gemini-reasoning.d.ts.map +1 -1
- package/dist/core/copilot-gemini-reasoning.js +27 -22
- package/dist/core/copilot-gemini-reasoning.js.map +1 -1
- package/dist/core/copilot-hosts.d.ts +12 -0
- package/dist/core/copilot-hosts.d.ts.map +1 -0
- package/dist/core/copilot-hosts.js +33 -0
- package/dist/core/copilot-hosts.js.map +1 -0
- package/dist/core/copilot-model-catalog.d.ts.map +1 -1
- package/dist/core/copilot-model-catalog.js +3 -2
- package/dist/core/copilot-model-catalog.js.map +1 -1
- package/dist/core/copilot-model-synthesis.d.ts.map +1 -1
- package/dist/core/copilot-model-synthesis.js +3 -1
- package/dist/core/copilot-model-synthesis.js.map +1 -1
- package/dist/core/extensions/agent-events.d.ts +1 -1
- package/dist/core/extensions/agent-events.d.ts.map +1 -1
- package/dist/core/extensions/agent-events.js.map +1 -1
- package/dist/core/extensions/loader-core.d.ts.map +1 -1
- package/dist/core/extensions/loader-core.js +6 -0
- package/dist/core/extensions/loader-core.js.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.d.ts +8 -1
- package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.js +10 -4
- package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
- package/dist/core/extensions/provider-types.d.ts +2 -7
- package/dist/core/extensions/provider-types.d.ts.map +1 -1
- package/dist/core/extensions/provider-types.js.map +1 -1
- package/dist/core/footer-data-provider.d.ts +6 -0
- package/dist/core/footer-data-provider.d.ts.map +1 -1
- package/dist/core/footer-data-provider.js +72 -29
- package/dist/core/footer-data-provider.js.map +1 -1
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js +5 -5
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/messages.d.ts +9 -0
- package/dist/core/messages.d.ts.map +1 -1
- package/dist/core/messages.js +100 -18
- package/dist/core/messages.js.map +1 -1
- package/dist/core/model-registry-builtins.d.ts.map +1 -1
- package/dist/core/model-registry-builtins.js +5 -0
- package/dist/core/model-registry-builtins.js.map +1 -1
- package/dist/core/model-registry-custom-loader.d.ts.map +1 -1
- package/dist/core/model-registry-custom-loader.js +49 -8
- package/dist/core/model-registry-custom-loader.js.map +1 -1
- package/dist/core/model-registry-dynamic.d.ts.map +1 -1
- package/dist/core/model-registry-dynamic.js +11 -5
- package/dist/core/model-registry-dynamic.js.map +1 -1
- package/dist/core/model-registry-loader.d.ts.map +1 -1
- package/dist/core/model-registry-loader.js +8 -0
- package/dist/core/model-registry-loader.js.map +1 -1
- package/dist/core/model-registry-schemas.d.ts +93 -8
- package/dist/core/model-registry-schemas.d.ts.map +1 -1
- package/dist/core/model-registry-schemas.js +24 -12
- package/dist/core/model-registry-schemas.js.map +1 -1
- package/dist/core/model-registry-types.d.ts +7 -6
- package/dist/core/model-registry-types.d.ts.map +1 -1
- package/dist/core/model-registry-types.js.map +1 -1
- package/dist/core/model-registry.d.ts +5 -0
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +23 -0
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-resolver-cli.d.ts.map +1 -1
- package/dist/core/model-resolver-cli.js +33 -5
- package/dist/core/model-resolver-cli.js.map +1 -1
- package/dist/core/model-resolver-initial.d.ts +6 -1
- package/dist/core/model-resolver-initial.d.ts.map +1 -1
- package/dist/core/model-resolver-initial.js +12 -7
- package/dist/core/model-resolver-initial.js.map +1 -1
- package/dist/core/model-resolver-scope.d.ts +9 -0
- package/dist/core/model-resolver-scope.d.ts.map +1 -1
- package/dist/core/model-resolver-scope.js +12 -4
- package/dist/core/model-resolver-scope.js.map +1 -1
- package/dist/core/model-resolver.d.ts +4 -3
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +2 -2
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/openai-responses-payload-sanitizer.d.ts +7 -0
- package/dist/core/openai-responses-payload-sanitizer.d.ts.map +1 -0
- package/dist/core/openai-responses-payload-sanitizer.js +74 -0
- package/dist/core/openai-responses-payload-sanitizer.js.map +1 -0
- package/dist/core/package-manager-auto-resources.d.ts +2 -2
- package/dist/core/package-manager-auto-resources.d.ts.map +1 -1
- package/dist/core/package-manager-auto-resources.js +32 -52
- package/dist/core/package-manager-auto-resources.js.map +1 -1
- package/dist/core/package-manager-resolver.d.ts.map +1 -1
- package/dist/core/package-manager-resolver.js +23 -14
- package/dist/core/package-manager-resolver.js.map +1 -1
- package/dist/core/package-manager-resource-collector.d.ts +3 -3
- package/dist/core/package-manager-resource-collector.d.ts.map +1 -1
- package/dist/core/package-manager-resource-collector.js +76 -73
- package/dist/core/package-manager-resource-collector.js.map +1 -1
- package/dist/core/package-manager-resource-files.d.ts +9 -8
- package/dist/core/package-manager-resource-files.d.ts.map +1 -1
- package/dist/core/package-manager-resource-files.js +92 -81
- package/dist/core/package-manager-resource-files.js.map +1 -1
- package/dist/core/prompt-templates-async.d.ts +3 -0
- package/dist/core/prompt-templates-async.d.ts.map +1 -0
- package/dist/core/prompt-templates-async.js +118 -0
- package/dist/core/prompt-templates-async.js.map +1 -0
- package/dist/core/provider-context-usage.d.ts +11 -0
- package/dist/core/provider-context-usage.d.ts.map +1 -0
- package/dist/core/provider-context-usage.js +58 -0
- package/dist/core/provider-context-usage.js.map +1 -0
- package/dist/core/resource-loader-assets.d.ts +3 -3
- package/dist/core/resource-loader-assets.d.ts.map +1 -1
- package/dist/core/resource-loader-assets.js +66 -83
- package/dist/core/resource-loader-assets.js.map +1 -1
- package/dist/core/resource-loader-context-files.d.ts +1 -0
- package/dist/core/resource-loader-context-files.d.ts.map +1 -1
- package/dist/core/resource-loader-context-files.js +13 -10
- package/dist/core/resource-loader-context-files.js.map +1 -1
- package/dist/core/resource-loader-core.d.ts +1 -1
- package/dist/core/resource-loader-core.d.ts.map +1 -1
- package/dist/core/resource-loader-core.js +5 -5
- package/dist/core/resource-loader-core.js.map +1 -1
- package/dist/core/resource-loader-extensions.d.ts.map +1 -1
- package/dist/core/resource-loader-extensions.js +4 -0
- package/dist/core/resource-loader-extensions.js.map +1 -1
- package/dist/core/resource-loader-reload.d.ts.map +1 -1
- package/dist/core/resource-loader-reload.js +54 -7
- package/dist/core/resource-loader-reload.js.map +1 -1
- package/dist/core/resource-loader-types.d.ts +7 -1
- package/dist/core/resource-loader-types.d.ts.map +1 -1
- package/dist/core/resource-loader-types.js.map +1 -1
- package/dist/core/sdk-types.d.ts +2 -0
- package/dist/core/sdk-types.d.ts.map +1 -1
- package/dist/core/sdk-types.js.map +1 -1
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +9 -6
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-entry-normalization.d.ts +7 -0
- package/dist/core/session-entry-normalization.d.ts.map +1 -0
- package/dist/core/session-entry-normalization.js +14 -0
- package/dist/core/session-entry-normalization.js.map +1 -0
- package/dist/core/session-manager-core.d.ts.map +1 -1
- package/dist/core/session-manager-core.js +1 -0
- package/dist/core/session-manager-core.js.map +1 -1
- package/dist/core/session-manager-history.d.ts +2 -2
- package/dist/core/session-manager-history.d.ts.map +1 -1
- package/dist/core/session-manager-history.js +127 -108
- package/dist/core/session-manager-history.js.map +1 -1
- package/dist/core/settings-manager-basic-accessors.d.ts +3 -2
- package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-basic-accessors.js +6 -0
- package/dist/core/settings-manager-basic-accessors.js.map +1 -1
- package/dist/core/settings-manager-core.d.ts.map +1 -1
- package/dist/core/settings-manager-core.js +3 -2
- package/dist/core/settings-manager-core.js.map +1 -1
- package/dist/core/settings-storage.d.ts.map +1 -1
- package/dist/core/settings-storage.js +2 -1
- package/dist/core/settings-storage.js.map +1 -1
- package/dist/core/settings-types.d.ts +2 -1
- package/dist/core/settings-types.d.ts.map +1 -1
- package/dist/core/settings-types.js.map +1 -1
- package/dist/core/skills-async.d.ts +3 -0
- package/dist/core/skills-async.d.ts.map +1 -0
- package/dist/core/skills-async.js +269 -0
- package/dist/core/skills-async.js.map +1 -0
- package/dist/core/slash-commands.d.ts +2 -0
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +141 -0
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +11 -8
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/trust-manager.d.ts +9 -0
- package/dist/core/trust-manager.d.ts.map +1 -1
- package/dist/core/trust-manager.js +44 -2
- package/dist/core/trust-manager.js.map +1 -1
- package/dist/index-extensions.d.ts +1 -1
- package/dist/index-extensions.d.ts.map +1 -1
- package/dist/index-extensions.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/main-deferred-startup.d.ts +33 -0
- package/dist/main-deferred-startup.d.ts.map +1 -0
- package/dist/main-deferred-startup.js +44 -0
- package/dist/main-deferred-startup.js.map +1 -0
- package/dist/main-early-input.d.ts +41 -0
- package/dist/main-early-input.d.ts.map +1 -0
- package/dist/main-early-input.js +154 -0
- package/dist/main-early-input.js.map +1 -0
- package/dist/main-session.d.ts.map +1 -1
- package/dist/main-session.js +1 -0
- package/dist/main-session.js.map +1 -1
- package/dist/main.d.ts +0 -6
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +47 -39
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-actions.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-actions.js +0 -1
- package/dist/modes/interactive/components/chat-session-host-actions.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-events.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-events.js +15 -0
- package/dist/modes/interactive/components/chat-session-host-events.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-options.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-options.js +3 -1
- package/dist/modes/interactive/components/settings-selector-options.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +2 -1
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-agent-events.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-agent-events.js +37 -2
- package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
- package/dist/modes/interactive/interactive-auth-login.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-auth-login.js +0 -1
- package/dist/modes/interactive/interactive-auth-login.js.map +1 -1
- package/dist/modes/interactive/interactive-autocomplete.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-autocomplete.js +21 -9
- package/dist/modes/interactive/interactive-autocomplete.js.map +1 -1
- package/dist/modes/interactive/interactive-child-ordering.d.ts +7 -0
- package/dist/modes/interactive/interactive-child-ordering.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-child-ordering.js +26 -0
- package/dist/modes/interactive/interactive-child-ordering.js.map +1 -0
- package/dist/modes/interactive/interactive-deferred-startup.d.ts +8 -1
- package/dist/modes/interactive/interactive-deferred-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-deferred-startup.js +86 -26
- package/dist/modes/interactive/interactive-deferred-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-editor-actions.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-editor-actions.js +13 -13
- package/dist/modes/interactive/interactive-editor-actions.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-runtime.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-extension-runtime.js +16 -0
- package/dist/modes/interactive/interactive-extension-runtime.js.map +1 -1
- package/dist/modes/interactive/interactive-hotkeys-debug.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-hotkeys-debug.js +4 -3
- package/dist/modes/interactive/interactive-hotkeys-debug.js.map +1 -1
- package/dist/modes/interactive/interactive-input-handling.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-input-handling.js +360 -230
- package/dist/modes/interactive/interactive-input-handling.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.d.ts +19 -4
- package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.js +46 -4
- package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.d.ts +3 -3
- package/dist/modes/interactive/interactive-mode-deps.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.js +3 -3
- package/dist/modes/interactive/interactive-mode-deps.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-surface.d.ts +27 -17
- package/dist/modes/interactive/interactive-mode-surface.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-surface.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-types.d.ts +8 -1
- package/dist/modes/interactive/interactive-mode-types.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-types.js.map +1 -1
- package/dist/modes/interactive/interactive-model-routing.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-model-routing.js +14 -10
- package/dist/modes/interactive/interactive-model-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-onboarding.d.ts +0 -9
- package/dist/modes/interactive/interactive-onboarding.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-onboarding.js +24 -201
- package/dist/modes/interactive/interactive-onboarding.js.map +1 -1
- package/dist/modes/interactive/interactive-process-lifecycle.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-process-lifecycle.js +43 -9
- package/dist/modes/interactive/interactive-process-lifecycle.js.map +1 -1
- package/dist/modes/interactive/interactive-render-chat.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-render-chat.js +93 -10
- package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
- package/dist/modes/interactive/interactive-resource-disclosure.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-resource-disclosure.js +3 -2
- package/dist/modes/interactive/interactive-resource-disclosure.js.map +1 -1
- package/dist/modes/interactive/interactive-resource-rendering.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-resource-rendering.js +10 -8
- package/dist/modes/interactive/interactive-resource-rendering.js.map +1 -1
- package/dist/modes/interactive/interactive-session-routing.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-session-routing.js +9 -5
- package/dist/modes/interactive/interactive-session-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-session-runtime.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-session-runtime.js +1 -1
- package/dist/modes/interactive/interactive-session-runtime.js.map +1 -1
- package/dist/modes/interactive/interactive-slash-commands.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-slash-commands.js +1 -1
- package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
- package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-startup.js +102 -98
- package/dist/modes/interactive/interactive-startup.js.map +1 -1
- package/dist/modes/interactive/theme/global-theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/global-theme.js +26 -2
- package/dist/modes/interactive/theme/global-theme.js.map +1 -1
- package/dist/modes/interactive/theme/theme-class.d.ts +1 -1
- package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-class.js +2 -0
- package/dist/modes/interactive/theme/theme-class.js.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.d.ts +1 -0
- package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.js +3 -0
- package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts +1 -1
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +1 -1
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/utils/child-process.d.ts +8 -1
- package/dist/utils/child-process.d.ts.map +1 -1
- package/dist/utils/child-process.js +39 -6
- package/dist/utils/child-process.js.map +1 -1
- package/dist/utils/clipboard-image.d.ts.map +1 -1
- package/dist/utils/clipboard-image.js +3 -0
- package/dist/utils/clipboard-image.js.map +1 -1
- package/dist/utils/event-loop.d.ts +7 -0
- package/dist/utils/event-loop.d.ts.map +1 -0
- package/dist/utils/event-loop.js +14 -0
- package/dist/utils/event-loop.js.map +1 -0
- package/dist/utils/fs-watch.d.ts +24 -1
- package/dist/utils/fs-watch.d.ts.map +1 -1
- package/dist/utils/fs-watch.js +60 -5
- package/dist/utils/fs-watch.js.map +1 -1
- package/dist/utils/json.d.ts +4 -0
- package/dist/utils/json.d.ts.map +1 -1
- package/dist/utils/json.js +8 -0
- package/dist/utils/json.js.map +1 -1
- package/dist/utils/module-require.d.ts +11 -0
- package/dist/utils/module-require.d.ts.map +1 -1
- package/dist/utils/module-require.js +14 -1
- package/dist/utils/module-require.js.map +1 -1
- package/dist/utils/split-launcher.d.ts +38 -0
- package/dist/utils/split-launcher.d.ts.map +1 -0
- package/dist/utils/split-launcher.js +63 -0
- package/dist/utils/split-launcher.js.map +1 -0
- package/docs/changelog.mdx +19 -0
- package/docs/compaction.md +100 -64
- package/docs/custom-provider.md +18 -5
- package/docs/development.md +4 -0
- package/docs/extensions.md +11 -2
- package/docs/json.md +3 -1
- package/docs/keybindings.md +2 -2
- package/docs/models.md +69 -10
- package/docs/providers.md +3 -2
- package/docs/quickstart.md +15 -11
- package/docs/rpc.md +5 -3
- package/docs/sdk.md +1 -1
- package/docs/settings.md +33 -3
- package/docs/subagents.md +40 -5
- package/docs/terminal-setup.md +4 -0
- package/docs/tools.md +1 -1
- package/docs/usage.md +8 -6
- package/docs/windows.md +4 -0
- package/docs/workflows.md +52 -34
- package/examples/extensions/preset.ts +2 -2
- package/examples/extensions/subagent/README.md +2 -2
- package/examples/extensions/subagent/index.ts +1 -2
- package/examples/extensions/subagent/schemas.ts +4 -1
- package/examples/sdk/12-full-control.ts +1 -1
- package/npm-shrinkwrap.json +538 -51
- package/package.json +10 -9
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-behavior.ts +0 -75
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-component.ts +0 -202
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-edit.ts +0 -97
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-editor.ts +0 -160
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-frame.ts +0 -72
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-render-modes.ts +0 -161
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-render-selectors.ts +0 -203
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-selectors.ts +0 -234
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-state.ts +0 -103
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify-types.ts +0 -29
- package/dist/builtin/subagents/src/runs/foreground/chain-clarify.ts +0 -9
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-clarify.ts +0 -117
|
@@ -8,8 +8,9 @@ import {
|
|
|
8
8
|
type GoalWorkflowInputs,
|
|
9
9
|
type GoalWorkflowOutputs,
|
|
10
10
|
type ReviewRecord,
|
|
11
|
+
type ReducerDecision,
|
|
11
12
|
} from "./goal-types.js";
|
|
12
|
-
import { writeReviewArtifact, writeReviewRoundArtifact } from "./goal-artifacts.js";
|
|
13
|
+
import { artifactSafeName, writeReviewArtifact, writeReviewRoundArtifact } from "./goal-artifacts.js";
|
|
13
14
|
import { appendLifecycleEvent, createGoalLedger, writeGoalLedger } from "./goal-ledger.js";
|
|
14
15
|
import {
|
|
15
16
|
collectRemainingWork,
|
|
@@ -17,14 +18,13 @@ import {
|
|
|
17
18
|
} from "./goal-reducer.js";
|
|
18
19
|
import { formatReviewReport, renderFinalReport } from "./goal-reports.js";
|
|
19
20
|
import {
|
|
20
|
-
|
|
21
|
-
reviewerErrorDecision,
|
|
21
|
+
parsedReviewDecisionFromResult,
|
|
22
22
|
reviewDecisionToRecord,
|
|
23
23
|
} from "./goal-review.js";
|
|
24
|
+
import { reviewerFailureText } from "./review-convergence.js";
|
|
24
25
|
import {
|
|
25
26
|
WORKER_PREFLIGHT_CONTRACT,
|
|
26
27
|
WORKER_RECEIPT_CONTRACT,
|
|
27
|
-
goalRunnerTools,
|
|
28
28
|
renderForkedGoalWorkerPrompt,
|
|
29
29
|
renderGoalContinuationPrompt,
|
|
30
30
|
renderReviewerPrompt,
|
|
@@ -76,6 +76,27 @@ type GoalWorkflowOptions = {
|
|
|
76
76
|
readonly workflowStartCwd: string;
|
|
77
77
|
};
|
|
78
78
|
|
|
79
|
+
function reviewerExecutionFailedDecision(input: {
|
|
80
|
+
readonly turn: number;
|
|
81
|
+
readonly reviewQuorum: number;
|
|
82
|
+
readonly reviews: readonly ReviewRecord[];
|
|
83
|
+
readonly reason: string;
|
|
84
|
+
}): ReducerDecision {
|
|
85
|
+
return {
|
|
86
|
+
turn: input.turn,
|
|
87
|
+
decision: "needs_human",
|
|
88
|
+
reason: input.reason,
|
|
89
|
+
complete_votes: input.reviews.filter((review) => review.decision === "complete").length,
|
|
90
|
+
review_quorum: input.reviewQuorum,
|
|
91
|
+
parsed: input.reviews.every((review) => review.parsed),
|
|
92
|
+
approved: false,
|
|
93
|
+
stopReviewLoop: false,
|
|
94
|
+
nextAction: "needs_human",
|
|
95
|
+
finalActionRemaining: false,
|
|
96
|
+
diagnostics: input.reviews.flatMap((review) => review.parse_diagnostics),
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
|
|
79
100
|
export async function runGoalWorkflow(ctx: GoalRunnerContext, options: GoalWorkflowOptions): Promise<GoalWorkflowOutputs> {
|
|
80
101
|
const inputs = ctx.inputs;
|
|
81
102
|
const createPr = options.createPr;
|
|
@@ -93,42 +114,64 @@ export async function runGoalWorkflow(ctx: GoalRunnerContext, options: GoalWorkf
|
|
|
93
114
|
const comparisonBaseBranch = normalizeBranchInput(inputs.base_branch, "origin/main");
|
|
94
115
|
const { ledger, ledgerPath, artifactDir } = await createGoalLedger(objective, acceptanceCriteria);
|
|
95
116
|
|
|
96
|
-
// Chains curated from Atomic's agentic-coding benchmark
|
|
97
|
-
// ralph-models.ts for the frontier data and drop rationale).
|
|
117
|
+
// Chains curated from Atomic's agentic-coding benchmark; see ralph-models.ts for frontier data and drop rationale.
|
|
98
118
|
const workerModelConfig = {
|
|
99
|
-
model: "openai-codex/gpt-5.
|
|
119
|
+
model: "openai-codex/gpt-5.6-sol:medium",
|
|
100
120
|
fallbackModels: [
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
121
|
+
"github-copilot/gpt-5.6-sol:medium",
|
|
122
|
+
"openai/gpt-5.6-sol:medium",
|
|
123
|
+
"openai-codex/gpt-5.5:medium",
|
|
124
|
+
"github-copilot/gpt-5.5:medium",
|
|
125
|
+
"openai/gpt-5.5:medium",
|
|
126
|
+
"anthropic/claude-fable-5:low",
|
|
127
|
+
"github-copilot/claude-opus-4.8 (1m):medium",
|
|
128
|
+
"anthropic/claude-opus-4-8:medium",
|
|
129
|
+
"cursor/gpt-5.6-sol:medium",
|
|
130
|
+
"cursor/gpt-5.5:medium",
|
|
131
|
+
"cursor/claude-fable-5:low",
|
|
132
|
+
"cursor/claude-opus-4-8-thinking:medium",
|
|
133
|
+
"cursor/grok-4.5",
|
|
134
|
+
"zai/glm-5.2:high",
|
|
135
|
+
"zai-coding-cn/glm-5.2:high",
|
|
136
|
+
"cursor/glm-5.2",
|
|
137
|
+
"openrouter/openai/gpt-5.6-sol:medium",
|
|
138
|
+
"openrouter/openai/gpt-5.5:medium",
|
|
139
|
+
"openrouter/anthropic/claude-fable-5:low",
|
|
140
|
+
"openrouter/anthropic/claude-opus-4-8:medium",
|
|
141
|
+
"openrouter/x-ai/grok-4.5",
|
|
142
|
+
"openrouter/z-ai/glm-5.2:xhigh"
|
|
112
143
|
],
|
|
113
|
-
|
|
144
|
+
excludedTools: ["ask_user_question"],
|
|
114
145
|
};
|
|
115
146
|
|
|
116
147
|
const reviewerModelConfig = {
|
|
117
|
-
model: "anthropic/claude-fable-5:
|
|
148
|
+
model: "anthropic/claude-fable-5:high",
|
|
118
149
|
fallbackModels: [
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
150
|
+
"openai-codex/gpt-5.6-sol:max",
|
|
151
|
+
"github-copilot/gpt-5.6-sol:max",
|
|
152
|
+
"openai/gpt-5.6-sol:max",
|
|
153
|
+
"openai-codex/gpt-5.5:xhigh",
|
|
154
|
+
"github-copilot/gpt-5.5:xhigh",
|
|
155
|
+
"openai/gpt-5.5:xhigh",
|
|
156
|
+
"github-copilot/claude-opus-4.8 (1m):high",
|
|
157
|
+
"anthropic/claude-opus-4-8:high",
|
|
158
|
+
"cursor/claude-fable-5:high",
|
|
159
|
+
"cursor/gpt-5.6-sol:max",
|
|
160
|
+
"cursor/gpt-5.5:high",
|
|
161
|
+
"cursor/claude-opus-4-8-thinking:high",
|
|
162
|
+
"cursor/grok-4.5",
|
|
163
|
+
"zai/glm-5.2:xhigh",
|
|
164
|
+
"zai-coding-cn/glm-5.2:xhigh",
|
|
165
|
+
"cursor/glm-5.2",
|
|
166
|
+
"openrouter/anthropic/claude-fable-5:high",
|
|
167
|
+
"openrouter/openai/gpt-5.6-sol:max",
|
|
168
|
+
"openrouter/sakana/fugu-ultra:high",
|
|
169
|
+
"openrouter/openai/gpt-5.5:xhigh",
|
|
170
|
+
"openrouter/anthropic/claude-opus-4-8:high",
|
|
171
|
+
"openrouter/x-ai/grok-4.5",
|
|
172
|
+
"openrouter/z-ai/glm-5.2:xhigh"
|
|
130
173
|
],
|
|
131
|
-
|
|
174
|
+
excludedTools: ["ask_user_question"],
|
|
132
175
|
schema: reviewDecisionSchema,
|
|
133
176
|
};
|
|
134
177
|
|
|
@@ -192,6 +235,12 @@ export async function runGoalWorkflow(ctx: GoalRunnerContext, options: GoalWorkf
|
|
|
192
235
|
reason: terminalRemainingWork,
|
|
193
236
|
complete_votes: 0,
|
|
194
237
|
review_quorum: reviewQuorum,
|
|
238
|
+
parsed: false,
|
|
239
|
+
approved: false,
|
|
240
|
+
stopReviewLoop: false,
|
|
241
|
+
nextAction: "needs_human",
|
|
242
|
+
finalActionRemaining: false,
|
|
243
|
+
diagnostics: [terminalRemainingWork],
|
|
195
244
|
});
|
|
196
245
|
appendLifecycleEvent(ledger, "status_decided", terminalRemainingWork, turn);
|
|
197
246
|
await writeGoalLedger(ledgerPath, ledger);
|
|
@@ -224,6 +273,7 @@ export async function runGoalWorkflow(ctx: GoalRunnerContext, options: GoalWorkf
|
|
|
224
273
|
comparisonBaseBranch,
|
|
225
274
|
reviewQuorum,
|
|
226
275
|
blockerThreshold,
|
|
276
|
+
createPr,
|
|
227
277
|
}),
|
|
228
278
|
reads: [ledgerPath, workTurnPath],
|
|
229
279
|
...reviewerModelConfig,
|
|
@@ -248,42 +298,48 @@ export async function runGoalWorkflow(ctx: GoalRunnerContext, options: GoalWorkf
|
|
|
248
298
|
];
|
|
249
299
|
|
|
250
300
|
let reviewResults: WorkflowTaskResult[];
|
|
301
|
+
let reviewerBatchFailed = false;
|
|
251
302
|
try {
|
|
252
303
|
reviewResults = await ctx.parallel(reviewerSteps, {
|
|
253
304
|
task: objective,
|
|
254
|
-
failFast:
|
|
305
|
+
failFast: true,
|
|
255
306
|
});
|
|
256
307
|
} catch (err) {
|
|
257
|
-
|
|
258
|
-
const structured = reviewerErrorDecision(message);
|
|
308
|
+
reviewerBatchFailed = true;
|
|
259
309
|
reviewResults = [
|
|
260
310
|
{
|
|
261
311
|
name: "reviewer-error",
|
|
262
312
|
stageName: "reviewer-error",
|
|
263
|
-
text:
|
|
264
|
-
structured,
|
|
313
|
+
text: reviewerFailureText(err),
|
|
265
314
|
},
|
|
266
315
|
];
|
|
267
316
|
}
|
|
268
317
|
|
|
269
318
|
latestReviews = await Promise.all(reviewResults.map(async (result) => {
|
|
270
319
|
const reviewerName = result.name ?? result.stageName;
|
|
271
|
-
const
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
);
|
|
275
|
-
const reviewArtifactPath = await writeReviewArtifact(
|
|
320
|
+
const normalizedReviewerName = reviewerName.replace(/-\d+$/u, "");
|
|
321
|
+
const parsed = parsedReviewDecisionFromResult(result, reviewerName);
|
|
322
|
+
const reviewArtifactPath = join(
|
|
276
323
|
artifactDir,
|
|
277
|
-
|
|
278
|
-
parsed,
|
|
279
|
-
result.text,
|
|
324
|
+
`review-${artifactSafeName(normalizedReviewerName)}.json`,
|
|
280
325
|
);
|
|
281
|
-
|
|
326
|
+
const record = reviewDecisionToRecord({
|
|
282
327
|
turn,
|
|
283
|
-
reviewer:
|
|
328
|
+
reviewer: normalizedReviewerName,
|
|
284
329
|
artifactPath: reviewArtifactPath,
|
|
285
|
-
decision: parsed,
|
|
330
|
+
decision: parsed.decision,
|
|
331
|
+
parsed: parsed.parsed,
|
|
332
|
+
diagnostics: parsed.diagnostics,
|
|
333
|
+
allowFinalActionRemaining: createPr,
|
|
286
334
|
});
|
|
335
|
+
await writeReviewArtifact(
|
|
336
|
+
artifactDir,
|
|
337
|
+
normalizedReviewerName,
|
|
338
|
+
parsed.decision,
|
|
339
|
+
result.text,
|
|
340
|
+
record.convergence_decision,
|
|
341
|
+
);
|
|
342
|
+
return record;
|
|
287
343
|
}));
|
|
288
344
|
latestReviewArtifactPaths = latestReviews.map((review) => review.artifact_path);
|
|
289
345
|
latestReviewReportPath = await writeReviewRoundArtifact(
|
|
@@ -297,12 +353,27 @@ export async function runGoalWorkflow(ctx: GoalRunnerContext, options: GoalWorkf
|
|
|
297
353
|
`Recorded ${latestReviews.length} reviewer decisions.`,
|
|
298
354
|
turn,
|
|
299
355
|
);
|
|
356
|
+
if (reviewerBatchFailed) {
|
|
357
|
+
terminalRemainingWork = collectRemainingWork(latestReviews);
|
|
358
|
+
const reason = `Reviewer execution failed before quorum could be established. Remaining work: ${terminalRemainingWork}`;
|
|
359
|
+
ledger.decisions.push(reviewerExecutionFailedDecision({
|
|
360
|
+
turn,
|
|
361
|
+
reviewQuorum,
|
|
362
|
+
reviews: latestReviews,
|
|
363
|
+
reason,
|
|
364
|
+
}));
|
|
365
|
+
ledger.status = "needs_human";
|
|
366
|
+
appendLifecycleEvent(ledger, "status_decided", reason, turn);
|
|
367
|
+
await writeGoalLedger(ledgerPath, ledger);
|
|
368
|
+
break;
|
|
369
|
+
}
|
|
300
370
|
|
|
301
371
|
const reducerOutcome = reduceGoalDecision(ledger, latestReviews, {
|
|
302
372
|
turn,
|
|
303
373
|
maxTurns,
|
|
304
374
|
reviewQuorum,
|
|
305
375
|
blockerThreshold,
|
|
376
|
+
nextActionOnComplete: createPr ? "pull-request" : "finish",
|
|
306
377
|
});
|
|
307
378
|
if (reducerOutcome.blockerObservation !== undefined) {
|
|
308
379
|
ledger.blockers.push(reducerOutcome.blockerObservation);
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { ReviewConvergenceSummary } from "./review-convergence.js";
|
|
2
|
+
|
|
1
3
|
export const DEFAULT_MAX_TURNS = 10;
|
|
2
4
|
// Goal Runner runs three independent reviewer personas; two approvals form a majority.
|
|
3
5
|
export const DEFAULT_REVIEW_QUORUM = 2;
|
|
@@ -74,6 +76,10 @@ export type ReviewRecord = ReviewDecision & {
|
|
|
74
76
|
readonly turn: number;
|
|
75
77
|
readonly reviewer: string;
|
|
76
78
|
readonly artifact_path: string;
|
|
79
|
+
readonly parsed: boolean;
|
|
80
|
+
readonly approved: boolean;
|
|
81
|
+
readonly parse_diagnostics: readonly string[];
|
|
82
|
+
readonly convergence_decision: ReviewConvergenceSummary;
|
|
77
83
|
};
|
|
78
84
|
|
|
79
85
|
export type BlockerObservation = {
|
|
@@ -82,7 +88,7 @@ export type BlockerObservation = {
|
|
|
82
88
|
readonly reviewers: readonly string[];
|
|
83
89
|
};
|
|
84
90
|
|
|
85
|
-
export type ReducerDecision = {
|
|
91
|
+
export type ReducerDecision = ReviewConvergenceSummary & {
|
|
86
92
|
readonly turn: number;
|
|
87
93
|
readonly decision: "complete" | "continue" | "blocked" | "needs_human";
|
|
88
94
|
readonly reason: string;
|
|
@@ -130,6 +136,7 @@ export type GoalWorkflowInputs = {
|
|
|
130
136
|
readonly acceptance_criteria?: string;
|
|
131
137
|
readonly max_turns: number;
|
|
132
138
|
readonly base_branch: string;
|
|
139
|
+
readonly git_worktree_dir: string;
|
|
133
140
|
readonly create_pr: boolean;
|
|
134
141
|
};
|
|
135
142
|
|
|
@@ -14,6 +14,7 @@ export type GoalWorkflowInputs = WorkflowInputValues & {
|
|
|
14
14
|
readonly acceptance_criteria?: string;
|
|
15
15
|
readonly max_turns: number;
|
|
16
16
|
readonly base_branch: string;
|
|
17
|
+
readonly git_worktree_dir: string;
|
|
17
18
|
readonly create_pr: boolean;
|
|
18
19
|
};
|
|
19
20
|
|
|
@@ -22,6 +23,7 @@ export type GoalWorkflowRunInputs = WorkflowInputValues & {
|
|
|
22
23
|
readonly acceptance_criteria?: string;
|
|
23
24
|
readonly max_turns?: number;
|
|
24
25
|
readonly base_branch?: string;
|
|
26
|
+
readonly git_worktree_dir?: string;
|
|
25
27
|
readonly create_pr?: boolean;
|
|
26
28
|
};
|
|
27
29
|
|
|
@@ -25,6 +25,11 @@ export default workflow({
|
|
|
25
25
|
default: "origin/main",
|
|
26
26
|
description: "Optional branch reviewers compare the current code delta against (default origin/main).",
|
|
27
27
|
}),
|
|
28
|
+
git_worktree_dir: Type.String({
|
|
29
|
+
default: "",
|
|
30
|
+
description:
|
|
31
|
+
"Optional Git worktree path. Must start inside a Git repo; absolute paths are used as-is, relative paths resolve from the repo root, existing Git worktrees from the invoking repository are reused/shared as-is, and missing paths are created from base_branch.",
|
|
32
|
+
}),
|
|
28
33
|
create_pr: Type.Boolean({
|
|
29
34
|
default: false,
|
|
30
35
|
description:
|
|
@@ -55,6 +60,10 @@ export default workflow({
|
|
|
55
60
|
review_report_path: Type.Optional(Type.String({ description: "JSON artifact path for the latest reviewer decision round." })),
|
|
56
61
|
pr_report: Type.Optional(Type.String({ description: "Pull-request report emitted only when create_pr=true, Goal reaches complete, and the final pull-request stage runs." })),
|
|
57
62
|
},
|
|
63
|
+
worktreeFromInputs: {
|
|
64
|
+
gitWorktreeDir: "git_worktree_dir",
|
|
65
|
+
baseBranch: "base_branch",
|
|
66
|
+
},
|
|
58
67
|
run: async (ctx) => {
|
|
59
68
|
const workflowCtx = ctx;
|
|
60
69
|
const workflowStartCwd = workflowCtx.cwd ?? process.cwd();
|
|
@@ -40,6 +40,7 @@ export type GoalWorkflowInputs = WorkflowInputValues & {
|
|
|
40
40
|
readonly acceptance_criteria?: string;
|
|
41
41
|
readonly max_turns: number;
|
|
42
42
|
readonly base_branch: string;
|
|
43
|
+
readonly git_worktree_dir: string;
|
|
43
44
|
readonly create_pr: boolean;
|
|
44
45
|
};
|
|
45
46
|
export type GoalWorkflowRunInputs = WorkflowInputValues & {
|
|
@@ -47,6 +48,7 @@ export type GoalWorkflowRunInputs = WorkflowInputValues & {
|
|
|
47
48
|
readonly acceptance_criteria?: string;
|
|
48
49
|
readonly max_turns?: number;
|
|
49
50
|
readonly base_branch?: string;
|
|
51
|
+
readonly git_worktree_dir?: string;
|
|
50
52
|
readonly create_pr?: boolean;
|
|
51
53
|
};
|
|
52
54
|
export type GoalWorkflowOutputs = WorkflowOutputValues & {
|
|
@@ -78,14 +78,25 @@ export async function runOpenClaudeDesignWorkflow(ctx: OpenClaudeDesignContext):
|
|
|
78
78
|
// strictly dominated in Atomic's benchmark (see ralph-models.ts). Opus stays
|
|
79
79
|
// at :xhigh here — visual quality, not $/task, is the objective for design.
|
|
80
80
|
const designModelConfig = {
|
|
81
|
-
model: "anthropic/claude-fable-5:
|
|
81
|
+
model: "anthropic/claude-fable-5:high",
|
|
82
82
|
fallbackModels: [
|
|
83
|
-
"github-copilot/claude-opus-4.8 (1m):
|
|
84
|
-
"anthropic/claude-opus-4-8:
|
|
83
|
+
"github-copilot/claude-opus-4.8 (1m):high",
|
|
84
|
+
"anthropic/claude-opus-4-8:high",
|
|
85
|
+
"cursor/claude-fable-5:high",
|
|
86
|
+
"cursor/claude-opus-4-8-thinking:high",
|
|
87
|
+
"openai-codex/gpt-5.6-sol:xhigh",
|
|
88
|
+
"github-copilot/gpt-5.6-sol:xhigh",
|
|
89
|
+
"openai/gpt-5.6-sol:xhigh",
|
|
90
|
+
"cursor/gpt-5.6-sol:xhigh",
|
|
91
|
+
"cursor/grok-4.5",
|
|
85
92
|
"zai/glm-5.2:xhigh",
|
|
86
93
|
"zai-coding-cn/glm-5.2:xhigh",
|
|
87
|
-
"
|
|
88
|
-
"openrouter/anthropic/claude-
|
|
94
|
+
"cursor/glm-5.2",
|
|
95
|
+
"openrouter/anthropic/claude-fable-5:high",
|
|
96
|
+
"openrouter/anthropic/claude-opus-4-8:high",
|
|
97
|
+
"openrouter/openai/gpt-5.6-sol:xhigh",
|
|
98
|
+
"openrouter/sakana/fugu-ultra:high",
|
|
99
|
+
"openrouter/x-ai/grok-4.5",
|
|
89
100
|
"openrouter/z-ai/glm-5.2:xhigh"
|
|
90
101
|
],
|
|
91
102
|
};
|
|
@@ -5,21 +5,31 @@ import { Type } from "typebox";
|
|
|
5
5
|
import type { WorkflowTaskResult } from "../src/shared/types.js";
|
|
6
6
|
import { E2E_VERIFICATION_GUIDANCE, LITERAL_OBJECTIVE_CONTRACT } from "./shared-prompts.js";
|
|
7
7
|
import type { ReviewDecision } from "./ralph-review-gate.js";
|
|
8
|
+
import { reviewDecisionApproved } from "./ralph-review-gate.js";
|
|
9
|
+
import {
|
|
10
|
+
parseFailureDiagnostics,
|
|
11
|
+
finalActionRemaining,
|
|
12
|
+
reviewerFailureText,
|
|
13
|
+
summarizeReviewConvergence,
|
|
14
|
+
type ParsedReviewDecision,
|
|
15
|
+
type ReviewConvergenceSummary,
|
|
16
|
+
} from "./review-convergence.js";
|
|
17
|
+
|
|
8
18
|
|
|
9
19
|
export const DEFAULT_MAX_LOOPS = 10;
|
|
10
20
|
const DEFAULT_RESEARCH_DIR = "research";
|
|
11
21
|
const IMPLEMENTATION_NOTES_FILENAME = "implementation-notes.md";
|
|
12
22
|
const QA_E2E_VIDEO_FILENAME = "qa-e2e-evidence.webm";
|
|
13
23
|
const MAX_RESEARCH_SLUG_LENGTH = 80;
|
|
14
|
-
// Reviewer fan-out launches
|
|
15
|
-
//
|
|
16
|
-
//
|
|
17
|
-
//
|
|
24
|
+
// Reviewer fan-out launches two independent reviewers; the loop stops only when
|
|
25
|
+
// both reviewers independently approve. Approval is severity-aware: a reviewer
|
|
26
|
+
// approves when it judged the patch correct, reported no reviewer_error, and
|
|
27
|
+
// filed no *blocking* (P0/P1/P2) finding. P3 nice-to-haves no longer keep the
|
|
18
28
|
// loop iterating, so a single low-priority nit (or a placeholder finding) can no
|
|
19
29
|
// longer strand an otherwise-approved patch. Requiring unanimous approval still
|
|
20
|
-
// means a blocking finding from
|
|
30
|
+
// means a blocking finding from either reviewer keeps the loop going. See
|
|
21
31
|
// ./ralph-review-gate.ts for the gate types and decision logic.
|
|
22
|
-
export const REVIEWER_COUNT =
|
|
32
|
+
export const REVIEWER_COUNT = 2;
|
|
23
33
|
|
|
24
34
|
const reviewFindingSchema = Type.Object(
|
|
25
35
|
{
|
|
@@ -200,6 +210,43 @@ export function reviewDecisionFromResult(result: WorkflowTaskResult): ReviewDeci
|
|
|
200
210
|
return result.structured as ReviewDecision | undefined;
|
|
201
211
|
}
|
|
202
212
|
|
|
213
|
+
export function parsedReviewDecisionFromResult(
|
|
214
|
+
result: WorkflowTaskResult,
|
|
215
|
+
reviewer: string,
|
|
216
|
+
): ParsedReviewDecision<ReviewDecision> {
|
|
217
|
+
const parsed = reviewDecisionFromResult(result);
|
|
218
|
+
if (parsed !== undefined) {
|
|
219
|
+
return { decision: parsed, parsed: true, diagnostics: [] };
|
|
220
|
+
}
|
|
221
|
+
const diagnostics = parseFailureDiagnostics(reviewer, result.text);
|
|
222
|
+
return {
|
|
223
|
+
decision: reviewerErrorDecision(diagnostics.join("\n")),
|
|
224
|
+
parsed: false,
|
|
225
|
+
diagnostics,
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
export function ralphReviewConvergence(args: {
|
|
230
|
+
readonly decision: ReviewDecision;
|
|
231
|
+
readonly parsed: boolean;
|
|
232
|
+
readonly diagnostics: readonly string[];
|
|
233
|
+
readonly allowFinalActionRemaining: boolean;
|
|
234
|
+
}): ReviewConvergenceSummary {
|
|
235
|
+
const approved = reviewDecisionApproved(args.decision, {
|
|
236
|
+
allowFinalActionRemaining: args.allowFinalActionRemaining,
|
|
237
|
+
});
|
|
238
|
+
const hasFinalActionRemaining = args.allowFinalActionRemaining &&
|
|
239
|
+
finalActionRemaining(args.decision.requirements_traceability);
|
|
240
|
+
return summarizeReviewConvergence({
|
|
241
|
+
parsed: args.parsed,
|
|
242
|
+
approved,
|
|
243
|
+
stopReviewLoop: args.decision.stop_review_loop,
|
|
244
|
+
nextAction: approved && hasFinalActionRemaining ? "pull-request" : approved ? "finish" : "implementation",
|
|
245
|
+
finalActionRemaining: approved && hasFinalActionRemaining,
|
|
246
|
+
diagnostics: args.diagnostics,
|
|
247
|
+
});
|
|
248
|
+
}
|
|
249
|
+
|
|
203
250
|
export function reviewerErrorDecision(error: string): ReviewDecision {
|
|
204
251
|
return {
|
|
205
252
|
findings: [],
|
|
@@ -219,14 +266,12 @@ export function reviewerErrorDecision(error: string): ReviewDecision {
|
|
|
219
266
|
}
|
|
220
267
|
|
|
221
268
|
export function reviewerErrorResult(
|
|
222
|
-
error:
|
|
269
|
+
error: unknown,
|
|
223
270
|
): WorkflowTaskResult {
|
|
224
|
-
const structured = reviewerErrorDecision(error);
|
|
225
271
|
return {
|
|
226
272
|
name: "reviewer-error",
|
|
227
273
|
stageName: "reviewer-error",
|
|
228
|
-
text:
|
|
229
|
-
structured,
|
|
274
|
+
text: reviewerFailureText(error),
|
|
230
275
|
};
|
|
231
276
|
}
|
|
232
277
|
|
|
@@ -241,14 +286,17 @@ export function artifactSafeName(value: string): string {
|
|
|
241
286
|
type ReviewArtifact = {
|
|
242
287
|
readonly reviewer: string;
|
|
243
288
|
readonly decision: ReviewDecision;
|
|
289
|
+
readonly convergence_decision: ReviewConvergenceSummary;
|
|
244
290
|
readonly raw_text: string;
|
|
245
291
|
};
|
|
246
292
|
|
|
247
293
|
type ReviewRoundArtifact = {
|
|
294
|
+
readonly convergence_decision: ReviewConvergenceSummary;
|
|
248
295
|
readonly reviews: readonly {
|
|
249
296
|
readonly reviewer: string;
|
|
250
297
|
readonly artifact_path: string;
|
|
251
298
|
readonly decision: ReviewDecision;
|
|
299
|
+
readonly convergence_decision: ReviewConvergenceSummary;
|
|
252
300
|
}[];
|
|
253
301
|
};
|
|
254
302
|
|
|
@@ -386,10 +434,10 @@ export function renderForkedOrchestratorPrompt(args: {
|
|
|
386
434
|
[
|
|
387
435
|
"output_format",
|
|
388
436
|
[
|
|
389
|
-
"After
|
|
437
|
+
"After the implementation work is complete, return Markdown with headings:",
|
|
390
438
|
"1. Research file — the path you read",
|
|
391
|
-
"2. Delegations performed — subagents
|
|
392
|
-
"3. Changes made — concrete changes
|
|
439
|
+
"2. Delegations performed — subagents used and what each completed, or none when direct work was sufficient",
|
|
440
|
+
"3. Changes made — concrete completed changes, not intentions",
|
|
393
441
|
"4. Files touched",
|
|
394
442
|
"5. Validation run / recommended",
|
|
395
443
|
"6. Deferred work or blockers",
|