@bastani/atomic 0.9.11-alpha.4 → 0.9.11-alpha.6
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 +55 -0
- package/README.md +12 -5
- package/dist/builtin/intercom/package.json +2 -2
- package/dist/builtin/mcp/CHANGELOG.md +6 -0
- package/dist/builtin/mcp/README.md +3 -3
- package/dist/builtin/mcp/cli.js +0 -1
- package/dist/builtin/mcp/config.ts +0 -2
- package/dist/builtin/mcp/package.json +3 -3
- package/dist/builtin/mcp/types.ts +0 -1
- package/dist/builtin/subagents/CHANGELOG.md +19 -0
- package/dist/builtin/subagents/README.md +10 -1
- package/dist/builtin/subagents/agents/code-simplifier.md +47 -102
- package/dist/builtin/subagents/agents/codebase-analyzer.md +27 -130
- package/dist/builtin/subagents/agents/codebase-locator.md +24 -83
- package/dist/builtin/subagents/agents/codebase-online-researcher.md +60 -259
- package/dist/builtin/subagents/agents/codebase-pattern-finder.md +29 -207
- package/dist/builtin/subagents/agents/codebase-research-analyzer.md +28 -150
- package/dist/builtin/subagents/agents/codebase-research-locator.md +21 -118
- package/dist/builtin/subagents/agents/debugger.md +29 -65
- package/dist/builtin/subagents/agents/worker.md +23 -30
- package/dist/builtin/subagents/package.json +4 -4
- package/dist/builtin/subagents/prompts/gather-context-and-clarify.md +18 -11
- package/dist/builtin/subagents/prompts/parallel-cleanup.md +34 -33
- package/dist/builtin/subagents/prompts/parallel-context-build.md +22 -36
- package/dist/builtin/subagents/prompts/parallel-handoff-plan.md +20 -52
- package/dist/builtin/subagents/prompts/parallel-research.md +17 -41
- package/dist/builtin/subagents/prompts/parallel-review.md +23 -28
- package/dist/builtin/subagents/prompts/review-loop.md +18 -27
- package/dist/builtin/subagents/skills/subagent/SKILL.md +6 -6
- package/dist/builtin/subagents/src/extension/prompt-guidance.ts +4 -1
- package/dist/builtin/subagents/src/runs/background/async-execution-chain.ts +23 -4
- package/dist/builtin/subagents/src/runs/background/async-execution-single.ts +2 -0
- package/dist/builtin/subagents/src/runs/background/async-execution-types.ts +10 -0
- package/dist/builtin/subagents/src/runs/background/subagent-runner-step.ts +1 -0
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-dynamic-step.ts +2 -0
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-runner.ts +8 -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 +6 -0
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-types.ts +2 -0
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-async.ts +7 -0
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-chain.ts +1 -0
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-resume.ts +3 -0
- package/dist/builtin/subagents/src/runs/shared/mcp-direct-tool-allowlist.ts +1 -2
- package/dist/builtin/subagents/src/runs/shared/parallel-utils.ts +1 -0
- package/dist/builtin/subagents/src/runs/shared/pi-args.ts +5 -3
- package/dist/builtin/subagents/src/shared/settings.ts +4 -0
- package/dist/builtin/web-access/package.json +2 -2
- package/dist/builtin/workflows/CHANGELOG.md +53 -0
- package/dist/builtin/workflows/README.md +72 -70
- package/dist/builtin/workflows/ambient.d.ts +0 -5
- package/dist/builtin/workflows/builtin/adversarial-verification-prompts.ts +7 -4
- package/dist/builtin/workflows/builtin/adversarial-verification-runner.ts +1 -1
- package/dist/builtin/workflows/builtin/adversarial-verification.ts +2 -1
- package/dist/builtin/workflows/builtin/classify-and-act-prompts.ts +5 -2
- package/dist/builtin/workflows/builtin/classify-and-act-runner.ts +5 -7
- package/dist/builtin/workflows/builtin/classify-and-act.ts +3 -2
- package/dist/builtin/workflows/builtin/fan-out-and-synthesize-prompts.ts +6 -3
- package/dist/builtin/workflows/builtin/fan-out-and-synthesize-runner.ts +5 -5
- package/dist/builtin/workflows/builtin/fan-out-and-synthesize.ts +3 -2
- package/dist/builtin/workflows/builtin/generate-and-filter-prompts.ts +7 -4
- package/dist/builtin/workflows/builtin/generate-and-filter-runner.ts +6 -3
- package/dist/builtin/workflows/builtin/generate-and-filter.ts +3 -2
- package/dist/builtin/workflows/builtin/goal-artifacts.ts +1 -1
- package/dist/builtin/workflows/builtin/goal-models.ts +39 -39
- package/dist/builtin/workflows/builtin/goal-orchestrator-prompts.ts +94 -0
- package/dist/builtin/workflows/builtin/goal-prompts.ts +66 -286
- package/dist/builtin/workflows/builtin/goal-reducer.ts +1 -1
- package/dist/builtin/workflows/builtin/goal-runner.ts +72 -116
- package/dist/builtin/workflows/builtin/goal.ts +9 -8
- package/dist/builtin/workflows/builtin/index.d.ts +17 -112
- package/dist/builtin/workflows/builtin/index.ts +1 -2
- package/dist/builtin/workflows/builtin/loop-until-done-prompts.ts +20 -12
- package/dist/builtin/workflows/builtin/loop-until-done-runner.ts +3 -0
- package/dist/builtin/workflows/builtin/loop-until-done.ts +3 -2
- package/dist/builtin/workflows/builtin/open-claude-design-phases.ts +52 -55
- package/dist/builtin/workflows/builtin/open-claude-design-runner.ts +45 -52
- package/dist/builtin/workflows/builtin/open-claude-design-setup.ts +41 -46
- package/dist/builtin/workflows/builtin/open-claude-design-utils.ts +16 -21
- package/dist/builtin/workflows/builtin/open-claude-design.ts +2 -1
- package/dist/builtin/workflows/builtin/ralph-core.ts +61 -57
- package/dist/builtin/workflows/builtin/ralph-forked-prompts.ts +41 -45
- package/dist/builtin/workflows/builtin/ralph-models.ts +33 -43
- package/dist/builtin/workflows/builtin/ralph-reviewer-prompt.ts +35 -117
- package/dist/builtin/workflows/builtin/ralph-runner.ts +81 -108
- package/dist/builtin/workflows/builtin/ralph.ts +2 -1
- package/dist/builtin/workflows/builtin/shared-prompts.ts +111 -80
- package/dist/builtin/workflows/builtin/steering-context.ts +51 -0
- package/dist/builtin/workflows/builtin/tournament-prompts.ts +21 -12
- package/dist/builtin/workflows/builtin/tournament-runner.ts +3 -0
- package/dist/builtin/workflows/builtin/tournament.ts +3 -2
- package/dist/builtin/workflows/package.json +2 -2
- package/dist/builtin/workflows/skills/create-spec/SKILL.md +1 -1
- package/dist/builtin/workflows/skills/impeccable/reference/hooks.md +6 -8
- package/dist/builtin/workflows/skills/impeccable/reference/live.md +3 -4
- package/dist/builtin/workflows/skills/impeccable/scripts/hook-admin.mjs +2 -20
- package/dist/builtin/workflows/skills/impeccable/scripts/hook-lib.mjs +4 -42
- package/dist/builtin/workflows/skills/impeccable/scripts/hook.mjs +3 -3
- package/dist/builtin/workflows/skills/impeccable/scripts/live-browser.js +2 -3
- package/dist/builtin/workflows/skills/impeccable/scripts/live-inject.mjs +0 -1
- package/dist/builtin/workflows/skills/impeccable/scripts/live-poll.mjs +2 -2
- package/dist/builtin/workflows/skills/impeccable/scripts/pin.mjs +4 -4
- package/dist/builtin/workflows/skills/prompt-engineer/SKILL.md +57 -252
- package/dist/builtin/workflows/skills/prompt-engineer/references/advanced_patterns.md +70 -226
- package/dist/builtin/workflows/skills/prompt-engineer/references/core_prompting.md +64 -103
- package/dist/builtin/workflows/skills/prompt-engineer/references/quality_improvement.md +81 -155
- package/dist/builtin/workflows/src/authoring.d.ts +5 -1
- package/dist/builtin/workflows/src/durable/backend.ts +68 -9
- package/dist/builtin/workflows/src/durable/boundary-lifecycle.ts +148 -0
- package/dist/builtin/workflows/src/durable/boundary-topology.ts +420 -0
- package/dist/builtin/workflows/src/durable/child-invocation.ts +14 -0
- package/dist/builtin/workflows/src/durable/child-primitive.ts +74 -44
- package/dist/builtin/workflows/src/durable/completed-catalog-stage-groups.ts +250 -0
- package/dist/builtin/workflows/src/durable/completed-catalog.ts +205 -131
- package/dist/builtin/workflows/src/durable/completed-inspection.ts +8 -2
- package/dist/builtin/workflows/src/durable/completed-subtree.ts +31 -0
- package/dist/builtin/workflows/src/durable/dbos-backend.ts +28 -24
- package/dist/builtin/workflows/src/durable/dbos-envelope.ts +130 -3
- package/dist/builtin/workflows/src/durable/dbos-metadata.ts +18 -0
- package/dist/builtin/workflows/src/durable/scoped-backend.ts +64 -17
- package/dist/builtin/workflows/src/durable/stage-primitive.ts +60 -60
- package/dist/builtin/workflows/src/durable/stage-topology-validation.ts +234 -0
- package/dist/builtin/workflows/src/durable/stage-topology.ts +53 -0
- package/dist/builtin/workflows/src/durable/tool-failure-checkpoint.ts +49 -0
- package/dist/builtin/workflows/src/durable/tool-outcome.ts +120 -0
- package/dist/builtin/workflows/src/durable/tool-primitive.ts +367 -58
- package/dist/builtin/workflows/src/durable/types.ts +97 -0
- package/dist/builtin/workflows/src/durable/ui-primitive.ts +46 -0
- package/dist/builtin/workflows/src/durable/workflow-child-result.ts +58 -0
- package/dist/builtin/workflows/src/engine/options.ts +1 -0
- package/dist/builtin/workflows/src/engine/primitives/workflow.ts +19 -10
- package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +11 -1
- package/dist/builtin/workflows/src/engine/run-durable-topology.ts +190 -18
- package/dist/builtin/workflows/src/engine/run-terminal-event.ts +37 -0
- package/dist/builtin/workflows/src/engine/run-terminal-failure.ts +50 -0
- package/dist/builtin/workflows/src/engine/run-tool-execution-tracker.ts +152 -0
- package/dist/builtin/workflows/src/engine/run-tool-node-lifecycle.ts +87 -0
- package/dist/builtin/workflows/src/engine/run.ts +111 -110
- package/dist/builtin/workflows/src/engine/runtime.ts +15 -2
- package/dist/builtin/workflows/src/extension/extension-factory.ts +1 -0
- package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +11 -0
- package/dist/builtin/workflows/src/extension/index.bundle.mjs +6599 -4776
- package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +16 -5
- package/dist/builtin/workflows/src/extension/render-result.ts +16 -2
- package/dist/builtin/workflows/src/extension/runtime-durable-resume.ts +3 -0
- package/dist/builtin/workflows/src/extension/runtime.ts +4 -0
- package/dist/builtin/workflows/src/extension/wiring.ts +3 -1
- package/dist/builtin/workflows/src/extension/workflow-command-surfaces.ts +1 -0
- package/dist/builtin/workflows/src/extension/workflow-durable-resume-command.ts +9 -3
- package/dist/builtin/workflows/src/extension/workflow-module-loader.ts +18 -3
- package/dist/builtin/workflows/src/extension/workflow-prompts.ts +27 -9
- package/dist/builtin/workflows/src/extension/workflow-status-summary.ts +43 -0
- package/dist/builtin/workflows/src/extension/workflow-targets.ts +34 -30
- package/dist/builtin/workflows/src/extension/workflow-tool-content.ts +12 -5
- package/dist/builtin/workflows/src/extension/workflow-tool-send.ts +162 -63
- package/dist/builtin/workflows/src/runs/background/run-inspect.ts +7 -1
- package/dist/builtin/workflows/src/runs/background/status.ts +18 -8
- package/dist/builtin/workflows/src/runs/background/workflow-lifecycle-aggregate.ts +3 -11
- package/dist/builtin/workflows/src/runs/foreground/executor-child-boundary.ts +24 -21
- package/dist/builtin/workflows/src/runs/foreground/executor-hil.ts +1 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-lifecycle.ts +30 -13
- package/dist/builtin/workflows/src/runs/foreground/executor-prompt-nodes.ts +102 -53
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-call.ts +13 -5
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +26 -8
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +11 -4
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-types.ts +4 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-types.ts +7 -1
- package/dist/builtin/workflows/src/runs/foreground/postmortem-stage-chat.ts +35 -1
- package/dist/builtin/workflows/src/runs/foreground/stage-control-registry.ts +136 -17
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-context.ts +12 -4
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +35 -42
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-options.ts +5 -1
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-pause.ts +195 -0
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-session-options.ts +0 -13
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-types.ts +14 -2
- package/dist/builtin/workflows/src/runs/shared/model-fallback-candidates.ts +3 -143
- package/dist/builtin/workflows/src/sdk-surface.ts +1 -1
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +6 -11
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +6 -11
- package/dist/builtin/workflows/src/shared/authoring-contract-ui.d.ts +57 -6
- package/dist/builtin/workflows/src/shared/authoring-contract-ui.ts +76 -11
- package/dist/builtin/workflows/src/shared/expanded-workflow-graph.ts +206 -116
- package/dist/builtin/workflows/src/shared/intercom-group.ts +17 -10
- package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +30 -0
- package/dist/builtin/workflows/src/shared/persistence-session-entries.ts +5 -0
- package/dist/builtin/workflows/src/shared/render-inputs-schema.ts +3 -3
- package/dist/builtin/workflows/src/shared/store-factory.ts +2 -0
- package/dist/builtin/workflows/src/shared/store-internal.ts +8 -0
- package/dist/builtin/workflows/src/shared/store-public-types.ts +8 -0
- package/dist/builtin/workflows/src/shared/store-run-methods.ts +9 -0
- package/dist/builtin/workflows/src/shared/store-stage-methods.ts +2 -0
- package/dist/builtin/workflows/src/shared/store-tool-node-methods.ts +46 -0
- package/dist/builtin/workflows/src/shared/store-types.ts +34 -0
- package/dist/builtin/workflows/src/shared/types.ts +14 -24
- package/dist/builtin/workflows/src/shared/workflow-failures-classifier.ts +11 -5
- package/dist/builtin/workflows/src/shared/workflow-failures-signals.ts +58 -0
- package/dist/builtin/workflows/src/shared/workflow-run-ownership.ts +53 -0
- package/dist/builtin/workflows/src/tui/graph-view-input.ts +2 -8
- package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +11 -4
- package/dist/builtin/workflows/src/tui/graph-view-render.ts +1 -0
- package/dist/builtin/workflows/src/tui/graph-view-state.ts +27 -9
- package/dist/builtin/workflows/src/tui/graph-view-types.ts +4 -3
- package/dist/builtin/workflows/src/tui/node-card.ts +4 -3
- package/dist/builtin/workflows/src/tui/overlay-adapter.ts +0 -4
- package/dist/builtin/workflows/src/tui/run-detail.ts +53 -17
- package/dist/builtin/workflows/src/tui/session-list.ts +8 -4
- package/dist/builtin/workflows/src/tui/stage-chat-view-render-helpers.ts +12 -0
- package/dist/builtin/workflows/src/tui/stage-chat-view-render-settings.ts +21 -1
- package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +3 -19
- package/dist/builtin/workflows/src/tui/stage-chat-view.ts +4 -2
- package/dist/builtin/workflows/src/tui/switcher.ts +13 -3
- package/dist/builtin/workflows/src/tui/workflow-attach-pane-handle.ts +1 -1
- package/dist/builtin/workflows/src/tui/workflow-attach-pane-types.ts +0 -9
- package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +16 -49
- package/dist/builtin/workflows/src/tui/workflow-status.ts +7 -0
- package/dist/builtin/workflows/src/workflows/identity.ts +1 -1
- package/dist/cli/args.d.ts +0 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +1 -20
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/config-selector.js +1 -1
- package/dist/cli/config-selector.js.map +1 -1
- package/dist/cli/list-models.d.ts.map +1 -1
- package/dist/cli/list-models.js +1 -2
- package/dist/cli/list-models.js.map +1 -1
- package/dist/cli/session-picker.d.ts.map +1 -1
- package/dist/cli/session-picker.js +2 -1
- package/dist/cli/session-picker.js.map +1 -1
- package/dist/cli/startup-ui.js +2 -2
- package/dist/cli/startup-ui.js.map +1 -1
- package/dist/config-self-update.js +1 -1
- package/dist/config-self-update.js.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +34 -10
- package/dist/config.js.map +1 -1
- package/dist/core/agent-session-accessors.d.ts.map +1 -1
- package/dist/core/agent-session-accessors.js +2 -1
- package/dist/core/agent-session-accessors.js.map +1 -1
- package/dist/core/agent-session-auto-compaction.d.ts +4 -3
- package/dist/core/agent-session-auto-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-auto-compaction.js +55 -59
- package/dist/core/agent-session-auto-compaction.js.map +1 -1
- package/dist/core/agent-session-bash.d.ts +9 -6
- package/dist/core/agent-session-bash.d.ts.map +1 -1
- package/dist/core/agent-session-bash.js +32 -13
- package/dist/core/agent-session-bash.js.map +1 -1
- package/dist/core/agent-session-compaction.d.ts +11 -1
- package/dist/core/agent-session-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-compaction.js +87 -19
- package/dist/core/agent-session-compaction.js.map +1 -1
- package/dist/core/agent-session-custom-message-commit.d.ts +14 -0
- package/dist/core/agent-session-custom-message-commit.d.ts.map +1 -0
- package/dist/core/agent-session-custom-message-commit.js +141 -0
- package/dist/core/agent-session-custom-message-commit.js.map +1 -0
- package/dist/core/agent-session-delivery-forwarding.d.ts +9 -0
- package/dist/core/agent-session-delivery-forwarding.d.ts.map +1 -0
- package/dist/core/agent-session-delivery-forwarding.js +36 -0
- package/dist/core/agent-session-delivery-forwarding.js.map +1 -0
- package/dist/core/agent-session-events.d.ts +1 -1
- package/dist/core/agent-session-events.d.ts.map +1 -1
- package/dist/core/agent-session-events.js +45 -14
- package/dist/core/agent-session-events.js.map +1 -1
- package/dist/core/agent-session-extension-bindings.d.ts +2 -6
- package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
- package/dist/core/agent-session-extension-bindings.js +18 -11
- package/dist/core/agent-session-extension-bindings.js.map +1 -1
- package/dist/core/agent-session-message-queue.d.ts +5 -2
- package/dist/core/agent-session-message-queue.d.ts.map +1 -1
- package/dist/core/agent-session-message-queue.js +91 -97
- package/dist/core/agent-session-message-queue.js.map +1 -1
- package/dist/core/agent-session-methods.d.ts +47 -39
- 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 -38
- package/dist/core/agent-session-models.d.ts.map +1 -1
- package/dist/core/agent-session-models.js +5 -147
- package/dist/core/agent-session-models.js.map +1 -1
- package/dist/core/agent-session-persistent-custom-messages.d.ts +47 -0
- package/dist/core/agent-session-persistent-custom-messages.d.ts.map +1 -0
- package/dist/core/agent-session-persistent-custom-messages.js +267 -0
- package/dist/core/agent-session-persistent-custom-messages.js.map +1 -0
- package/dist/core/agent-session-post-tool-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-post-tool-compaction.js +34 -9
- package/dist/core/agent-session-post-tool-compaction.js.map +1 -1
- package/dist/core/agent-session-prompt.d.ts +2 -0
- package/dist/core/agent-session-prompt.d.ts.map +1 -1
- package/dist/core/agent-session-prompt.js +42 -16
- package/dist/core/agent-session-prompt.js.map +1 -1
- package/dist/core/agent-session-queue-pause.d.ts +10 -0
- package/dist/core/agent-session-queue-pause.d.ts.map +1 -0
- package/dist/core/agent-session-queue-pause.js +86 -0
- package/dist/core/agent-session-queue-pause.js.map +1 -0
- package/dist/core/agent-session-retry.d.ts +0 -11
- package/dist/core/agent-session-retry.d.ts.map +1 -1
- package/dist/core/agent-session-retry.js +8 -57
- package/dist/core/agent-session-retry.js.map +1 -1
- package/dist/core/agent-session-runtime-auth.d.ts +6 -0
- package/dist/core/agent-session-runtime-auth.d.ts.map +1 -0
- package/dist/core/agent-session-runtime-auth.js +26 -0
- package/dist/core/agent-session-runtime-auth.js.map +1 -0
- package/dist/core/agent-session-runtime.d.ts +13 -2
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +32 -6
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session-services.d.ts +0 -2
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js +6 -7
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session-state.d.ts.map +1 -1
- package/dist/core/agent-session-state.js +3 -0
- package/dist/core/agent-session-state.js.map +1 -1
- package/dist/core/agent-session-tool-hooks.d.ts.map +1 -1
- package/dist/core/agent-session-tool-hooks.js +6 -1
- package/dist/core/agent-session-tool-hooks.js.map +1 -1
- package/dist/core/agent-session-tool-registry.d.ts.map +1 -1
- package/dist/core/agent-session-tool-registry.js +2 -18
- package/dist/core/agent-session-tool-registry.js.map +1 -1
- package/dist/core/agent-session-transfer.d.ts +4 -0
- package/dist/core/agent-session-transfer.d.ts.map +1 -0
- package/dist/core/agent-session-transfer.js +71 -0
- package/dist/core/agent-session-transfer.js.map +1 -0
- package/dist/core/agent-session-tree.js +1 -1
- package/dist/core/agent-session-tree.js.map +1 -1
- package/dist/core/agent-session-types.d.ts +5 -11
- package/dist/core/agent-session-types.d.ts.map +1 -1
- package/dist/core/agent-session-types.js +0 -3
- package/dist/core/agent-session-types.js.map +1 -1
- package/dist/core/agent-session.d.ts +12 -2
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +8 -2
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/atomic-guide-command.d.ts.map +1 -1
- package/dist/core/atomic-guide-command.js +31 -33
- package/dist/core/atomic-guide-command.js.map +1 -1
- package/dist/core/auth-storage.js +2 -2
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/bash-executor.d.ts +5 -3
- package/dist/core/bash-executor.d.ts.map +1 -1
- package/dist/core/bash-executor.js +5 -4
- package/dist/core/bash-executor.js.map +1 -1
- package/dist/core/builtin-packages.d.ts.map +1 -1
- package/dist/core/builtin-packages.js +0 -6
- package/dist/core/builtin-packages.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts +8 -3
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/dist/core/compaction/branch-summarization.js +17 -6
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/compaction/compaction-boundary.d.ts +18 -1
- package/dist/core/compaction/compaction-boundary.d.ts.map +1 -1
- package/dist/core/compaction/compaction-boundary.js +2 -2
- package/dist/core/compaction/compaction-boundary.js.map +1 -1
- package/dist/core/compaction/compaction-runner.d.ts +61 -6
- package/dist/core/compaction/compaction-runner.d.ts.map +1 -1
- package/dist/core/compaction/compaction-runner.js +242 -18
- package/dist/core/compaction/compaction-runner.js.map +1 -1
- package/dist/core/compaction/compaction-types.d.ts +53 -2
- package/dist/core/compaction/compaction-types.d.ts.map +1 -1
- package/dist/core/compaction/compaction-types.js.map +1 -1
- package/dist/core/compaction/fallback-planner.d.ts +64 -0
- package/dist/core/compaction/fallback-planner.d.ts.map +1 -0
- package/dist/core/compaction/fallback-planner.js +75 -0
- package/dist/core/compaction/fallback-planner.js.map +1 -0
- package/dist/core/compaction/index.d.ts +3 -0
- package/dist/core/compaction/index.d.ts.map +1 -1
- package/dist/core/compaction/index.js +3 -0
- package/dist/core/compaction/index.js.map +1 -1
- package/dist/core/compaction/planner-outcome.d.ts +86 -0
- package/dist/core/compaction/planner-outcome.d.ts.map +1 -0
- package/dist/core/compaction/planner-outcome.js +122 -0
- package/dist/core/compaction/planner-outcome.js.map +1 -0
- package/dist/core/compaction/range-planner-diagnostics.d.ts +58 -6
- package/dist/core/compaction/range-planner-diagnostics.d.ts.map +1 -1
- package/dist/core/compaction/range-planner-diagnostics.js +69 -31
- package/dist/core/compaction/range-planner-diagnostics.js.map +1 -1
- package/dist/core/compaction/range-planner.d.ts +36 -8
- package/dist/core/compaction/range-planner.d.ts.map +1 -1
- package/dist/core/compaction/range-planner.js +136 -51
- package/dist/core/compaction/range-planner.js.map +1 -1
- package/dist/core/compaction/region-trimming.d.ts +34 -0
- package/dist/core/compaction/region-trimming.d.ts.map +1 -0
- package/dist/core/compaction/region-trimming.js +73 -0
- package/dist/core/compaction/region-trimming.js.map +1 -0
- package/dist/core/compaction/transcript-serialization.d.ts +8 -1
- package/dist/core/compaction/transcript-serialization.d.ts.map +1 -1
- package/dist/core/compaction/transcript-serialization.js +78 -27
- package/dist/core/compaction/transcript-serialization.js.map +1 -1
- package/dist/core/context-tool-pairing.d.ts +19 -0
- package/dist/core/context-tool-pairing.d.ts.map +1 -0
- package/dist/core/context-tool-pairing.js +50 -0
- package/dist/core/context-tool-pairing.js.map +1 -0
- package/dist/core/diagnostics.d.ts +8 -0
- package/dist/core/diagnostics.d.ts.map +1 -1
- package/dist/core/diagnostics.js.map +1 -1
- package/dist/core/extensions/context-types.d.ts +3 -0
- package/dist/core/extensions/context-types.d.ts.map +1 -1
- package/dist/core/extensions/context-types.js.map +1 -1
- package/dist/core/extensions/index.d.ts +2 -0
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/loader-api.d.ts.map +1 -1
- package/dist/core/extensions/loader-api.js +48 -27
- package/dist/core/extensions/loader-api.js.map +1 -1
- package/dist/core/extensions/loader-runtime.d.ts +2 -4
- package/dist/core/extensions/loader-runtime.d.ts.map +1 -1
- package/dist/core/extensions/loader-runtime.js +199 -18
- package/dist/core/extensions/loader-runtime.js.map +1 -1
- package/dist/core/extensions/message-types.d.ts +7 -4
- package/dist/core/extensions/message-types.d.ts.map +1 -1
- package/dist/core/extensions/message-types.js.map +1 -1
- package/dist/core/extensions/provider-types.d.ts +9 -4
- package/dist/core/extensions/provider-types.d.ts.map +1 -1
- package/dist/core/extensions/provider-types.js.map +1 -1
- package/dist/core/extensions/runner-context.d.ts +2 -0
- package/dist/core/extensions/runner-context.d.ts.map +1 -1
- package/dist/core/extensions/runner-context.js +4 -0
- package/dist/core/extensions/runner-context.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +1 -0
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +28 -20
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/runtime-types.d.ts +25 -0
- package/dist/core/extensions/runtime-types.d.ts.map +1 -1
- package/dist/core/extensions/runtime-types.js.map +1 -1
- package/dist/core/extensions/tool-types.d.ts +7 -3
- package/dist/core/extensions/tool-types.d.ts.map +1 -1
- package/dist/core/extensions/tool-types.js.map +1 -1
- package/dist/core/extensions/ui-types.d.ts +14 -4
- package/dist/core/extensions/ui-types.d.ts.map +1 -1
- package/dist/core/extensions/ui-types.js.map +1 -1
- package/dist/core/fallback-models.d.ts +37 -0
- package/dist/core/fallback-models.d.ts.map +1 -0
- package/dist/core/fallback-models.js +48 -0
- package/dist/core/fallback-models.js.map +1 -0
- package/dist/core/flattened-tool-arguments.d.ts +4 -7
- package/dist/core/flattened-tool-arguments.d.ts.map +1 -1
- package/dist/core/flattened-tool-arguments.js +4 -7
- package/dist/core/flattened-tool-arguments.js.map +1 -1
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js +0 -5
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/messages.d.ts +14 -2
- package/dist/core/messages.d.ts.map +1 -1
- package/dist/core/messages.js +28 -4
- package/dist/core/messages.js.map +1 -1
- package/dist/core/model-capabilities.d.ts +18 -0
- package/dist/core/model-capabilities.d.ts.map +1 -0
- package/dist/core/model-capabilities.js +23 -0
- package/dist/core/model-capabilities.js.map +1 -0
- package/dist/core/model-registry-auth.d.ts.map +1 -1
- package/dist/core/model-registry-auth.js +0 -2
- package/dist/core/model-registry-auth.js.map +1 -1
- package/dist/core/model-registry-builtins.d.ts +0 -2
- package/dist/core/model-registry-builtins.d.ts.map +1 -1
- package/dist/core/model-registry-builtins.js +9 -76
- 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 +1 -12
- 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 +3 -15
- package/dist/core/model-registry-dynamic.js.map +1 -1
- package/dist/core/model-registry-extension-refresh.d.ts +23 -0
- package/dist/core/model-registry-extension-refresh.d.ts.map +1 -0
- package/dist/core/model-registry-extension-refresh.js +32 -0
- package/dist/core/model-registry-extension-refresh.js.map +1 -0
- package/dist/core/model-registry-schemas.d.ts +118 -9
- package/dist/core/model-registry-schemas.d.ts.map +1 -1
- package/dist/core/model-registry-schemas.js +10 -3
- package/dist/core/model-registry-schemas.js.map +1 -1
- package/dist/core/model-registry-types.d.ts +5 -5
- 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-validation.d.ts +7 -0
- package/dist/core/model-registry-validation.d.ts.map +1 -0
- package/dist/core/model-registry-validation.js +12 -0
- package/dist/core/model-registry-validation.js.map +1 -0
- package/dist/core/model-registry.d.ts +5 -3
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +34 -33
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-resolver-defaults.d.ts.map +1 -1
- package/dist/core/model-resolver-defaults.js +0 -1
- package/dist/core/model-resolver-defaults.js.map +1 -1
- package/dist/core/model-resolver-initial.d.ts.map +1 -1
- package/dist/core/model-resolver-initial.js +9 -0
- package/dist/core/model-resolver-initial.js.map +1 -1
- package/dist/core/model-resolver-patterns.d.ts.map +1 -1
- package/dist/core/model-resolver-patterns.js +0 -2
- package/dist/core/model-resolver-patterns.js.map +1 -1
- package/dist/core/model-resolver-scope.d.ts +2 -0
- package/dist/core/model-resolver-scope.d.ts.map +1 -1
- package/dist/core/model-resolver-scope.js +18 -4
- package/dist/core/model-resolver-scope.js.map +1 -1
- package/dist/core/model-resolver-types.d.ts +2 -0
- package/dist/core/model-resolver-types.d.ts.map +1 -1
- package/dist/core/model-resolver-types.js.map +1 -1
- package/dist/core/oauth-provider-bridge.d.ts +21 -0
- package/dist/core/oauth-provider-bridge.d.ts.map +1 -1
- package/dist/core/oauth-provider-bridge.js +68 -7
- package/dist/core/oauth-provider-bridge.js.map +1 -1
- package/dist/core/package-manager-auto-resources.d.ts.map +1 -1
- package/dist/core/package-manager-auto-resources.js +12 -4
- 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 +42 -11
- package/dist/core/package-manager-resolver.js.map +1 -1
- package/dist/core/package-manager-types.d.ts +2 -0
- package/dist/core/package-manager-types.d.ts.map +1 -1
- package/dist/core/package-manager-types.js.map +1 -1
- package/dist/core/package-manager.d.ts +1 -1
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/remote-catalog-provider.d.ts +1 -1
- package/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/dist/core/remote-catalog-provider.js +17 -11
- package/dist/core/remote-catalog-provider.js.map +1 -1
- package/dist/core/resource-loader-assets.d.ts.map +1 -1
- package/dist/core/resource-loader-assets.js +30 -4
- package/dist/core/resource-loader-assets.js.map +1 -1
- package/dist/core/resource-loader-context-files.d.ts.map +1 -1
- package/dist/core/resource-loader-context-files.js +3 -1
- package/dist/core/resource-loader-context-files.js.map +1 -1
- package/dist/core/resource-loader-core.d.ts +2 -1
- package/dist/core/resource-loader-core.d.ts.map +1 -1
- package/dist/core/resource-loader-core.js +3 -0
- package/dist/core/resource-loader-core.js.map +1 -1
- package/dist/core/resource-loader-extensions.d.ts +1 -0
- package/dist/core/resource-loader-extensions.d.ts.map +1 -1
- package/dist/core/resource-loader-extensions.js +120 -7
- package/dist/core/resource-loader-extensions.js.map +1 -1
- package/dist/core/resource-loader-package-resources.d.ts.map +1 -1
- package/dist/core/resource-loader-package-resources.js +14 -1
- package/dist/core/resource-loader-package-resources.js.map +1 -1
- package/dist/core/resource-loader-reload.d.ts.map +1 -1
- package/dist/core/resource-loader-reload.js +2 -1
- package/dist/core/resource-loader-reload.js.map +1 -1
- package/dist/core/resource-loader-source-info.d.ts.map +1 -1
- package/dist/core/resource-loader-source-info.js +6 -3
- package/dist/core/resource-loader-source-info.js.map +1 -1
- package/dist/core/sdk-types.d.ts +11 -10
- 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 +1 -0
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +13 -84
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-manager-core.d.ts +3 -3
- package/dist/core/session-manager-core.d.ts.map +1 -1
- package/dist/core/session-manager-core.js +18 -25
- package/dist/core/session-manager-core.js.map +1 -1
- package/dist/core/session-manager-entries.d.ts +2 -5
- package/dist/core/session-manager-entries.d.ts.map +1 -1
- package/dist/core/session-manager-entries.js +2 -8
- package/dist/core/session-manager-entries.js.map +1 -1
- package/dist/core/session-manager-history.d.ts +3 -3
- package/dist/core/session-manager-history.d.ts.map +1 -1
- package/dist/core/session-manager-history.js +49 -27
- package/dist/core/session-manager-history.js.map +1 -1
- package/dist/core/session-manager-storage.d.ts +6 -0
- package/dist/core/session-manager-storage.d.ts.map +1 -1
- package/dist/core/session-manager-storage.js +38 -5
- package/dist/core/session-manager-storage.js.map +1 -1
- package/dist/core/session-manager-types.d.ts +6 -6
- package/dist/core/session-manager-types.d.ts.map +1 -1
- package/dist/core/session-manager-types.js.map +1 -1
- package/dist/core/session-manager.d.ts +1 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/settings-manager-basic-accessors.d.ts +0 -4
- package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-basic-accessors.js +0 -50
- package/dist/core/settings-manager-basic-accessors.js.map +1 -1
- package/dist/core/settings-manager-core.d.ts +2 -4
- package/dist/core/settings-manager-core.d.ts.map +1 -1
- package/dist/core/settings-manager-core.js +5 -51
- package/dist/core/settings-manager-core.js.map +1 -1
- package/dist/core/settings-manager.d.ts +1 -1
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/settings-storage.d.ts +3 -1
- package/dist/core/settings-storage.d.ts.map +1 -1
- package/dist/core/settings-storage.js +22 -0
- package/dist/core/settings-storage.js.map +1 -1
- package/dist/core/settings-types.d.ts +2 -4
- package/dist/core/settings-types.d.ts.map +1 -1
- package/dist/core/settings-types.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +69 -23
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/source-info.d.ts +3 -1
- package/dist/core/source-info.d.ts.map +1 -1
- package/dist/core/source-info.js +2 -0
- package/dist/core/source-info.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +11 -0
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tools/ask-user-question/ask-user-question.js +1 -1
- package/dist/core/tools/ask-user-question/ask-user-question.js.map +1 -1
- package/dist/core/tools/bash-session-environment.d.ts +13 -0
- package/dist/core/tools/bash-session-environment.d.ts.map +1 -0
- package/dist/core/tools/bash-session-environment.js +35 -0
- package/dist/core/tools/bash-session-environment.js.map +1 -0
- package/dist/core/tools/bash.d.ts +4 -1
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +16 -8
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/tool-definition-wrapper.d.ts +3 -0
- package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
- package/dist/core/tools/tool-definition-wrapper.js +10 -2
- package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
- package/dist/extensions/index.js +1 -1
- package/dist/extensions/index.js.map +1 -1
- package/dist/extensions/llama/provider.d.ts +3 -2
- package/dist/extensions/llama/provider.d.ts.map +1 -1
- package/dist/extensions/llama/provider.js +9 -3
- package/dist/extensions/llama/provider.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 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/main-session-options.d.ts.map +1 -1
- package/dist/main-session-options.js +0 -4
- package/dist/main-session-options.js.map +1 -1
- package/dist/main-session.d.ts.map +1 -1
- package/dist/main-session.js +2 -1
- package/dist/main-session.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +1 -17
- package/dist/main.js.map +1 -1
- package/dist/modes/index.d.ts +1 -1
- package/dist/modes/index.d.ts.map +1 -1
- package/dist/modes/index.js.map +1 -1
- package/dist/modes/interactive/chat-input-actions.d.ts +1 -1
- package/dist/modes/interactive/chat-input-actions.d.ts.map +1 -1
- package/dist/modes/interactive/chat-input-actions.js +14 -96
- package/dist/modes/interactive/chat-input-actions.js.map +1 -1
- package/dist/modes/interactive/components/atomic-banner.d.ts +9 -8
- package/dist/modes/interactive/components/atomic-banner.d.ts.map +1 -1
- package/dist/modes/interactive/components/atomic-banner.js +68 -24
- package/dist/modes/interactive/components/atomic-banner.js.map +1 -1
- package/dist/modes/interactive/components/atomic-working-status.d.ts +52 -0
- package/dist/modes/interactive/components/atomic-working-status.d.ts.map +1 -0
- package/dist/modes/interactive/components/atomic-working-status.js +202 -0
- package/dist/modes/interactive/components/atomic-working-status.js.map +1 -0
- package/dist/modes/interactive/components/chat-message-renderer.js +1 -1
- package/dist/modes/interactive/components/chat-message-renderer.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 +99 -7
- package/dist/modes/interactive/components/chat-session-host-actions.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-editor.js +3 -3
- package/dist/modes/interactive/components/chat-session-host-editor.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 +52 -9
- package/dist/modes/interactive/components/chat-session-host-events.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-rendering.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-rendering.js +23 -7
- package/dist/modes/interactive/components/chat-session-host-rendering.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-runtime.d.ts +2 -0
- package/dist/modes/interactive/components/chat-session-host-runtime.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-runtime.js +67 -18
- package/dist/modes/interactive/components/chat-session-host-runtime.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-state.d.ts +9 -0
- package/dist/modes/interactive/components/chat-session-host-state.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-state.js +5 -0
- package/dist/modes/interactive/components/chat-session-host-state.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-types.d.ts +10 -0
- package/dist/modes/interactive/components/chat-session-host-types.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-types.js.map +1 -1
- package/dist/modes/interactive/components/compaction-boundary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/compaction-boundary-message.js +2 -1
- package/dist/modes/interactive/components/compaction-boundary-message.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts +3 -1
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +9 -2
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/extension-editor.d.ts +3 -2
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-editor.js +14 -43
- package/dist/modes/interactive/components/extension-editor.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +18 -13
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/startup-identity.d.ts +22 -0
- package/dist/modes/interactive/components/startup-identity.d.ts.map +1 -0
- package/dist/modes/interactive/components/startup-identity.js +58 -0
- package/dist/modes/interactive/components/startup-identity.js.map +1 -0
- package/dist/modes/interactive/components/tree-selector-content.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector-content.js +0 -6
- package/dist/modes/interactive/components/tree-selector-content.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector-model.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector-model.js +0 -1
- package/dist/modes/interactive/components/tree-selector-model.js.map +1 -1
- package/dist/modes/interactive/components/working-status.d.ts +5 -11
- package/dist/modes/interactive/components/working-status.d.ts.map +1 -1
- package/dist/modes/interactive/components/working-status.js +14 -15
- package/dist/modes/interactive/components/working-status.js.map +1 -1
- package/dist/modes/interactive/external-editor.d.ts +23 -0
- package/dist/modes/interactive/external-editor.d.ts.map +1 -0
- package/dist/modes/interactive/external-editor.js +120 -0
- package/dist/modes/interactive/external-editor.js.map +1 -0
- package/dist/modes/interactive/interactive-agent-events.js +25 -20
- package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
- package/dist/modes/interactive/interactive-auth-login.js +16 -6
- package/dist/modes/interactive/interactive-auth-login.js.map +1 -1
- package/dist/modes/interactive/interactive-auth-routing.js +3 -0
- package/dist/modes/interactive/interactive-auth-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-bash-compact.d.ts +2 -1
- package/dist/modes/interactive/interactive-bash-compact.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-bash-compact.js +8 -0
- package/dist/modes/interactive/interactive-bash-compact.js.map +1 -1
- package/dist/modes/interactive/interactive-deferred-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-deferred-startup.js +49 -19
- package/dist/modes/interactive/interactive-deferred-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-editor-actions.js +4 -3
- package/dist/modes/interactive/interactive-editor-actions.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-dialogs.js +1 -1
- package/dist/modes/interactive/interactive-extension-dialogs.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-runtime.js +3 -2
- package/dist/modes/interactive/interactive-extension-runtime.js.map +1 -1
- package/dist/modes/interactive/interactive-initial-session-binding.d.ts +4 -0
- package/dist/modes/interactive/interactive-initial-session-binding.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-initial-session-binding.js +23 -0
- package/dist/modes/interactive/interactive-initial-session-binding.js.map +1 -0
- package/dist/modes/interactive/interactive-input-handling.d.ts +2 -1
- package/dist/modes/interactive/interactive-input-handling.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-input-handling.js +27 -51
- package/dist/modes/interactive/interactive-input-handling.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.d.ts +11 -7
- package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.js +14 -6
- package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.d.ts +2 -4
- package/dist/modes/interactive/interactive-mode-deps.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.js +2 -4
- package/dist/modes/interactive/interactive-mode-deps.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-surface.d.ts +9 -8
- 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.d.ts +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +1 -0
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/interactive-model-catalog-startup.d.ts +2 -3
- package/dist/modes/interactive/interactive-model-catalog-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-model-catalog-startup.js +3 -6
- package/dist/modes/interactive/interactive-model-catalog-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-model-routing.js +26 -97
- package/dist/modes/interactive/interactive-model-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-pause.d.ts +4 -0
- package/dist/modes/interactive/interactive-pause.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-pause.js +8 -0
- package/dist/modes/interactive/interactive-pause.js.map +1 -0
- package/dist/modes/interactive/interactive-process-lifecycle.js +5 -4
- package/dist/modes/interactive/interactive-process-lifecycle.js.map +1 -1
- package/dist/modes/interactive/interactive-prompt-turn.d.ts +2 -0
- package/dist/modes/interactive/interactive-prompt-turn.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-prompt-turn.js +41 -0
- package/dist/modes/interactive/interactive-prompt-turn.js.map +1 -0
- package/dist/modes/interactive/interactive-render-chat.js +20 -8
- package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
- package/dist/modes/interactive/interactive-resource-paths.js +11 -2
- package/dist/modes/interactive/interactive-resource-paths.js.map +1 -1
- package/dist/modes/interactive/interactive-resource-rendering.js +99 -0
- package/dist/modes/interactive/interactive-resource-rendering.js.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.js +1 -1
- package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
- package/dist/modes/interactive/interactive-startup-chat-container.d.ts +20 -0
- package/dist/modes/interactive/interactive-startup-chat-container.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-startup-chat-container.js +26 -0
- package/dist/modes/interactive/interactive-startup-chat-container.js.map +1 -0
- package/dist/modes/interactive/interactive-startup.d.ts +1 -1
- package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-startup.js +30 -25
- package/dist/modes/interactive/interactive-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-summarization-retry-events.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-summarization-retry-events.js +9 -3
- package/dist/modes/interactive/interactive-summarization-retry-events.js.map +1 -1
- package/dist/modes/interactive/theme/catppuccin-frappe.json +1 -1
- package/dist/modes/interactive/theme/catppuccin-latte.json +1 -1
- package/dist/modes/interactive/theme/catppuccin-macchiato.json +1 -1
- package/dist/modes/interactive/theme/catppuccin-mocha.json +9 -1
- package/dist/modes/interactive/theme/dark.json +1 -1
- package/dist/modes/interactive/theme/light.json +1 -1
- package/dist/modes/interactive/theme/theme-class.d.ts +4 -0
- package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-class.js +7 -0
- package/dist/modes/interactive/theme/theme-class.js.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.js +4 -0
- package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.d.ts +32 -0
- package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.js +8 -0
- package/dist/modes/interactive/theme/theme-schema.js.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.json +15 -2
- package/dist/modes/interactive/whimsical-messages.d.ts +1 -0
- package/dist/modes/interactive/whimsical-messages.d.ts.map +1 -1
- package/dist/modes/interactive/whimsical-messages.js +2 -2
- package/dist/modes/interactive/whimsical-messages.js.map +1 -1
- package/dist/modes/interactive-engine/create-isolated-runtime.d.ts.map +1 -1
- package/dist/modes/interactive-engine/create-isolated-runtime.js +3 -1
- package/dist/modes/interactive-engine/create-isolated-runtime.js.map +1 -1
- package/dist/modes/interactive-engine/engine-args.d.ts.map +1 -1
- package/dist/modes/interactive-engine/engine-args.js +0 -1
- package/dist/modes/interactive-engine/engine-args.js.map +1 -1
- package/dist/modes/interactive-engine/engine-custom-ui.d.ts.map +1 -1
- package/dist/modes/interactive-engine/engine-custom-ui.js +5 -17
- package/dist/modes/interactive-engine/engine-custom-ui.js.map +1 -1
- package/dist/modes/interactive-engine/engine-render-service.d.ts.map +1 -1
- package/dist/modes/interactive-engine/engine-render-service.js +8 -19
- package/dist/modes/interactive-engine/engine-render-service.js.map +1 -1
- package/dist/modes/interactive-engine/extension-ui-bridge.d.ts +2 -0
- package/dist/modes/interactive-engine/extension-ui-bridge.d.ts.map +1 -1
- package/dist/modes/interactive-engine/extension-ui-bridge.js +3 -0
- package/dist/modes/interactive-engine/extension-ui-bridge.js.map +1 -1
- package/dist/modes/interactive-engine/isolated-auth.d.ts +10 -0
- package/dist/modes/interactive-engine/isolated-auth.d.ts.map +1 -0
- package/dist/modes/interactive-engine/isolated-auth.js +14 -0
- package/dist/modes/interactive-engine/isolated-auth.js.map +1 -0
- package/dist/modes/interactive-engine/isolated-runtime.d.ts +9 -1
- package/dist/modes/interactive-engine/isolated-runtime.d.ts.map +1 -1
- package/dist/modes/interactive-engine/isolated-runtime.js +46 -34
- package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
- package/dist/modes/interactive-engine/protocol.d.ts +1 -1
- package/dist/modes/interactive-engine/protocol.d.ts.map +1 -1
- package/dist/modes/interactive-engine/protocol.js +3 -10
- package/dist/modes/interactive-engine/protocol.js.map +1 -1
- package/dist/modes/interactive-engine/remote-model-catalog.d.ts +1 -0
- package/dist/modes/interactive-engine/remote-model-catalog.d.ts.map +1 -1
- package/dist/modes/interactive-engine/remote-model-catalog.js +10 -1
- package/dist/modes/interactive-engine/remote-model-catalog.js.map +1 -1
- package/dist/modes/interactive-engine/remote-queue-pause.d.ts +13 -0
- package/dist/modes/interactive-engine/remote-queue-pause.d.ts.map +1 -0
- package/dist/modes/interactive-engine/remote-queue-pause.js +38 -0
- package/dist/modes/interactive-engine/remote-queue-pause.js.map +1 -0
- package/dist/modes/interactive-engine/remote-renderer.d.ts +3 -1
- package/dist/modes/interactive-engine/remote-renderer.d.ts.map +1 -1
- package/dist/modes/interactive-engine/remote-renderer.js +4 -1
- package/dist/modes/interactive-engine/remote-renderer.js.map +1 -1
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js +5 -0
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/modes/rpc/jsonl.d.ts +2 -7
- package/dist/modes/rpc/jsonl.d.ts.map +1 -1
- package/dist/modes/rpc/jsonl.js +7 -24
- package/dist/modes/rpc/jsonl.js.map +1 -1
- package/dist/modes/rpc/queued-writer.d.ts +19 -0
- package/dist/modes/rpc/queued-writer.d.ts.map +1 -0
- package/dist/modes/rpc/{bounded-writer.js → queued-writer.js} +7 -30
- package/dist/modes/rpc/queued-writer.js.map +1 -0
- package/dist/modes/rpc/rpc-bash-request-owners.d.ts +24 -0
- package/dist/modes/rpc/rpc-bash-request-owners.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-bash-request-owners.js +45 -0
- package/dist/modes/rpc/rpc-bash-request-owners.js.map +1 -0
- package/dist/modes/rpc/rpc-client-api.d.ts +8 -5
- package/dist/modes/rpc/rpc-client-api.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client-api.js +10 -11
- package/dist/modes/rpc/rpc-client-api.js.map +1 -1
- package/dist/modes/rpc/rpc-client-process.d.ts +1 -4
- package/dist/modes/rpc/rpc-client-process.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client-process.js +2 -14
- package/dist/modes/rpc/rpc-client-process.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts +8 -4
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +21 -30
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-command-handler.d.ts +7 -4
- package/dist/modes/rpc/rpc-command-handler.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-command-handler.js +76 -93
- package/dist/modes/rpc/rpc-command-handler.js.map +1 -1
- package/dist/modes/rpc/rpc-input-scheduler.d.ts +3 -3
- package/dist/modes/rpc/rpc-input-scheduler.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-input-scheduler.js +7 -4
- package/dist/modes/rpc/rpc-input-scheduler.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +5 -5
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-model-fallback-prompt.d.ts +4 -0
- package/dist/modes/rpc/rpc-model-fallback-prompt.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-model-fallback-prompt.js +11 -0
- package/dist/modes/rpc/rpc-model-fallback-prompt.js.map +1 -0
- package/dist/modes/rpc/rpc-oauth-client.d.ts +22 -0
- package/dist/modes/rpc/rpc-oauth-client.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-oauth-client.js +74 -0
- package/dist/modes/rpc/rpc-oauth-client.js.map +1 -0
- package/dist/modes/rpc/rpc-oauth-interaction.d.ts +9 -0
- package/dist/modes/rpc/rpc-oauth-interaction.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-oauth-interaction.js +49 -0
- package/dist/modes/rpc/rpc-oauth-interaction.js.map +1 -0
- package/dist/modes/rpc/rpc-output-buffer.d.ts +2 -1
- package/dist/modes/rpc/rpc-output-buffer.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-output-buffer.js +4 -39
- package/dist/modes/rpc/rpc-output-buffer.js.map +1 -1
- package/dist/modes/rpc/rpc-provider-auth.d.ts +23 -0
- package/dist/modes/rpc/rpc-provider-auth.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-provider-auth.js +145 -0
- package/dist/modes/rpc/rpc-provider-auth.js.map +1 -0
- package/dist/modes/rpc/rpc-responses.d.ts +0 -1
- package/dist/modes/rpc/rpc-responses.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-responses.js +0 -14
- package/dist/modes/rpc/rpc-responses.js.map +1 -1
- package/dist/modes/rpc/rpc-types.d.ts +83 -27
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-types.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +21 -8
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/version-check.d.ts.map +1 -1
- package/dist/utils/version-check.js +3 -1
- package/dist/utils/version-check.js.map +1 -1
- package/docs/changelog.mdx +12 -1
- package/docs/compaction.md +101 -18
- package/docs/custom-provider.md +13 -4
- package/docs/docs.json +1 -0
- package/docs/environment-variables.md +37 -0
- package/docs/extensions.md +45 -9
- package/docs/index.md +1 -0
- package/docs/intercom.md +1 -1
- package/docs/json.md +4 -4
- package/docs/keybindings.md +4 -2
- package/docs/llama-cpp.md +3 -1
- package/docs/models.md +29 -43
- package/docs/providers.md +18 -24
- package/docs/quickstart.md +19 -16
- package/docs/rpc.md +38 -85
- package/docs/sdk.md +15 -22
- package/docs/session-format.md +2 -15
- package/docs/sessions.md +1 -1
- package/docs/settings.md +10 -15
- package/docs/skills.md +8 -0
- package/docs/subagents.md +24 -8
- package/docs/themes.md +10 -1
- package/docs/tui.md +3 -3
- package/docs/usage.md +30 -2
- package/docs/windows.md +1 -1
- package/docs/workflows.md +1128 -522
- package/examples/extensions/README.md +1 -1
- package/examples/extensions/handoff.ts +8 -1
- package/examples/extensions/message-renderer.ts +2 -2
- package/examples/extensions/summarize.ts +3 -0
- package/examples/extensions/working-indicator.ts +2 -2
- package/npm-shrinkwrap.json +40 -46
- package/package.json +9 -7
- package/dist/builtin/cursor/CHANGELOG.md +0 -281
- package/dist/builtin/cursor/LICENSE +0 -26
- package/dist/builtin/cursor/README.md +0 -24
- package/dist/builtin/cursor/index.ts +0 -9
- package/dist/builtin/cursor/package.json +0 -47
- package/dist/builtin/cursor/src/auth.ts +0 -352
- package/dist/builtin/cursor/src/catalog-cache.ts +0 -155
- package/dist/builtin/cursor/src/config.ts +0 -123
- package/dist/builtin/cursor/src/conversation-state.ts +0 -135
- package/dist/builtin/cursor/src/cursor-models-raw.json +0 -412
- package/dist/builtin/cursor/src/model-mapper.ts +0 -369
- package/dist/builtin/cursor/src/model-reference.ts +0 -282
- package/dist/builtin/cursor/src/models.ts +0 -54
- package/dist/builtin/cursor/src/native-loader.ts +0 -71
- package/dist/builtin/cursor/src/proto/README.md +0 -34
- package/dist/builtin/cursor/src/proto/agent_pb.ts +0 -15294
- package/dist/builtin/cursor/src/proto/protobuf-codec-base64.ts +0 -22
- package/dist/builtin/cursor/src/proto/protobuf-codec-json.ts +0 -44
- package/dist/builtin/cursor/src/proto/protobuf-codec-request.ts +0 -311
- package/dist/builtin/cursor/src/proto/protobuf-codec-wire.ts +0 -248
- package/dist/builtin/cursor/src/proto/protobuf-codec.ts +0 -200
- package/dist/builtin/cursor/src/provider.ts +0 -301
- package/dist/builtin/cursor/src/stream.ts +0 -494
- package/dist/builtin/cursor/src/transport-errors.ts +0 -74
- package/dist/builtin/cursor/src/transport-frame.ts +0 -56
- package/dist/builtin/cursor/src/transport-http2.ts +0 -122
- package/dist/builtin/cursor/src/transport-native-client.ts +0 -161
- package/dist/builtin/cursor/src/transport-run-stream.ts +0 -188
- package/dist/builtin/cursor/src/transport-timeouts.ts +0 -87
- package/dist/builtin/cursor/src/transport-types.ts +0 -143
- package/dist/builtin/cursor/src/transport.ts +0 -26
- package/dist/builtin/workflows/builtin/deep-research-codebase-runner.ts +0 -492
- package/dist/builtin/workflows/builtin/deep-research-codebase-utils.ts +0 -383
- package/dist/builtin/workflows/builtin/deep-research-codebase.d.ts +0 -35
- package/dist/builtin/workflows/builtin/deep-research-codebase.ts +0 -47
- package/dist/builtin/workflows/skills/impeccable/scripts/hook-before-edit.mjs +0 -516
- package/dist/core/context-window.d.ts +0 -54
- package/dist/core/context-window.d.ts.map +0 -1
- package/dist/core/context-window.js +0 -110
- package/dist/core/context-window.js.map +0 -1
- package/dist/core/copilot-anthropic-sse-repair.d.ts +0 -23
- package/dist/core/copilot-anthropic-sse-repair.d.ts.map +0 -1
- package/dist/core/copilot-anthropic-sse-repair.js +0 -340
- package/dist/core/copilot-anthropic-sse-repair.js.map +0 -1
- package/dist/core/copilot-errors.d.ts +0 -9
- package/dist/core/copilot-errors.d.ts.map +0 -1
- package/dist/core/copilot-errors.js +0 -32
- package/dist/core/copilot-errors.js.map +0 -1
- package/dist/core/copilot-gemini-payload-sanitizer.d.ts +0 -72
- package/dist/core/copilot-gemini-payload-sanitizer.d.ts.map +0 -1
- package/dist/core/copilot-gemini-payload-sanitizer.js +0 -296
- package/dist/core/copilot-gemini-payload-sanitizer.js.map +0 -1
- package/dist/core/copilot-gemini-reasoning.d.ts +0 -126
- package/dist/core/copilot-gemini-reasoning.d.ts.map +0 -1
- package/dist/core/copilot-gemini-reasoning.js +0 -265
- package/dist/core/copilot-gemini-reasoning.js.map +0 -1
- package/dist/core/copilot-gemini-tool-arguments.d.ts +0 -42
- package/dist/core/copilot-gemini-tool-arguments.d.ts.map +0 -1
- package/dist/core/copilot-gemini-tool-arguments.js +0 -159
- package/dist/core/copilot-gemini-tool-arguments.js.map +0 -1
- package/dist/core/copilot-hosts.d.ts +0 -12
- package/dist/core/copilot-hosts.d.ts.map +0 -1
- package/dist/core/copilot-hosts.js +0 -33
- package/dist/core/copilot-hosts.js.map +0 -1
- package/dist/core/copilot-model-catalog.d.ts +0 -114
- package/dist/core/copilot-model-catalog.d.ts.map +0 -1
- package/dist/core/copilot-model-catalog.js +0 -392
- package/dist/core/copilot-model-catalog.js.map +0 -1
- package/dist/core/copilot-model-static-fallbacks.d.ts +0 -43
- package/dist/core/copilot-model-static-fallbacks.d.ts.map +0 -1
- package/dist/core/copilot-model-static-fallbacks.js +0 -50
- package/dist/core/copilot-model-static-fallbacks.js.map +0 -1
- package/dist/core/copilot-model-synthesis.d.ts +0 -10
- package/dist/core/copilot-model-synthesis.d.ts.map +0 -1
- package/dist/core/copilot-model-synthesis.js +0 -91
- package/dist/core/copilot-model-synthesis.js.map +0 -1
- package/dist/modes/interactive/components/context-window-selector.d.ts +0 -53
- package/dist/modes/interactive/components/context-window-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/context-window-selector.js +0 -136
- package/dist/modes/interactive/components/context-window-selector.js.map +0 -1
- package/dist/modes/rpc/bounded-writer.d.ts +0 -27
- package/dist/modes/rpc/bounded-writer.d.ts.map +0 -1
- package/dist/modes/rpc/bounded-writer.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
} from "./
|
|
1
|
+
import type { RunSnapshot, StageSnapshot, StoreSnapshot, ToolNodeSnapshot } from "./store-types.js";
|
|
2
|
+
import {
|
|
3
|
+
authoritativeWorkflowChildRunId,
|
|
4
|
+
reciprocalWorkflowRootRunId,
|
|
5
|
+
} from "./workflow-run-ownership.js";
|
|
6
6
|
|
|
7
7
|
export interface ExpandedWorkflowStageTarget {
|
|
8
8
|
readonly runId: string;
|
|
@@ -15,29 +15,72 @@ export interface ExpandedWorkflowStage extends StageSnapshot {
|
|
|
15
15
|
readonly workflowGraphTarget: ExpandedWorkflowStageTarget;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
export interface ExpandedWorkflowTool extends ToolNodeSnapshot {
|
|
19
|
+
readonly runId: string;
|
|
20
|
+
readonly runName: string;
|
|
21
|
+
readonly depth: number;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export type ExpandedWorkflowNode =
|
|
25
|
+
| { readonly kind: "stage"; readonly stage: ExpandedWorkflowStage }
|
|
26
|
+
| { readonly kind: "tool"; readonly tool: ExpandedWorkflowTool };
|
|
27
|
+
|
|
18
28
|
export interface ExpandedWorkflowGraph {
|
|
29
|
+
/** Stage-only inspection/control nodes; excludes tool projections. */
|
|
19
30
|
readonly stages: readonly ExpandedWorkflowStage[];
|
|
31
|
+
readonly tools: readonly ExpandedWorkflowTool[];
|
|
32
|
+
readonly nodes: readonly ExpandedWorkflowNode[];
|
|
33
|
+
/** All stage-compatible render projections, including non-attachable tool cards. */
|
|
34
|
+
readonly renderStages: readonly ExpandedWorkflowStage[];
|
|
35
|
+
/** Stage targets only; tool nodes intentionally have no chat/control target. */
|
|
20
36
|
readonly targets: ReadonlyMap<string, ExpandedWorkflowStageTarget>;
|
|
21
37
|
}
|
|
22
38
|
|
|
23
39
|
interface ExpandedRunResult {
|
|
24
40
|
readonly stages: ExpandedWorkflowStage[];
|
|
41
|
+
readonly tools: ExpandedWorkflowTool[];
|
|
42
|
+
readonly nodes: ExpandedWorkflowNode[];
|
|
25
43
|
readonly terminalIds: readonly string[];
|
|
26
44
|
}
|
|
27
45
|
|
|
28
|
-
|
|
29
|
-
|
|
46
|
+
type LocalItem =
|
|
47
|
+
| { readonly kind: "stage"; readonly stage: StageSnapshot; readonly sourceIndex: number }
|
|
48
|
+
| { readonly kind: "tool"; readonly tool: ToolNodeSnapshot; readonly sourceIndex: number };
|
|
49
|
+
|
|
50
|
+
function virtualNodeId(runId: string, nodeId: string, isRootRun: boolean): string {
|
|
51
|
+
return isRootRun ? nodeId : `${runId}:${nodeId}`;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function localItems(run: RunSnapshot): LocalItem[] {
|
|
55
|
+
const stages = run.stages.map((stage, sourceIndex) => ({ kind: "stage" as const, stage, sourceIndex }));
|
|
56
|
+
const tools = (run.toolNodes ?? []).map((tool, sourceIndex) => ({ kind: "tool" as const, tool, sourceIndex }));
|
|
57
|
+
return [...stages, ...tools].sort((left, right) => {
|
|
58
|
+
const leftOrder = left.kind === "stage" ? left.stage.executionOrder : left.tool.executionOrder;
|
|
59
|
+
const rightOrder = right.kind === "stage" ? right.stage.executionOrder : right.tool.executionOrder;
|
|
60
|
+
if (leftOrder !== undefined || rightOrder !== undefined) return (leftOrder ?? Number.MAX_SAFE_INTEGER) - (rightOrder ?? Number.MAX_SAFE_INTEGER);
|
|
61
|
+
if (left.kind !== right.kind) return left.kind === "stage" ? -1 : 1;
|
|
62
|
+
return left.sourceIndex - right.sourceIndex;
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
function itemId(item: LocalItem): string {
|
|
67
|
+
return item.kind === "stage" ? item.stage.id : item.tool.id;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
function itemParents(item: LocalItem): readonly string[] {
|
|
71
|
+
return item.kind === "stage" ? item.stage.parentIds : item.tool.parentIds;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function localTerminalIds(items: readonly LocalItem[]): readonly string[] {
|
|
75
|
+
const parents = new Set(items.flatMap((item) => [...itemParents(item)]));
|
|
76
|
+
const terminals = items.map(itemId).filter((id) => !parents.has(id));
|
|
77
|
+
return terminals.length > 0 ? terminals : items.map(itemId);
|
|
30
78
|
}
|
|
31
79
|
|
|
32
80
|
function isTerminalNonCompletedBoundary(stage: StageSnapshot): boolean {
|
|
33
81
|
return stage.status === "failed" || stage.status === "skipped";
|
|
34
82
|
}
|
|
35
83
|
|
|
36
|
-
function childRunIdFor(stage: StageSnapshot): string | undefined {
|
|
37
|
-
if (isTerminalNonCompletedBoundary(stage)) return undefined;
|
|
38
|
-
if (stage.status === "completed") return stage.workflowChild?.runId ?? stage.workflowChildRun?.runId;
|
|
39
|
-
return stage.workflowChildRun?.runId;
|
|
40
|
-
}
|
|
41
84
|
|
|
42
85
|
function childAliasFor(stage: StageSnapshot): string | undefined {
|
|
43
86
|
if (isTerminalNonCompletedBoundary(stage)) return undefined;
|
|
@@ -45,142 +88,189 @@ function childAliasFor(stage: StageSnapshot): string | undefined {
|
|
|
45
88
|
return stage.workflowChildRun?.alias;
|
|
46
89
|
}
|
|
47
90
|
|
|
48
|
-
function
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
.map((stage) => stage.id);
|
|
56
|
-
return terminals.length > 0 ? terminals : stages.map((stage) => stage.id);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Build a view-only expanded graph for a run and any nested child workflow
|
|
61
|
-
* runs it references. Child stages are cloned with virtual ids so their local
|
|
62
|
-
* parent ids do not collide with parent-run stage ids; each virtual node keeps
|
|
63
|
-
* a target mapping back to the actual `{ runId, stageId }` for attach/control.
|
|
64
|
-
*
|
|
65
|
-
* Imported workflows are flattened: a boundary stage that wraps a child run
|
|
66
|
-
* with its own stages is NOT emitted as its own node. Instead the child's
|
|
67
|
-
* stages stand in for it, so a nested workflow reads as a flat layout with no
|
|
68
|
-
* extra "information" node marking the import boundary. The boundary's incoming
|
|
69
|
-
* parents become the child roots' parents, and stages downstream of the
|
|
70
|
-
* boundary rewire to the child's terminal stages. A boundary whose child run
|
|
71
|
-
* produced no stages of its own is kept as a single node so the import stays
|
|
72
|
-
* visible. Boundary stages are non-attachable, so dropping them loses no
|
|
73
|
-
* interactive capability.
|
|
74
|
-
*/
|
|
75
|
-
export function expandWorkflowGraph(
|
|
76
|
-
snapshot: StoreSnapshot,
|
|
77
|
-
rootRunId: string,
|
|
78
|
-
): ExpandedWorkflowGraph {
|
|
91
|
+
function projectedToolStatus(tool: ToolNodeSnapshot): StageSnapshot["status"] {
|
|
92
|
+
if (tool.status === "cached") return "completed";
|
|
93
|
+
if (tool.status === "cancelled") return "skipped";
|
|
94
|
+
return tool.status;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export function expandWorkflowGraph(snapshot: StoreSnapshot, rootRunId: string): ExpandedWorkflowGraph {
|
|
79
98
|
const runById = new Map(snapshot.runs.map((run) => [run.id, run]));
|
|
80
99
|
const root = runById.get(rootRunId);
|
|
81
|
-
if (!root) return { stages: [], targets: new Map() };
|
|
82
|
-
|
|
100
|
+
if (!root) return { stages: [], renderStages: [], tools: [], nodes: [], targets: new Map() };
|
|
83
101
|
const targets = new Map<string, ExpandedWorkflowStageTarget>();
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
102
|
+
const rootOwnerByRunId = new Map<string, string | undefined>();
|
|
103
|
+
const rootOwnerFor = (runId: string): string | undefined => {
|
|
104
|
+
if (rootOwnerByRunId.has(runId)) return rootOwnerByRunId.get(runId);
|
|
105
|
+
const owner = reciprocalWorkflowRootRunId(runById, runId);
|
|
106
|
+
rootOwnerByRunId.set(runId, owner);
|
|
107
|
+
return owner;
|
|
108
|
+
};
|
|
89
109
|
const visiting = new Set<string>();
|
|
110
|
+
const expandedChildren = new Set<string>();
|
|
90
111
|
|
|
91
|
-
const expandRun = (
|
|
92
|
-
run:
|
|
93
|
-
depth: number,
|
|
94
|
-
incomingParentIds: readonly string[],
|
|
95
|
-
): ExpandedRunResult => {
|
|
96
|
-
if (visiting.has(run.id)) return { stages: [], terminalIds: [] };
|
|
112
|
+
const expandRun = (run: RunSnapshot, depth: number, incomingParentIds: readonly string[]): ExpandedRunResult => {
|
|
113
|
+
if (visiting.has(run.id)) return { stages: [], tools: [], nodes: [], terminalIds: [] };
|
|
97
114
|
visiting.add(run.id);
|
|
98
|
-
|
|
99
115
|
const isRootRun = run.id === rootRunId;
|
|
100
|
-
const
|
|
101
|
-
const
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
116
|
+
const items = localItems(run);
|
|
117
|
+
const stages: ExpandedWorkflowStage[] = [];
|
|
118
|
+
const tools: ExpandedWorkflowTool[] = [];
|
|
119
|
+
const nodes: ExpandedWorkflowNode[] = [];
|
|
120
|
+
const stageById = new Map(run.stages.map((stage) => [stage.id, stage]));
|
|
121
|
+
const boundaryExpansions = new Map<string, ExpandedRunResult | null>();
|
|
122
|
+
|
|
123
|
+
const validChildRunFor = (stage: StageSnapshot): RunSnapshot | undefined => {
|
|
124
|
+
const childRunId = authoritativeWorkflowChildRunId(stage);
|
|
125
|
+
if (childRunId === undefined) return undefined;
|
|
126
|
+
const childRun = runById.get(childRunId);
|
|
127
|
+
const runRoot = rootOwnerFor(run.id);
|
|
128
|
+
if (
|
|
129
|
+
childRun === undefined ||
|
|
130
|
+
expandedChildren.has(childRun.id) ||
|
|
131
|
+
localItems(childRun).length === 0 ||
|
|
132
|
+
childRun.parentRunId !== run.id ||
|
|
133
|
+
childRun.parentStageId !== stage.id ||
|
|
134
|
+
runRoot === undefined ||
|
|
135
|
+
rootOwnerFor(childRun.id) !== runRoot
|
|
136
|
+
) {
|
|
137
|
+
return undefined;
|
|
138
|
+
}
|
|
139
|
+
return childRun;
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
const resolvedParentIdsFor = (item: LocalItem): string[] => {
|
|
143
|
+
const parentIds = itemParents(item);
|
|
144
|
+
if (parentIds.length === 0) return [...incomingParentIds];
|
|
145
|
+
return parentIds.flatMap((parentId) => {
|
|
146
|
+
const parentStage = stageById.get(parentId);
|
|
147
|
+
const parentExpansion = parentStage === undefined
|
|
148
|
+
? undefined
|
|
149
|
+
: boundaryExpansionFor(parentStage);
|
|
150
|
+
return parentExpansion?.terminalIds.length
|
|
151
|
+
? [...parentExpansion.terminalIds]
|
|
152
|
+
: [virtualNodeId(run.id, parentId, isRootRun)];
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
const boundaryExpansionFor = (stage: StageSnapshot): ExpandedRunResult | undefined => {
|
|
157
|
+
const cached = boundaryExpansions.get(stage.id);
|
|
158
|
+
if (cached !== undefined) return cached ?? undefined;
|
|
159
|
+
const childRun = validChildRunFor(stage);
|
|
160
|
+
if (childRun === undefined) return undefined;
|
|
161
|
+
boundaryExpansions.set(stage.id, null);
|
|
162
|
+
expandedChildren.add(childRun.id);
|
|
163
|
+
const stageItem: LocalItem = { kind: "stage", stage, sourceIndex: 0 };
|
|
164
|
+
const childExpanded = expandRun(childRun, depth + 1, resolvedParentIdsFor(stageItem));
|
|
165
|
+
if (childExpanded.stages.length === 0 || childExpanded.terminalIds.length === 0) return undefined;
|
|
166
|
+
boundaryExpansions.set(stage.id, childExpanded);
|
|
167
|
+
return childExpanded;
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
for (const item of items) {
|
|
171
|
+
const sourceId = itemId(item);
|
|
172
|
+
const id = virtualNodeId(run.id, sourceId, isRootRun);
|
|
173
|
+
const resolvedParentIds = resolvedParentIdsFor(item);
|
|
174
|
+
|
|
175
|
+
if (item.kind === "tool") {
|
|
176
|
+
const tool: ExpandedWorkflowTool = {
|
|
177
|
+
...item.tool,
|
|
178
|
+
id,
|
|
179
|
+
parentIds: Object.freeze(resolvedParentIds),
|
|
180
|
+
runId: run.id,
|
|
181
|
+
runName: run.name,
|
|
182
|
+
depth,
|
|
183
|
+
};
|
|
184
|
+
const projectionTarget: ExpandedWorkflowStageTarget = {
|
|
185
|
+
runId: run.id,
|
|
186
|
+
stageId: item.tool.id,
|
|
187
|
+
runName: run.name,
|
|
188
|
+
depth,
|
|
189
|
+
};
|
|
190
|
+
const projection: ExpandedWorkflowStage = {
|
|
191
|
+
id,
|
|
192
|
+
name: item.tool.name,
|
|
193
|
+
status: projectedToolStatus(item.tool),
|
|
194
|
+
parentIds: Object.freeze(resolvedParentIds),
|
|
195
|
+
executionOrder: item.tool.executionOrder,
|
|
196
|
+
nodeKind: "tool",
|
|
197
|
+
toolStatus: item.tool.status,
|
|
198
|
+
startedAt: item.tool.startedAt,
|
|
199
|
+
endedAt: item.tool.endedAt,
|
|
200
|
+
result: item.tool.resultSummary,
|
|
201
|
+
error: item.tool.error,
|
|
202
|
+
toolEvents: [],
|
|
203
|
+
attachable: false,
|
|
204
|
+
workflowGraphTarget: projectionTarget,
|
|
205
|
+
};
|
|
206
|
+
tools.push(tool);
|
|
207
|
+
stages.push(projection);
|
|
208
|
+
nodes.push({ kind: "tool", tool });
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
const childExpanded = boundaryExpansionFor(item.stage);
|
|
213
|
+
if (childExpanded !== undefined) {
|
|
214
|
+
stages.push(...childExpanded.stages);
|
|
215
|
+
tools.push(...childExpanded.tools);
|
|
216
|
+
nodes.push(...childExpanded.nodes);
|
|
125
217
|
continue;
|
|
126
218
|
}
|
|
127
219
|
|
|
128
|
-
// Regular stage, or a boundary whose child produced no stages of its own:
|
|
129
|
-
// emit it so the import still appears as exactly one node.
|
|
130
220
|
const target: ExpandedWorkflowStageTarget = {
|
|
131
221
|
runId: run.id,
|
|
132
|
-
stageId: stage.id,
|
|
222
|
+
stageId: item.stage.id,
|
|
133
223
|
runName: run.name,
|
|
134
224
|
depth,
|
|
135
225
|
};
|
|
136
226
|
targets.set(id, target);
|
|
137
|
-
|
|
138
|
-
...stage,
|
|
227
|
+
const stage: ExpandedWorkflowStage = {
|
|
228
|
+
...item.stage,
|
|
139
229
|
id,
|
|
140
230
|
parentIds: Object.freeze(resolvedParentIds),
|
|
141
231
|
workflowGraphTarget: target,
|
|
142
|
-
}
|
|
232
|
+
};
|
|
233
|
+
stages.push(stage);
|
|
234
|
+
nodes.push({ kind: "stage", stage });
|
|
143
235
|
}
|
|
144
236
|
|
|
145
|
-
const terminalIds =
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
237
|
+
const terminalIds = localTerminalIds(items).flatMap((sourceId) => {
|
|
238
|
+
const stage = stageById.get(sourceId);
|
|
239
|
+
const replacement = stage === undefined ? undefined : boundaryExpansionFor(stage);
|
|
240
|
+
return replacement?.terminalIds.length
|
|
241
|
+
? [...replacement.terminalIds]
|
|
242
|
+
: [virtualNodeId(run.id, sourceId, isRootRun)];
|
|
243
|
+
});
|
|
149
244
|
visiting.delete(run.id);
|
|
150
|
-
return { stages
|
|
245
|
+
return { stages, tools, nodes, terminalIds };
|
|
151
246
|
};
|
|
152
247
|
|
|
153
248
|
const expanded = expandRun(root, 0, []);
|
|
154
|
-
return {
|
|
249
|
+
return {
|
|
250
|
+
stages: expanded.stages.filter((stage) => stage.nodeKind !== "tool"),
|
|
251
|
+
renderStages: expanded.stages,
|
|
252
|
+
tools: expanded.tools,
|
|
253
|
+
nodes: expanded.nodes,
|
|
254
|
+
targets,
|
|
255
|
+
};
|
|
155
256
|
}
|
|
156
257
|
|
|
157
|
-
export function expandedStageTarget(
|
|
158
|
-
graph: ExpandedWorkflowGraph,
|
|
159
|
-
virtualStageIdValue: string,
|
|
160
|
-
): ExpandedWorkflowStageTarget | undefined {
|
|
258
|
+
export function expandedStageTarget(graph: ExpandedWorkflowGraph, virtualStageIdValue: string): ExpandedWorkflowStageTarget | undefined {
|
|
161
259
|
return graph.targets.get(virtualStageIdValue);
|
|
162
260
|
}
|
|
163
261
|
|
|
164
|
-
export function stageMatchesExpandedIdentifier(
|
|
165
|
-
stage
|
|
166
|
-
target
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
stage.id === target ||
|
|
170
|
-
stage.name === target ||
|
|
171
|
-
stage.id.startsWith(target) ||
|
|
172
|
-
stage.workflowGraphTarget.stageId === target ||
|
|
173
|
-
stage.workflowGraphTarget.stageId.startsWith(target) ||
|
|
174
|
-
stage.workflowGraphTarget.runId === target ||
|
|
175
|
-
stage.workflowGraphTarget.runId.startsWith(target)
|
|
176
|
-
);
|
|
262
|
+
export function stageMatchesExpandedIdentifier(stage: ExpandedWorkflowStage, target: string): boolean {
|
|
263
|
+
const graphTarget = stage.workflowGraphTarget;
|
|
264
|
+
return stage.id === target || stage.name === target || stage.id.startsWith(target)
|
|
265
|
+
|| graphTarget.stageId === target || graphTarget.stageId.startsWith(target)
|
|
266
|
+
|| graphTarget.runId === target || graphTarget.runId.startsWith(target);
|
|
177
267
|
}
|
|
178
268
|
|
|
179
269
|
export function expandedStageLabel(stage: ExpandedWorkflowStage): string {
|
|
180
|
-
const
|
|
181
|
-
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
|
|
270
|
+
const target = stage.workflowGraphTarget;
|
|
271
|
+
if (stage.nodeKind === "tool") return `${stage.name} (tool)`;
|
|
272
|
+
const runPrefix = target.runId.slice(0, 8);
|
|
273
|
+
const stagePrefix = target.stageId.slice(0, 8);
|
|
274
|
+
const depthPrefix = target.depth > 0 ? `${childAliasFor(stage) ?? target.runName}:` : "";
|
|
185
275
|
return `${depthPrefix}${stage.name} (${runPrefix}/${stagePrefix})`;
|
|
186
276
|
}
|
|
@@ -4,6 +4,11 @@ import type { StageOptions } from "./types.js";
|
|
|
4
4
|
/** The implicit group shared by every ungrouped session. */
|
|
5
5
|
export const DEFAULT_INTERCOM_GROUP = "default";
|
|
6
6
|
|
|
7
|
+
/** Stable non-default home group for every stage in one top-level workflow invocation. */
|
|
8
|
+
export function workflowInvocationIntercomGroup(rootRunId: string): string {
|
|
9
|
+
return `workflow:${rootRunId}`;
|
|
10
|
+
}
|
|
11
|
+
|
|
7
12
|
/** Normalize authored or agent-serialized auto-group sentinels without changing real group names. */
|
|
8
13
|
export function normalizeAutoGroupSentinel(group: string | true): string | true {
|
|
9
14
|
if (group === true) return true;
|
|
@@ -19,17 +24,19 @@ export function normalizeGroup(value?: string | null): string {
|
|
|
19
24
|
}
|
|
20
25
|
|
|
21
26
|
/**
|
|
22
|
-
* Resolve a stage's
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* here as `true`.
|
|
27
|
+
* Resolve a stage's home group. An explicit authored group wins over the
|
|
28
|
+
* workflow invocation group. A named string is trimmed; a bare `true` that
|
|
29
|
+
* survives to this point (a single, non-parallel stage) mints one fresh UUID
|
|
30
|
+
* for that stage. Parallel sets resolve `true` to one shared UUID upstream.
|
|
31
|
+
* Without a workflow group, omission keeps the legacy env/config/default path.
|
|
28
32
|
*/
|
|
29
|
-
export function resolveStageGroup(
|
|
30
|
-
|
|
33
|
+
export function resolveStageGroup(
|
|
34
|
+
stageOptions?: { group?: string | true },
|
|
35
|
+
workflowGroup?: string,
|
|
36
|
+
): string | undefined {
|
|
37
|
+
if (!stageOptions) return workflowGroup;
|
|
31
38
|
const group = stageOptions.group;
|
|
32
|
-
if (group === undefined) return
|
|
39
|
+
if (group === undefined) return workflowGroup;
|
|
33
40
|
if (group === true) return randomUUID();
|
|
34
41
|
const trimmed = group.trim();
|
|
35
42
|
return trimmed.length > 0 ? trimmed : undefined;
|
|
@@ -42,7 +49,7 @@ export function resolveStageGroup(stageOptions?: { group?: string | true }): str
|
|
|
42
49
|
*/
|
|
43
50
|
export function stageHasIntercomAccess(stageOptions?: StageOptions): boolean {
|
|
44
51
|
if (!stageOptions) return true;
|
|
45
|
-
if (stageOptions.noTools === "all"
|
|
52
|
+
if (stageOptions.noTools === "all") return false;
|
|
46
53
|
const tools = stageOptions.tools;
|
|
47
54
|
if (Array.isArray(tools) && !tools.includes("intercom")) return false;
|
|
48
55
|
const excluded = stageOptions.excludedTools;
|
|
@@ -6,6 +6,7 @@ import type {
|
|
|
6
6
|
RunStatus,
|
|
7
7
|
StageSnapshot,
|
|
8
8
|
StageStatus,
|
|
9
|
+
ToolNodeSnapshot,
|
|
9
10
|
WorkflowFailureCode,
|
|
10
11
|
WorkflowFailureDisposition,
|
|
11
12
|
WorkflowFailureKind,
|
|
@@ -263,6 +264,29 @@ function numericDuration(value: unknown): number | undefined {
|
|
|
263
264
|
return typeof value === "number" && Number.isFinite(value) && value >= 0 ? value : undefined;
|
|
264
265
|
}
|
|
265
266
|
|
|
267
|
+
function restoreFailedToolNode(value: unknown): ToolNodeSnapshot | undefined {
|
|
268
|
+
if (value === null || typeof value !== "object" || Array.isArray(value)) return undefined;
|
|
269
|
+
const node = value as Partial<ToolNodeSnapshot>;
|
|
270
|
+
if (node.kind !== "tool" || typeof node.id !== "string" || typeof node.name !== "string"
|
|
271
|
+
|| typeof node.argsHash !== "string" || typeof node.ordinal !== "number" || !Number.isInteger(node.ordinal)
|
|
272
|
+
|| !Array.isArray(node.parentIds) || !node.parentIds.every((parentId) => typeof parentId === "string")
|
|
273
|
+
|| node.status !== "failed" || typeof node.error !== "string") return undefined;
|
|
274
|
+
return {
|
|
275
|
+
kind: "tool",
|
|
276
|
+
id: node.id,
|
|
277
|
+
name: node.name,
|
|
278
|
+
argsHash: node.argsHash,
|
|
279
|
+
ordinal: node.ordinal,
|
|
280
|
+
parentIds: Object.freeze([...node.parentIds]),
|
|
281
|
+
status: "failed",
|
|
282
|
+
...(typeof node.executionOrder === "number" && Number.isFinite(node.executionOrder) ? { executionOrder: node.executionOrder } : {}),
|
|
283
|
+
...(numericTimestamp(node.startedAt) !== undefined ? { startedAt: node.startedAt } : {}),
|
|
284
|
+
...(numericTimestamp(node.endedAt) !== undefined ? { endedAt: node.endedAt } : {}),
|
|
285
|
+
error: node.error,
|
|
286
|
+
attachable: false,
|
|
287
|
+
};
|
|
288
|
+
}
|
|
289
|
+
|
|
266
290
|
export function findRunBlockedMetadata(
|
|
267
291
|
entries: readonly SessionEntry[],
|
|
268
292
|
runId: string,
|
|
@@ -342,6 +366,8 @@ export function restoreTerminalRuns(entries: readonly SessionEntry[], store: Sto
|
|
|
342
366
|
const exited = end["exited"];
|
|
343
367
|
const exitReason = end["exitReason"];
|
|
344
368
|
const resumable = end["resumable"];
|
|
369
|
+
const failedToolNodeId = end["failedToolNodeId"];
|
|
370
|
+
const failedToolNode = restoreFailedToolNode(end["failedToolNode"]);
|
|
345
371
|
const restoredAuthorExit = isWorkflowExitTerminalStatus(status) &&
|
|
346
372
|
(exited === true || typeof exitReason === "string");
|
|
347
373
|
if (status === "completed" && !restoredAuthorExit && stages.some((stage) => stage.status !== "completed")) continue;
|
|
@@ -351,6 +377,9 @@ export function restoreTerminalRuns(entries: readonly SessionEntry[], store: Sto
|
|
|
351
377
|
inputs: start.inputs,
|
|
352
378
|
status: "running",
|
|
353
379
|
stages,
|
|
380
|
+
...(typeof failedToolNodeId === "string" && failedToolNode?.id === failedToolNodeId
|
|
381
|
+
? { toolNodes: [failedToolNode] }
|
|
382
|
+
: {}),
|
|
354
383
|
startedAt: start.startTs,
|
|
355
384
|
...(runMeta.parentRunId !== undefined ? { parentRunId: runMeta.parentRunId } : {}),
|
|
356
385
|
...(runMeta.parentStageId !== undefined ? { parentStageId: runMeta.parentStageId } : {}),
|
|
@@ -384,6 +413,7 @@ export function restoreTerminalRuns(entries: readonly SessionEntry[], store: Sto
|
|
|
384
413
|
...(retryAfterMs !== undefined ? { retryAfterMs } : {}),
|
|
385
414
|
...(typeof failureMessage === "string" ? { failureMessage } : {}),
|
|
386
415
|
...(typeof failedStageId === "string" ? { failedStageId } : {}),
|
|
416
|
+
...(typeof failedToolNodeId === "string" ? { failedToolNodeId } : {}),
|
|
387
417
|
...(typeof resumable === "boolean" ? { resumable } : isWorkflowExitTerminalStatus(status) && restoredAuthorExit ? { resumable: false } : {}),
|
|
388
418
|
...(restoredAuthorExit && isWorkflowExitTerminalStatus(status) ? { exited: true } : {}),
|
|
389
419
|
...(typeof exitReason === "string" ? { exitReason } : {}),
|
|
@@ -11,6 +11,7 @@ import type {
|
|
|
11
11
|
WorkflowFailureCode,
|
|
12
12
|
WorkflowFailureDisposition,
|
|
13
13
|
WorkflowFailureKind,
|
|
14
|
+
ToolNodeSnapshot,
|
|
14
15
|
} from "./store-types.js";
|
|
15
16
|
|
|
16
17
|
// ---------------------------------------------------------------------------
|
|
@@ -112,6 +113,8 @@ export interface RunEndPayload {
|
|
|
112
113
|
readonly failureDisposition?: string;
|
|
113
114
|
readonly failureMessage?: string;
|
|
114
115
|
readonly failedStageId?: string;
|
|
116
|
+
readonly failedToolNodeId?: string;
|
|
117
|
+
readonly failedToolNode?: ToolNodeSnapshot;
|
|
115
118
|
readonly resumable?: boolean;
|
|
116
119
|
readonly retryAfterMs?: number;
|
|
117
120
|
readonly endedAt?: number;
|
|
@@ -257,6 +260,8 @@ export function appendRunEnd(api: PersistenceAPI, payload: RunEndPayload): void
|
|
|
257
260
|
...(terminalPayload.failureDisposition !== undefined ? { failureDisposition: terminalPayload.failureDisposition } : {}),
|
|
258
261
|
...(terminalPayload.failureMessage !== undefined ? { failureMessage: terminalPayload.failureMessage } : {}),
|
|
259
262
|
...(terminalPayload.failedStageId !== undefined ? { failedStageId: terminalPayload.failedStageId } : {}),
|
|
263
|
+
...(terminalPayload.failedToolNodeId !== undefined ? { failedToolNodeId: terminalPayload.failedToolNodeId } : {}),
|
|
264
|
+
...(terminalPayload.failedToolNode !== undefined ? { failedToolNode: terminalPayload.failedToolNode } : {}),
|
|
260
265
|
...(terminalPayload.resumable !== undefined ? { resumable: terminalPayload.resumable } : {}),
|
|
261
266
|
...(terminalPayload.retryAfterMs !== undefined ? { retryAfterMs: terminalPayload.retryAfterMs } : {}),
|
|
262
267
|
...(terminalPayload.endedAt !== undefined ? { endedAt: terminalPayload.endedAt } : {}),
|
|
@@ -22,13 +22,13 @@
|
|
|
22
22
|
* The layout in pretty mode mirrors bastani-inc/atomic's `renderInputsText` so a
|
|
23
23
|
* dev moving between the atomic CLI and the pi extension feels at home:
|
|
24
24
|
*
|
|
25
|
-
* INPUTS FOR
|
|
25
|
+
* INPUTS FOR repository-audit
|
|
26
26
|
*
|
|
27
27
|
* prompt text · required
|
|
28
|
-
* The
|
|
28
|
+
* The repository area to inspect.
|
|
29
29
|
*
|
|
30
30
|
* iterations number · optional
|
|
31
|
-
* Loop budget before
|
|
31
|
+
* Loop budget before stopping.
|
|
32
32
|
* default: 5
|
|
33
33
|
*
|
|
34
34
|
* focus select · required
|
|
@@ -3,12 +3,14 @@ import { createStoreContext } from "./store-internal.js";
|
|
|
3
3
|
import { createPromptStoreMethods } from "./store-prompt-methods.js";
|
|
4
4
|
import { createRunStoreMethods } from "./store-run-methods.js";
|
|
5
5
|
import { createStageStoreMethods } from "./store-stage-methods.js";
|
|
6
|
+
import { createToolNodeStoreMethods } from "./store-tool-node-methods.js";
|
|
6
7
|
|
|
7
8
|
export function createStore(): Store {
|
|
8
9
|
const context = createStoreContext();
|
|
9
10
|
return {
|
|
10
11
|
...createRunStoreMethods(context),
|
|
11
12
|
...createStageStoreMethods(context),
|
|
13
|
+
...createToolNodeStoreMethods(context),
|
|
12
14
|
...createPromptStoreMethods(context),
|
|
13
15
|
};
|
|
14
16
|
}
|
|
@@ -27,6 +27,11 @@ export const TERMINAL_STATUSES: ReadonlySet<RunStatus> = new Set([
|
|
|
27
27
|
"blocked",
|
|
28
28
|
]);
|
|
29
29
|
|
|
30
|
+
/** Shared executor/store authority for terminal workflow lifecycle states. */
|
|
31
|
+
export function isTerminalRunStatus(status: RunStatus): boolean {
|
|
32
|
+
return TERMINAL_STATUSES.has(status);
|
|
33
|
+
}
|
|
34
|
+
|
|
30
35
|
export interface ResolverEntry {
|
|
31
36
|
readonly promptId: string;
|
|
32
37
|
readonly resolve: (response: unknown) => void;
|
|
@@ -86,6 +91,7 @@ export function clearRunFailureMetadata(run: RunSnapshot): void {
|
|
|
86
91
|
delete run.failureDisposition;
|
|
87
92
|
delete run.failureMessage;
|
|
88
93
|
delete run.failedStageId;
|
|
94
|
+
delete run.failedToolNodeId;
|
|
89
95
|
delete run.resumable;
|
|
90
96
|
delete run.retryAfterMs;
|
|
91
97
|
delete run.blockedAt;
|
|
@@ -100,6 +106,7 @@ export function clearStaleBlockedRunMetadata(run: RunSnapshot, metadata: RunEndM
|
|
|
100
106
|
if (metadata?.failureDisposition === undefined) delete run.failureDisposition;
|
|
101
107
|
if (metadata?.failureMessage === undefined) delete run.failureMessage;
|
|
102
108
|
if (metadata?.failedStageId === undefined) delete run.failedStageId;
|
|
109
|
+
if (metadata?.failedToolNodeId === undefined) delete run.failedToolNodeId;
|
|
103
110
|
if (metadata?.resumable === undefined) delete run.resumable;
|
|
104
111
|
if (metadata?.retryAfterMs === undefined) delete run.retryAfterMs;
|
|
105
112
|
if (metadata?.exited === undefined) delete run.exited;
|
|
@@ -114,6 +121,7 @@ export function applyRunEndMetadata(run: RunSnapshot, metadata: RunEndMetadata):
|
|
|
114
121
|
if (metadata.retryAfterMs !== undefined) run.retryAfterMs = metadata.retryAfterMs;
|
|
115
122
|
if (metadata.failureMessage !== undefined) run.failureMessage = metadata.failureMessage;
|
|
116
123
|
if (metadata.failedStageId !== undefined) run.failedStageId = metadata.failedStageId;
|
|
124
|
+
if (metadata.failedToolNodeId !== undefined) run.failedToolNodeId = metadata.failedToolNodeId;
|
|
117
125
|
if (metadata.resumable !== undefined) run.resumable = metadata.resumable;
|
|
118
126
|
if (metadata.exited !== undefined) run.exited = metadata.exited;
|
|
119
127
|
if (metadata.exitReason !== undefined) run.exitReason = metadata.exitReason;
|
|
@@ -8,6 +8,7 @@ import type {
|
|
|
8
8
|
StageNotice,
|
|
9
9
|
StoreSnapshot,
|
|
10
10
|
ToolEvent,
|
|
11
|
+
ToolNodeSnapshot,
|
|
11
12
|
RunStatus,
|
|
12
13
|
WorkflowFailureKind,
|
|
13
14
|
WorkflowFailureCode,
|
|
@@ -24,6 +25,8 @@ export interface RunEndMetadata {
|
|
|
24
25
|
readonly failureDisposition?: WorkflowFailureDisposition;
|
|
25
26
|
readonly failureMessage?: string;
|
|
26
27
|
readonly failedStageId?: string;
|
|
28
|
+
/** Tool node whose rejection supplied the selected terminal failure. */
|
|
29
|
+
readonly failedToolNodeId?: string;
|
|
27
30
|
readonly resumable?: boolean;
|
|
28
31
|
readonly retryAfterMs?: number;
|
|
29
32
|
readonly exited?: boolean;
|
|
@@ -73,7 +76,12 @@ export interface Store {
|
|
|
73
76
|
notices(): readonly WorkflowNotice[];
|
|
74
77
|
activeRunId(): string | null;
|
|
75
78
|
recordRunStart(run: RunSnapshot): void;
|
|
79
|
+
/** Compare-and-swap a cached child run's owning boundary during durable replay. */
|
|
80
|
+
reconcileRunParentStage(runId: string, expectedParentStageId: string, parentStageId: string): boolean;
|
|
76
81
|
recordStageStart(runId: string, stage: StageSnapshot): void;
|
|
82
|
+
recordToolNodeStart(runId: string, node: ToolNodeSnapshot): boolean;
|
|
83
|
+
recordToolNodeRunning(runId: string, nodeId: string, startedAt: number): boolean;
|
|
84
|
+
recordToolNodeEnd(runId: string, nodeId: string, update: Pick<ToolNodeSnapshot, "status"> & Partial<Pick<ToolNodeSnapshot, "endedAt" | "resultSummary" | "error">>): boolean;
|
|
77
85
|
/** Link a workflow boundary stage to its live child run before that child completes. */
|
|
78
86
|
recordStageWorkflowChildRun(runId: string, stageId: string, ref: WorkflowChildRunRef): boolean;
|
|
79
87
|
recordToolStart(runId: string, stageId: string, evt: ToolEvent): void;
|
|
@@ -17,6 +17,7 @@ type RunStoreMethods = Pick<
|
|
|
17
17
|
| "notices"
|
|
18
18
|
| "activeRunId"
|
|
19
19
|
| "recordRunStart"
|
|
20
|
+
| "reconcileRunParentStage"
|
|
20
21
|
| "recordRunEnd"
|
|
21
22
|
| "recordRunBlocked"
|
|
22
23
|
| "removeRun"
|
|
@@ -65,6 +66,14 @@ export function createRunStoreMethods(context: StoreContext): RunStoreMethods {
|
|
|
65
66
|
context.bumpAndNotify();
|
|
66
67
|
},
|
|
67
68
|
|
|
69
|
+
reconcileRunParentStage(runId: string, expectedParentStageId: string, parentStageId: string): boolean {
|
|
70
|
+
const run = context.findRun(runId);
|
|
71
|
+
if (run?.parentStageId !== expectedParentStageId || parentStageId === expectedParentStageId) return false;
|
|
72
|
+
run.parentStageId = parentStageId;
|
|
73
|
+
context.bumpAndNotify();
|
|
74
|
+
return true;
|
|
75
|
+
},
|
|
76
|
+
|
|
68
77
|
recordRunEnd(
|
|
69
78
|
runId: string,
|
|
70
79
|
status: RunStatus,
|