@bastani/atomic 0.9.16-alpha.2 → 0.9.16-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/builtin/intercom/broker/spawn.ts +22 -2
- package/dist/builtin/intercom/index.bundle.mjs +61694 -0
- package/dist/builtin/intercom/package.json +3 -3
- package/dist/builtin/mcp/index.bundle.mjs +64901 -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 +85671 -0
- package/dist/builtin/web-access/index.bundle.mjs +67413 -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 +76391 -96336
- package/dist/builtin/workflows/src/index.bundle.mjs +73244 -0
- 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,343 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Durable workflow state types for DBOS-backed cross-session resumability.
|
|
3
|
-
*
|
|
4
|
-
* These types describe the checkpoint records that the durable backend stores
|
|
5
|
-
* for each `ctx.*` operation (tool, ui, stage). Only `ctx.*` blocks produce
|
|
6
|
-
* durable checkpoints — anything outside `ctx.*` is never saved, matching the
|
|
7
|
-
* issue's "checkpoints are effectively only `ctx.*` blocks" requirement.
|
|
8
|
-
*
|
|
9
|
-
* cross-ref: issue #1498
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
import type {
|
|
13
|
-
WorkflowActor,
|
|
14
|
-
WorkflowFailureCode,
|
|
15
|
-
WorkflowFailureDisposition,
|
|
16
|
-
WorkflowFailureKind,
|
|
17
|
-
WorkflowFailureRecoverability,
|
|
18
|
-
} from "../shared/store-types.js";
|
|
19
|
-
import type { WorkflowModelAttempt, WorkflowSerializableValue } from "../shared/types.js";
|
|
20
|
-
|
|
21
|
-
// ---------------------------------------------------------------------------
|
|
22
|
-
// Top-level workflow identity
|
|
23
|
-
// ---------------------------------------------------------------------------
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* A resumable top-level workflow. The `workflowId` is the public resume handle
|
|
27
|
-
* (a run id); internal nested workflow ids are abstracted away from users.
|
|
28
|
-
*/
|
|
29
|
-
export interface DurableWorkflowHandle {
|
|
30
|
-
/** Top-level workflow id used by `/workflow resume <id>`. */
|
|
31
|
-
readonly workflowId: string;
|
|
32
|
-
/** Workflow definition name. */
|
|
33
|
-
readonly name: string;
|
|
34
|
-
/** Workflow inputs (JSON-serializable). */
|
|
35
|
-
readonly inputs: Readonly<WorkflowSerializableObject>;
|
|
36
|
-
/** Creation timestamp (ms since epoch). */
|
|
37
|
-
readonly createdAt: number;
|
|
38
|
-
/** Last update timestamp (ms since epoch). */
|
|
39
|
-
readonly updatedAt: number;
|
|
40
|
-
/** Current durable status. */
|
|
41
|
-
readonly status: DurableWorkflowStatus;
|
|
42
|
-
/** Original invocation cwd used to resolve repo-relative workflow defaults on resume. */
|
|
43
|
-
readonly invocationCwd?: string;
|
|
44
|
-
/** Who launched this workflow, when the launcher was attributable. */
|
|
45
|
-
readonly origin?: WorkflowActor;
|
|
46
|
-
/** Resolved workflow cwd when an input-bound reusable worktree was set up. */
|
|
47
|
-
readonly workflowCwd?: string;
|
|
48
|
-
/** Invoking repository root used for reusable worktree validation. */
|
|
49
|
-
readonly repositoryRoot?: string;
|
|
50
|
-
/** Resolved reusable git worktree root, when setup happened at workflow start. */
|
|
51
|
-
readonly gitWorktreeRoot?: string;
|
|
52
|
-
/** Session file path that caches this workflow's durable metadata. */
|
|
53
|
-
readonly sessionFile?: string;
|
|
54
|
-
/** Number of completed durable checkpoints. */
|
|
55
|
-
readonly completedCheckpoints: number;
|
|
56
|
-
/** Number of pending (unanswered) UI prompts. */
|
|
57
|
-
readonly pendingPrompts: number;
|
|
58
|
-
/** Optional human-readable label. */
|
|
59
|
-
readonly label?: string;
|
|
60
|
-
/** Root workflow id. Omitted or equal to workflowId means top-level. */
|
|
61
|
-
readonly rootWorkflowId?: string;
|
|
62
|
-
/** Explicit resumability flag for failed/blocked runs. */
|
|
63
|
-
readonly resumable?: boolean;
|
|
64
|
-
/** True when the terminal status came from an author-selected ctx.exit(). */
|
|
65
|
-
readonly exited?: boolean;
|
|
66
|
-
/** Author-supplied reason from ctx.exit(), when present. */
|
|
67
|
-
readonly exitReason?: string;
|
|
68
|
-
readonly error?: string;
|
|
69
|
-
readonly failureKind?: WorkflowFailureKind;
|
|
70
|
-
readonly failureCode?: WorkflowFailureCode;
|
|
71
|
-
readonly failureRecoverability?: WorkflowFailureRecoverability;
|
|
72
|
-
readonly failureDisposition?: WorkflowFailureDisposition;
|
|
73
|
-
readonly failedToolNodeId?: string;
|
|
74
|
-
/** Executor id of the Atomic process that last wrote this workflow's metadata. */
|
|
75
|
-
readonly ownerExecutorId?: string;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export type DurableWorkflowStatus = "running" | "paused" | "completed" | "failed" | "cancelled" | "blocked";
|
|
79
|
-
|
|
80
|
-
// ---------------------------------------------------------------------------
|
|
81
|
-
// Checkpoint records
|
|
82
|
-
// ---------------------------------------------------------------------------
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
* Discriminated union of durable checkpoint records.
|
|
86
|
-
* Each `ctx.*` operation that should survive cross-session resume writes one
|
|
87
|
-
* of these. The backend keys checkpoints by (workflowId, kind, checkpointId).
|
|
88
|
-
*/
|
|
89
|
-
export type DurableCheckpoint = DurableToolCheckpoint | DurableUiCheckpoint | DurableStageCheckpoint;
|
|
90
|
-
|
|
91
|
-
export type DurableCheckpointKind = "tool" | "ui" | "stage";
|
|
92
|
-
|
|
93
|
-
export const DURABLE_TOOL_TOPOLOGY_VERSION = 1 as const;
|
|
94
|
-
|
|
95
|
-
export interface DurableToolTopology {
|
|
96
|
-
readonly version: typeof DURABLE_TOOL_TOPOLOGY_VERSION;
|
|
97
|
-
readonly nodeId: string;
|
|
98
|
-
readonly ordinal: number;
|
|
99
|
-
readonly order: number;
|
|
100
|
-
readonly parentIds: readonly string[];
|
|
101
|
-
readonly startedAt?: number;
|
|
102
|
-
/** Original terminal timestamp; replay metadata may be written later. */
|
|
103
|
-
readonly endedAt?: number;
|
|
104
|
-
readonly run?: DurableStageRunTopology;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
/** A `ctx.tool(...)` result cached durably. */
|
|
108
|
-
export interface DurableToolCheckpoint {
|
|
109
|
-
readonly kind: "tool";
|
|
110
|
-
readonly workflowId: string;
|
|
111
|
-
/** Unique checkpoint id within the workflow (monotonic). */
|
|
112
|
-
readonly checkpointId: string;
|
|
113
|
-
/** Tool name for display/debugging. */
|
|
114
|
-
readonly name: string;
|
|
115
|
-
/** Exact invocation arguments retained for read-only inspection. */
|
|
116
|
-
readonly args?: Readonly<Record<string, WorkflowSerializableValue>>;
|
|
117
|
-
/** Callback source captured at registration for read-only inspection. */
|
|
118
|
-
readonly source?: string;
|
|
119
|
-
/** Deterministic hash of the tool arguments for idempotency. */
|
|
120
|
-
readonly argsHash: string;
|
|
121
|
-
/** Cached tool output (JSON-serializable). */
|
|
122
|
-
readonly output: WorkflowSerializableValue;
|
|
123
|
-
/** Explicit return-mode result kind; absent for legacy/default successful tools. */
|
|
124
|
-
readonly outcomeKind?: "return_success" | "return_failure";
|
|
125
|
-
/**
|
|
126
|
-
* Inspection-only message for a non-replayable tool failure or cancellation;
|
|
127
|
-
* never used as a replay cache hit, so the call runs again on resume.
|
|
128
|
-
*/
|
|
129
|
-
readonly throwingFailureError?: string;
|
|
130
|
-
readonly completedAt: number;
|
|
131
|
-
/** Additive graph topology; omitted by pre-#1991 checkpoints. */
|
|
132
|
-
readonly topology?: DurableToolTopology;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
/** A `ctx.ui.*` user response cached durably. */
|
|
136
|
-
export interface DurableUiCheckpoint {
|
|
137
|
-
readonly kind: "ui";
|
|
138
|
-
readonly workflowId: string;
|
|
139
|
-
readonly checkpointId: string;
|
|
140
|
-
/** UI prompt kind (input/confirm/select/editor/custom). */
|
|
141
|
-
readonly promptKind: UiPromptKind;
|
|
142
|
-
/** Prompt message shown to the user. */
|
|
143
|
-
readonly message: string;
|
|
144
|
-
/** Deterministic hash of the prompt identity for replay matching. */
|
|
145
|
-
readonly promptHash: string;
|
|
146
|
-
/** User response (JSON-serializable). */
|
|
147
|
-
readonly response: WorkflowSerializableValue;
|
|
148
|
-
readonly completedAt: number;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
export const DURABLE_STAGE_TOPOLOGY_VERSION = 1 as const;
|
|
152
|
-
|
|
153
|
-
export const DURABLE_BOUNDARY_TOPOLOGY_VERSION = 1 as const;
|
|
154
|
-
|
|
155
|
-
export type DurableStageLifecycleStatus =
|
|
156
|
-
| "pending"
|
|
157
|
-
| "running"
|
|
158
|
-
| "awaiting_input"
|
|
159
|
-
| "paused"
|
|
160
|
-
| "blocked"
|
|
161
|
-
| "completed"
|
|
162
|
-
| "failed"
|
|
163
|
-
| "skipped";
|
|
164
|
-
|
|
165
|
-
export interface DurableBoundaryChildTopology {
|
|
166
|
-
readonly runId: string;
|
|
167
|
-
readonly runName: string;
|
|
168
|
-
readonly parentRunId: string;
|
|
169
|
-
readonly parentStageId: string;
|
|
170
|
-
readonly rootRunId: string;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
interface DurableWorkflowBoundaryIdentity {
|
|
174
|
-
readonly version: typeof DURABLE_BOUNDARY_TOPOLOGY_VERSION;
|
|
175
|
-
readonly replayScope: string;
|
|
176
|
-
readonly alias: string;
|
|
177
|
-
readonly workflow: string;
|
|
178
|
-
/** Definition + exact validated inputs; absent only on compatible completed legacy records. */
|
|
179
|
-
readonly invocationFingerprint?: string;
|
|
180
|
-
readonly child: DurableBoundaryChildTopology;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
/** Additive identity record written before a nested workflow can execute. */
|
|
184
|
-
export type DurableWorkflowBoundaryTopology = DurableWorkflowBoundaryIdentity &
|
|
185
|
-
(
|
|
186
|
-
| { readonly event: "start"; readonly status: "running" }
|
|
187
|
-
| {
|
|
188
|
-
readonly event: "terminal";
|
|
189
|
-
readonly status: Extract<DurableStageLifecycleStatus, "completed" | "failed" | "skipped">;
|
|
190
|
-
}
|
|
191
|
-
);
|
|
192
|
-
|
|
193
|
-
/** Durable ownership metadata needed to rebuild nested workflow runs. */
|
|
194
|
-
export interface DurableStageRunTopology {
|
|
195
|
-
readonly runId: string;
|
|
196
|
-
readonly runName: string;
|
|
197
|
-
readonly parentRunId?: string;
|
|
198
|
-
readonly parentStageId?: string;
|
|
199
|
-
readonly rootRunId?: string;
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
/** Versioned source-stage lineage used to reconstruct completed DAGs after restart. */
|
|
203
|
-
export interface DurableStageTopology {
|
|
204
|
-
readonly version: typeof DURABLE_STAGE_TOPOLOGY_VERSION;
|
|
205
|
-
readonly stageId: string;
|
|
206
|
-
readonly parentIds: readonly string[];
|
|
207
|
-
/** Zero-based source/spawn order within the owning run. */
|
|
208
|
-
readonly sourceOrder?: number;
|
|
209
|
-
/** Distinguishes one durable prompt-node occurrence from its logical continuation replay key. */
|
|
210
|
-
readonly occurrenceKey?: string;
|
|
211
|
-
/** Actual stage lifecycle state represented by this checkpoint. */
|
|
212
|
-
readonly status?: DurableStageLifecycleStatus;
|
|
213
|
-
/** Shared admission order with durable tool nodes. */
|
|
214
|
-
readonly order?: number;
|
|
215
|
-
/** Owning run and boundary linkage for nested workflow graph reconstruction. */
|
|
216
|
-
readonly run?: DurableStageRunTopology;
|
|
217
|
-
/** Present only for durable nested-workflow boundary records. */
|
|
218
|
-
readonly boundary?: DurableWorkflowBoundaryTopology;
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
/** A `ctx.stage(...)` / `ctx.task(...)` durable checkpoint or resumable session marker. */
|
|
222
|
-
export interface DurableStageCheckpoint {
|
|
223
|
-
readonly kind: "stage";
|
|
224
|
-
readonly workflowId: string;
|
|
225
|
-
readonly checkpointId: string;
|
|
226
|
-
/** Stage name for display. */
|
|
227
|
-
readonly name: string;
|
|
228
|
-
/** Stable replay key (matches existing continuation replay semantics). */
|
|
229
|
-
readonly replayKey: string;
|
|
230
|
-
/** Source stage identity and parents for fresh-process completed-run inspection. */
|
|
231
|
-
readonly topology?: DurableStageTopology;
|
|
232
|
-
/** Stage output text or structured result when the stage completed. */
|
|
233
|
-
readonly output?: WorkflowSerializableValue;
|
|
234
|
-
/** Resumable Atomic/Pi session metadata for in-progress LM stages. */
|
|
235
|
-
readonly sessionId?: string;
|
|
236
|
-
readonly sessionFile?: string;
|
|
237
|
-
readonly completedAt: number;
|
|
238
|
-
/** Original stage start timestamp, when available. */
|
|
239
|
-
readonly startedAt?: number;
|
|
240
|
-
/** Original stage end timestamp, when available. */
|
|
241
|
-
readonly endedAt?: number;
|
|
242
|
-
/** Original stage duration, when available. */
|
|
243
|
-
readonly durationMs?: number;
|
|
244
|
-
/** Display/result text recorded for the completed stage. */
|
|
245
|
-
readonly result?: string;
|
|
246
|
-
/** Completed stage/task model metadata used to hydrate replayed snapshots. */
|
|
247
|
-
readonly model?: string;
|
|
248
|
-
readonly fastMode?: boolean;
|
|
249
|
-
readonly attemptedModels?: readonly string[];
|
|
250
|
-
readonly modelAttempts?: readonly WorkflowModelAttempt[];
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
export type UiPromptKind = "input" | "confirm" | "select" | "editor" | "custom";
|
|
254
|
-
|
|
255
|
-
// ---------------------------------------------------------------------------
|
|
256
|
-
// Serializable helpers
|
|
257
|
-
// ---------------------------------------------------------------------------
|
|
258
|
-
|
|
259
|
-
export type WorkflowSerializableObject = Readonly<Record<string, WorkflowSerializableValue>>;
|
|
260
|
-
|
|
261
|
-
// ---------------------------------------------------------------------------
|
|
262
|
-
// DBOS metadata and resume catalog
|
|
263
|
-
// ---------------------------------------------------------------------------
|
|
264
|
-
|
|
265
|
-
/** Current workflow metadata persisted in DBOS. */
|
|
266
|
-
export interface DurableWorkflowMetadata {
|
|
267
|
-
readonly workflowId: string;
|
|
268
|
-
readonly name: string;
|
|
269
|
-
readonly inputs: WorkflowSerializableObject;
|
|
270
|
-
readonly status: DurableWorkflowStatus;
|
|
271
|
-
readonly completedCheckpoints: number;
|
|
272
|
-
readonly pendingPrompts: number;
|
|
273
|
-
readonly createdAt: number;
|
|
274
|
-
readonly promptReservationEpoch: string;
|
|
275
|
-
/** Executor id of the Atomic process that wrote this metadata generation. */
|
|
276
|
-
readonly ownerExecutorId?: string;
|
|
277
|
-
/** Unique winner token for a first-writer-wins status-transition generation. */
|
|
278
|
-
readonly transitionClaimId?: string;
|
|
279
|
-
readonly sessionFile?: string;
|
|
280
|
-
readonly label?: string;
|
|
281
|
-
readonly error?: string;
|
|
282
|
-
readonly failureKind?: WorkflowFailureKind;
|
|
283
|
-
readonly failureCode?: WorkflowFailureCode;
|
|
284
|
-
readonly failureRecoverability?: WorkflowFailureRecoverability;
|
|
285
|
-
readonly failureDisposition?: WorkflowFailureDisposition;
|
|
286
|
-
readonly failedToolNodeId?: string;
|
|
287
|
-
readonly rootWorkflowId?: string;
|
|
288
|
-
readonly resumable?: boolean;
|
|
289
|
-
/** True when the terminal status came from an author-selected ctx.exit(). */
|
|
290
|
-
readonly exited?: boolean;
|
|
291
|
-
/** Author-supplied reason from ctx.exit(), when present. */
|
|
292
|
-
readonly exitReason?: string;
|
|
293
|
-
readonly invocationCwd?: string;
|
|
294
|
-
readonly origin?: WorkflowActor;
|
|
295
|
-
readonly workflowCwd?: string;
|
|
296
|
-
readonly repositoryRoot?: string;
|
|
297
|
-
readonly gitWorktreeRoot?: string;
|
|
298
|
-
readonly updatedAt: number;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
/** Resume catalog entry loaded directly from DBOS metadata. */
|
|
302
|
-
export interface ResumableWorkflowEntry {
|
|
303
|
-
readonly workflowId: string;
|
|
304
|
-
readonly name: string;
|
|
305
|
-
readonly inputs?: WorkflowSerializableObject;
|
|
306
|
-
readonly status: DurableWorkflowStatus;
|
|
307
|
-
readonly completedCheckpoints: number;
|
|
308
|
-
readonly pendingPrompts: number;
|
|
309
|
-
readonly sessionFile?: string;
|
|
310
|
-
readonly label?: string;
|
|
311
|
-
readonly error?: string;
|
|
312
|
-
readonly failureKind?: WorkflowFailureKind;
|
|
313
|
-
readonly failureCode?: WorkflowFailureCode;
|
|
314
|
-
readonly failureRecoverability?: WorkflowFailureRecoverability;
|
|
315
|
-
readonly failureDisposition?: WorkflowFailureDisposition;
|
|
316
|
-
readonly failedToolNodeId?: string;
|
|
317
|
-
readonly rootWorkflowId?: string;
|
|
318
|
-
readonly resumable?: boolean;
|
|
319
|
-
/** True when the terminal status came from an author-selected ctx.exit(). */
|
|
320
|
-
readonly exited?: boolean;
|
|
321
|
-
/** Author-supplied reason from ctx.exit(), when present. */
|
|
322
|
-
readonly exitReason?: string;
|
|
323
|
-
readonly invocationCwd?: string;
|
|
324
|
-
readonly origin?: WorkflowActor;
|
|
325
|
-
readonly workflowCwd?: string;
|
|
326
|
-
readonly repositoryRoot?: string;
|
|
327
|
-
readonly gitWorktreeRoot?: string;
|
|
328
|
-
readonly createdAt: number;
|
|
329
|
-
readonly updatedAt: number;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
export interface DurableWorkflowFailureMetadata {
|
|
333
|
-
readonly error?: string;
|
|
334
|
-
/** True when the terminal status came from an author-selected ctx.exit(). */
|
|
335
|
-
readonly exited?: boolean;
|
|
336
|
-
/** Author-supplied reason from ctx.exit(), when present. */
|
|
337
|
-
readonly exitReason?: string;
|
|
338
|
-
readonly failureKind?: WorkflowFailureKind;
|
|
339
|
-
readonly failureCode?: WorkflowFailureCode;
|
|
340
|
-
readonly failureRecoverability?: WorkflowFailureRecoverability;
|
|
341
|
-
readonly failureDisposition?: WorkflowFailureDisposition;
|
|
342
|
-
readonly failedToolNodeId?: string;
|
|
343
|
-
}
|
|
@@ -1,263 +0,0 @@
|
|
|
1
|
-
/** Durable `ctx.ui` wrapper with collision-resistant prompt identities. */
|
|
2
|
-
|
|
3
|
-
import { selectPromptCallsiteFrame } from "../runs/shared/prompt-callsite.js";
|
|
4
|
-
import type {
|
|
5
|
-
WorkflowCustomUiFactory,
|
|
6
|
-
WorkflowCustomUiOptions,
|
|
7
|
-
WorkflowUIContext,
|
|
8
|
-
} from "../shared/authoring-contract-ui.js";
|
|
9
|
-
import { withPromptCallerStack } from "../shared/prompt-callsite-context.js";
|
|
10
|
-
import type { WorkflowSerializableValue } from "../shared/types.js";
|
|
11
|
-
import type { DurableWorkflowBackend } from "./backend.js";
|
|
12
|
-
import { durableHash } from "./backend.js";
|
|
13
|
-
import {
|
|
14
|
-
claimDurablePromptToken,
|
|
15
|
-
durablePromptScope,
|
|
16
|
-
type PromptReservationToken,
|
|
17
|
-
releaseDurablePrompt,
|
|
18
|
-
reserveDurablePrompt,
|
|
19
|
-
} from "./prompt-reservations.js";
|
|
20
|
-
import { recordCheckpointDurably } from "./tool-primitive.js";
|
|
21
|
-
import type { DurableUiCheckpoint, UiPromptKind } from "./types.js";
|
|
22
|
-
|
|
23
|
-
export type DurableUiReplayRequest =
|
|
24
|
-
| {
|
|
25
|
-
readonly kind: "input";
|
|
26
|
-
readonly promptText: string;
|
|
27
|
-
readonly response: string;
|
|
28
|
-
readonly callerStack: string | undefined;
|
|
29
|
-
}
|
|
30
|
-
| {
|
|
31
|
-
readonly kind: "confirm";
|
|
32
|
-
readonly message: string;
|
|
33
|
-
readonly response: boolean;
|
|
34
|
-
readonly callerStack: string | undefined;
|
|
35
|
-
}
|
|
36
|
-
| {
|
|
37
|
-
readonly kind: "select";
|
|
38
|
-
readonly message: string;
|
|
39
|
-
readonly options: readonly string[];
|
|
40
|
-
readonly response: string;
|
|
41
|
-
readonly callerStack: string | undefined;
|
|
42
|
-
}
|
|
43
|
-
| {
|
|
44
|
-
readonly kind: "editor";
|
|
45
|
-
readonly initial: string | undefined;
|
|
46
|
-
readonly response: string;
|
|
47
|
-
readonly callerStack: string | undefined;
|
|
48
|
-
}
|
|
49
|
-
| {
|
|
50
|
-
readonly kind: "custom";
|
|
51
|
-
readonly factory: WorkflowCustomUiFactory<WorkflowSerializableValue>;
|
|
52
|
-
readonly options: WorkflowCustomUiOptions | undefined;
|
|
53
|
-
readonly response: WorkflowSerializableValue | undefined;
|
|
54
|
-
readonly callerStack: string | undefined;
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
export interface DurableUiDeps {
|
|
58
|
-
readonly workflowId: string;
|
|
59
|
-
readonly backend: DurableWorkflowBackend;
|
|
60
|
-
readonly nextCheckpointId: () => string;
|
|
61
|
-
readonly onReplay?: (request: DurableUiReplayRequest) => Promise<void>;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
export function wrapUiWithDurable(base: WorkflowUIContext, deps: DurableUiDeps): WorkflowUIContext {
|
|
65
|
-
const ordinals = new Map<string, number>();
|
|
66
|
-
|
|
67
|
-
const scope = durablePromptScope(deps.backend, deps.workflowId);
|
|
68
|
-
const nextIdentity = (
|
|
69
|
-
kind: UiPromptKind,
|
|
70
|
-
message: string,
|
|
71
|
-
callerStack: string | undefined,
|
|
72
|
-
details?: WorkflowSerializableValue,
|
|
73
|
-
): { key: string; hash: string } => {
|
|
74
|
-
const authorCallsite = selectPromptCallsiteFrame(callerStack ?? "") ?? "unknown";
|
|
75
|
-
const descriptor = { kind, message, details: details ?? null };
|
|
76
|
-
const baseIdentity = {
|
|
77
|
-
rootWorkflowId: scope.rootWorkflowId,
|
|
78
|
-
scope: scope.scope,
|
|
79
|
-
authorCallsite: durableHash({ authorCallsite }),
|
|
80
|
-
descriptor,
|
|
81
|
-
};
|
|
82
|
-
const baseKey = durableHash(baseIdentity);
|
|
83
|
-
const ordinal = (ordinals.get(baseKey) ?? 0) + 1;
|
|
84
|
-
ordinals.set(baseKey, ordinal);
|
|
85
|
-
const identity = ordinal === 1 ? baseIdentity : { ...baseIdentity, ordinal };
|
|
86
|
-
return { key: JSON.stringify(identity), hash: durableHash(identity) };
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
const record = async (
|
|
90
|
-
kind: UiPromptKind,
|
|
91
|
-
identity: { key: string; hash: string },
|
|
92
|
-
response: WorkflowSerializableValue,
|
|
93
|
-
): Promise<void> => {
|
|
94
|
-
const checkpoint: DurableUiCheckpoint = {
|
|
95
|
-
kind: "ui",
|
|
96
|
-
workflowId: deps.workflowId,
|
|
97
|
-
checkpointId: `ui:${identity.hash}`,
|
|
98
|
-
promptKind: kind,
|
|
99
|
-
message: identity.key,
|
|
100
|
-
promptHash: identity.hash,
|
|
101
|
-
response,
|
|
102
|
-
completedAt: Date.now(),
|
|
103
|
-
};
|
|
104
|
-
await recordCheckpointDurably(deps.backend, checkpoint);
|
|
105
|
-
};
|
|
106
|
-
|
|
107
|
-
const cached = (identity: { readonly hash: string }): WorkflowSerializableValue | undefined =>
|
|
108
|
-
deps.backend.getUiResponse(deps.workflowId, identity.hash);
|
|
109
|
-
|
|
110
|
-
const cachedCustom = (identity: {
|
|
111
|
-
readonly hash: string;
|
|
112
|
-
}): { readonly found: boolean; readonly response?: WorkflowSerializableValue } => {
|
|
113
|
-
const hit = deps.backend
|
|
114
|
-
.listCheckpoints(deps.workflowId)
|
|
115
|
-
.find(
|
|
116
|
-
(checkpoint) =>
|
|
117
|
-
checkpoint.kind === "ui" &&
|
|
118
|
-
(checkpoint.promptHash === identity.hash || checkpoint.promptHash.endsWith(`:${identity.hash}`)),
|
|
119
|
-
);
|
|
120
|
-
return hit?.kind === "ui" ? { found: true, response: hit.response } : { found: false };
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
const releasePending = async (identity: { readonly hash: string }, token: PromptReservationToken): Promise<void> => {
|
|
124
|
-
releaseDurablePrompt(deps.backend, deps.workflowId, identity.hash, token);
|
|
125
|
-
await deps.backend.flush();
|
|
126
|
-
};
|
|
127
|
-
const beginPending = (identity: {
|
|
128
|
-
readonly hash: string;
|
|
129
|
-
}): {
|
|
130
|
-
readonly token: PromptReservationToken;
|
|
131
|
-
readonly write?: Promise<void>;
|
|
132
|
-
} => {
|
|
133
|
-
const token = reserveDurablePrompt(deps.backend, deps.workflowId, identity.hash);
|
|
134
|
-
const write = deps.backend.flush();
|
|
135
|
-
return { token, write };
|
|
136
|
-
};
|
|
137
|
-
const waitForPendingWrite = async (
|
|
138
|
-
identity: { readonly hash: string },
|
|
139
|
-
pending: { readonly token: PromptReservationToken; readonly write?: Promise<void> },
|
|
140
|
-
): Promise<void> => {
|
|
141
|
-
if (pending.write === undefined) return;
|
|
142
|
-
try {
|
|
143
|
-
await pending.write;
|
|
144
|
-
} catch (error) {
|
|
145
|
-
releaseDurablePrompt(deps.backend, deps.workflowId, identity.hash, pending.token);
|
|
146
|
-
try {
|
|
147
|
-
await deps.backend.flush();
|
|
148
|
-
} catch {
|
|
149
|
-
/* Preserve the opening-write failure. */
|
|
150
|
-
}
|
|
151
|
-
throw error;
|
|
152
|
-
}
|
|
153
|
-
};
|
|
154
|
-
const releaseCached = async (identity: { readonly hash: string }): Promise<void> => {
|
|
155
|
-
const token = claimDurablePromptToken(deps.backend, deps.workflowId, identity.hash);
|
|
156
|
-
if (token !== undefined) await releasePending(identity, token);
|
|
157
|
-
};
|
|
158
|
-
|
|
159
|
-
return {
|
|
160
|
-
async input(promptText: string): Promise<string> {
|
|
161
|
-
const callerStack = new Error().stack;
|
|
162
|
-
const identity = nextIdentity("input", promptText, callerStack);
|
|
163
|
-
const hit = cached(identity);
|
|
164
|
-
if (typeof hit === "string") {
|
|
165
|
-
await deps.onReplay?.({ kind: "input", promptText, response: hit, callerStack });
|
|
166
|
-
await releaseCached(identity);
|
|
167
|
-
return hit;
|
|
168
|
-
}
|
|
169
|
-
const pending = beginPending(identity);
|
|
170
|
-
await waitForPendingWrite(identity, pending);
|
|
171
|
-
try {
|
|
172
|
-
const response = await withPromptCallerStack(callerStack, () => base.input(promptText));
|
|
173
|
-
await record("input", identity, response);
|
|
174
|
-
return response;
|
|
175
|
-
} finally {
|
|
176
|
-
await releasePending(identity, pending.token);
|
|
177
|
-
}
|
|
178
|
-
},
|
|
179
|
-
async confirm(message: string): Promise<boolean> {
|
|
180
|
-
const callerStack = new Error().stack;
|
|
181
|
-
const identity = nextIdentity("confirm", message, callerStack);
|
|
182
|
-
const hit = cached(identity);
|
|
183
|
-
if (typeof hit === "boolean") {
|
|
184
|
-
await deps.onReplay?.({ kind: "confirm", message, response: hit, callerStack });
|
|
185
|
-
await releaseCached(identity);
|
|
186
|
-
return hit;
|
|
187
|
-
}
|
|
188
|
-
const pending = beginPending(identity);
|
|
189
|
-
await waitForPendingWrite(identity, pending);
|
|
190
|
-
try {
|
|
191
|
-
const response = await withPromptCallerStack(callerStack, () => base.confirm(message));
|
|
192
|
-
await record("confirm", identity, response);
|
|
193
|
-
return response;
|
|
194
|
-
} finally {
|
|
195
|
-
await releasePending(identity, pending.token);
|
|
196
|
-
}
|
|
197
|
-
},
|
|
198
|
-
async select<T extends string>(message: string, options: readonly T[]): Promise<T> {
|
|
199
|
-
const callerStack = new Error().stack;
|
|
200
|
-
const identity = nextIdentity("select", message, callerStack, [...options]);
|
|
201
|
-
const hit = cached(identity);
|
|
202
|
-
if (typeof hit === "string") {
|
|
203
|
-
await deps.onReplay?.({ kind: "select", message, options, response: hit, callerStack });
|
|
204
|
-
await releaseCached(identity);
|
|
205
|
-
return hit as T;
|
|
206
|
-
}
|
|
207
|
-
const pending = beginPending(identity);
|
|
208
|
-
await waitForPendingWrite(identity, pending);
|
|
209
|
-
try {
|
|
210
|
-
const response = await withPromptCallerStack(callerStack, () => base.select<T>(message, options));
|
|
211
|
-
await record("select", identity, response);
|
|
212
|
-
return response;
|
|
213
|
-
} finally {
|
|
214
|
-
await releasePending(identity, pending.token);
|
|
215
|
-
}
|
|
216
|
-
},
|
|
217
|
-
async editor(initial?: string): Promise<string> {
|
|
218
|
-
const callerStack = new Error().stack;
|
|
219
|
-
const identity = nextIdentity("editor", initial ?? "", callerStack, initial ?? null);
|
|
220
|
-
const hit = cached(identity);
|
|
221
|
-
if (typeof hit === "string") {
|
|
222
|
-
await deps.onReplay?.({ kind: "editor", initial, response: hit, callerStack });
|
|
223
|
-
await releaseCached(identity);
|
|
224
|
-
return hit;
|
|
225
|
-
}
|
|
226
|
-
const pending = beginPending(identity);
|
|
227
|
-
await waitForPendingWrite(identity, pending);
|
|
228
|
-
try {
|
|
229
|
-
const response = await withPromptCallerStack(callerStack, () => base.editor(initial));
|
|
230
|
-
await record("editor", identity, response);
|
|
231
|
-
return response;
|
|
232
|
-
} finally {
|
|
233
|
-
await releasePending(identity, pending.token);
|
|
234
|
-
}
|
|
235
|
-
},
|
|
236
|
-
async custom<T>(factory: WorkflowCustomUiFactory<T>, options?: WorkflowCustomUiOptions): Promise<T> {
|
|
237
|
-
const callerStack = new Error().stack;
|
|
238
|
-
const replayIdentity = options?.replayIdentity ?? factory?.name ?? "custom";
|
|
239
|
-
const identity = nextIdentity("custom", replayIdentity, callerStack, { replayIdentity });
|
|
240
|
-
const hit = cachedCustom(identity);
|
|
241
|
-
if (hit.found) {
|
|
242
|
-
await deps.onReplay?.({
|
|
243
|
-
kind: "custom",
|
|
244
|
-
factory: factory as WorkflowCustomUiFactory<WorkflowSerializableValue>,
|
|
245
|
-
options,
|
|
246
|
-
response: hit.response,
|
|
247
|
-
callerStack,
|
|
248
|
-
});
|
|
249
|
-
await releaseCached(identity);
|
|
250
|
-
return hit.response as T;
|
|
251
|
-
}
|
|
252
|
-
const pending = beginPending(identity);
|
|
253
|
-
await waitForPendingWrite(identity, pending);
|
|
254
|
-
try {
|
|
255
|
-
const response = await withPromptCallerStack(callerStack, () => base.custom<T>(factory, options));
|
|
256
|
-
await record("custom", identity, response as WorkflowSerializableValue);
|
|
257
|
-
return response;
|
|
258
|
-
} finally {
|
|
259
|
-
await releasePending(identity, pending.token);
|
|
260
|
-
}
|
|
261
|
-
},
|
|
262
|
-
};
|
|
263
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
WorkflowChildResult,
|
|
3
|
-
WorkflowExitStatus,
|
|
4
|
-
WorkflowOutputValues,
|
|
5
|
-
WorkflowSerializableValue,
|
|
6
|
-
} from "../shared/types.js";
|
|
7
|
-
|
|
8
|
-
/** Parse the exact durable child-result union without trusting persisted casts. */
|
|
9
|
-
export function parseWorkflowChildResult(
|
|
10
|
-
value: WorkflowSerializableValue | undefined,
|
|
11
|
-
): WorkflowChildResult<WorkflowOutputValues> | undefined {
|
|
12
|
-
if (!isOrdinaryObject(value)) return undefined;
|
|
13
|
-
const workflow = value.workflow;
|
|
14
|
-
const runId = value.runId;
|
|
15
|
-
const status = value.status;
|
|
16
|
-
const exited = value.exited;
|
|
17
|
-
const outputs = value.outputs;
|
|
18
|
-
const exitReason = value.exitReason;
|
|
19
|
-
if (typeof workflow !== "string" || typeof runId !== "string" || !isOrdinaryObject(outputs)) return undefined;
|
|
20
|
-
if (exited === false) {
|
|
21
|
-
if (status !== "completed" || exitReason !== undefined) return undefined;
|
|
22
|
-
return value as WorkflowChildResult<WorkflowOutputValues>;
|
|
23
|
-
}
|
|
24
|
-
if (exited !== true || !isWorkflowExitStatus(status) || (exitReason !== undefined && typeof exitReason !== "string"))
|
|
25
|
-
return undefined;
|
|
26
|
-
return value as WorkflowChildResult<WorkflowOutputValues>;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export function parseLegacyWorkflowChildResult(
|
|
30
|
-
value: WorkflowSerializableValue | undefined,
|
|
31
|
-
): WorkflowChildResult<WorkflowOutputValues> | undefined {
|
|
32
|
-
if (!isOrdinaryObject(value)) return undefined;
|
|
33
|
-
if (
|
|
34
|
-
typeof value.workflow !== "string" ||
|
|
35
|
-
typeof value.runId !== "string" ||
|
|
36
|
-
value.status !== "completed" ||
|
|
37
|
-
value.exited !== undefined ||
|
|
38
|
-
value.exitReason !== undefined ||
|
|
39
|
-
!isOrdinaryObject(value.outputs)
|
|
40
|
-
)
|
|
41
|
-
return undefined;
|
|
42
|
-
return value as WorkflowChildResult<WorkflowOutputValues>;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export function isWorkflowChildResult(
|
|
46
|
-
value: WorkflowSerializableValue | undefined,
|
|
47
|
-
): value is WorkflowChildResult<WorkflowOutputValues> {
|
|
48
|
-
return parseWorkflowChildResult(value) !== undefined;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
function isWorkflowExitStatus(value: WorkflowSerializableValue | undefined): value is WorkflowExitStatus {
|
|
52
|
-
return (
|
|
53
|
-
value === "completed" || value === "skipped" || value === "cancelled" || value === "blocked" || value === "failed"
|
|
54
|
-
);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
function isOrdinaryObject(
|
|
58
|
-
value: WorkflowSerializableValue | undefined,
|
|
59
|
-
): value is Readonly<Record<string, WorkflowSerializableValue | undefined>> {
|
|
60
|
-
if (typeof value !== "object" || value === null || Array.isArray(value)) return false;
|
|
61
|
-
const prototype = Object.getPrototypeOf(value);
|
|
62
|
-
return prototype === Object.prototype || prototype === null;
|
|
63
|
-
}
|