@bastani/atomic 0.9.16-alpha.2 → 0.9.16-alpha.4
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 +14 -0
- package/dist/builtin/intercom/broker/spawn.ts +22 -2
- package/dist/builtin/intercom/index.bundle.mjs +61756 -0
- package/dist/builtin/intercom/package.json +3 -3
- package/dist/builtin/mcp/index.bundle.mjs +64963 -0
- package/dist/builtin/mcp/package.json +2 -2
- package/dist/builtin/subagents/package.json +2 -2
- package/dist/builtin/subagents/src/extension/index.bundle.mjs +85733 -0
- package/dist/builtin/web-access/index.bundle.mjs +67475 -0
- package/dist/builtin/web-access/package.json +2 -2
- package/dist/builtin/workflows/package.json +3 -3
- package/dist/builtin/workflows/src/extension/index.bundle.mjs +76480 -96363
- package/dist/builtin/workflows/src/index.bundle.mjs +73306 -0
- package/dist/config-package-identity.d.ts +22 -0
- package/dist/config-package-identity.d.ts.map +1 -0
- package/dist/config-package-identity.js +73 -0
- package/dist/config-package-identity.js.map +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +5 -10
- package/dist/config.js.map +1 -1
- package/dist/core/builtin-install-layout.d.ts +22 -0
- package/dist/core/builtin-install-layout.d.ts.map +1 -0
- package/dist/core/builtin-install-layout.js +23 -0
- package/dist/core/builtin-install-layout.js.map +1 -0
- package/dist/core/builtin-packages.d.ts.map +1 -1
- package/dist/core/builtin-packages.js +8 -32
- package/dist/core/builtin-packages.js.map +1 -1
- package/npm-shrinkwrap.json +32 -32
- package/package.json +3 -3
- package/dist/builtin/intercom/closed-workflow-stage-message.ts +0 -66
- package/dist/builtin/intercom/config.ts +0 -121
- package/dist/builtin/intercom/contact-supervisor-tool.ts +0 -328
- package/dist/builtin/intercom/foreground-detach-handoff.ts +0 -164
- package/dist/builtin/intercom/group.ts +0 -85
- package/dist/builtin/intercom/inbound-idle-queue.ts +0 -82
- package/dist/builtin/intercom/inbound-message-admission.ts +0 -79
- package/dist/builtin/intercom/incoming-message-delivery.ts +0 -49
- package/dist/builtin/intercom/index-heavy.ts +0 -539
- package/dist/builtin/intercom/index.ts +0 -503
- package/dist/builtin/intercom/intercom-test-seams.ts +0 -6
- package/dist/builtin/intercom/intercom-tool.ts +0 -602
- package/dist/builtin/intercom/intercom-utils.ts +0 -427
- package/dist/builtin/intercom/late-stage-message-router.ts +0 -148
- package/dist/builtin/intercom/lazy-heavy-proxy.ts +0 -108
- package/dist/builtin/intercom/lazy-subagent-ack.ts +0 -25
- package/dist/builtin/intercom/lazy-tool-execution.ts +0 -39
- package/dist/builtin/intercom/lifecycle-lease.ts +0 -51
- package/dist/builtin/intercom/lifecycle.ts +0 -144
- package/dist/builtin/intercom/overlay.ts +0 -96
- package/dist/builtin/intercom/parent-ask-handoff.ts +0 -72
- package/dist/builtin/intercom/reconnect-backoff.ts +0 -6
- package/dist/builtin/intercom/reply-routing.ts +0 -17
- package/dist/builtin/intercom/reply-tracker.ts +0 -110
- package/dist/builtin/intercom/reply-waiter.ts +0 -115
- package/dist/builtin/intercom/result-renderers.ts +0 -77
- package/dist/builtin/intercom/runtime-group.ts +0 -13
- package/dist/builtin/intercom/session-target.ts +0 -54
- package/dist/builtin/intercom/source-ownership.ts +0 -31
- package/dist/builtin/intercom/stable-delivery-retry.ts +0 -32
- package/dist/builtin/intercom/subagent-relay.ts +0 -290
- package/dist/builtin/intercom/supervisor-authorization-registry.ts +0 -22
- package/dist/builtin/intercom/terminal-ordering-barrier.ts +0 -247
- package/dist/builtin/intercom/types.ts +0 -66
- package/dist/builtin/intercom/ui/compose.ts +0 -159
- package/dist/builtin/intercom/ui/inline-message.ts +0 -78
- package/dist/builtin/intercom/ui/session-list.ts +0 -195
- package/dist/builtin/intercom/workflow-reply-tracker.ts +0 -19
- package/dist/builtin/intercom/workflow-stage-admission.ts +0 -43
- package/dist/builtin/intercom/workflow-stage-delivery-failure.ts +0 -77
- package/dist/builtin/mcp/agent-dir.ts +0 -30
- package/dist/builtin/mcp/apps-cancellation.ts +0 -32
- package/dist/builtin/mcp/call-tool-result.ts +0 -9
- package/dist/builtin/mcp/caller-wait.ts +0 -50
- package/dist/builtin/mcp/cli.js +0 -191
- package/dist/builtin/mcp/command-registration.ts +0 -82
- package/dist/builtin/mcp/commands.ts +0 -424
- package/dist/builtin/mcp/config-write-utils.ts +0 -104
- package/dist/builtin/mcp/config.ts +0 -498
- package/dist/builtin/mcp/consent-manager.ts +0 -64
- package/dist/builtin/mcp/direct-tool-executor.ts +0 -280
- package/dist/builtin/mcp/direct-tools.ts +0 -216
- package/dist/builtin/mcp/errors.ts +0 -219
- package/dist/builtin/mcp/glimpse-ui.ts +0 -81
- package/dist/builtin/mcp/host-html-template.ts +0 -426
- package/dist/builtin/mcp/index.ts +0 -443
- package/dist/builtin/mcp/init.ts +0 -319
- package/dist/builtin/mcp/lifecycle.ts +0 -93
- package/dist/builtin/mcp/logger.ts +0 -169
- package/dist/builtin/mcp/mcp-auth-flow.ts +0 -372
- package/dist/builtin/mcp/mcp-auth.ts +0 -297
- package/dist/builtin/mcp/mcp-callback-server.ts +0 -306
- package/dist/builtin/mcp/mcp-oauth-provider.ts +0 -324
- package/dist/builtin/mcp/mcp-panel-renderer.ts +0 -243
- package/dist/builtin/mcp/mcp-panel-state.ts +0 -227
- package/dist/builtin/mcp/mcp-panel-types.ts +0 -86
- package/dist/builtin/mcp/mcp-panel.ts +0 -393
- package/dist/builtin/mcp/mcp-setup-panel.ts +0 -502
- package/dist/builtin/mcp/metadata-cache.ts +0 -201
- package/dist/builtin/mcp/metadata-hydration.ts +0 -52
- package/dist/builtin/mcp/npx-resolver.ts +0 -425
- package/dist/builtin/mcp/oauth-handler.ts +0 -60
- package/dist/builtin/mcp/onboarding-state.ts +0 -68
- package/dist/builtin/mcp/proxy-auth.ts +0 -61
- package/dist/builtin/mcp/proxy-call.ts +0 -447
- package/dist/builtin/mcp/proxy-connect.ts +0 -78
- package/dist/builtin/mcp/proxy-info-modes.ts +0 -409
- package/dist/builtin/mcp/proxy-modes.ts +0 -3
- package/dist/builtin/mcp/proxy-types.ts +0 -3
- package/dist/builtin/mcp/resource-tools.ts +0 -17
- package/dist/builtin/mcp/sampling-handler.ts +0 -273
- package/dist/builtin/mcp/server-manager.ts +0 -372
- package/dist/builtin/mcp/session-cleanup-barrier.ts +0 -43
- package/dist/builtin/mcp/startup-warmup.ts +0 -110
- package/dist/builtin/mcp/state-lease.ts +0 -12
- package/dist/builtin/mcp/state.ts +0 -41
- package/dist/builtin/mcp/tool-call-timeout.ts +0 -101
- package/dist/builtin/mcp/tool-metadata.ts +0 -152
- package/dist/builtin/mcp/tool-registrar.ts +0 -46
- package/dist/builtin/mcp/tool-result-renderer.ts +0 -66
- package/dist/builtin/mcp/types.ts +0 -445
- package/dist/builtin/mcp/ui-resource-handler.ts +0 -145
- package/dist/builtin/mcp/ui-server-http.ts +0 -81
- package/dist/builtin/mcp/ui-server.ts +0 -499
- package/dist/builtin/mcp/ui-session.ts +0 -378
- package/dist/builtin/mcp/ui-stream-types.ts +0 -89
- package/dist/builtin/mcp/utils.ts +0 -165
- package/dist/builtin/subagents/src/agents/agent-discovery.ts +0 -116
- package/dist/builtin/subagents/src/agents/agent-loaders.ts +0 -216
- package/dist/builtin/subagents/src/agents/agent-management-helpers.ts +0 -221
- package/dist/builtin/subagents/src/agents/agent-management.ts +0 -315
- package/dist/builtin/subagents/src/agents/agent-overrides.ts +0 -450
- package/dist/builtin/subagents/src/agents/agent-paths.ts +0 -69
- package/dist/builtin/subagents/src/agents/agent-scope.ts +0 -6
- package/dist/builtin/subagents/src/agents/agent-selection.ts +0 -23
- package/dist/builtin/subagents/src/agents/agent-serializer.ts +0 -113
- package/dist/builtin/subagents/src/agents/agent-types.ts +0 -97
- package/dist/builtin/subagents/src/agents/agents.ts +0 -25
- package/dist/builtin/subagents/src/agents/frontmatter.ts +0 -74
- package/dist/builtin/subagents/src/agents/identity.ts +0 -37
- package/dist/builtin/subagents/src/agents/skills-paths.ts +0 -380
- package/dist/builtin/subagents/src/agents/skills.ts +0 -398
- package/dist/builtin/subagents/src/extension/api-lifecycle.ts +0 -64
- package/dist/builtin/subagents/src/extension/config.ts +0 -16
- package/dist/builtin/subagents/src/extension/control-notices.ts +0 -91
- package/dist/builtin/subagents/src/extension/index.ts +0 -420
- package/dist/builtin/subagents/src/extension/notification-content.ts +0 -85
- package/dist/builtin/subagents/src/extension/prompt-guidance.ts +0 -11
- package/dist/builtin/subagents/src/extension/schemas.ts +0 -208
- package/dist/builtin/subagents/src/extension/startup-maintenance.ts +0 -133
- package/dist/builtin/subagents/src/extension/tool-description.ts +0 -17
- package/dist/builtin/subagents/src/extension/tool-rendering.ts +0 -53
- package/dist/builtin/subagents/src/intercom/intercom-bridge.ts +0 -376
- package/dist/builtin/subagents/src/intercom/result-intercom.ts +0 -246
- package/dist/builtin/subagents/src/intercom/supervisor-authorization.ts +0 -30
- package/dist/builtin/subagents/src/runs/foreground/completion-notification.ts +0 -42
- package/dist/builtin/subagents/src/runs/foreground/detached-cleanup-barrier.ts +0 -26
- package/dist/builtin/subagents/src/runs/foreground/execution-detach-reservations.ts +0 -58
- package/dist/builtin/subagents/src/runs/foreground/execution-detach-route.ts +0 -19
- package/dist/builtin/subagents/src/runs/foreground/execution-intercom-detach.ts +0 -51
- package/dist/builtin/subagents/src/runs/foreground/execution-parent-ask-handoff.ts +0 -78
- package/dist/builtin/subagents/src/runs/foreground/execution-run-sync.ts +0 -1
- package/dist/builtin/subagents/src/runs/foreground/execution-updates.ts +0 -26
- package/dist/builtin/subagents/src/runs/foreground/execution-utils.ts +0 -61
- package/dist/builtin/subagents/src/runs/foreground/execution.ts +0 -6
- package/dist/builtin/subagents/src/runs/foreground/inprocess-run-sync.ts +0 -512
- package/dist/builtin/subagents/src/runs/foreground/notify.ts +0 -355
- package/dist/builtin/subagents/src/runs/foreground/parent-ask-output.ts +0 -48
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-burst-display.ts +0 -46
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-burst.ts +0 -403
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-context.ts +0 -223
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-cwd.ts +0 -6
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-input.ts +0 -139
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-live-update.ts +0 -11
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel-task.ts +0 -268
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +0 -327
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parent-ask-projection.ts +0 -11
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-runtime.ts +0 -12
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +0 -350
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +0 -246
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-types.ts +0 -131
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-worktree.ts +0 -102
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor.ts +0 -217
- package/dist/builtin/subagents/src/runs/inprocess/child-policy.ts +0 -27
- package/dist/builtin/subagents/src/runs/inprocess/control-registry.ts +0 -55
- package/dist/builtin/subagents/src/runs/inprocess/control-status.ts +0 -72
- package/dist/builtin/subagents/src/runs/inprocess/index.ts +0 -27
- package/dist/builtin/subagents/src/runs/inprocess/prompt-behavior.ts +0 -168
- package/dist/builtin/subagents/src/runs/inprocess/runner.ts +0 -1280
- package/dist/builtin/subagents/src/runs/inprocess/runtime-support/temp-cleanup.ts +0 -69
- package/dist/builtin/subagents/src/runs/inprocess.ts +0 -1
- package/dist/builtin/subagents/src/runs/shared/intercom-group.ts +0 -67
- package/dist/builtin/subagents/src/runs/shared/long-running-guard.ts +0 -182
- package/dist/builtin/subagents/src/runs/shared/mcp-direct-tool-allowlist.ts +0 -391
- package/dist/builtin/subagents/src/runs/shared/model-candidate-filter.ts +0 -56
- package/dist/builtin/subagents/src/runs/shared/model-fallback.ts +0 -88
- package/dist/builtin/subagents/src/runs/shared/parallel-utils.ts +0 -70
- package/dist/builtin/subagents/src/runs/shared/progress-trend.ts +0 -69
- package/dist/builtin/subagents/src/runs/shared/run-history.ts +0 -64
- package/dist/builtin/subagents/src/runs/shared/single-output.ts +0 -169
- package/dist/builtin/subagents/src/runs/shared/subagent-control.ts +0 -234
- package/dist/builtin/subagents/src/runs/shared/worktree-post-create.ts +0 -111
- package/dist/builtin/subagents/src/runs/shared/worktree-root.ts +0 -67
- package/dist/builtin/subagents/src/runs/shared/worktree.ts +0 -552
- package/dist/builtin/subagents/src/shared/artifacts.ts +0 -240
- package/dist/builtin/subagents/src/shared/atomic-json.ts +0 -16
- package/dist/builtin/subagents/src/shared/event-jsonl-writer.ts +0 -330
- package/dist/builtin/subagents/src/shared/exclusive-file-publication.ts +0 -44
- package/dist/builtin/subagents/src/shared/fast-mode.ts +0 -87
- package/dist/builtin/subagents/src/shared/file-coalescer.ts +0 -40
- package/dist/builtin/subagents/src/shared/fork-context.ts +0 -79
- package/dist/builtin/subagents/src/shared/formatters.ts +0 -89
- package/dist/builtin/subagents/src/shared/jsonl-writer.ts +0 -83
- package/dist/builtin/subagents/src/shared/model-info.ts +0 -101
- package/dist/builtin/subagents/src/shared/model-resolution.ts +0 -78
- package/dist/builtin/subagents/src/shared/session-identity.ts +0 -10
- package/dist/builtin/subagents/src/shared/session-tokens.ts +0 -45
- package/dist/builtin/subagents/src/shared/settings.ts +0 -118
- package/dist/builtin/subagents/src/shared/status-format.ts +0 -50
- package/dist/builtin/subagents/src/shared/types-config.ts +0 -206
- package/dist/builtin/subagents/src/shared/types-depth.ts +0 -46
- package/dist/builtin/subagents/src/shared/types-foreground-state.ts +0 -48
- package/dist/builtin/subagents/src/shared/types-output.ts +0 -63
- package/dist/builtin/subagents/src/shared/types-results.ts +0 -259
- package/dist/builtin/subagents/src/shared/types-runtime.ts +0 -115
- package/dist/builtin/subagents/src/shared/types.ts +0 -13
- package/dist/builtin/subagents/src/shared/utils.ts +0 -342
- package/dist/builtin/subagents/src/slash/bridge-settlement.ts +0 -87
- package/dist/builtin/subagents/src/slash/prompt-template-bridge.ts +0 -455
- package/dist/builtin/subagents/src/slash/slash-bridge.ts +0 -194
- package/dist/builtin/subagents/src/slash/slash-commands.ts +0 -5
- package/dist/builtin/subagents/src/slash/slash-live-state.ts +0 -259
- package/dist/builtin/subagents/src/tui/render-event-formatting.ts +0 -7
- package/dist/builtin/subagents/src/tui/render-helpers.ts +0 -90
- package/dist/builtin/subagents/src/tui/render-layout.ts +0 -157
- package/dist/builtin/subagents/src/tui/render-progress.ts +0 -89
- package/dist/builtin/subagents/src/tui/render-result-animation.ts +0 -47
- package/dist/builtin/subagents/src/tui/render-result-compact.ts +0 -248
- package/dist/builtin/subagents/src/tui/render-result.ts +0 -438
- package/dist/builtin/subagents/src/tui/render-stable-output.ts +0 -50
- package/dist/builtin/subagents/src/tui/render-status-progress.ts +0 -168
- package/dist/builtin/subagents/src/tui/render.ts +0 -23
- package/dist/builtin/web-access/activity.ts +0 -101
- package/dist/builtin/web-access/chrome-cookies.ts +0 -323
- package/dist/builtin/web-access/code-search.ts +0 -107
- package/dist/builtin/web-access/config-paths.ts +0 -11
- package/dist/builtin/web-access/content-tools.ts +0 -354
- package/dist/builtin/web-access/curator-page-assets/script-1.ts +0 -400
- package/dist/builtin/web-access/curator-page-assets/script-2.ts +0 -400
- package/dist/builtin/web-access/curator-page-assets/script-3.ts +0 -400
- package/dist/builtin/web-access/curator-page-assets/script-4.ts +0 -400
- package/dist/builtin/web-access/curator-page-assets/script-5.ts +0 -398
- package/dist/builtin/web-access/curator-page-assets/styles-1.ts +0 -394
- package/dist/builtin/web-access/curator-page-assets/styles-2.ts +0 -394
- package/dist/builtin/web-access/curator-page-assets/styles-3.ts +0 -393
- package/dist/builtin/web-access/curator-page.ts +0 -196
- package/dist/builtin/web-access/curator-server-helpers.ts +0 -115
- package/dist/builtin/web-access/curator-server.ts +0 -494
- package/dist/builtin/web-access/exa-mcp.ts +0 -218
- package/dist/builtin/web-access/exa.ts +0 -317
- package/dist/builtin/web-access/extract-frames.ts +0 -229
- package/dist/builtin/web-access/extract.ts +0 -500
- package/dist/builtin/web-access/flat-string.ts +0 -37
- package/dist/builtin/web-access/gemini-api.ts +0 -111
- package/dist/builtin/web-access/gemini-search.ts +0 -363
- package/dist/builtin/web-access/gemini-url-context.ts +0 -126
- package/dist/builtin/web-access/gemini-web-config.ts +0 -53
- package/dist/builtin/web-access/gemini-web.ts +0 -397
- package/dist/builtin/web-access/github-api.ts +0 -198
- package/dist/builtin/web-access/github-config.ts +0 -156
- package/dist/builtin/web-access/github-extract.ts +0 -487
- package/dist/builtin/web-access/index-heavy.ts +0 -164
- package/dist/builtin/web-access/index.ts +0 -401
- package/dist/builtin/web-access/lifecycle-lease.ts +0 -38
- package/dist/builtin/web-access/pdf-extract.ts +0 -192
- package/dist/builtin/web-access/perplexity.ts +0 -194
- package/dist/builtin/web-access/result-renderers.ts +0 -366
- package/dist/builtin/web-access/rsc-extract.ts +0 -338
- package/dist/builtin/web-access/storage.ts +0 -72
- package/dist/builtin/web-access/subprocess.ts +0 -102
- package/dist/builtin/web-access/summary-review.ts +0 -287
- package/dist/builtin/web-access/utils.ts +0 -44
- package/dist/builtin/web-access/video-extract.ts +0 -375
- package/dist/builtin/web-access/web-search-activity.ts +0 -102
- package/dist/builtin/web-access/web-search-browser.ts +0 -124
- package/dist/builtin/web-access/web-search-command.ts +0 -242
- package/dist/builtin/web-access/web-search-config.ts +0 -157
- package/dist/builtin/web-access/web-search-curator.ts +0 -214
- package/dist/builtin/web-access/web-search-features.ts +0 -181
- package/dist/builtin/web-access/web-search-formatting.ts +0 -117
- package/dist/builtin/web-access/web-search-return.ts +0 -143
- package/dist/builtin/web-access/web-search-summary.ts +0 -177
- package/dist/builtin/web-access/web-search-tool.ts +0 -286
- package/dist/builtin/web-access/web-search-types.ts +0 -50
- package/dist/builtin/web-access/web-search-workflow.ts +0 -10
- package/dist/builtin/web-access/youtube-extract.ts +0 -309
- package/dist/builtin/workflows/src/authoring/keep-context.ts +0 -46
- package/dist/builtin/workflows/src/authoring/typebox-defaults.d.ts +0 -41
- package/dist/builtin/workflows/src/authoring/typebox-defaults.ts +0 -180
- package/dist/builtin/workflows/src/authoring/workflow.ts +0 -206
- package/dist/builtin/workflows/src/durable/backend.ts +0 -598
- package/dist/builtin/workflows/src/durable/boundary-lifecycle.ts +0 -172
- package/dist/builtin/workflows/src/durable/boundary-topology.ts +0 -475
- package/dist/builtin/workflows/src/durable/child-invocation.ts +0 -14
- package/dist/builtin/workflows/src/durable/child-primitive.ts +0 -124
- package/dist/builtin/workflows/src/durable/completed-catalog-stage-groups.ts +0 -385
- package/dist/builtin/workflows/src/durable/completed-catalog.ts +0 -685
- package/dist/builtin/workflows/src/durable/completed-inspection.ts +0 -157
- package/dist/builtin/workflows/src/durable/completed-subtree.ts +0 -50
- package/dist/builtin/workflows/src/durable/dbos-backend.ts +0 -580
- package/dist/builtin/workflows/src/durable/dbos-embedded-postgres-root.ts +0 -681
- package/dist/builtin/workflows/src/durable/dbos-embedded-postgres.ts +0 -717
- package/dist/builtin/workflows/src/durable/dbos-envelope.ts +0 -516
- package/dist/builtin/workflows/src/durable/dbos-lifecycle.ts +0 -208
- package/dist/builtin/workflows/src/durable/dbos-local-postgres.ts +0 -166
- package/dist/builtin/workflows/src/durable/dbos-metadata.ts +0 -196
- package/dist/builtin/workflows/src/durable/dbos-process-owner.ts +0 -87
- package/dist/builtin/workflows/src/durable/dbos-prompt-reservations.ts +0 -377
- package/dist/builtin/workflows/src/durable/dbos-registration-diagnostics.ts +0 -113
- package/dist/builtin/workflows/src/durable/dbos-sdk-handle.ts +0 -182
- package/dist/builtin/workflows/src/durable/dbos-status-transition.ts +0 -67
- package/dist/builtin/workflows/src/durable/dbos-tombstone.ts +0 -27
- package/dist/builtin/workflows/src/durable/durable-hash.ts +0 -18
- package/dist/builtin/workflows/src/durable/factory.ts +0 -93
- package/dist/builtin/workflows/src/durable/format-version.ts +0 -6
- package/dist/builtin/workflows/src/durable/index.ts +0 -82
- package/dist/builtin/workflows/src/durable/local-command.ts +0 -135
- package/dist/builtin/workflows/src/durable/prompt-reservation-state.ts +0 -184
- package/dist/builtin/workflows/src/durable/prompt-reservations.ts +0 -36
- package/dist/builtin/workflows/src/durable/resume-catalog.ts +0 -20
- package/dist/builtin/workflows/src/durable/resume-eligibility.ts +0 -106
- package/dist/builtin/workflows/src/durable/resume-runtime.ts +0 -344
- package/dist/builtin/workflows/src/durable/retention-policy.ts +0 -43
- package/dist/builtin/workflows/src/durable/run-timing.ts +0 -151
- package/dist/builtin/workflows/src/durable/scoped-backend.ts +0 -308
- package/dist/builtin/workflows/src/durable/stage-primitive.ts +0 -553
- package/dist/builtin/workflows/src/durable/stage-topology-validation.ts +0 -247
- package/dist/builtin/workflows/src/durable/stage-topology.ts +0 -53
- package/dist/builtin/workflows/src/durable/targeted-inspection.ts +0 -110
- package/dist/builtin/workflows/src/durable/tool-failure-checkpoint.ts +0 -54
- package/dist/builtin/workflows/src/durable/tool-outcome.ts +0 -130
- package/dist/builtin/workflows/src/durable/tool-primitive.ts +0 -861
- package/dist/builtin/workflows/src/durable/types.ts +0 -343
- package/dist/builtin/workflows/src/durable/ui-primitive.ts +0 -263
- package/dist/builtin/workflows/src/durable/workflow-child-result.ts +0 -63
- package/dist/builtin/workflows/src/durable/workflow-heartbeat-anchor.ts +0 -153
- package/dist/builtin/workflows/src/durable/workflow-status-transition.ts +0 -31
- package/dist/builtin/workflows/src/engine/graph-inference.ts +0 -100
- package/dist/builtin/workflows/src/engine/options.ts +0 -44
- package/dist/builtin/workflows/src/engine/primitives/chain.ts +0 -34
- package/dist/builtin/workflows/src/engine/primitives/exit.ts +0 -2
- package/dist/builtin/workflows/src/engine/primitives/parallel.ts +0 -74
- package/dist/builtin/workflows/src/engine/primitives/task.ts +0 -127
- package/dist/builtin/workflows/src/engine/primitives/ui.ts +0 -54
- package/dist/builtin/workflows/src/engine/primitives/workflow.ts +0 -219
- package/dist/builtin/workflows/src/engine/replay.ts +0 -8
- package/dist/builtin/workflows/src/engine/run-budget.ts +0 -308
- package/dist/builtin/workflows/src/engine/run-durable-admission.ts +0 -50
- package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +0 -97
- package/dist/builtin/workflows/src/engine/run-durable-stage-session.ts +0 -65
- package/dist/builtin/workflows/src/engine/run-durable-topology.ts +0 -295
- package/dist/builtin/workflows/src/engine/run-returned-status.ts +0 -86
- package/dist/builtin/workflows/src/engine/run-terminal-event.ts +0 -39
- package/dist/builtin/workflows/src/engine/run-terminal-failure.ts +0 -53
- package/dist/builtin/workflows/src/engine/run-tool-admission-boundary.ts +0 -99
- package/dist/builtin/workflows/src/engine/run-tool-control-registry.ts +0 -187
- package/dist/builtin/workflows/src/engine/run-tool-execution-tracker.ts +0 -164
- package/dist/builtin/workflows/src/engine/run-tool-node-lifecycle.ts +0 -158
- package/dist/builtin/workflows/src/engine/run.ts +0 -841
- package/dist/builtin/workflows/src/engine/runtime.ts +0 -220
- package/dist/builtin/workflows/src/engine/workflow-activity.ts +0 -13
- package/dist/builtin/workflows/src/engine/workflow-tool-abort.ts +0 -92
- package/dist/builtin/workflows/src/extension/adopt-session-run-state.ts +0 -20
- package/dist/builtin/workflows/src/extension/atomic-stage-session.ts +0 -168
- package/dist/builtin/workflows/src/extension/background-ui-adapter.ts +0 -154
- package/dist/builtin/workflows/src/extension/companions.ts +0 -210
- package/dist/builtin/workflows/src/extension/completed-stage-intercom-ask.ts +0 -167
- package/dist/builtin/workflows/src/extension/config-file-loader.ts +0 -185
- package/dist/builtin/workflows/src/extension/config-loader.ts +0 -439
- package/dist/builtin/workflows/src/extension/discovery-loaders.ts +0 -112
- package/dist/builtin/workflows/src/extension/discovery.ts +0 -424
- package/dist/builtin/workflows/src/extension/dispatcher.ts +0 -273
- package/dist/builtin/workflows/src/extension/extension-factory.ts +0 -133
- package/dist/builtin/workflows/src/extension/extension-lifecycle.ts +0 -174
- package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +0 -596
- package/dist/builtin/workflows/src/extension/hil-answer-notifications.ts +0 -367
- package/dist/builtin/workflows/src/extension/index.ts +0 -42
- package/dist/builtin/workflows/src/extension/lifecycle-notification-delivery.ts +0 -83
- package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +0 -849
- package/dist/builtin/workflows/src/extension/mcp.ts +0 -121
- package/dist/builtin/workflows/src/extension/postmortem-deps.ts +0 -70
- package/dist/builtin/workflows/src/extension/public-types.ts +0 -234
- package/dist/builtin/workflows/src/extension/render-call.ts +0 -115
- package/dist/builtin/workflows/src/extension/render-component.ts +0 -12
- package/dist/builtin/workflows/src/extension/render-result.ts +0 -558
- package/dist/builtin/workflows/src/extension/renderers.ts +0 -89
- package/dist/builtin/workflows/src/extension/runtime-active-block-claim.ts +0 -78
- package/dist/builtin/workflows/src/extension/runtime-durable-resume.ts +0 -174
- package/dist/builtin/workflows/src/extension/runtime.ts +0 -439
- package/dist/builtin/workflows/src/extension/status-writer.ts +0 -182
- package/dist/builtin/workflows/src/extension/ui-surface.ts +0 -387
- package/dist/builtin/workflows/src/extension/wiring.ts +0 -490
- package/dist/builtin/workflows/src/extension/workflow-command-completions.ts +0 -129
- package/dist/builtin/workflows/src/extension/workflow-command-registration.ts +0 -296
- package/dist/builtin/workflows/src/extension/workflow-command-surfaces.ts +0 -114
- package/dist/builtin/workflows/src/extension/workflow-command-utils.ts +0 -175
- package/dist/builtin/workflows/src/extension/workflow-durable-resume-command.ts +0 -270
- package/dist/builtin/workflows/src/extension/workflow-heartbeat-delivery.ts +0 -241
- package/dist/builtin/workflows/src/extension/workflow-heartbeat-notice.ts +0 -115
- package/dist/builtin/workflows/src/extension/workflow-heartbeat-scheduler.ts +0 -962
- package/dist/builtin/workflows/src/extension/workflow-model-catalog.ts +0 -24
- package/dist/builtin/workflows/src/extension/workflow-module-loader.ts +0 -162
- package/dist/builtin/workflows/src/extension/workflow-policy.ts +0 -13
- package/dist/builtin/workflows/src/extension/workflow-ports.ts +0 -45
- package/dist/builtin/workflows/src/extension/workflow-prompts.ts +0 -73
- package/dist/builtin/workflows/src/extension/workflow-reload-coordinator.ts +0 -66
- package/dist/builtin/workflows/src/extension/workflow-reload-report.ts +0 -42
- package/dist/builtin/workflows/src/extension/workflow-request-abort.ts +0 -15
- package/dist/builtin/workflows/src/extension/workflow-resume-picker-rows.ts +0 -96
- package/dist/builtin/workflows/src/extension/workflow-resume-shadow.ts +0 -53
- package/dist/builtin/workflows/src/extension/workflow-run-control-command.ts +0 -562
- package/dist/builtin/workflows/src/extension/workflow-schema.ts +0 -192
- package/dist/builtin/workflows/src/extension/workflow-stage-results.ts +0 -252
- package/dist/builtin/workflows/src/extension/workflow-status-summary.ts +0 -276
- package/dist/builtin/workflows/src/extension/workflow-targets.ts +0 -210
- package/dist/builtin/workflows/src/extension/workflow-tool-content.ts +0 -265
- package/dist/builtin/workflows/src/extension/workflow-tool-control.ts +0 -547
- package/dist/builtin/workflows/src/extension/workflow-tool-inspection.ts +0 -153
- package/dist/builtin/workflows/src/extension/workflow-tool-registration.ts +0 -145
- package/dist/builtin/workflows/src/extension/workflow-tool-send.ts +0 -488
- package/dist/builtin/workflows/src/extension/workflow-tool.ts +0 -188
- package/dist/builtin/workflows/src/index.ts +0 -8
- package/dist/builtin/workflows/src/intercom/intercom-bridge.ts +0 -90
- package/dist/builtin/workflows/src/intercom/intercom-routing.ts +0 -131
- package/dist/builtin/workflows/src/intercom/result-intercom.ts +0 -271
- package/dist/builtin/workflows/src/runs/background/cancellation-registry.ts +0 -135
- package/dist/builtin/workflows/src/runs/background/durable-resume-transition.ts +0 -63
- package/dist/builtin/workflows/src/runs/background/job-tracker.ts +0 -125
- package/dist/builtin/workflows/src/runs/background/quit-tool-node.ts +0 -71
- package/dist/builtin/workflows/src/runs/background/quit.ts +0 -417
- package/dist/builtin/workflows/src/runs/background/resume-acknowledgements.ts +0 -99
- package/dist/builtin/workflows/src/runs/background/run-inspect.ts +0 -126
- package/dist/builtin/workflows/src/runs/background/runner.ts +0 -185
- package/dist/builtin/workflows/src/runs/background/startup-admission.ts +0 -73
- package/dist/builtin/workflows/src/runs/background/status.ts +0 -511
- package/dist/builtin/workflows/src/runs/background/workflow-lifecycle-aggregate.ts +0 -43
- package/dist/builtin/workflows/src/runs/foreground/executor-abort.ts +0 -441
- package/dist/builtin/workflows/src/runs/foreground/executor-child-boundary.ts +0 -263
- package/dist/builtin/workflows/src/runs/foreground/executor-child-helpers.ts +0 -79
- package/dist/builtin/workflows/src/runs/foreground/executor-child-workflow.ts +0 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-continuation.ts +0 -207
- package/dist/builtin/workflows/src/runs/foreground/executor-direct-helpers.ts +0 -321
- package/dist/builtin/workflows/src/runs/foreground/executor-exit-manager.ts +0 -224
- package/dist/builtin/workflows/src/runs/foreground/executor-hil.ts +0 -403
- package/dist/builtin/workflows/src/runs/foreground/executor-inputs.ts +0 -86
- package/dist/builtin/workflows/src/runs/foreground/executor-lifecycle.ts +0 -491
- package/dist/builtin/workflows/src/runs/foreground/executor-outputs.ts +0 -156
- package/dist/builtin/workflows/src/runs/foreground/executor-prompt-nodes.ts +0 -379
- package/dist/builtin/workflows/src/runs/foreground/executor-queued-user-message.ts +0 -75
- package/dist/builtin/workflows/src/runs/foreground/executor-run-finalizers.ts +0 -144
- package/dist/builtin/workflows/src/runs/foreground/executor-run.ts +0 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-scheduler.ts +0 -206
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-call.ts +0 -434
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-context.ts +0 -153
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +0 -225
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +0 -473
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-replay.ts +0 -156
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-types.ts +0 -72
- package/dist/builtin/workflows/src/runs/foreground/executor-task-context.ts +0 -2
- package/dist/builtin/workflows/src/runs/foreground/executor-task-prompts.ts +0 -226
- package/dist/builtin/workflows/src/runs/foreground/executor-types.ts +0 -186
- package/dist/builtin/workflows/src/runs/foreground/executor.ts +0 -25
- package/dist/builtin/workflows/src/runs/foreground/postmortem-stage-chat.ts +0 -245
- package/dist/builtin/workflows/src/runs/foreground/stage-control-registry.ts +0 -466
- package/dist/builtin/workflows/src/runs/foreground/stage-delivery-activity.ts +0 -86
- package/dist/builtin/workflows/src/runs/foreground/stage-queued-user-messages.ts +0 -95
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-candidate.ts +0 -21
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-context.ts +0 -330
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +0 -1472
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-message-admission.ts +0 -196
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-messages.ts +0 -177
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-options.ts +0 -97
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-output.ts +0 -278
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-pause.ts +0 -206
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-replacement.ts +0 -41
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-send-user-message.ts +0 -134
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-session-options.ts +0 -38
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-session.ts +0 -66
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-structured-output.ts +0 -120
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-types.ts +0 -211
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-unresolved-overflow.ts +0 -42
- package/dist/builtin/workflows/src/runs/foreground/stage-runner.ts +0 -22
- package/dist/builtin/workflows/src/runs/foreground/stage-session-heartbeat.ts +0 -88
- package/dist/builtin/workflows/src/runs/foreground/stage-tool-execution-buffer.ts +0 -49
- package/dist/builtin/workflows/src/runs/shared/concurrency.ts +0 -76
- package/dist/builtin/workflows/src/runs/shared/graph-inference.ts +0 -2
- package/dist/builtin/workflows/src/runs/shared/model-fallback-candidates.ts +0 -325
- package/dist/builtin/workflows/src/runs/shared/model-fallback-failures.ts +0 -19
- package/dist/builtin/workflows/src/runs/shared/model-fallback.ts +0 -2
- package/dist/builtin/workflows/src/runs/shared/prompt-callsite.ts +0 -96
- package/dist/builtin/workflows/src/runs/shared/retry.ts +0 -44
- package/dist/builtin/workflows/src/runs/shared/validate-inputs.ts +0 -111
- package/dist/builtin/workflows/src/runs/shared/worktree-cache-lifecycle.ts +0 -23
- package/dist/builtin/workflows/src/runs/shared/worktree-cwd.ts +0 -116
- package/dist/builtin/workflows/src/runs/shared/worktree-diff.ts +0 -172
- package/dist/builtin/workflows/src/runs/shared/worktree-generation.ts +0 -57
- package/dist/builtin/workflows/src/runs/shared/worktree-git-runner.ts +0 -107
- package/dist/builtin/workflows/src/runs/shared/worktree-git.ts +0 -407
- package/dist/builtin/workflows/src/runs/shared/worktree-post-create.ts +0 -137
- package/dist/builtin/workflows/src/runs/shared/worktree-root.ts +0 -84
- package/dist/builtin/workflows/src/runs/shared/worktree-setup.ts +0 -372
- package/dist/builtin/workflows/src/runs/shared/worktree-types.ts +0 -102
- package/dist/builtin/workflows/src/runs/shared/worktree.ts +0 -21
- package/dist/builtin/workflows/src/sdk-surface.ts +0 -70
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +0 -403
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +0 -489
- package/dist/builtin/workflows/src/shared/authoring-contract-ui.d.ts +0 -327
- package/dist/builtin/workflows/src/shared/authoring-contract-ui.ts +0 -437
- package/dist/builtin/workflows/src/shared/budget-meter.ts +0 -34
- package/dist/builtin/workflows/src/shared/budget.d.ts +0 -67
- package/dist/builtin/workflows/src/shared/budget.ts +0 -127
- package/dist/builtin/workflows/src/shared/expanded-workflow-graph.ts +0 -434
- package/dist/builtin/workflows/src/shared/flat-string.ts +0 -33
- package/dist/builtin/workflows/src/shared/graph-store-snapshot.ts +0 -188
- package/dist/builtin/workflows/src/shared/intercom-group.ts +0 -58
- package/dist/builtin/workflows/src/shared/persistence-compaction-policy.ts +0 -72
- package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +0 -613
- package/dist/builtin/workflows/src/shared/persistence-restore.ts +0 -306
- package/dist/builtin/workflows/src/shared/persistence-session-entries.ts +0 -303
- package/dist/builtin/workflows/src/shared/prompt-answer.ts +0 -130
- package/dist/builtin/workflows/src/shared/prompt-callsite-context.ts +0 -13
- package/dist/builtin/workflows/src/shared/render-inputs-schema.ts +0 -161
- package/dist/builtin/workflows/src/shared/resume-continuation.ts +0 -2
- package/dist/builtin/workflows/src/shared/returned-run-status.ts +0 -164
- package/dist/builtin/workflows/src/shared/run-id.ts +0 -36
- package/dist/builtin/workflows/src/shared/run-indicator-status.ts +0 -75
- package/dist/builtin/workflows/src/shared/run-visibility.ts +0 -9
- package/dist/builtin/workflows/src/shared/schema-introspection.ts +0 -111
- package/dist/builtin/workflows/src/shared/serializable.ts +0 -118
- package/dist/builtin/workflows/src/shared/session-scoped-singleton.ts +0 -98
- package/dist/builtin/workflows/src/shared/session-transcript.ts +0 -79
- package/dist/builtin/workflows/src/shared/stage-prompt.ts +0 -338
- package/dist/builtin/workflows/src/shared/stage-ui-broker.ts +0 -340
- package/dist/builtin/workflows/src/shared/store-factory.ts +0 -26
- package/dist/builtin/workflows/src/shared/store-internal.ts +0 -252
- package/dist/builtin/workflows/src/shared/store-observation.ts +0 -10
- package/dist/builtin/workflows/src/shared/store-prompt-methods.ts +0 -215
- package/dist/builtin/workflows/src/shared/store-public-types.ts +0 -282
- package/dist/builtin/workflows/src/shared/store-run-methods.ts +0 -305
- package/dist/builtin/workflows/src/shared/store-stage-methods.ts +0 -331
- package/dist/builtin/workflows/src/shared/store-tool-node-methods.ts +0 -60
- package/dist/builtin/workflows/src/shared/store-types.ts +0 -439
- package/dist/builtin/workflows/src/shared/store.ts +0 -15
- package/dist/builtin/workflows/src/shared/timing.ts +0 -71
- package/dist/builtin/workflows/src/shared/tool-payload-bounds.ts +0 -576
- package/dist/builtin/workflows/src/shared/types.ts +0 -523
- package/dist/builtin/workflows/src/shared/workflow-artifact-env.ts +0 -21
- package/dist/builtin/workflows/src/shared/workflow-artifacts.ts +0 -259
- package/dist/builtin/workflows/src/shared/workflow-authoring-types.d.ts +0 -60
- package/dist/builtin/workflows/src/shared/workflow-authoring-types.ts +0 -111
- package/dist/builtin/workflows/src/shared/workflow-failures-classifier.ts +0 -292
- package/dist/builtin/workflows/src/shared/workflow-failures-contract.ts +0 -74
- package/dist/builtin/workflows/src/shared/workflow-failures-decisions.ts +0 -458
- package/dist/builtin/workflows/src/shared/workflow-failures-signals.ts +0 -303
- package/dist/builtin/workflows/src/shared/workflow-failures.ts +0 -13
- package/dist/builtin/workflows/src/shared/workflow-heartbeat-contract.d.ts +0 -21
- package/dist/builtin/workflows/src/shared/workflow-heartbeat-contract.ts +0 -25
- package/dist/builtin/workflows/src/shared/workflow-run-ownership.ts +0 -49
- package/dist/builtin/workflows/src/tui/chat-surface-message.ts +0 -319
- package/dist/builtin/workflows/src/tui/chat-surface.ts +0 -477
- package/dist/builtin/workflows/src/tui/color-utils.ts +0 -55
- package/dist/builtin/workflows/src/tui/connectors.ts +0 -84
- package/dist/builtin/workflows/src/tui/dispatch-confirm.ts +0 -334
- package/dist/builtin/workflows/src/tui/edge.ts +0 -25
- package/dist/builtin/workflows/src/tui/graph-canvas.ts +0 -185
- package/dist/builtin/workflows/src/tui/graph-theme.ts +0 -292
- package/dist/builtin/workflows/src/tui/graph-view-constants.ts +0 -49
- package/dist/builtin/workflows/src/tui/graph-view-graph-render.ts +0 -157
- package/dist/builtin/workflows/src/tui/graph-view-input.ts +0 -427
- package/dist/builtin/workflows/src/tui/graph-view-layout.ts +0 -297
- package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +0 -294
- package/dist/builtin/workflows/src/tui/graph-view-render.ts +0 -361
- package/dist/builtin/workflows/src/tui/graph-view-state.ts +0 -547
- package/dist/builtin/workflows/src/tui/graph-view-types.ts +0 -79
- package/dist/builtin/workflows/src/tui/graph-view.ts +0 -25
- package/dist/builtin/workflows/src/tui/header.ts +0 -210
- package/dist/builtin/workflows/src/tui/host-input-form.ts +0 -64
- package/dist/builtin/workflows/src/tui/inline-form-card.ts +0 -438
- package/dist/builtin/workflows/src/tui/inline-form-editor-text.ts +0 -120
- package/dist/builtin/workflows/src/tui/inline-form-editor.ts +0 -496
- package/dist/builtin/workflows/src/tui/inline-form-overlay.ts +0 -317
- package/dist/builtin/workflows/src/tui/inline-form-store.ts +0 -90
- package/dist/builtin/workflows/src/tui/inputs-overlay.ts +0 -185
- package/dist/builtin/workflows/src/tui/inputs-picker-editing.ts +0 -147
- package/dist/builtin/workflows/src/tui/inputs-picker-input.ts +0 -357
- package/dist/builtin/workflows/src/tui/inputs-picker-render.ts +0 -312
- package/dist/builtin/workflows/src/tui/inputs-picker-types.ts +0 -161
- package/dist/builtin/workflows/src/tui/inputs-picker.ts +0 -20
- package/dist/builtin/workflows/src/tui/keybindings-adapter.ts +0 -167
- package/dist/builtin/workflows/src/tui/layout.ts +0 -150
- package/dist/builtin/workflows/src/tui/mouse-input.ts +0 -61
- package/dist/builtin/workflows/src/tui/node-card.ts +0 -357
- package/dist/builtin/workflows/src/tui/overlay-adapter.ts +0 -449
- package/dist/builtin/workflows/src/tui/overlay-terminal-modes.ts +0 -39
- package/dist/builtin/workflows/src/tui/prompt-card-input.ts +0 -215
- package/dist/builtin/workflows/src/tui/prompt-card-render.ts +0 -584
- package/dist/builtin/workflows/src/tui/prompt-card-select.ts +0 -94
- package/dist/builtin/workflows/src/tui/prompt-card-state.ts +0 -61
- package/dist/builtin/workflows/src/tui/prompt-card-text.ts +0 -122
- package/dist/builtin/workflows/src/tui/prompt-card.ts +0 -12
- package/dist/builtin/workflows/src/tui/renderers.ts +0 -14
- package/dist/builtin/workflows/src/tui/run-detail.ts +0 -438
- package/dist/builtin/workflows/src/tui/run-identity-rows.ts +0 -97
- package/dist/builtin/workflows/src/tui/session-list.ts +0 -38
- package/dist/builtin/workflows/src/tui/session-overlays.ts +0 -161
- package/dist/builtin/workflows/src/tui/session-picker.ts +0 -482
- package/dist/builtin/workflows/src/tui/stage-chat-composer-drafts.ts +0 -19
- package/dist/builtin/workflows/src/tui/stage-chat-layout.ts +0 -81
- package/dist/builtin/workflows/src/tui/stage-chat-view-archive-history.ts +0 -462
- package/dist/builtin/workflows/src/tui/stage-chat-view-custom-ui.ts +0 -115
- package/dist/builtin/workflows/src/tui/stage-chat-view-delivery-activity.ts +0 -113
- package/dist/builtin/workflows/src/tui/stage-chat-view-footer-status.ts +0 -219
- package/dist/builtin/workflows/src/tui/stage-chat-view-input.ts +0 -216
- package/dist/builtin/workflows/src/tui/stage-chat-view-live-events.ts +0 -65
- package/dist/builtin/workflows/src/tui/stage-chat-view-pending-tools.ts +0 -7
- package/dist/builtin/workflows/src/tui/stage-chat-view-render-helpers.ts +0 -149
- package/dist/builtin/workflows/src/tui/stage-chat-view-render-settings.ts +0 -49
- package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +0 -575
- package/dist/builtin/workflows/src/tui/stage-chat-view-status.ts +0 -35
- package/dist/builtin/workflows/src/tui/stage-chat-view-transcript.ts +0 -226
- package/dist/builtin/workflows/src/tui/stage-chat-view-types.ts +0 -156
- package/dist/builtin/workflows/src/tui/stage-chat-view.ts +0 -309
- package/dist/builtin/workflows/src/tui/status-helpers.ts +0 -85
- package/dist/builtin/workflows/src/tui/status-list.ts +0 -447
- package/dist/builtin/workflows/src/tui/store-widget-installer.ts +0 -338
- package/dist/builtin/workflows/src/tui/submit-pane.ts +0 -148
- package/dist/builtin/workflows/src/tui/switcher.ts +0 -172
- package/dist/builtin/workflows/src/tui/text-helpers.ts +0 -208
- package/dist/builtin/workflows/src/tui/tool-detail.ts +0 -367
- package/dist/builtin/workflows/src/tui/widget.ts +0 -427
- package/dist/builtin/workflows/src/tui/workflow-attach-pane-handle.ts +0 -21
- package/dist/builtin/workflows/src/tui/workflow-attach-pane-types.ts +0 -77
- package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +0 -477
- package/dist/builtin/workflows/src/tui/workflow-list.ts +0 -189
- package/dist/builtin/workflows/src/tui/workflow-notice-card.ts +0 -167
- package/dist/builtin/workflows/src/tui/workflow-resume-selector.ts +0 -334
- package/dist/builtin/workflows/src/tui/workflow-status.ts +0 -12
- package/dist/builtin/workflows/src/workflows/identity.ts +0 -39
- package/dist/builtin/workflows/src/workflows/registry.ts +0 -115
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Kind-aware answers for primitive workflow HIL prompts.
|
|
3
|
-
*
|
|
4
|
-
* Workflow-tool payloads cross a model/provider boundary before they reach the
|
|
5
|
-
* prompt waiter. Normalize them while the pending prompt descriptor is still
|
|
6
|
-
* available, rather than letting each UI sink guess what a raw value means.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import type { PendingPrompt, PromptKind } from "./store-types.js";
|
|
10
|
-
|
|
11
|
-
export type PrimitivePromptKind = Exclude<PromptKind, "custom">;
|
|
12
|
-
|
|
13
|
-
export type PrimitivePrompt = Pick<PendingPrompt, "kind" | "choices" | "initial"> & {
|
|
14
|
-
readonly kind: PrimitivePromptKind;
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
type PrimitivePendingPrompt = PendingPrompt & { readonly kind: PrimitivePromptKind };
|
|
18
|
-
|
|
19
|
-
export function isPrimitivePrompt(prompt: PendingPrompt): prompt is PrimitivePendingPrompt {
|
|
20
|
-
return prompt.kind !== "custom";
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export type PrimitivePromptAnswer = string | boolean;
|
|
24
|
-
|
|
25
|
-
export interface PromptAnswerAccepted {
|
|
26
|
-
readonly ok: true;
|
|
27
|
-
readonly value: PrimitivePromptAnswer;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export interface PromptAnswerRejected {
|
|
31
|
-
readonly ok: false;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export type PrimitivePromptAnswerResult = PromptAnswerAccepted | PromptAnswerRejected;
|
|
35
|
-
|
|
36
|
-
const CONFIRM_TRUE = new Set(["true", "yes", "y", "approve", "confirm"]);
|
|
37
|
-
const CONFIRM_FALSE = new Set(["false", "no", "n", "reject", "deny"]);
|
|
38
|
-
|
|
39
|
-
function normalizeText(value: string): string {
|
|
40
|
-
return value.trim().toLowerCase();
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
function accepted(value: PrimitivePromptAnswer): PromptAnswerAccepted {
|
|
44
|
-
return { ok: true, value };
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
function rejected(): PromptAnswerRejected {
|
|
48
|
-
return { ok: false };
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
function selectIndex(value: unknown, choiceCount: number): number | undefined {
|
|
52
|
-
if (typeof value === "number") {
|
|
53
|
-
return Number.isInteger(value) && value >= 1 && value <= choiceCount ? value - 1 : undefined;
|
|
54
|
-
}
|
|
55
|
-
if (typeof value !== "string") return undefined;
|
|
56
|
-
const trimmed = value.trim();
|
|
57
|
-
if (!/^[1-9]\d*$/u.test(trimmed)) return undefined;
|
|
58
|
-
const index = Number(trimmed);
|
|
59
|
-
return Number.isSafeInteger(index) && index <= choiceCount ? index - 1 : undefined;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
function coerceConfirm(value: unknown): PrimitivePromptAnswerResult {
|
|
63
|
-
if (typeof value === "boolean") return accepted(value);
|
|
64
|
-
if (typeof value !== "string") return rejected();
|
|
65
|
-
const normalized = normalizeText(value);
|
|
66
|
-
if (CONFIRM_TRUE.has(normalized)) return accepted(true);
|
|
67
|
-
if (CONFIRM_FALSE.has(normalized)) return accepted(false);
|
|
68
|
-
return rejected();
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
function coerceSelect(choices: readonly string[], value: unknown): PrimitivePromptAnswerResult {
|
|
72
|
-
if (typeof value === "string") {
|
|
73
|
-
const normalized = normalizeText(value);
|
|
74
|
-
const choice = choices.find((candidate) => normalizeText(candidate) === normalized);
|
|
75
|
-
if (choice !== undefined) return accepted(choice);
|
|
76
|
-
}
|
|
77
|
-
const index = selectIndex(value, choices.length);
|
|
78
|
-
return index === undefined ? rejected() : accepted(choices[index]!);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* Normalize a raw answer for a primitive prompt, or reject it.
|
|
83
|
-
*
|
|
84
|
-
* The `default` branch is unreachable through the guarded call sites, which all
|
|
85
|
-
* exclude `custom` prompts. It exists so a malformed descriptor is rejected
|
|
86
|
-
* rather than falling through to `undefined`, which would make
|
|
87
|
-
* `requirePrimitivePromptAnswer` throw a bare `TypeError` on `result.ok`.
|
|
88
|
-
*/
|
|
89
|
-
export function coercePrimitivePromptAnswer(prompt: PrimitivePrompt, value: unknown): PrimitivePromptAnswerResult {
|
|
90
|
-
switch (prompt.kind) {
|
|
91
|
-
case "input":
|
|
92
|
-
case "editor":
|
|
93
|
-
return typeof value === "string" ? accepted(value) : rejected();
|
|
94
|
-
case "confirm":
|
|
95
|
-
return coerceConfirm(value);
|
|
96
|
-
case "select":
|
|
97
|
-
return coerceSelect(prompt.choices ?? [], value);
|
|
98
|
-
default:
|
|
99
|
-
return rejected();
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
/** Require a prompt answer to identify a value; defaults are reserved for abort/cancel paths. */
|
|
104
|
-
export function requirePrimitivePromptAnswer(prompt: PrimitivePrompt, value: unknown): PrimitivePromptAnswer {
|
|
105
|
-
const result = coercePrimitivePromptAnswer(prompt, value);
|
|
106
|
-
if (result.ok) return result.value;
|
|
107
|
-
throw new Error(
|
|
108
|
-
`atomic-workflows: Invalid ${prompt.kind} prompt answer. ${primitivePromptAnswerExpectation(prompt)}`,
|
|
109
|
-
);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
/** Explain the only accepted workflow-tool answer shapes for a prompt. */
|
|
113
|
-
export function primitivePromptAnswerExpectation(prompt: PrimitivePrompt): string {
|
|
114
|
-
switch (prompt.kind) {
|
|
115
|
-
case "input":
|
|
116
|
-
case "editor":
|
|
117
|
-
return "Expected a text string in response, text, or message.";
|
|
118
|
-
case "confirm":
|
|
119
|
-
return "Expected a boolean or a case-insensitive trimmed string: true/false, yes/y, no/n, approve/reject, or confirm/deny.";
|
|
120
|
-
case "select":
|
|
121
|
-
return `Expected an exact choice label (case-insensitive, trimmed) or a 1-based numeric index. Available choices: ${prompt.choices?.join(", ") || "(none)"}.`;
|
|
122
|
-
default:
|
|
123
|
-
return "Expected an answer matching the pending prompt kind.";
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
/** Format a truthful workflow-send noop for an unusable primitive answer. */
|
|
128
|
-
export function primitivePromptAnswerRejection(promptId: string, prompt: PrimitivePrompt): string {
|
|
129
|
-
return `Invalid answer for ${prompt.kind} prompt ${promptId}. ${primitivePromptAnswerExpectation(prompt)}`;
|
|
130
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { AsyncLocalStorage } from "node:async_hooks";
|
|
2
|
-
|
|
3
|
-
const promptCallerStacks = new AsyncLocalStorage<string>();
|
|
4
|
-
|
|
5
|
-
/** Preserve the workflow-author stack across durable writes before a prompt delegates. */
|
|
6
|
-
export function withPromptCallerStack<T>(stack: string | undefined, delegate: () => T): T {
|
|
7
|
-
if (stack === undefined) return delegate();
|
|
8
|
-
return promptCallerStacks.run(stack, delegate);
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export function currentPromptCallerStack(): string | undefined {
|
|
12
|
-
return promptCallerStacks.getStore();
|
|
13
|
-
}
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* renderInputsSchema — canonical formatter for a workflow's declared input
|
|
3
|
-
* schema. Single source of truth for every surface that needs to show input
|
|
4
|
-
* metadata:
|
|
5
|
-
*
|
|
6
|
-
* - renderResult({ action: "inputs", ... }) (LLM tool path; see render-result.ts)
|
|
7
|
-
* - /workflow inputs <name> (slash command; extension/index.ts)
|
|
8
|
-
* - /workflow <name> --help (slash help branch)
|
|
9
|
-
* - programmatic workflow validation failures
|
|
10
|
-
*
|
|
11
|
-
* The renderer has two output modes:
|
|
12
|
-
*
|
|
13
|
-
* - **pretty** (default when a GraphTheme is supplied) — emits ANSI-coloured
|
|
14
|
-
* blocks that match the indented `INPUTS` aesthetic established in
|
|
15
|
-
* `src/tui/session-list.ts`. Drawn for any interactive surface where the
|
|
16
|
-
* terminal supports colour.
|
|
17
|
-
* - **plain** (used when no theme is supplied) — emits the
|
|
18
|
-
* historical flat indented form. Required for tests that diff exact text
|
|
19
|
-
* and for non-TTY consumers (LLM tool results, logfiles, --help in
|
|
20
|
-
* redirected output).
|
|
21
|
-
*
|
|
22
|
-
* The layout in pretty mode mirrors bastani-inc/atomic's `renderInputsText` so a
|
|
23
|
-
* dev moving between the atomic CLI and the pi extension feels at home:
|
|
24
|
-
*
|
|
25
|
-
* INPUTS FOR repository-audit
|
|
26
|
-
*
|
|
27
|
-
* prompt text · required
|
|
28
|
-
* The repository area to inspect.
|
|
29
|
-
*
|
|
30
|
-
* iterations number · optional
|
|
31
|
-
* Loop budget before stopping.
|
|
32
|
-
* default: 5
|
|
33
|
-
*
|
|
34
|
-
* focus select · required
|
|
35
|
-
* How aggressively to scope the work.
|
|
36
|
-
* values: minimal, standard, exhaustive
|
|
37
|
-
* default: standard
|
|
38
|
-
*
|
|
39
|
-
* 3 inputs · 1 required · pass via key=value or run with no args for picker
|
|
40
|
-
*/
|
|
41
|
-
|
|
42
|
-
import type { WorkflowInputEntry } from "../extension/render-result.js";
|
|
43
|
-
import { chatWidth, renderRoundedBox } from "../tui/chat-surface.js";
|
|
44
|
-
import { paint } from "../tui/color-utils.js";
|
|
45
|
-
import type { GraphTheme } from "../tui/graph-theme.js";
|
|
46
|
-
|
|
47
|
-
export interface RenderInputsSchemaOptions {
|
|
48
|
-
/** When provided, output uses ANSI colours and indented `INPUTS` chrome. */
|
|
49
|
-
theme?: GraphTheme;
|
|
50
|
-
/** Optional host render width in terminal cells. */
|
|
51
|
-
width?: number;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Render the schema as a printable block. With `opts.theme` the result is
|
|
56
|
-
* ANSI-coloured and structured for TUI surfaces; without it the output is
|
|
57
|
-
* the historical plain-text form, byte-for-byte stable for snapshot tests.
|
|
58
|
-
*/
|
|
59
|
-
export function renderInputsSchema(
|
|
60
|
-
name: string,
|
|
61
|
-
inputs: WorkflowInputEntry[],
|
|
62
|
-
opts: RenderInputsSchemaOptions = {},
|
|
63
|
-
): string {
|
|
64
|
-
return opts.theme === undefined
|
|
65
|
-
? renderPlain(name, inputs, opts.width)
|
|
66
|
-
: renderPretty(name, inputs, opts.theme, opts.width);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
// ---------------------------------------------------------------------------
|
|
70
|
-
// Plain renderer — rounded, marker-free workflow-tool output without ANSI.
|
|
71
|
-
// ---------------------------------------------------------------------------
|
|
72
|
-
|
|
73
|
-
function renderPlain(name: string, inputs: WorkflowInputEntry[], width?: number): string {
|
|
74
|
-
const boxWidth = chatWidth(width);
|
|
75
|
-
const body: string[] = [];
|
|
76
|
-
|
|
77
|
-
if (inputs.length === 0) {
|
|
78
|
-
body.push(` Workflow has no declared inputs. Workflow: "${name}". `);
|
|
79
|
-
} else {
|
|
80
|
-
for (let i = 0; i < inputs.length; i++) {
|
|
81
|
-
if (i > 0) body.push("");
|
|
82
|
-
body.push(...renderInputRows(inputs[i]!));
|
|
83
|
-
}
|
|
84
|
-
body.push("");
|
|
85
|
-
body.push(` ${inputsSummary(name, inputs)} `);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
return renderRoundedBox({
|
|
89
|
-
title: `INPUTS FOR ${name}`,
|
|
90
|
-
bodyLines: body,
|
|
91
|
-
width: boxWidth,
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
// ---------------------------------------------------------------------------
|
|
96
|
-
// Pretty renderer — ANSI-coloured, themed, matches the session-list aesthetic.
|
|
97
|
-
//
|
|
98
|
-
// Section labels lead with a two-cell indent and the field name is rendered
|
|
99
|
-
// bold-bright so the eye scans the form top-to-bottom. The `required` tag is yellow
|
|
100
|
-
// (theme.warning) — yellow draws attention to "you must fill this in"
|
|
101
|
-
// without being alarming the way red would.
|
|
102
|
-
// ---------------------------------------------------------------------------
|
|
103
|
-
|
|
104
|
-
function renderPretty(name: string, inputs: WorkflowInputEntry[], theme: GraphTheme, width?: number): string {
|
|
105
|
-
const boxWidth = chatWidth(width);
|
|
106
|
-
const body: string[] = [];
|
|
107
|
-
|
|
108
|
-
if (inputs.length === 0) {
|
|
109
|
-
body.push(` ${paint(`Workflow has no declared inputs. Workflow: "${name}".`, theme.dim)} `);
|
|
110
|
-
} else {
|
|
111
|
-
for (let i = 0; i < inputs.length; i++) {
|
|
112
|
-
if (i > 0) body.push("");
|
|
113
|
-
body.push(...renderInputRows(inputs[i]!, theme));
|
|
114
|
-
}
|
|
115
|
-
body.push("");
|
|
116
|
-
body.push(` ${paint(inputsSummary(name, inputs), theme.dim)} `);
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
return renderRoundedBox({
|
|
120
|
-
title: `INPUTS FOR ${name.toUpperCase()}`,
|
|
121
|
-
bodyLines: body,
|
|
122
|
-
accent: theme.mauve,
|
|
123
|
-
theme,
|
|
124
|
-
width: boxWidth,
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
function renderInputRows(field: WorkflowInputEntry, theme?: GraphTheme): string[] {
|
|
129
|
-
const tagLabel = field.required ? "required" : "optional";
|
|
130
|
-
const heading = theme
|
|
131
|
-
? ` ${paint(field.name, theme.text, { bold: true })} ${paint(field.type, theme.dim)} · ${paint(tagLabel, field.required ? theme.warning : theme.dim)} `
|
|
132
|
-
: ` ${field.name} ${field.type} · ${tagLabel} `;
|
|
133
|
-
const lines: string[] = [heading];
|
|
134
|
-
|
|
135
|
-
if (field.description) {
|
|
136
|
-
lines.push(` ${theme ? paint(field.description, theme.textMuted) : field.description} `);
|
|
137
|
-
}
|
|
138
|
-
if (field.choices && field.choices.length > 0) {
|
|
139
|
-
const values = field.choices.join(" · ");
|
|
140
|
-
lines.push(` ${theme ? paint("values: ", theme.dim) + paint(values, theme.text) : `values: ${values}`} `);
|
|
141
|
-
}
|
|
142
|
-
if (field.default !== undefined) {
|
|
143
|
-
const value = JSON.stringify(field.default);
|
|
144
|
-
lines.push(` ${theme ? paint("default: ", theme.dim) + paint(value, theme.text) : `default: ${value}`} `);
|
|
145
|
-
}
|
|
146
|
-
if (field.placeholder) {
|
|
147
|
-
lines.push(
|
|
148
|
-
` ${theme ? paint("placeholder: ", theme.dim) + paint(field.placeholder, theme.textMuted) : `placeholder: ${field.placeholder}`} `,
|
|
149
|
-
);
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
return lines;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
function inputsSummary(name: string, inputs: readonly WorkflowInputEntry[]): string {
|
|
156
|
-
const required = inputs.filter((i) => i.required).length;
|
|
157
|
-
const total = inputs.length;
|
|
158
|
-
const totalLabel = `${total} input${total === 1 ? "" : "s"}`;
|
|
159
|
-
const reqLabel = `${required} required`;
|
|
160
|
-
return `${totalLabel} · ${reqLabel} · pass via key=value or run \`/workflow ${name}\` with no args for picker`;
|
|
161
|
-
}
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import type { RunEndMetadata } from "./store-public-types.js";
|
|
2
|
-
import type { RunSnapshot, RunStatus, StageSnapshot, WorkflowFailureKind } from "./store-types.js";
|
|
3
|
-
import type { WorkflowOutputValues } from "./types.js";
|
|
4
|
-
|
|
5
|
-
const RETURNED_BLOCKED_STATUSES = new Set([
|
|
6
|
-
"blocked",
|
|
7
|
-
"needs_human",
|
|
8
|
-
"incomplete",
|
|
9
|
-
"auth_blocked",
|
|
10
|
-
"budget_exceeded",
|
|
11
|
-
"active",
|
|
12
|
-
]);
|
|
13
|
-
|
|
14
|
-
export interface StructuredRecoverableWorkflowFailure {
|
|
15
|
-
readonly error: string;
|
|
16
|
-
readonly metadata: RunEndMetadata;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export function normalizeReturnedWorkflowStatus(status: unknown): string | undefined {
|
|
20
|
-
if (typeof status !== "string") return undefined;
|
|
21
|
-
const normalized = status
|
|
22
|
-
.trim()
|
|
23
|
-
.toLowerCase()
|
|
24
|
-
.replace(/[^a-z0-9]+/g, "_")
|
|
25
|
-
.replace(/^_+|_+$/g, "");
|
|
26
|
-
return normalized.length > 0 ? normalized : undefined;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export function isReturnedBlockedWorkflowStatus(status: string): boolean {
|
|
30
|
-
return RETURNED_BLOCKED_STATUSES.has(status);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export function isReturnedResumableBlockedWorkflowStatus(status: string): boolean {
|
|
34
|
-
return status !== "blocked" && isReturnedBlockedWorkflowStatus(status);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export function actionableReturnedStatusText(result: WorkflowOutputValues | undefined): string | undefined {
|
|
38
|
-
return (
|
|
39
|
-
stringResultField(result, "summary") ??
|
|
40
|
-
stringResultField(result, "remaining_work") ??
|
|
41
|
-
stringResultField(result, "result")
|
|
42
|
-
);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export function structuredRecoverableWorkflowFailure(
|
|
46
|
-
run: Pick<
|
|
47
|
-
RunSnapshot,
|
|
48
|
-
| "error"
|
|
49
|
-
| "failureKind"
|
|
50
|
-
| "failureCode"
|
|
51
|
-
| "failureRecoverability"
|
|
52
|
-
| "failureDisposition"
|
|
53
|
-
| "failureMessage"
|
|
54
|
-
| "failedStageId"
|
|
55
|
-
| "retryAfterMs"
|
|
56
|
-
| "stages"
|
|
57
|
-
| "result"
|
|
58
|
-
| "budgetState"
|
|
59
|
-
>,
|
|
60
|
-
): StructuredRecoverableWorkflowFailure | undefined {
|
|
61
|
-
const returnedStatus = normalizeReturnedWorkflowStatus(run.result?.status);
|
|
62
|
-
if (
|
|
63
|
-
returnedStatus === "budget_exceeded" &&
|
|
64
|
-
run.budgetState?.systemOwnedStop === true &&
|
|
65
|
-
run.failureDisposition === "active_blocked" &&
|
|
66
|
-
run.failureRecoverability === "recoverable"
|
|
67
|
-
) {
|
|
68
|
-
const error = run.error ?? run.failureMessage ?? "Workflow budget exceeded.";
|
|
69
|
-
return {
|
|
70
|
-
error,
|
|
71
|
-
metadata: {
|
|
72
|
-
...(run.failureCode !== undefined ? { failureCode: run.failureCode } : {}),
|
|
73
|
-
failureRecoverability: "recoverable",
|
|
74
|
-
failureDisposition: "active_blocked",
|
|
75
|
-
failureMessage: run.failureMessage ?? error,
|
|
76
|
-
...(run.failedStageId !== undefined ? { failedStageId: run.failedStageId } : {}),
|
|
77
|
-
resumable: true,
|
|
78
|
-
...(run.retryAfterMs !== undefined ? { retryAfterMs: run.retryAfterMs } : {}),
|
|
79
|
-
},
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
const runFailure = structuredRecoverableFailureFromSnapshot(run);
|
|
83
|
-
if (runFailure !== undefined) return runFailure;
|
|
84
|
-
if (run.failedStageId === undefined) return undefined;
|
|
85
|
-
|
|
86
|
-
const failedStage = run.stages.find((stage) => stage.id === run.failedStageId);
|
|
87
|
-
return failedStage === undefined ? undefined : structuredRecoverableFailureFromSnapshot(failedStage, failedStage.id);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
export function structuredRecoverableWorkflowFailureText(
|
|
91
|
-
run: Pick<
|
|
92
|
-
RunSnapshot,
|
|
93
|
-
| "error"
|
|
94
|
-
| "failureKind"
|
|
95
|
-
| "failureCode"
|
|
96
|
-
| "failureRecoverability"
|
|
97
|
-
| "failureDisposition"
|
|
98
|
-
| "failureMessage"
|
|
99
|
-
| "failedStageId"
|
|
100
|
-
| "retryAfterMs"
|
|
101
|
-
| "stages"
|
|
102
|
-
| "result"
|
|
103
|
-
| "budgetState"
|
|
104
|
-
>,
|
|
105
|
-
): string | undefined {
|
|
106
|
-
return structuredRecoverableWorkflowFailure(run)?.error;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
export function effectiveRunStatus(run: RunSnapshot): RunStatus {
|
|
110
|
-
const returnedStatus = normalizeReturnedWorkflowStatus(run.result?.status);
|
|
111
|
-
if (
|
|
112
|
-
(run.status === "running" || run.status === "completed") &&
|
|
113
|
-
structuredRecoverableWorkflowFailure(run) !== undefined
|
|
114
|
-
)
|
|
115
|
-
return "blocked";
|
|
116
|
-
if (returnedStatus === "budget_exceeded") return run.status;
|
|
117
|
-
if (run.status !== "completed") return run.status;
|
|
118
|
-
if (returnedStatus === "failed") return "failed";
|
|
119
|
-
if (returnedStatus !== undefined && isReturnedBlockedWorkflowStatus(returnedStatus)) return "blocked";
|
|
120
|
-
return run.status;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
function structuredRecoverableFailureFromSnapshot(
|
|
124
|
-
snapshot: Pick<
|
|
125
|
-
RunSnapshot | StageSnapshot,
|
|
126
|
-
| "error"
|
|
127
|
-
| "failureKind"
|
|
128
|
-
| "failureCode"
|
|
129
|
-
| "failureRecoverability"
|
|
130
|
-
| "failureDisposition"
|
|
131
|
-
| "failureMessage"
|
|
132
|
-
| "retryAfterMs"
|
|
133
|
-
>,
|
|
134
|
-
failedStageId?: string,
|
|
135
|
-
): StructuredRecoverableWorkflowFailure | undefined {
|
|
136
|
-
if (snapshot.failureDisposition !== "active_blocked") return undefined;
|
|
137
|
-
if (snapshot.failureRecoverability !== "recoverable") return undefined;
|
|
138
|
-
if (!isRecoverableProviderFailureKind(snapshot.failureKind)) return undefined;
|
|
139
|
-
const error = snapshot.error ?? snapshot.failureMessage ?? "Workflow is blocked by a recoverable provider failure.";
|
|
140
|
-
return {
|
|
141
|
-
error,
|
|
142
|
-
metadata: {
|
|
143
|
-
failureKind: snapshot.failureKind,
|
|
144
|
-
...(snapshot.failureCode !== undefined ? { failureCode: snapshot.failureCode } : {}),
|
|
145
|
-
failureRecoverability: snapshot.failureRecoverability,
|
|
146
|
-
failureDisposition: snapshot.failureDisposition,
|
|
147
|
-
failureMessage: snapshot.failureMessage ?? error,
|
|
148
|
-
...(failedStageId !== undefined ? { failedStageId } : {}),
|
|
149
|
-
resumable: true,
|
|
150
|
-
...(snapshot.retryAfterMs !== undefined ? { retryAfterMs: snapshot.retryAfterMs } : {}),
|
|
151
|
-
},
|
|
152
|
-
};
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
function isRecoverableProviderFailureKind(
|
|
156
|
-
kind: WorkflowFailureKind | undefined,
|
|
157
|
-
): kind is "auth" | "rate_limit" | "provider" {
|
|
158
|
-
return kind === "auth" || kind === "rate_limit" || kind === "provider";
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
function stringResultField(result: WorkflowOutputValues | undefined, key: string): string | undefined {
|
|
162
|
-
const value = result?.[key];
|
|
163
|
-
return typeof value === "string" && value.trim().length > 0 ? value.trim() : undefined;
|
|
164
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The run identifier contract.
|
|
3
|
-
*
|
|
4
|
-
* A run id is a bare `crypto.randomUUID()` value (see `extension/dispatcher.ts`),
|
|
5
|
-
* and the durable DBOS `workflowId` is that same value. Every user-facing surface
|
|
6
|
-
* renders it in full, so every resolver accepts it only in full: there is no
|
|
7
|
-
* unique-prefix fallback and no truncated form that addresses a run.
|
|
8
|
-
*
|
|
9
|
-
* This lives in `shared/` because both the extension resolvers and the durable
|
|
10
|
-
* catalog need it, and `durable/` must not import from `extension/`.
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/** Canonical rendered length of a run id, dashes included. */
|
|
14
|
-
export const RUN_ID_LENGTH = 36;
|
|
15
|
-
|
|
16
|
-
const RUN_ID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* True only for a full 8-4-4-4-12 hex UUID.
|
|
20
|
-
*
|
|
21
|
-
* Rejects a prefix, a 32-character dashless form, and a 36-character string that
|
|
22
|
-
* is the right length but not hex — a transposed or truncated paste should fail
|
|
23
|
-
* loudly here rather than silently miss during lookup.
|
|
24
|
-
*/
|
|
25
|
-
export function isFullRunId(value: string): boolean {
|
|
26
|
-
return RUN_ID_PATTERN.test(value);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Reported instead of "not found" so a truncated paste is diagnosable as
|
|
31
|
-
* truncated. A well-formed id that no run happens to carry is a different
|
|
32
|
-
* failure and keeps the not-found message.
|
|
33
|
-
*/
|
|
34
|
-
export function malformedRunIdMessage(target: string): string {
|
|
35
|
-
return `Run id must be a full ${RUN_ID_LENGTH}-character UUID; got "${target}" (${target.length} chars).`;
|
|
36
|
-
}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { effectiveRunStatus } from "./returned-run-status.js";
|
|
2
|
-
import type { RunSnapshot, RunStatus } from "./store-types.js";
|
|
3
|
-
|
|
4
|
-
/** The status represented by a run's primary indicator. */
|
|
5
|
-
export type RunIndicatorStatus = RunStatus | "awaiting_input";
|
|
6
|
-
|
|
7
|
-
const TERMINAL_OR_BLOCKED = new Set<RunStatus>(["completed", "failed", "killed", "cancelled", "skipped", "blocked"]);
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Resolve the status represented by a run's primary indicator.
|
|
11
|
-
*
|
|
12
|
-
* A live run with a pending run/stage prompt is awaiting input. When the
|
|
13
|
-
* caller supplies the complete run collection, pending prompts in hidden
|
|
14
|
-
* nested descendants are attributed to the visible ancestor by following
|
|
15
|
-
* `rootRunId` and `parentRunId`. Effective terminal and blocked statuses are
|
|
16
|
-
* authoritative, even when a stale prompt marker remains in a snapshot.
|
|
17
|
-
*/
|
|
18
|
-
export function runIndicatorStatus(run: RunSnapshot, allRuns: readonly RunSnapshot[] = [run]): RunIndicatorStatus {
|
|
19
|
-
const status = effectiveRunStatus(run);
|
|
20
|
-
if (TERMINAL_OR_BLOCKED.has(status)) return status;
|
|
21
|
-
if (runHasPendingInput(run)) return "awaiting_input";
|
|
22
|
-
|
|
23
|
-
const runsById = new Map(allRuns.map((candidate) => [candidate.id, candidate]));
|
|
24
|
-
for (const candidate of allRuns) {
|
|
25
|
-
if (candidate.id === run.id || !runBelongsTo(candidate, run, runsById)) continue;
|
|
26
|
-
const candidateStatus = effectiveRunStatus(candidate);
|
|
27
|
-
if (!TERMINAL_OR_BLOCKED.has(candidateStatus) && runHasPendingInput(candidate)) return "awaiting_input";
|
|
28
|
-
}
|
|
29
|
-
return status;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Precompute the indicator status of each listed run against the complete
|
|
34
|
-
* run collection. The result is plain serializable data, so a surface whose
|
|
35
|
-
* payload is persisted and re-rendered after a session restore (e.g. the
|
|
36
|
-
* `/workflow status` chat entry) keeps hidden-descendant prompt attribution
|
|
37
|
-
* without serializing the hidden run snapshots themselves.
|
|
38
|
-
*/
|
|
39
|
-
export function resolveRunIndicatorStatuses(
|
|
40
|
-
runs: readonly RunSnapshot[],
|
|
41
|
-
allRuns: readonly RunSnapshot[],
|
|
42
|
-
): Readonly<Record<string, RunIndicatorStatus>> {
|
|
43
|
-
const statuses: Record<string, RunIndicatorStatus> = {};
|
|
44
|
-
for (const run of runs) statuses[run.id] = runIndicatorStatus(run, allRuns);
|
|
45
|
-
return statuses;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
function runHasPendingInput(run: RunSnapshot): boolean {
|
|
49
|
-
if (run.pendingPrompt !== undefined) return true;
|
|
50
|
-
return run.stages.some(
|
|
51
|
-
(stage) =>
|
|
52
|
-
stage.status === "awaiting_input" ||
|
|
53
|
-
stage.awaitingInputSince !== undefined ||
|
|
54
|
-
stage.pendingPrompt !== undefined ||
|
|
55
|
-
stage.inputRequest !== undefined,
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
function runBelongsTo(
|
|
60
|
-
candidate: RunSnapshot,
|
|
61
|
-
ancestor: RunSnapshot,
|
|
62
|
-
runsById: ReadonlyMap<string, RunSnapshot>,
|
|
63
|
-
): boolean {
|
|
64
|
-
if (candidate.rootRunId === ancestor.id) return true;
|
|
65
|
-
|
|
66
|
-
const visited = new Set<string>();
|
|
67
|
-
let current: RunSnapshot | undefined = candidate;
|
|
68
|
-
while (current !== undefined && current.parentRunId !== undefined) {
|
|
69
|
-
if (current.parentRunId === ancestor.id) return true;
|
|
70
|
-
if (visited.has(current.id)) return false;
|
|
71
|
-
visited.add(current.id);
|
|
72
|
-
current = runsById.get(current.parentRunId);
|
|
73
|
-
}
|
|
74
|
-
return false;
|
|
75
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { RunSnapshot } from "./store-types.js";
|
|
2
|
-
|
|
3
|
-
export function isTopLevelWorkflowRun(run: Pick<RunSnapshot, "parentRunId">): boolean {
|
|
4
|
-
return run.parentRunId === undefined;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
export function topLevelWorkflowRuns(runs: readonly RunSnapshot[]): RunSnapshot[] {
|
|
8
|
-
return runs.filter(isTopLevelWorkflowRun);
|
|
9
|
-
}
|