experimental-ash 0.26.0 → 0.28.0
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/docs/public/channels/README.md +50 -2
- package/dist/docs/public/channels/discord.md +15 -7
- package/dist/docs/public/channels/teams.md +121 -0
- package/dist/docs/public/channels/telegram.md +201 -0
- package/dist/docs/public/subagents.md +38 -0
- package/dist/docs/public/typescript-api.md +41 -1
- package/dist/src/_virtual/_rolldown/runtime.js +1 -0
- package/dist/src/channel/adapter-context.js +1 -24
- package/dist/src/channel/adapter.js +1 -62
- package/dist/src/channel/compiled-channel.js +1 -6
- package/dist/src/channel/cross-channel-receive.js +2 -108
- package/dist/src/channel/http.js +1 -30
- package/dist/src/channel/receive-args.js +1 -1
- package/dist/src/channel/resolve-text.js +1 -59
- package/dist/src/channel/routes.js +1 -15
- package/dist/src/channel/schedule.js +1 -81
- package/dist/src/channel/send.js +1 -81
- package/dist/src/channel/session-callback.js +1 -65
- package/dist/src/channel/session.js +1 -58
- package/dist/src/channel/types.js +1 -1
- package/dist/src/cli/commands/channels.js +3 -9
- package/dist/src/cli/commands/info.js +2 -2
- package/dist/src/cli/dev/environment.js +1 -1
- package/dist/src/cli/dev/input-requests.js +1 -1
- package/dist/src/cli/dev/input.js +1 -1
- package/dist/src/cli/dev/repl.js +2 -3
- package/dist/src/cli/dev/terminal.js +5 -5
- package/dist/src/cli/dev/url.js +1 -1
- package/dist/src/cli/run.js +2 -2
- package/dist/src/cli/ui/output.js +8 -8
- package/dist/src/client/client-error.js +1 -19
- package/dist/src/client/client.js +1 -128
- package/dist/src/client/index.js +1 -11
- package/dist/src/client/message-reducer-types.js +1 -1
- package/dist/src/client/message-reducer.js +1 -456
- package/dist/src/client/message-response.js +1 -55
- package/dist/src/client/ndjson.js +3 -62
- package/dist/src/client/open-stream.js +1 -45
- package/dist/src/client/reducer.js +1 -1
- package/dist/src/client/session-utils.js +1 -62
- package/dist/src/client/session.js +1 -206
- package/dist/src/client/types.js +1 -1
- package/dist/src/client/url.js +1 -34
- package/dist/src/compiled/.vendor-stamp.json +6 -1
- package/dist/src/compiled/@vercel/oidc/LICENSE +202 -0
- package/dist/src/compiled/@vercel/oidc/index.d.ts +21 -0
- package/dist/src/compiled/@vercel/oidc/index.js +2 -0
- package/dist/src/compiled/@vercel/oidc/package.json +7 -0
- package/dist/src/compiled/chokidar/LICENSE +21 -0
- package/dist/src/compiled/chokidar/index.d.ts +33 -0
- package/dist/src/compiled/chokidar/index.js +1 -0
- package/dist/src/compiled/chokidar/package.json +7 -0
- package/dist/src/compiled/commander/LICENSE +22 -0
- package/dist/src/compiled/commander/index.d.ts +1113 -0
- package/dist/src/{chunks/url-JdCGA634.js → compiled/commander/index.js} +10 -10
- package/dist/src/compiled/commander/package.json +7 -0
- package/dist/src/compiled/gray-matter/LICENSE +21 -0
- package/dist/src/compiled/gray-matter/index.d.ts +62 -0
- package/dist/src/{chunks/gray-matter-D-9jHwOT.js → compiled/gray-matter/index.js} +2 -2
- package/dist/src/compiled/gray-matter/package.json +7 -0
- package/dist/src/compiled/picocolors/LICENSE +15 -0
- package/dist/src/compiled/picocolors/index.d.ts +55 -0
- package/dist/src/compiled/picocolors/index.js +1 -0
- package/dist/src/compiled/picocolors/package.json +7 -0
- package/dist/src/compiler/artifacts.js +1 -147
- package/dist/src/compiler/compile-agent.js +3 -76
- package/dist/src/compiler/compile-from-memory.js +1 -59
- package/dist/src/compiler/manifest.js +1 -424
- package/dist/src/compiler/model-catalog.js +1 -224
- package/dist/src/compiler/module-map.js +5 -295
- package/dist/src/compiler/normalize-agent-config.js +1 -157
- package/dist/src/compiler/normalize-channel.js +1 -51
- package/dist/src/compiler/normalize-connection.js +1 -58
- package/dist/src/compiler/normalize-helpers.js +1 -23
- package/dist/src/compiler/normalize-hook.js +1 -19
- package/dist/src/compiler/normalize-instructions.js +1 -28
- package/dist/src/compiler/normalize-manifest.js +1 -79
- package/dist/src/compiler/normalize-sandbox.js +1 -20
- package/dist/src/compiler/normalize-schedule.js +1 -38
- package/dist/src/compiler/normalize-skill.js +1 -60
- package/dist/src/compiler/normalize-subagent.js +1 -174
- package/dist/src/compiler/normalize-tool.js +1 -40
- package/dist/src/compiler/remote-agent-node.js +1 -19
- package/dist/src/compiler/workspace-resources.js +1 -85
- package/dist/src/context/accessors.js +1 -93
- package/dist/src/context/container.js +1 -89
- package/dist/src/context/hook-lifecycle.js +1 -242
- package/dist/src/context/key.js +1 -39
- package/dist/src/context/keys.js +1 -43
- package/dist/src/context/node.js +1 -9
- package/dist/src/context/provider.js +1 -1
- package/dist/src/context/providers/connection.js +1 -17
- package/dist/src/context/providers/sandbox.js +1 -46
- package/dist/src/context/providers/session.js +1 -18
- package/dist/src/context/run-step.js +1 -51
- package/dist/src/context/seed-keys.js +1 -37
- package/dist/src/context/serialize.js +1 -44
- package/dist/src/discover/connections.js +1 -153
- package/dist/src/discover/diagnostics.js +1 -82
- package/dist/src/discover/discover-agent.js +1 -159
- package/dist/src/discover/discover-subagent.js +1 -223
- package/dist/src/discover/filesystem.js +1 -215
- package/dist/src/discover/grammar.js +1 -371
- package/dist/src/discover/lib.js +1 -34
- package/dist/src/discover/manifest.js +1 -136
- package/dist/src/discover/markdown.js +1 -17
- package/dist/src/discover/named-source-directory.js +1 -188
- package/dist/src/discover/project-source.js +1 -152
- package/dist/src/discover/project.js +1 -117
- package/dist/src/discover/sandbox.js +1 -220
- package/dist/src/discover/schedules.js +1 -41
- package/dist/src/discover/skills.js +1 -274
- package/dist/src/discover/slots.js +1 -68
- package/dist/src/evals/cli/eval.js +1 -1
- package/dist/src/evals/define-eval-suite.js +1 -1
- package/dist/src/evals/index.js +1 -1
- package/dist/src/evals/loaders/index.js +1 -1
- package/dist/src/evals/loaders/json.js +1 -1
- package/dist/src/evals/loaders/yaml.js +1 -1
- package/dist/src/evals/reporters/index.js +1 -1
- package/dist/src/evals/runner/artifacts.js +3 -3
- package/dist/src/evals/runner/derive-run-facts.js +1 -1
- package/dist/src/evals/runner/discover.js +1 -1
- package/dist/src/evals/runner/execute-case.js +1 -1
- package/dist/src/evals/runner/execute-suite.js +1 -1
- package/dist/src/evals/runner/reporters/braintrust.js +2 -2
- package/dist/src/evals/runner/reporters/console.js +1 -1
- package/dist/src/evals/runner/resolve-git-metadata.js +1 -1
- package/dist/src/evals/scorers/autoevals-client.js +2 -2
- package/dist/src/evals/scorers/autoevals.js +1 -1
- package/dist/src/evals/scorers/json.js +1 -1
- package/dist/src/evals/scorers/run.js +1 -1
- package/dist/src/evals/scorers/sql.js +1 -1
- package/dist/src/evals/scorers/text.js +1 -1
- package/dist/src/evals/scores/index.js +1 -1
- package/dist/src/execution/authorization-challenge-defaults.js +1 -60
- package/dist/src/execution/await-authorization-orchestrator.js +1 -192
- package/dist/src/execution/await-authorization-splice.js +1 -66
- package/dist/src/execution/connection-auth-steps.js +1 -338
- package/dist/src/execution/node-step.js +1 -146
- package/dist/src/execution/remote-agent-dispatch.js +1 -79
- package/dist/src/execution/runtime-context.js +1 -26
- package/dist/src/execution/runtime-errors.js +1 -19
- package/dist/src/execution/sandbox/bash-tool.js +1 -42
- package/dist/src/execution/sandbox/bindings/local.js +1 -296
- package/dist/src/execution/sandbox/bindings/vercel.js +1 -363
- package/dist/src/execution/sandbox/ensure.js +1 -91
- package/dist/src/execution/sandbox/glob-tool.js +3 -146
- package/dist/src/execution/sandbox/grep-tool.js +3 -183
- package/dist/src/execution/sandbox/lazy-backend.js +1 -33
- package/dist/src/execution/sandbox/prewarm.js +1 -132
- package/dist/src/execution/sandbox/read-file-tool.js +3 -118
- package/dist/src/execution/sandbox/require-sandbox.js +1 -32
- package/dist/src/execution/sandbox/ripgrep-probe.js +1 -36
- package/dist/src/execution/sandbox/session.js +3 -158
- package/dist/src/execution/sandbox/shell-quote.js +1 -14
- package/dist/src/execution/sandbox/stream-utils.js +1 -22
- package/dist/src/execution/sandbox/truncate-output.js +3 -110
- package/dist/src/execution/sandbox/write-file-tool.js +1 -62
- package/dist/src/execution/session-callback-step.js +1 -72
- package/dist/src/execution/session.js +3 -94
- package/dist/src/execution/skills/instructions.js +2 -30
- package/dist/src/execution/skills/types.js +1 -1
- package/dist/src/execution/subagent-adapter.js +1 -94
- package/dist/src/execution/subagent-hitl-proxy.js +1 -81
- package/dist/src/execution/subagent-invocation.js +2 -16
- package/dist/src/execution/subagent-tool.js +1 -48
- package/dist/src/execution/tool-compaction.js +1 -54
- package/dist/src/execution/turn-workflow.js +1 -95
- package/dist/src/execution/web-fetch/html.js +7 -60
- package/dist/src/execution/web-fetch/tool.js +1 -90
- package/dist/src/execution/workflow-entry.js +1 -494
- package/dist/src/execution/workflow-errors.js +1 -54
- package/dist/src/execution/workflow-runtime.js +3 -161
- package/dist/src/execution/workflow-steps.js +1 -467
- package/dist/src/harness/action-result-helpers.js +1 -82
- package/dist/src/harness/attachment-staging.js +1 -303
- package/dist/src/harness/compaction.js +4 -221
- package/dist/src/harness/emission.js +1 -323
- package/dist/src/harness/execute-tool.js +1 -1
- package/dist/src/harness/input-extraction.js +1 -62
- package/dist/src/harness/input-requests.js +1 -306
- package/dist/src/harness/instrumentation-config.js +1 -42
- package/dist/src/harness/messages.js +1 -144
- package/dist/src/harness/model-call-error.js +1 -368
- package/dist/src/harness/otel-integration.js +1 -18
- package/dist/src/harness/prompt-cache.js +1 -137
- package/dist/src/harness/provider-tools.js +1 -137
- package/dist/src/harness/proxy-input-requests.js +1 -91
- package/dist/src/harness/runtime-actions.js +1 -321
- package/dist/src/harness/step-hooks.js +1 -192
- package/dist/src/harness/tool-loop.js +1 -877
- package/dist/src/harness/tool-result-pruning.js +1 -124
- package/dist/src/harness/tools.js +1 -98
- package/dist/src/harness/types.js +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/internal/application/cache-metadata.js +1 -42
- package/dist/src/internal/application/compiled-artifacts.js +4 -114
- package/dist/src/internal/application/import-specifier.js +1 -58
- package/dist/src/internal/application/package.js +1 -196
- package/dist/src/internal/application/paths.js +1 -117
- package/dist/src/internal/application/runtime-compiled-artifacts-source.js +1 -11
- package/dist/src/internal/attachments/data.js +1 -127
- package/dist/src/internal/attachments/errors.js +1 -26
- package/dist/src/internal/attachments/refs.js +1 -94
- package/dist/src/internal/attachments/sandbox-refs.js +1 -78
- package/dist/src/internal/attachments/url-refs.js +1 -20
- package/dist/src/internal/authored-asset-import-plugin.js +1 -141
- package/dist/src/internal/authored-definition/channel.js +1 -21
- package/dist/src/internal/authored-definition/connection.js +1 -148
- package/dist/src/internal/authored-definition/core.js +1 -180
- package/dist/src/internal/authored-definition/sandbox.js +1 -47
- package/dist/src/internal/authored-definition/schema-backed.js +1 -56
- package/dist/src/internal/authored-module-bundle.js +2 -19
- package/dist/src/internal/authored-module-loader.js +2 -263
- package/dist/src/internal/authored-module-map-loader.js +1 -53
- package/dist/src/internal/authored-module.js +1 -81
- package/dist/src/internal/authored-package-tsconfig-paths.js +1 -209
- package/dist/src/internal/bundler/nitro-rolldown.js +1 -42
- package/dist/src/internal/helpers/markdown.js +3 -174
- package/dist/src/internal/json-schema.js +1 -13
- package/dist/src/internal/logging.js +1 -226
- package/dist/src/internal/nitro/host/artifacts-config.js +1 -17
- package/dist/src/internal/nitro/host/build-application.js +1 -177
- package/dist/src/internal/nitro/host/build-vercel-agent-summary.js +1 -140
- package/dist/src/internal/nitro/host/channel-routes.js +2 -126
- package/dist/src/internal/nitro/host/compiled-sandbox-backend-prune-plugin.js +2 -28
- package/dist/src/internal/nitro/host/configure-nitro-routes.js +4 -272
- package/dist/src/internal/nitro/host/create-application-nitro.js +1 -491
- package/dist/src/internal/nitro/host/cron-handler-route.js +1 -49
- package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +1 -390
- package/dist/src/internal/nitro/host/nitro-bundler-config.js +1 -10
- package/dist/src/internal/nitro/host/nitro-routing-import-specifier-plugin.js +1 -28
- package/dist/src/internal/nitro/host/prepare-application-host.js +1 -32
- package/dist/src/internal/nitro/host/schedule-task-routes.js +2 -148
- package/dist/src/internal/nitro/host/server-external-packages.js +1 -107
- package/dist/src/internal/nitro/host/start-development-server.js +1 -223
- package/dist/src/internal/nitro/host/types.js +1 -1
- package/dist/src/internal/nitro/host/vercel-build-output-config.js +1 -14
- package/dist/src/internal/nitro/host/vercel-build-prewarm.js +1 -30
- package/dist/src/internal/nitro/host.js +1 -2
- package/dist/src/internal/nitro/routes/agent-info/build-agent-info-response.js +2 -180
- package/dist/src/internal/nitro/routes/agent-info/load-agent-info-data.js +1 -46
- package/dist/src/internal/nitro/routes/channel-dispatch.js +1 -74
- package/dist/src/internal/nitro/routes/health.js +1 -17
- package/dist/src/internal/nitro/routes/index.js +2 -89
- package/dist/src/internal/nitro/routes/info.js +1 -50
- package/dist/src/internal/nitro/routes/runtime-artifacts.js +1 -24
- package/dist/src/internal/nitro/routes/runtime-stack.js +1 -23
- package/dist/src/internal/nitro/routes/schedule-task.js +1 -57
- package/dist/src/internal/nitro/routes/workflow-data.js +1 -141
- package/dist/src/internal/nitro/routes/workflow-route-helpers.js +1 -137
- package/dist/src/internal/nitro/routes/workflow-run-events.js +1 -41
- package/dist/src/internal/nitro/routes/workflow-run-steps.js +1 -41
- package/dist/src/internal/nitro/routes/workflow-run.js +1 -34
- package/dist/src/internal/nitro/routes/workflow-runs.js +1 -28
- package/dist/src/internal/node-esm-compat-banner.js +2 -65
- package/dist/src/internal/package-name.js +1 -8
- package/dist/src/internal/process/pnpm.js +1 -50
- package/dist/src/internal/runtime-model.js +1 -24
- package/dist/src/internal/runtime-registry.js +1 -93
- package/dist/src/internal/vercel-agent-summary.js +1 -72
- package/dist/src/internal/workflow/builtins.js +1 -18
- package/dist/src/internal/workflow/index.js +1 -9
- package/dist/src/internal/workflow-bundle/ash-service-route-output.js +3 -93
- package/dist/src/internal/workflow-bundle/builder-support.js +5 -372
- package/dist/src/internal/workflow-bundle/builder.js +5 -472
- package/dist/src/internal/workflow-bundle/nitro-step-entry.js +2 -132
- package/dist/src/internal/workflow-bundle/vercel-workflow-output.js +3 -494
- package/dist/src/internal/workflow-bundle/workflow-builders.js +1 -292
- package/dist/src/internal/workflow-bundle/workflow-core-shim.js +1 -84
- package/dist/src/internal/workflow-bundle/workflow-transformer.js +5 -318
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/ajv.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/index.js +2 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/scope.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/errors.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/index.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/names.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/ref_error.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/resolve.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/rules.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/util.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/applicability.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/boolSchema.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/dataType.js +4 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/defaults.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/index.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/keyword.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/validate/subschema.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/core.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/data.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/refs/json-schema-draft-07.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/equal.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/ucs2length.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/uri.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/runtime/validation_error.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/allOf.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/contains.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +4 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/if.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/index.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/items2020.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/not.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/properties.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/code.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/id.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/index.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/core/ref.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/index.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/discriminator/types.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/draft7.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/format.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/format/index.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/metadata.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/const.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/enum.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/index.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitItems.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitLength.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/pattern.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/required.js +1 -0
- package/dist/src/node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +1 -0
- package/dist/src/node_modules/.pnpm/autoevals@0.0.132_ws@8.21.0/node_modules/autoevals/jsdist/index.js +384 -0
- package/dist/src/node_modules/.pnpm/compute-cosine-similarity@1.1.0/node_modules/compute-cosine-similarity/lib/index.js +1 -0
- package/dist/src/node_modules/.pnpm/compute-dot@1.1.0/node_modules/compute-dot/lib/index.js +1 -0
- package/dist/src/node_modules/.pnpm/compute-l2norm@1.1.0/node_modules/compute-l2norm/lib/index.js +1 -0
- package/dist/src/node_modules/.pnpm/fast-deep-equal@3.1.3/node_modules/fast-deep-equal/index.js +1 -0
- package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/index.js +1 -0
- package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/schemes.js +1 -0
- package/dist/src/node_modules/.pnpm/fast-uri@3.1.2/node_modules/fast-uri/lib/utils.js +1 -0
- package/dist/src/node_modules/.pnpm/js-levenshtein@1.1.6/node_modules/js-levenshtein/index.js +1 -0
- package/dist/src/node_modules/.pnpm/js-yaml@4.1.1/node_modules/js-yaml/dist/js-yaml.js +32 -0
- package/dist/src/node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js +1 -0
- package/dist/src/node_modules/.pnpm/mustache@4.2.0/node_modules/mustache/mustache.js +4 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/_vendor/partial-json-parser/parser.js +2 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/auth/workload-identity-auth.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/azure.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/client.js +11 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/api-promise.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/error.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/pagination.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/resource.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/streaming.js +3 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/core/uploads.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/error.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/index.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/decoders/line.js +3 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/detect-platform.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/errors.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/headers.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/parse.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/formats.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/stringify.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/qs/utils.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/request-options.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/shims.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/to-file.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/tslib.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/uploads.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/base64.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/bytes.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/env.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/log.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/path.js +2 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/query.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/sleep.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/uuid.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils/values.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/internal/utils.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/AbstractChatCompletionRunner.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/AssistantStream.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ChatCompletionRunner.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ChatCompletionStream.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ChatCompletionStreamingRunner.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/EventStream.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/ResponsesParser.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/RunnableFunction.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/Util.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/chatCompletionUtils.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/parser.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/lib/responses/ResponseStream.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/admin.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/admin-api-keys.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/audit-logs.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/certificates.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/data-retention.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/groups/groups.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/groups/roles.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/groups/users.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/invites.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/organization.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/api-keys.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/certificates.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/data-retention.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/groups/groups.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/groups/roles.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/hosted-tool-permissions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/model-permissions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/projects.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/rate-limits.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/roles.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/service-accounts.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/spend-alerts.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/users/roles.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/projects/users/users.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/roles.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/spend-alerts.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/usage.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/users/roles.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/admin/organization/users/users.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/audio.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/speech.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/transcriptions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/audio/translations.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/batches.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/assistants.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/beta.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/chatkit/chatkit.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/chatkit/sessions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/chatkit/threads.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/realtime/realtime.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/realtime/sessions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/realtime/transcription-sessions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/messages.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/runs/runs.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/runs/steps.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/beta/threads/threads.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/chat.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/completions/completions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/completions/index.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/completions/messages.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/chat/index.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/completions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/containers/containers.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/containers/files/content.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/containers/files/files.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/conversations/conversations.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/conversations/items.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/embeddings.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/evals/evals.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/evals/runs/output-items.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/evals/runs/runs.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/files.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/alpha/alpha.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/alpha/graders.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/checkpoints/checkpoints.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/checkpoints/permissions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/fine-tuning.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/jobs/checkpoints.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/jobs/jobs.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/fine-tuning/methods.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/graders/grader-models.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/graders/graders.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/images.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/index.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/models.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/moderations.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/realtime/calls.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/realtime/client-secrets.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/realtime/realtime.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/responses/input-items.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/responses/input-tokens.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/responses/responses.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/shared.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/content.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/skills.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/versions/content.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/skills/versions/versions.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/uploads/parts.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/uploads/uploads.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/vector-stores/file-batches.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/vector-stores/files.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/vector-stores/vector-stores.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/videos.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/webhooks/index.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/webhooks/webhooks.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/resources/webhooks.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/streaming.js +1 -0
- package/dist/src/node_modules/.pnpm/openai@6.39.0_ws@8.21.0_zod@3.25.76/node_modules/openai/version.js +1 -0
- package/dist/src/node_modules/.pnpm/validate.io-array@1.0.6/node_modules/validate.io-array/lib/index.js +1 -0
- package/dist/src/node_modules/.pnpm/validate.io-function@1.0.2/node_modules/validate.io-function/lib/index.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/index.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseTypes.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +3 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js +1 -0
- package/dist/src/node_modules/.pnpm/zod-to-json-schema@3.25.2_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/index.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/external.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/typeAliases.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/index.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js +1 -0
- package/dist/src/node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js +1 -0
- package/dist/src/packages/ash-scaffold/src/channels.js +7 -0
- package/dist/src/packages/ash-scaffold/src/files.js +1 -0
- package/dist/src/packages/ash-scaffold/src/index.js +1 -0
- package/dist/src/packages/ash-scaffold/src/module-files.js +1 -0
- package/dist/src/packages/ash-scaffold/src/package-json.js +1 -0
- package/dist/src/packages/ash-scaffold/src/project.js +1 -0
- package/dist/src/protocol/message.js +2 -501
- package/dist/src/protocol/routes.js +1 -85
- package/dist/src/public/agents/auth.js +1 -37
- package/dist/src/public/channels/ash.js +2 -346
- package/dist/src/public/channels/auth.js +1 -414
- package/dist/src/public/channels/discord/api.js +2 -167
- package/dist/src/public/channels/discord/defaults.js +3 -74
- package/dist/src/public/channels/discord/discordChannel.js +1 -402
- package/dist/src/public/channels/discord/hitl.js +1 -194
- package/dist/src/public/channels/discord/inbound.js +2 -238
- package/dist/src/public/channels/discord/index.js +1 -6
- package/dist/src/public/channels/discord/responses.js +1 -40
- package/dist/src/public/channels/discord/verify.js +1 -72
- package/dist/src/public/channels/discord/verifyInbound.js +1 -19
- package/dist/src/public/channels/index.js +1 -1
- package/dist/src/public/channels/slack/api-encoding.js +1 -40
- package/dist/src/public/channels/slack/api.js +1 -333
- package/dist/src/public/channels/slack/attachments.js +1 -156
- package/dist/src/public/channels/slack/blocks.js +3 -266
- package/dist/src/public/channels/slack/connections.js +1 -70
- package/dist/src/public/channels/slack/constants.js +1 -7
- package/dist/src/public/channels/slack/defaults.js +4 -211
- package/dist/src/public/channels/slack/hitl.js +1 -242
- package/dist/src/public/channels/slack/inbound.js +2 -149
- package/dist/src/public/channels/slack/index.js +1 -13
- package/dist/src/public/channels/slack/interactions.js +1 -315
- package/dist/src/public/channels/slack/limits.js +1 -75
- package/dist/src/public/channels/slack/mrkdwn.js +1 -89
- package/dist/src/public/channels/slack/slackChannel.js +1 -251
- package/dist/src/public/channels/slack/thread.js +1 -45
- package/dist/src/public/channels/slack/verify.js +1 -70
- package/dist/src/public/channels/teams/api.d.ts +140 -0
- package/dist/src/public/channels/teams/api.js +4 -0
- package/dist/src/public/channels/teams/attachments.d.ts +25 -0
- package/dist/src/public/channels/teams/attachments.js +1 -0
- package/dist/src/public/channels/teams/defaults.d.ts +24 -0
- package/dist/src/public/channels/teams/defaults.js +3 -0
- package/dist/src/public/channels/teams/hitl.d.ts +36 -0
- package/dist/src/public/channels/teams/hitl.js +1 -0
- package/dist/src/public/channels/teams/inbound.d.ts +80 -0
- package/dist/src/public/channels/teams/inbound.js +3 -0
- package/dist/src/public/channels/teams/index.d.ts +8 -0
- package/dist/src/public/channels/teams/index.js +1 -0
- package/dist/src/public/channels/teams/limits.d.ts +8 -0
- package/dist/src/public/channels/teams/limits.js +1 -0
- package/dist/src/public/channels/teams/teamsChannel.d.ts +162 -0
- package/dist/src/public/channels/teams/teamsChannel.js +1 -0
- package/dist/src/public/channels/teams/verify.d.ts +43 -0
- package/dist/src/public/channels/teams/verify.js +1 -0
- package/dist/src/public/channels/telegram/api.d.ts +107 -0
- package/dist/src/public/channels/telegram/api.js +2 -0
- package/dist/src/public/channels/telegram/attachments.d.ts +23 -0
- package/dist/src/public/channels/telegram/attachments.js +1 -0
- package/dist/src/public/channels/telegram/defaults.d.ts +9 -0
- package/dist/src/public/channels/telegram/defaults.js +3 -0
- package/dist/src/public/channels/telegram/hitl.d.ts +44 -0
- package/dist/src/public/channels/telegram/hitl.js +1 -0
- package/dist/src/public/channels/telegram/inbound.d.ts +88 -0
- package/dist/src/public/channels/telegram/inbound.js +2 -0
- package/dist/src/public/channels/telegram/index.d.ts +8 -0
- package/dist/src/public/channels/telegram/index.js +1 -0
- package/dist/src/public/channels/telegram/telegramChannel.d.ts +126 -0
- package/dist/src/public/channels/telegram/telegramChannel.js +1 -0
- package/dist/src/public/channels/telegram/verify.d.ts +30 -0
- package/dist/src/public/channels/telegram/verify.js +1 -0
- package/dist/src/public/channels/twilio/api.js +1 -103
- package/dist/src/public/channels/twilio/defaults.js +3 -69
- package/dist/src/public/channels/twilio/inbound.js +2 -123
- package/dist/src/public/channels/twilio/index.js +1 -4
- package/dist/src/public/channels/twilio/twilioChannel.js +1 -316
- package/dist/src/public/channels/twilio/twiml.js +1 -58
- package/dist/src/public/channels/twilio/verify.js +1 -73
- package/dist/src/public/channels/upload-policy.js +1 -170
- package/dist/src/public/connections/errors.js +1 -53
- package/dist/src/public/connections/index.js +1 -6
- package/dist/src/public/context/index.js +1 -13
- package/dist/src/public/definitions/agent.js +1 -6
- package/dist/src/public/definitions/channel.js +1 -24
- package/dist/src/public/definitions/connections/mcp.js +1 -20
- package/dist/src/public/definitions/defineChannel.js +1 -74
- package/dist/src/public/definitions/hook.js +1 -11
- package/dist/src/public/definitions/instructions.js +1 -7
- package/dist/src/public/definitions/instrumentation.js +1 -13
- package/dist/src/public/definitions/remote-agent.js +1 -11
- package/dist/src/public/definitions/sandbox-backend.js +1 -13
- package/dist/src/public/definitions/sandbox.js +1 -6
- package/dist/src/public/definitions/schedule.js +1 -32
- package/dist/src/public/definitions/skill.js +1 -7
- package/dist/src/public/definitions/source.js +1 -1
- package/dist/src/public/definitions/state.js +1 -34
- package/dist/src/public/definitions/tool.js +1 -27
- package/dist/src/public/hooks/index.js +1 -9
- package/dist/src/public/index.js +1 -5
- package/dist/src/public/instructions/index.js +1 -4
- package/dist/src/public/instrumentation/index.js +1 -4
- package/dist/src/public/next/index.js +1 -148
- package/dist/src/public/next/server.js +1 -348
- package/dist/src/public/next/vercel-json.js +1 -77
- package/dist/src/public/sandbox/backends/default.js +1 -15
- package/dist/src/public/sandbox/backends/local.js +1 -18
- package/dist/src/public/sandbox/backends/vercel.js +1 -25
- package/dist/src/public/sandbox/index.js +1 -10
- package/dist/src/public/sandbox/local-sandbox.js +1 -1
- package/dist/src/public/sandbox/vercel-sandbox.js +1 -1
- package/dist/src/public/schedules/index.js +1 -4
- package/dist/src/public/skills/index.js +1 -5
- package/dist/src/public/tool-result-narrowing.js +1 -87
- package/dist/src/public/tools/approval/approval-helpers.js +1 -22
- package/dist/src/public/tools/approval/index.js +1 -4
- package/dist/src/public/tools/defaults.js +1 -70
- package/dist/src/public/tools/define-bash-tool.js +1 -14
- package/dist/src/public/tools/define-glob-tool.js +1 -21
- package/dist/src/public/tools/define-grep-tool.js +1 -21
- package/dist/src/public/tools/define-read-file-tool.js +1 -27
- package/dist/src/public/tools/define-write-file-tool.js +1 -21
- package/dist/src/public/tools/index.js +1 -10
- package/dist/src/public/tools/internal.js +1 -24
- package/dist/src/public/types/json.js +1 -13
- package/dist/src/react/index.js +1 -3
- package/dist/src/react/use-ash-agent.js +2 -348
- package/dist/src/runtime/actions/keys.js +1 -30
- package/dist/src/runtime/actions/types.js +1 -99
- package/dist/src/runtime/agent/bootstrap-model-utils.js +1 -148
- package/dist/src/runtime/agent/bootstrap-model.js +1 -36
- package/dist/src/runtime/agent/bootstrap.js +1 -49
- package/dist/src/runtime/agent/mock-model-adapter.js +7 -358
- package/dist/src/runtime/agent/resolve-model.js +1 -48
- package/dist/src/runtime/cache-key.js +1 -52
- package/dist/src/runtime/channels/registry.js +1 -133
- package/dist/src/runtime/compiled-artifacts-source.js +1 -42
- package/dist/src/runtime/connections/authorization-complete-page.js +2 -21
- package/dist/src/runtime/connections/authorization-tokens.js +1 -66
- package/dist/src/runtime/connections/callback-route.js +1 -139
- package/dist/src/runtime/connections/mcp-client.js +1 -307
- package/dist/src/runtime/connections/principal-context.js +1 -111
- package/dist/src/runtime/connections/principal.js +1 -106
- package/dist/src/runtime/connections/registry.js +1 -61
- package/dist/src/runtime/connections/types.js +1 -41
- package/dist/src/runtime/connections/validate-authorization.js +1 -92
- package/dist/src/runtime/framework-channels/index.js +1 -38
- package/dist/src/runtime/framework-tools/ask-question.js +1 -30
- package/dist/src/runtime/framework-tools/bash.js +1 -40
- package/dist/src/runtime/framework-tools/connection-search.js +1 -224
- package/dist/src/runtime/framework-tools/connection-tools.js +1 -103
- package/dist/src/runtime/framework-tools/file-state.js +1 -71
- package/dist/src/runtime/framework-tools/glob.js +2 -56
- package/dist/src/runtime/framework-tools/grep.js +2 -75
- package/dist/src/runtime/framework-tools/index.js +1 -52
- package/dist/src/runtime/framework-tools/pending-connection-tool-calls.js +1 -63
- package/dist/src/runtime/framework-tools/read-file.js +2 -64
- package/dist/src/runtime/framework-tools/skill.js +1 -47
- package/dist/src/runtime/framework-tools/todo.js +3 -122
- package/dist/src/runtime/framework-tools/web-fetch.js +2 -42
- package/dist/src/runtime/framework-tools/web-search.js +1 -15
- package/dist/src/runtime/framework-tools/write-file.js +2 -48
- package/dist/src/runtime/governance/auth/http-basic.js +1 -63
- package/dist/src/runtime/governance/auth/jwt-ecdsa.js +1 -69
- package/dist/src/runtime/governance/auth/jwt-hmac.js +1 -39
- package/dist/src/runtime/governance/auth/oidc.js +1 -126
- package/dist/src/runtime/governance/auth/token-claims.js +1 -84
- package/dist/src/runtime/governance/auth/types.js +1 -14
- package/dist/src/runtime/governance/network/ip-allow-list.js +1 -66
- package/dist/src/runtime/graph.js +1 -17
- package/dist/src/runtime/hooks/registry.js +1 -55
- package/dist/src/runtime/input/types.js +1 -63
- package/dist/src/runtime/loaders/artifact-paths.js +1 -26
- package/dist/src/runtime/loaders/bundled-artifacts.js +1 -21
- package/dist/src/runtime/loaders/compile-metadata.js +1 -92
- package/dist/src/runtime/loaders/manifest.js +1 -56
- package/dist/src/runtime/loaders/module-map.js +1 -64
- package/dist/src/runtime/prompt/compose.js +2 -47
- package/dist/src/runtime/prompt/connections.js +2 -23
- package/dist/src/runtime/resolve-agent-graph.js +1 -287
- package/dist/src/runtime/resolve-agent.js +1 -134
- package/dist/src/runtime/resolve-channel.js +1 -62
- package/dist/src/runtime/resolve-connection.js +1 -72
- package/dist/src/runtime/resolve-helpers.js +1 -58
- package/dist/src/runtime/resolve-hook.js +1 -67
- package/dist/src/runtime/resolve-sandbox.js +1 -65
- package/dist/src/runtime/resolve-tool.js +1 -110
- package/dist/src/runtime/sandbox/keys.js +1 -72
- package/dist/src/runtime/sandbox/registry.js +1 -42
- package/dist/src/runtime/schedules/register.js +1 -62
- package/dist/src/runtime/schedules/resolve-schedule.js +1 -66
- package/dist/src/runtime/session-callback-route.js +1 -87
- package/dist/src/runtime/sessions/auth.js +1 -18
- package/dist/src/runtime/sessions/compiled-agent-cache.js +1 -125
- package/dist/src/runtime/sessions/runtime-session.js +1 -50
- package/dist/src/runtime/sessions/turn.js +1 -1
- package/dist/src/runtime/skills/fragment-context.js +1 -4
- package/dist/src/runtime/skills/sandbox-access.js +1 -85
- package/dist/src/runtime/subagents/registry.js +1 -62
- package/dist/src/runtime/tools/registry.js +1 -40
- package/dist/src/runtime/types.js +1 -1
- package/dist/src/runtime/validation.js +1 -7
- package/dist/src/runtime/workspace/seed-files.js +1 -42
- package/dist/src/runtime/workspace/spec.js +2 -22
- package/dist/src/runtime/workspace/types.js +1 -9
- package/dist/src/sandbox/state.js +1 -1
- package/dist/src/services/dev-client/request-headers.js +1 -197
- package/dist/src/services/dev-client/stream.js +1 -7
- package/dist/src/services/dev-client/url.js +1 -25
- package/dist/src/services/dev-client/vercel-auth-error.js +2 -98
- package/dist/src/services/dev-client.js +1 -48
- package/dist/src/services/inspect-application.js +1 -45
- package/dist/src/shared/agent-definition.js +1 -1
- package/dist/src/shared/errors.js +1 -66
- package/dist/src/shared/guards.js +1 -35
- package/dist/src/shared/json-schemas.js +1 -41
- package/dist/src/shared/json.js +1 -80
- package/dist/src/shared/node.js +1 -1
- package/dist/src/shared/optional.js +1 -1
- package/dist/src/shared/run-mode.js +1 -1
- package/dist/src/shared/sandbox-backend.js +1 -1
- package/dist/src/shared/sandbox-definition.js +1 -1
- package/dist/src/shared/sandbox-session.js +1 -1
- package/dist/src/shared/skill-definition.js +1 -1
- package/dist/src/shared/skill-package.js +1 -100
- package/dist/src/shared/source-ref.js +1 -1
- package/dist/src/shared/tool-definition.js +1 -1
- package/package.json +14 -4
- package/dist/src/chunks/authored-module-loader-DcCfCiBm.js +0 -4
- package/dist/src/chunks/chunk-DSjMdhoD.js +0 -1
- package/dist/src/chunks/client-ZqNLLMZB.js +0 -4
- package/dist/src/chunks/compile-agent-DrIyb818.js +0 -5
- package/dist/src/chunks/dev-authored-source-watcher-C1WUVv9F.js +0 -1
- package/dist/src/chunks/errors-HYWjHxV6.js +0 -1
- package/dist/src/chunks/guards-26p6sOw3.js +0 -1
- package/dist/src/chunks/host-CwAcCrg7.js +0 -70
- package/dist/src/chunks/input-requests-DJiy6dG9.js +0 -1
- package/dist/src/chunks/jsdist-BkeWZ7EZ.js +0 -443
- package/dist/src/chunks/paths-CWZN-XRX.js +0 -85
- package/dist/src/chunks/picocolors-aAkqW4On.js +0 -1
- package/dist/src/chunks/runtime-model-Dh0Nz64z.js +0 -1
- package/dist/src/chunks/token-YW4VSeBB.js +0 -1
- package/dist/src/chunks/types-BJSR0JNV.js +0 -1
|
@@ -1,74 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { createSendFn } from "#channel/send.js";
|
|
3
|
-
import { createGetSessionFn } from "#channel/session.js";
|
|
4
|
-
import { resolveNitroChannelRuntimeBundle } from "#internal/nitro/routes/runtime-stack.js";
|
|
5
|
-
/**
|
|
6
|
-
* Dispatches one channel request identified by `routeKey`.
|
|
7
|
-
*
|
|
8
|
-
* Each channel route is mounted as its own virtual Nitro handler with the
|
|
9
|
-
* route key and artifacts config baked in. Nitro's router matches the URL
|
|
10
|
-
* and populates `event.context.params`, so no custom URL matching is
|
|
11
|
-
* needed — the handler looks up the channel by its `(method, urlPath)` key
|
|
12
|
-
* directly. When routes register background work through `ctx.waitUntil`,
|
|
13
|
-
* Nitro forwards that work to `event.waitUntil()` so webhook
|
|
14
|
-
* acknowledgements can return immediately.
|
|
15
|
-
*
|
|
16
|
-
* Two dispatch shapes: authored channels (`defineChannel` and its
|
|
17
|
-
* wrappers) carry a `handler` field and receive `RouteHandlerArgs` with
|
|
18
|
-
* `send`, `getSession`, etc. Framework-internal channels (the
|
|
19
|
-
* connection callback route) build `ResolvedChannelDefinition` directly
|
|
20
|
-
* with just `fetch` and receive a `RouteContext` carrying `agent`.
|
|
21
|
-
*/
|
|
22
|
-
export async function dispatchChannelRequest(event, routeKey, config) {
|
|
23
|
-
const bundle = await resolveNitroChannelRuntimeBundle(config);
|
|
24
|
-
const matchedChannel = bundle.channels.find((channel) => `${channel.method.toUpperCase()} ${channel.urlPath}` === routeKey);
|
|
25
|
-
if (matchedChannel === undefined) {
|
|
26
|
-
return Response.json({ error: "No matching channel for this request.", ok: false }, { status: 404 });
|
|
27
|
-
}
|
|
28
|
-
const requestIp = extractSocketIp(event);
|
|
29
|
-
const backgroundTasks = [];
|
|
30
|
-
const rawParams = event.context.params ?? {};
|
|
31
|
-
const params = {};
|
|
32
|
-
for (const [key, value] of Object.entries(rawParams)) {
|
|
33
|
-
params[key] = decodeURIComponent(value);
|
|
34
|
-
}
|
|
35
|
-
const waitUntil = (task) => {
|
|
36
|
-
backgroundTasks.push(task);
|
|
37
|
-
};
|
|
38
|
-
let response;
|
|
39
|
-
if (matchedChannel.handler) {
|
|
40
|
-
// Authored CompiledChannel route — build RouteHandlerArgs.
|
|
41
|
-
const adapter = matchedChannel.adapter ?? { kind: "channel" };
|
|
42
|
-
const send = createSendFn(bundle.runtime, adapter, matchedChannel.name);
|
|
43
|
-
const getSession = createGetSessionFn(bundle.runtime);
|
|
44
|
-
const receive = createCrossChannelReceiveFn(bundle.runtime, toCrossChannelTargets(bundle.channels));
|
|
45
|
-
const args = {
|
|
46
|
-
send,
|
|
47
|
-
getSession,
|
|
48
|
-
receive,
|
|
49
|
-
params,
|
|
50
|
-
waitUntil,
|
|
51
|
-
requestIp,
|
|
52
|
-
};
|
|
53
|
-
response = await matchedChannel.handler(event.req, args);
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
// Framework-internal fetch-only channel (e.g. the connection
|
|
57
|
-
// callback route). Build a RouteContext with the agent handle.
|
|
58
|
-
const ctx = {
|
|
59
|
-
agent: bundle.runtime,
|
|
60
|
-
waitUntil,
|
|
61
|
-
params,
|
|
62
|
-
requestIp,
|
|
63
|
-
};
|
|
64
|
-
response = await matchedChannel.fetch(event.req, ctx);
|
|
65
|
-
}
|
|
66
|
-
if (backgroundTasks.length > 0) {
|
|
67
|
-
event.waitUntil(Promise.allSettled(backgroundTasks));
|
|
68
|
-
}
|
|
69
|
-
return response;
|
|
70
|
-
}
|
|
71
|
-
function extractSocketIp(event) {
|
|
72
|
-
const ip = event.req.ip;
|
|
73
|
-
return typeof ip === "string" && ip.length > 0 ? ip : null;
|
|
74
|
-
}
|
|
1
|
+
import{createGetSessionFn}from"#channel/session.js";import{createSendFn}from"#channel/send.js";import{createCrossChannelReceiveFn,toCrossChannelTargets}from"#channel/cross-channel-receive.js";import{resolveNitroChannelRuntimeBundle}from"#internal/nitro/routes/runtime-stack.js";async function dispatchChannelRequest(r,i,a){let o=await resolveNitroChannelRuntimeBundle(a),s=o.channels.find(e=>`${e.method.toUpperCase()} ${e.urlPath}`===i);if(s===void 0)return Response.json({error:`No matching channel for this request.`,ok:!1},{status:404});let c=extractSocketIp(r),l=[],u=r.context.params??{},d={};for(let[e,t]of Object.entries(u))d[e]=decodeURIComponent(t);let waitUntil=e=>{l.push(e)},f;if(s.handler){let n=s.adapter??{kind:`channel`},i={send:createSendFn(o.runtime,n,s.name),getSession:createGetSessionFn(o.runtime),receive:createCrossChannelReceiveFn(o.runtime,toCrossChannelTargets(o.channels)),params:d,waitUntil,requestIp:c};f=await s.handler(r.req,i)}else{let e={agent:o.runtime,waitUntil,params:d,requestIp:c};f=await s.fetch(r.req,e)}return l.length>0&&r.waitUntil(Promise.allSettled(l)),f}function extractSocketIp(e){let t=e.req.ip;return typeof t==`string`&&t.length>0?t:null}export{dispatchChannelRequest};
|
|
@@ -1,17 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
/**
|
|
3
|
-
* Nitro route for Ash's health endpoint.
|
|
4
|
-
*
|
|
5
|
-
* The health endpoint is intentionally always-public so platform load
|
|
6
|
-
* balancers and uptime monitors can probe it without credentials.
|
|
7
|
-
* Channels that need authenticated health probes should author their own
|
|
8
|
-
* channel file with the verifier helpers from
|
|
9
|
-
* `experimental-ash/channels/auth`.
|
|
10
|
-
*/
|
|
11
|
-
export default async (_event) => {
|
|
12
|
-
return Response.json({
|
|
13
|
-
ok: true,
|
|
14
|
-
status: "ready",
|
|
15
|
-
workflowId: workflowEntryReference.workflowId,
|
|
16
|
-
});
|
|
17
|
-
};
|
|
1
|
+
import{workflowEntryReference}from"#execution/workflow-runtime.js";var health_default=async e=>Response.json({ok:!0,status:`ready`,workflowId:workflowEntryReference.workflowId});export{health_default as default};
|
|
@@ -1,31 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Public docs URL surfaced from the barebones home page. Kept in source
|
|
3
|
-
* so the deployment output is a fully static, build-time-baked HTML
|
|
4
|
-
* response that performs no runtime resolution.
|
|
5
|
-
*/
|
|
6
|
-
const ASH_DOCS_URL = "https://ash.labs.vercel.dev/";
|
|
7
|
-
const DEPLOYMENT_URL_PLACEHOLDER = "{{DEPLOYMENT_URL}}";
|
|
8
|
-
/**
|
|
9
|
-
* Barebones HTML served at `GET /`.
|
|
10
|
-
*
|
|
11
|
-
* Reveals no information about the deployed agent — no name, no model,
|
|
12
|
-
* no instructions, no list of skills or schedules, no API endpoint paths.
|
|
13
|
-
* This is intentional: the root URL of a deployment is reachable by
|
|
14
|
-
* anyone on the public internet, and the deployment must not advertise
|
|
15
|
-
* its agent's configuration to unauthenticated callers. Inspection JSON
|
|
16
|
-
* (model id, instructions preview, skills, etc.) lives behind default
|
|
17
|
-
* Vercel OIDC auth on `/ash/v1/info`.
|
|
18
|
-
*
|
|
19
|
-
* The page also loads zero external assets — no fonts, no scripts, no
|
|
20
|
-
* images, no analytics beacons — so it cannot leak the deployment's
|
|
21
|
-
* origin to a third party simply by being visited.
|
|
22
|
-
*
|
|
23
|
-
* `{{DEPLOYMENT_URL}}` is the only request-time substitution: the page
|
|
24
|
-
* echoes the visitor's own request origin back into the `$ ash dev …`
|
|
25
|
-
* hint so they can copy-paste it without typing the URL by hand. We
|
|
26
|
-
* don't read any other request state.
|
|
27
|
-
*/
|
|
28
|
-
const HOME_PAGE_HTML_TEMPLATE = `<!doctype html>
|
|
1
|
+
var ASH_DOCS_URL=`https://ash.labs.vercel.dev/`,DEPLOYMENT_URL_PLACEHOLDER=`{{DEPLOYMENT_URL}}`,HOME_PAGE_HTML_TEMPLATE=`<!doctype html>
|
|
29
2
|
<html lang="en">
|
|
30
3
|
<head>
|
|
31
4
|
<meta charset="utf-8">
|
|
@@ -175,64 +148,4 @@ const HOME_PAGE_HTML_TEMPLATE = `<!doctype html>
|
|
|
175
148
|
</main>
|
|
176
149
|
</body>
|
|
177
150
|
</html>
|
|
178
|
-
`;
|
|
179
|
-
function escapeHtml(value) {
|
|
180
|
-
return value
|
|
181
|
-
.replaceAll("&", "&")
|
|
182
|
-
.replaceAll("<", "<")
|
|
183
|
-
.replaceAll(">", ">")
|
|
184
|
-
.replaceAll('"', """)
|
|
185
|
-
.replaceAll("'", "'");
|
|
186
|
-
}
|
|
187
|
-
function pickFirstForwardedValue(value) {
|
|
188
|
-
if (value === null) {
|
|
189
|
-
return undefined;
|
|
190
|
-
}
|
|
191
|
-
const first = value.split(",")[0]?.trim();
|
|
192
|
-
if (first === undefined || first.length === 0) {
|
|
193
|
-
return undefined;
|
|
194
|
-
}
|
|
195
|
-
return first;
|
|
196
|
-
}
|
|
197
|
-
/**
|
|
198
|
-
* Resolves the public origin a visitor is using to reach the deployment.
|
|
199
|
-
*
|
|
200
|
-
* Prefers the `x-forwarded-host` / `x-forwarded-proto` headers set by
|
|
201
|
-
* Vercel's edge so the rendered URL matches the address the visitor
|
|
202
|
-
* actually typed (including custom domains), then falls back to the
|
|
203
|
-
* `host` header, then to `request.url` for local `ash dev` runs that
|
|
204
|
-
* skip the proxy chain. Comma-separated forwarded values are split and
|
|
205
|
-
* the first hop is used — that is the public-facing entry, the rest are
|
|
206
|
-
* internal forwarder hostnames.
|
|
207
|
-
*/
|
|
208
|
-
function resolveDeploymentUrl(request) {
|
|
209
|
-
const headers = request.headers;
|
|
210
|
-
const requestUrl = new URL(request.url);
|
|
211
|
-
const forwardedHost = pickFirstForwardedValue(headers.get("x-forwarded-host"));
|
|
212
|
-
const forwardedProto = pickFirstForwardedValue(headers.get("x-forwarded-proto"));
|
|
213
|
-
const host = forwardedHost ?? headers.get("host") ?? requestUrl.host;
|
|
214
|
-
const proto = forwardedProto ?? requestUrl.protocol.replace(/:$/, "");
|
|
215
|
-
return `${proto}://${host}`;
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* Builds the barebones home page response for one request. Exposed
|
|
219
|
-
* for tests so callers can supply a real {@link Request}; production
|
|
220
|
-
* traffic flows through the Nitro {@link H3Event} default export.
|
|
221
|
-
*/
|
|
222
|
-
export function buildHomePageResponse(request) {
|
|
223
|
-
const deploymentUrl = resolveDeploymentUrl(request);
|
|
224
|
-
const html = HOME_PAGE_HTML_TEMPLATE.replace(DEPLOYMENT_URL_PLACEHOLDER, escapeHtml(deploymentUrl));
|
|
225
|
-
return new Response(html, {
|
|
226
|
-
headers: {
|
|
227
|
-
"cache-control": "no-store",
|
|
228
|
-
"content-type": "text/html; charset=utf-8",
|
|
229
|
-
},
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
/**
|
|
233
|
-
* Nitro route handler for `GET /`. Adapts the Nitro event shape into
|
|
234
|
-
* {@link buildHomePageResponse}.
|
|
235
|
-
*/
|
|
236
|
-
export default function handleHomePageRequest(event) {
|
|
237
|
-
return buildHomePageResponse(event.req);
|
|
238
|
-
}
|
|
151
|
+
`;function escapeHtml(e){return e.replaceAll(`&`,`&`).replaceAll(`<`,`<`).replaceAll(`>`,`>`).replaceAll(`"`,`"`).replaceAll(`'`,`'`)}function pickFirstForwardedValue(e){if(e===null)return;let t=e.split(`,`)[0]?.trim();if(!(t===void 0||t.length===0))return t}function resolveDeploymentUrl(e){let t=e.headers,n=new URL(e.url),r=pickFirstForwardedValue(t.get(`x-forwarded-host`)),i=pickFirstForwardedValue(t.get(`x-forwarded-proto`)),a=r??t.get(`host`)??n.host;return`${i??n.protocol.replace(/:$/,``)}://${a}`}function buildHomePageResponse(e){let r=resolveDeploymentUrl(e),i=HOME_PAGE_HTML_TEMPLATE.replace(DEPLOYMENT_URL_PLACEHOLDER,escapeHtml(r));return new Response(i,{headers:{"cache-control":`no-store`,"content-type":`text/html; charset=utf-8`}})}function handleHomePageRequest(e){return buildHomePageResponse(e.req)}export{buildHomePageResponse,handleHomePageRequest as default};
|
|
@@ -1,50 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { loadAgentInfoData, resolveAgentInfoCompiledArtifactsSource, } from "#internal/nitro/routes/agent-info/load-agent-info-data.js";
|
|
3
|
-
import { createUnauthorizedResponse, none, vercelOidc, } from "#public/channels/auth.js";
|
|
4
|
-
/**
|
|
5
|
-
* Resolves the default auth strategy for the agent info endpoint.
|
|
6
|
-
*
|
|
7
|
-
* Mirrors {@link resolveFrameworkAshAuth} (session/stream routes): on
|
|
8
|
-
* Vercel deployments require a valid Vercel OIDC bearer (the always-on
|
|
9
|
-
* same-project bypass lets internal callers in automatically); off
|
|
10
|
-
* Vercel (`ash dev`) accept anonymous requests so local inspection
|
|
11
|
-
* tools and curl-based probes work without setup.
|
|
12
|
-
*/
|
|
13
|
-
function resolveAgentInfoAuth() {
|
|
14
|
-
if (process.env.VERCEL) {
|
|
15
|
-
return vercelOidc();
|
|
16
|
-
}
|
|
17
|
-
return none();
|
|
18
|
-
}
|
|
19
|
-
async function createAgentInfoPayload(input) {
|
|
20
|
-
const data = await loadAgentInfoData({
|
|
21
|
-
compiledArtifactsSource: resolveAgentInfoCompiledArtifactsSource({
|
|
22
|
-
appRoot: input.appRoot,
|
|
23
|
-
}),
|
|
24
|
-
});
|
|
25
|
-
return buildAgentInfoResponse(data);
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Builds the package-owned JSON inspection response for the current
|
|
29
|
-
* agent (model id, instructions preview, skills, schedules, subagents,
|
|
30
|
-
* tools, sandbox, endpoint catalog).
|
|
31
|
-
*
|
|
32
|
-
* The route is gated by {@link resolveAgentInfoAuth} so the deployed URL
|
|
33
|
-
* does not expose agent metadata to anonymous callers. The same-project
|
|
34
|
-
* bypass on `vercelOidc()` keeps the route reachable to in-deployment
|
|
35
|
-
* callers (`apps/nextjs-ash`-style consumers) without any additional
|
|
36
|
-
* setup.
|
|
37
|
-
*/
|
|
38
|
-
export async function handleAgentInfoRequest(input, request) {
|
|
39
|
-
const auth = resolveAgentInfoAuth();
|
|
40
|
-
const result = await auth(request);
|
|
41
|
-
if (result === null) {
|
|
42
|
-
return createUnauthorizedResponse({ challenges: [{ scheme: "Bearer" }] });
|
|
43
|
-
}
|
|
44
|
-
return new Response(JSON.stringify(await createAgentInfoPayload(input)), {
|
|
45
|
-
headers: {
|
|
46
|
-
"cache-control": "no-store",
|
|
47
|
-
"content-type": "application/json; charset=utf-8",
|
|
48
|
-
},
|
|
49
|
-
});
|
|
50
|
-
}
|
|
1
|
+
import{buildAgentInfoResponse}from"#internal/nitro/routes/agent-info/build-agent-info-response.js";import{loadAgentInfoData,resolveAgentInfoCompiledArtifactsSource}from"#internal/nitro/routes/agent-info/load-agent-info-data.js";import{createUnauthorizedResponse,none,vercelOidc}from"#public/channels/auth.js";function resolveAgentInfoAuth(){return process.env.VERCEL?vercelOidc():none()}async function createAgentInfoPayload(n){return buildAgentInfoResponse(await loadAgentInfoData({compiledArtifactsSource:resolveAgentInfoCompiledArtifactsSource({appRoot:n.appRoot})}))}async function handleAgentInfoRequest(e,t){return await resolveAgentInfoAuth()(t)===null?createUnauthorizedResponse({challenges:[{scheme:`Bearer`}]}):new Response(JSON.stringify(await createAgentInfoPayload(e)),{headers:{"cache-control":`no-store`,"content-type":`application/json; charset=utf-8`}})}export{handleAgentInfoRequest};
|
|
@@ -1,24 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { readBundledCompiledArtifacts } from "#runtime/loaders/bundled-artifacts.js";
|
|
3
|
-
/**
|
|
4
|
-
* Resolves the compiled-artifact source available to package-owned Nitro
|
|
5
|
-
* routes.
|
|
6
|
-
*/
|
|
7
|
-
export function resolveNitroCompiledArtifactsSource(config) {
|
|
8
|
-
const { appRoot, dev: isDevelopment } = config;
|
|
9
|
-
if (isDevelopment && appRoot !== undefined) {
|
|
10
|
-
if (config.moduleMapLoaderPath === undefined) {
|
|
11
|
-
throw new Error('Ash Nitro development routes require "moduleMapLoaderPath" in the artifacts config.');
|
|
12
|
-
}
|
|
13
|
-
return createDiskRuntimeCompiledArtifactsSource(appRoot, {
|
|
14
|
-
moduleMapLoaderPath: config.moduleMapLoaderPath,
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
if (readBundledCompiledArtifacts() !== null) {
|
|
18
|
-
return createBundledRuntimeCompiledArtifactsSource();
|
|
19
|
-
}
|
|
20
|
-
if (appRoot !== undefined) {
|
|
21
|
-
return createDiskRuntimeCompiledArtifactsSource(appRoot);
|
|
22
|
-
}
|
|
23
|
-
throw new Error("Ash Nitro route requires bundled artifacts or an Ash Nitro runtime configuration app root.");
|
|
24
|
-
}
|
|
1
|
+
import{createBundledRuntimeCompiledArtifactsSource,createDiskRuntimeCompiledArtifactsSource}from"#runtime/compiled-artifacts-source.js";import{readBundledCompiledArtifacts}from"#runtime/loaders/bundled-artifacts.js";function resolveNitroCompiledArtifactsSource(e){let{appRoot:t,dev:n}=e;if(n&&t!==void 0){if(e.moduleMapLoaderPath===void 0)throw Error(`Ash Nitro development routes require "moduleMapLoaderPath" in the artifacts config.`);return createDiskRuntimeCompiledArtifactsSource(t,{moduleMapLoaderPath:e.moduleMapLoaderPath})}if(readBundledCompiledArtifacts()!==null)return createBundledRuntimeCompiledArtifactsSource();if(t!==void 0)return createDiskRuntimeCompiledArtifactsSource(t);throw Error(`Ash Nitro route requires bundled artifacts or an Ash Nitro runtime configuration app root.`)}export{resolveNitroCompiledArtifactsSource};
|
|
@@ -1,23 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { getCompiledRuntimeAgentBundle } from "#runtime/sessions/compiled-agent-cache.js";
|
|
3
|
-
import { resolveNitroCompiledArtifactsSource, } from "#internal/nitro/routes/runtime-artifacts.js";
|
|
4
|
-
/**
|
|
5
|
-
* Resolves the per-request channel bundle: the agent's resolved channels
|
|
6
|
-
* (already merged with framework defaults by `resolve-agent-graph.ts`)
|
|
7
|
-
* and a fresh workflow runtime.
|
|
8
|
-
*
|
|
9
|
-
* No singleton caching is needed — session state lives inside the
|
|
10
|
-
* workflow's durable execution and the channel set is recomputed from the
|
|
11
|
-
* compiled bundle on each request.
|
|
12
|
-
*/
|
|
13
|
-
export async function resolveNitroChannelRuntimeBundle(config) {
|
|
14
|
-
const compiledArtifactsSource = resolveNitroCompiledArtifactsSource(config);
|
|
15
|
-
const bundle = await getCompiledRuntimeAgentBundle({
|
|
16
|
-
compiledArtifactsSource,
|
|
17
|
-
});
|
|
18
|
-
const runtime = createWorkflowRuntime({ compiledArtifactsSource });
|
|
19
|
-
return {
|
|
20
|
-
channels: bundle.graph.root.channels,
|
|
21
|
-
runtime,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
1
|
+
import{getCompiledRuntimeAgentBundle}from"#runtime/sessions/compiled-agent-cache.js";import{createWorkflowRuntime}from"#execution/workflow-runtime.js";import{resolveNitroCompiledArtifactsSource}from"#internal/nitro/routes/runtime-artifacts.js";async function resolveNitroChannelRuntimeBundle(e){let t=resolveNitroCompiledArtifactsSource(e),n=await getCompiledRuntimeAgentBundle({compiledArtifactsSource:t}),r=createWorkflowRuntime({compiledArtifactsSource:t});return{channels:n.graph.root.channels,runtime:r}}export{resolveNitroChannelRuntimeBundle};
|
|
@@ -1,57 +1 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { createWorkflowRuntime } from "#execution/workflow-runtime.js";
|
|
3
|
-
import { loadResolvedModuleExport } from "#runtime/resolve-helpers.js";
|
|
4
|
-
import { loadResolvedCompiledScheduleByTaskName } from "#runtime/schedules/resolve-schedule.js";
|
|
5
|
-
import { getCompiledRuntimeAgentBundle } from "#runtime/sessions/compiled-agent-cache.js";
|
|
6
|
-
import { resolveNitroCompiledArtifactsSource } from "#internal/nitro/routes/runtime-artifacts.js";
|
|
7
|
-
/**
|
|
8
|
-
* Dispatches one Ash authored schedule via the execution engine.
|
|
9
|
-
*
|
|
10
|
-
* Fire-and-forget: the workflow runtime owns terminal completion and
|
|
11
|
-
* its own failure observability. The task return value reports which
|
|
12
|
-
* session ids the handler started so Nitro / dev tools can correlate.
|
|
13
|
-
*/
|
|
14
|
-
export async function dispatchScheduleTask(taskName, config) {
|
|
15
|
-
const compiledArtifactsSource = resolveNitroCompiledArtifactsSource(config);
|
|
16
|
-
const schedule = await loadResolvedCompiledScheduleByTaskName(taskName, {
|
|
17
|
-
compiledArtifactsSource,
|
|
18
|
-
});
|
|
19
|
-
const bundle = await getCompiledRuntimeAgentBundle({ compiledArtifactsSource });
|
|
20
|
-
const runtime = createWorkflowRuntime({ compiledArtifactsSource });
|
|
21
|
-
const dispatcher = new ScheduleDispatcher({
|
|
22
|
-
runtime,
|
|
23
|
-
channels: bundle.graph.root.channels,
|
|
24
|
-
});
|
|
25
|
-
const dispatchInput = { scheduleId: schedule.name };
|
|
26
|
-
if (schedule.hasRun) {
|
|
27
|
-
dispatchInput.run = await loadScheduleRun(schedule, bundle.moduleMap);
|
|
28
|
-
}
|
|
29
|
-
if (schedule.markdown !== undefined) {
|
|
30
|
-
dispatchInput.markdown = schedule.markdown;
|
|
31
|
-
}
|
|
32
|
-
const result = await dispatcher.trigger(dispatchInput);
|
|
33
|
-
if (result.waitUntilTasks.length > 0) {
|
|
34
|
-
await Promise.allSettled(result.waitUntilTasks);
|
|
35
|
-
}
|
|
36
|
-
return {
|
|
37
|
-
scheduleId: schedule.name,
|
|
38
|
-
sessionIds: result.sessions.map((session) => session.id),
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
async function loadScheduleRun(schedule, moduleMap) {
|
|
42
|
-
if (schedule.sourceKind !== "module") {
|
|
43
|
-
throw new Error(`Schedule "${schedule.name}" claims hasRun but is not a module-backed schedule.`);
|
|
44
|
-
}
|
|
45
|
-
const moduleSchedule = schedule;
|
|
46
|
-
const exportValue = await loadResolvedModuleExport({
|
|
47
|
-
definition: {
|
|
48
|
-
exportName: moduleSchedule.exportName,
|
|
49
|
-
logicalPath: moduleSchedule.logicalPath,
|
|
50
|
-
sourceId: moduleSchedule.sourceId,
|
|
51
|
-
},
|
|
52
|
-
kindLabel: "schedule",
|
|
53
|
-
moduleMap,
|
|
54
|
-
nodeId: undefined,
|
|
55
|
-
});
|
|
56
|
-
return expectScheduleRun(exportValue, moduleSchedule.logicalPath, moduleSchedule.exportName);
|
|
57
|
-
}
|
|
1
|
+
import{getCompiledRuntimeAgentBundle}from"#runtime/sessions/compiled-agent-cache.js";import{createWorkflowRuntime}from"#execution/workflow-runtime.js";import{loadResolvedCompiledScheduleByTaskName}from"#runtime/schedules/resolve-schedule.js";import{resolveNitroCompiledArtifactsSource}from"#internal/nitro/routes/runtime-artifacts.js";import{ScheduleDispatcher,expectScheduleRun}from"#channel/schedule.js";import{loadResolvedModuleExport}from"#runtime/resolve-helpers.js";async function dispatchScheduleTask(r,i){let a=resolveNitroCompiledArtifactsSource(i),o=await loadResolvedCompiledScheduleByTaskName(r,{compiledArtifactsSource:a}),s=await getCompiledRuntimeAgentBundle({compiledArtifactsSource:a}),c=new ScheduleDispatcher({runtime:createWorkflowRuntime({compiledArtifactsSource:a}),channels:s.graph.root.channels}),l={scheduleId:o.name};o.hasRun&&(l.run=await loadScheduleRun(o,s.moduleMap)),o.markdown!==void 0&&(l.markdown=o.markdown);let u=await c.trigger(l);return u.waitUntilTasks.length>0&&await Promise.allSettled(u.waitUntilTasks),{scheduleId:o.name,sessionIds:u.sessions.map(e=>e.id)}}async function loadScheduleRun(e,t){if(e.sourceKind!==`module`)throw Error(`Schedule "${e.name}" claims hasRun but is not a module-backed schedule.`);let n=e;return expectScheduleRun(await loadResolvedModuleExport({definition:{exportName:n.exportName,logicalPath:n.logicalPath,sourceId:n.sourceId},kindLabel:`schedule`,moduleMap:t,nodeId:void 0}),n.logicalPath,n.exportName)}export{dispatchScheduleTask};
|
|
@@ -1,141 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { getWorld } from "#compiled/@workflow/core/runtime.js";
|
|
3
|
-
/**
|
|
4
|
-
* Error raised when one requested workflow run cannot be found.
|
|
5
|
-
*/
|
|
6
|
-
export class WorkflowRunMissingError extends Error {
|
|
7
|
-
runId;
|
|
8
|
-
constructor(runId) {
|
|
9
|
-
super(`Workflow run "${runId}" not found.`);
|
|
10
|
-
this.name = "WorkflowRunMissingError";
|
|
11
|
-
this.runId = runId;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
function toPaginationOptions(query) {
|
|
15
|
-
const pagination = {};
|
|
16
|
-
if (typeof query.cursor === "string" && query.cursor.length > 0) {
|
|
17
|
-
pagination.cursor = query.cursor;
|
|
18
|
-
}
|
|
19
|
-
if (typeof query.limit === "number") {
|
|
20
|
-
pagination.limit = query.limit;
|
|
21
|
-
}
|
|
22
|
-
if (query.sortOrder === "asc" || query.sortOrder === "desc") {
|
|
23
|
-
pagination.sortOrder = query.sortOrder;
|
|
24
|
-
}
|
|
25
|
-
if (pagination.cursor === undefined &&
|
|
26
|
-
pagination.limit === undefined &&
|
|
27
|
-
pagination.sortOrder === undefined) {
|
|
28
|
-
return undefined;
|
|
29
|
-
}
|
|
30
|
-
return pagination;
|
|
31
|
-
}
|
|
32
|
-
function isRunNotFoundError(error) {
|
|
33
|
-
if (WorkflowRunNotFoundError.is(error)) {
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
// Fallback: some world implementations throw a generic WorkflowWorldError
|
|
37
|
-
// with HTTP status 404 instead of the typed WorkflowRunNotFoundError. This
|
|
38
|
-
// can happen when instanceof checks fail across module boundaries.
|
|
39
|
-
if (WorkflowWorldError.is(error) && error.status === 404) {
|
|
40
|
-
return true;
|
|
41
|
-
}
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
async function ensureWorkflowRunExists(world, runId) {
|
|
45
|
-
try {
|
|
46
|
-
await world.runs.get(runId, {
|
|
47
|
-
resolveData: "none",
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
catch (error) {
|
|
51
|
-
if (isRunNotFoundError(error)) {
|
|
52
|
-
throw new WorkflowRunMissingError(runId);
|
|
53
|
-
}
|
|
54
|
-
throw error;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Lists workflow runs with data-resolution disabled so payload blobs are not exposed.
|
|
59
|
-
*/
|
|
60
|
-
export async function listWorkflowRuns(query) {
|
|
61
|
-
const world = await getWorld();
|
|
62
|
-
const pagination = toPaginationOptions(query);
|
|
63
|
-
const params = {
|
|
64
|
-
resolveData: "none",
|
|
65
|
-
};
|
|
66
|
-
if (typeof query.workflowName === "string" && query.workflowName.length > 0) {
|
|
67
|
-
params.workflowName = query.workflowName;
|
|
68
|
-
}
|
|
69
|
-
if (typeof query.status === "string" && query.status.length > 0) {
|
|
70
|
-
params.status = query.status;
|
|
71
|
-
}
|
|
72
|
-
if (pagination !== undefined) {
|
|
73
|
-
params.pagination = pagination;
|
|
74
|
-
}
|
|
75
|
-
return await world.runs.list(params);
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Returns one workflow run summary by id with data-resolution disabled.
|
|
79
|
-
*/
|
|
80
|
-
export async function getWorkflowRun(runId) {
|
|
81
|
-
const world = await getWorld();
|
|
82
|
-
try {
|
|
83
|
-
return await world.runs.get(runId, {
|
|
84
|
-
resolveData: "none",
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
catch (error) {
|
|
88
|
-
if (isRunNotFoundError(error)) {
|
|
89
|
-
throw new WorkflowRunMissingError(runId);
|
|
90
|
-
}
|
|
91
|
-
throw error;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Lists steps for one workflow run with data-resolution disabled.
|
|
96
|
-
*/
|
|
97
|
-
export async function listWorkflowRunSteps(runId, query) {
|
|
98
|
-
const world = await getWorld();
|
|
99
|
-
const pagination = toPaginationOptions(query);
|
|
100
|
-
await ensureWorkflowRunExists(world, runId);
|
|
101
|
-
const params = {
|
|
102
|
-
resolveData: "none",
|
|
103
|
-
runId,
|
|
104
|
-
};
|
|
105
|
-
if (pagination !== undefined) {
|
|
106
|
-
params.pagination = pagination;
|
|
107
|
-
}
|
|
108
|
-
try {
|
|
109
|
-
return await world.steps.list(params);
|
|
110
|
-
}
|
|
111
|
-
catch (error) {
|
|
112
|
-
if (isRunNotFoundError(error)) {
|
|
113
|
-
throw new WorkflowRunMissingError(runId);
|
|
114
|
-
}
|
|
115
|
-
throw error;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Lists events for one workflow run with data-resolution disabled.
|
|
120
|
-
*/
|
|
121
|
-
export async function listWorkflowRunEvents(runId, query) {
|
|
122
|
-
const world = await getWorld();
|
|
123
|
-
const pagination = toPaginationOptions(query);
|
|
124
|
-
await ensureWorkflowRunExists(world, runId);
|
|
125
|
-
const params = {
|
|
126
|
-
resolveData: "none",
|
|
127
|
-
runId,
|
|
128
|
-
};
|
|
129
|
-
if (pagination !== undefined) {
|
|
130
|
-
params.pagination = pagination;
|
|
131
|
-
}
|
|
132
|
-
try {
|
|
133
|
-
return await world.events.list(params);
|
|
134
|
-
}
|
|
135
|
-
catch (error) {
|
|
136
|
-
if (isRunNotFoundError(error)) {
|
|
137
|
-
throw new WorkflowRunMissingError(runId);
|
|
138
|
-
}
|
|
139
|
-
throw error;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
1
|
+
import{getWorld}from"#compiled/@workflow/core/runtime.js";import{WorkflowRunNotFoundError,WorkflowWorldError}from"#compiled/@workflow/errors/index.js";var WorkflowRunMissingError=class extends Error{runId;constructor(e){super(`Workflow run "${e}" not found.`),this.name=`WorkflowRunMissingError`,this.runId=e}};function toPaginationOptions(e){let t={};if(typeof e.cursor==`string`&&e.cursor.length>0&&(t.cursor=e.cursor),typeof e.limit==`number`&&(t.limit=e.limit),(e.sortOrder===`asc`||e.sortOrder===`desc`)&&(t.sortOrder=e.sortOrder),!(t.cursor===void 0&&t.limit===void 0&&t.sortOrder===void 0))return t}function isRunNotFoundError(e){return!!(WorkflowRunNotFoundError.is(e)||WorkflowWorldError.is(e)&&e.status===404)}async function ensureWorkflowRunExists(e,t){try{await e.runs.get(t,{resolveData:`none`})}catch(e){throw isRunNotFoundError(e)?new WorkflowRunMissingError(t):e}}async function listWorkflowRuns(t){let n=await getWorld(),r=toPaginationOptions(t),i={resolveData:`none`};return typeof t.workflowName==`string`&&t.workflowName.length>0&&(i.workflowName=t.workflowName),typeof t.status==`string`&&t.status.length>0&&(i.status=t.status),r!==void 0&&(i.pagination=r),await n.runs.list(i)}async function getWorkflowRun(t){let n=await getWorld();try{return await n.runs.get(t,{resolveData:`none`})}catch(e){throw isRunNotFoundError(e)?new WorkflowRunMissingError(t):e}}async function listWorkflowRunSteps(t,n){let r=await getWorld(),i=toPaginationOptions(n);await ensureWorkflowRunExists(r,t);let a={resolveData:`none`,runId:t};i!==void 0&&(a.pagination=i);try{return await r.steps.list(a)}catch(e){throw isRunNotFoundError(e)?new WorkflowRunMissingError(t):e}}async function listWorkflowRunEvents(t,n){let r=await getWorld(),i=toPaginationOptions(n);await ensureWorkflowRunExists(r,t);let a={resolveData:`none`,runId:t};i!==void 0&&(a.pagination=i);try{return await r.events.list(a)}catch(e){throw isRunNotFoundError(e)?new WorkflowRunMissingError(t):e}}export{WorkflowRunMissingError,getWorkflowRun,listWorkflowRunEvents,listWorkflowRunSteps,listWorkflowRuns};
|
|
@@ -1,137 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
export const WORKFLOW_RUNS_API_ROUTE_PATH = `${ASH_ROUTE_PREFIX}/runs`;
|
|
3
|
-
export const WORKFLOW_RUN_ROUTE_PATTERN = `${ASH_ROUTE_PREFIX}/runs/:runId`;
|
|
4
|
-
export const WORKFLOW_RUN_STEPS_ROUTE_PATTERN = `${ASH_ROUTE_PREFIX}/runs/:runId/steps`;
|
|
5
|
-
export const WORKFLOW_RUN_EVENTS_ROUTE_PATTERN = `${ASH_ROUTE_PREFIX}/runs/:runId/events`;
|
|
6
|
-
const MAX_PAGE_LIMIT = 1000;
|
|
7
|
-
const WORKFLOW_RUN_STATUSES = ["pending", "running", "completed", "failed", "cancelled"];
|
|
8
|
-
function createWorkflowApiResponse(payload, status) {
|
|
9
|
-
return new Response(JSON.stringify(payload), {
|
|
10
|
-
headers: {
|
|
11
|
-
"cache-control": "no-store",
|
|
12
|
-
"content-type": "application/json; charset=utf-8",
|
|
13
|
-
},
|
|
14
|
-
status,
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Builds the common success response envelope for workflow inspection routes.
|
|
19
|
-
*/
|
|
20
|
-
export function createWorkflowApiSuccessResponse(payload) {
|
|
21
|
-
return createWorkflowApiResponse({
|
|
22
|
-
ok: true,
|
|
23
|
-
...payload,
|
|
24
|
-
}, 200);
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Builds a consistent 400 response for workflow inspection routes.
|
|
28
|
-
*/
|
|
29
|
-
export function createWorkflowApiBadRequestResponse(message) {
|
|
30
|
-
return createWorkflowApiResponse({
|
|
31
|
-
error: message,
|
|
32
|
-
ok: false,
|
|
33
|
-
}, 400);
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Builds a consistent 404 response for workflow inspection routes.
|
|
37
|
-
*/
|
|
38
|
-
export function createWorkflowApiNotFoundResponse(message) {
|
|
39
|
-
return createWorkflowApiResponse({
|
|
40
|
-
error: message,
|
|
41
|
-
ok: false,
|
|
42
|
-
}, 404);
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Builds a consistent 500 response for workflow inspection routes.
|
|
46
|
-
*/
|
|
47
|
-
export function createWorkflowApiInternalErrorResponse() {
|
|
48
|
-
return createWorkflowApiResponse({
|
|
49
|
-
error: "Failed to load workflow data.",
|
|
50
|
-
ok: false,
|
|
51
|
-
}, 500);
|
|
52
|
-
}
|
|
53
|
-
function isWorkflowRunStatus(value) {
|
|
54
|
-
return WORKFLOW_RUN_STATUSES.some((status) => status === value);
|
|
55
|
-
}
|
|
56
|
-
function parsePaginationFromSearchParams(searchParams) {
|
|
57
|
-
const pagination = {};
|
|
58
|
-
const cursor = searchParams.get("cursor");
|
|
59
|
-
if (typeof cursor === "string" && cursor.length > 0) {
|
|
60
|
-
pagination.cursor = cursor;
|
|
61
|
-
}
|
|
62
|
-
const rawLimit = searchParams.get("limit");
|
|
63
|
-
if (rawLimit !== null) {
|
|
64
|
-
const parsedLimit = Number.parseInt(rawLimit, 10);
|
|
65
|
-
if (!Number.isSafeInteger(parsedLimit) || parsedLimit < 1 || parsedLimit > MAX_PAGE_LIMIT) {
|
|
66
|
-
return createWorkflowApiBadRequestResponse(`Expected "limit" to be an integer between 1 and ${MAX_PAGE_LIMIT}.`);
|
|
67
|
-
}
|
|
68
|
-
pagination.limit = parsedLimit;
|
|
69
|
-
}
|
|
70
|
-
const rawSortOrder = searchParams.get("sortOrder");
|
|
71
|
-
if (rawSortOrder !== null) {
|
|
72
|
-
if (rawSortOrder !== "asc" && rawSortOrder !== "desc") {
|
|
73
|
-
return createWorkflowApiBadRequestResponse('Expected "sortOrder" to be "asc" or "desc".');
|
|
74
|
-
}
|
|
75
|
-
pagination.sortOrder = rawSortOrder;
|
|
76
|
-
}
|
|
77
|
-
return pagination;
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Parses pagination query parameters from one workflow inspection request.
|
|
81
|
-
*/
|
|
82
|
-
export function parsePaginationQuery(request) {
|
|
83
|
-
const searchParams = new URL(request.url).searchParams;
|
|
84
|
-
return parsePaginationFromSearchParams(searchParams);
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Parses list-runs query parameters from one workflow inspection request.
|
|
88
|
-
*/
|
|
89
|
-
export function parseWorkflowRunsQuery(request) {
|
|
90
|
-
const searchParams = new URL(request.url).searchParams;
|
|
91
|
-
const pagination = parsePaginationFromSearchParams(searchParams);
|
|
92
|
-
if (pagination instanceof Response) {
|
|
93
|
-
return pagination;
|
|
94
|
-
}
|
|
95
|
-
const query = {
|
|
96
|
-
cursor: pagination.cursor,
|
|
97
|
-
limit: pagination.limit,
|
|
98
|
-
sortOrder: pagination.sortOrder,
|
|
99
|
-
};
|
|
100
|
-
const rawStatus = searchParams.get("status");
|
|
101
|
-
if (rawStatus !== null) {
|
|
102
|
-
if (!isWorkflowRunStatus(rawStatus)) {
|
|
103
|
-
return createWorkflowApiBadRequestResponse(`Expected "status" to be one of: ${WORKFLOW_RUN_STATUSES.join(", ")}.`);
|
|
104
|
-
}
|
|
105
|
-
query.status = rawStatus;
|
|
106
|
-
}
|
|
107
|
-
const workflowName = searchParams.get("workflowName");
|
|
108
|
-
if (typeof workflowName === "string" && workflowName.length > 0) {
|
|
109
|
-
query.workflowName = workflowName;
|
|
110
|
-
}
|
|
111
|
-
return query;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Resolves `runId` from one Nitro route event.
|
|
115
|
-
*/
|
|
116
|
-
export function resolveRunIdFromNitroEvent(event) {
|
|
117
|
-
const eventWithParams = event;
|
|
118
|
-
const routeRunId = eventWithParams.context?.params?.runId;
|
|
119
|
-
if (typeof routeRunId === "string" && routeRunId.length > 0) {
|
|
120
|
-
return routeRunId;
|
|
121
|
-
}
|
|
122
|
-
const path = new URL(event.req.url).pathname;
|
|
123
|
-
const pathMatch = path.match(/^\/ash\/v1\/runs\/([^/]+)(?:\/.*)?$/);
|
|
124
|
-
if (pathMatch === null) {
|
|
125
|
-
return null;
|
|
126
|
-
}
|
|
127
|
-
const encodedRunId = pathMatch[1];
|
|
128
|
-
if (typeof encodedRunId !== "string" || encodedRunId.length === 0) {
|
|
129
|
-
return null;
|
|
130
|
-
}
|
|
131
|
-
try {
|
|
132
|
-
return decodeURIComponent(encodedRunId);
|
|
133
|
-
}
|
|
134
|
-
catch {
|
|
135
|
-
return null;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
1
|
+
import{ASH_ROUTE_PREFIX}from"#protocol/routes.js";var WORKFLOW_RUNS_API_ROUTE_PATH=`${ASH_ROUTE_PREFIX}/runs`,WORKFLOW_RUN_ROUTE_PATTERN=`${ASH_ROUTE_PREFIX}/runs/:runId`,WORKFLOW_RUN_STEPS_ROUTE_PATTERN=`${ASH_ROUTE_PREFIX}/runs/:runId/steps`,WORKFLOW_RUN_EVENTS_ROUTE_PATTERN=`${ASH_ROUTE_PREFIX}/runs/:runId/events`,MAX_PAGE_LIMIT=1e3,WORKFLOW_RUN_STATUSES=[`pending`,`running`,`completed`,`failed`,`cancelled`];function createWorkflowApiResponse(e,t){return new Response(JSON.stringify(e),{headers:{"cache-control":`no-store`,"content-type":`application/json; charset=utf-8`},status:t})}function createWorkflowApiSuccessResponse(e){return createWorkflowApiResponse({ok:!0,...e},200)}function createWorkflowApiBadRequestResponse(e){return createWorkflowApiResponse({error:e,ok:!1},400)}function createWorkflowApiNotFoundResponse(e){return createWorkflowApiResponse({error:e,ok:!1},404)}function createWorkflowApiInternalErrorResponse(){return createWorkflowApiResponse({error:`Failed to load workflow data.`,ok:!1},500)}function isWorkflowRunStatus(e){return WORKFLOW_RUN_STATUSES.some(t=>t===e)}function parsePaginationFromSearchParams(e){let t={},n=e.get(`cursor`);typeof n==`string`&&n.length>0&&(t.cursor=n);let r=e.get(`limit`);if(r!==null){let e=Number.parseInt(r,10);if(!Number.isSafeInteger(e)||e<1||e>MAX_PAGE_LIMIT)return createWorkflowApiBadRequestResponse(`Expected "limit" to be an integer between 1 and ${MAX_PAGE_LIMIT}.`);t.limit=e}let i=e.get(`sortOrder`);if(i!==null){if(i!==`asc`&&i!==`desc`)return createWorkflowApiBadRequestResponse(`Expected "sortOrder" to be "asc" or "desc".`);t.sortOrder=i}return t}function parsePaginationQuery(e){let t=new URL(e.url).searchParams;return parsePaginationFromSearchParams(t)}function parseWorkflowRunsQuery(e){let t=new URL(e.url).searchParams,n=parsePaginationFromSearchParams(t);if(n instanceof Response)return n;let r={cursor:n.cursor,limit:n.limit,sortOrder:n.sortOrder},i=t.get(`status`);if(i!==null){if(!isWorkflowRunStatus(i))return createWorkflowApiBadRequestResponse(`Expected "status" to be one of: ${WORKFLOW_RUN_STATUSES.join(`, `)}.`);r.status=i}let a=t.get(`workflowName`);return typeof a==`string`&&a.length>0&&(r.workflowName=a),r}function resolveRunIdFromNitroEvent(e){let t=e.context?.params?.runId;if(typeof t==`string`&&t.length>0)return t;let n=new URL(e.req.url).pathname.match(/^\/ash\/v1\/runs\/([^/]+)(?:\/.*)?$/);if(n===null)return null;let r=n[1];if(typeof r!=`string`||r.length===0)return null;try{return decodeURIComponent(r)}catch{return null}}export{WORKFLOW_RUNS_API_ROUTE_PATH,WORKFLOW_RUN_EVENTS_ROUTE_PATTERN,WORKFLOW_RUN_ROUTE_PATTERN,WORKFLOW_RUN_STEPS_ROUTE_PATTERN,createWorkflowApiBadRequestResponse,createWorkflowApiInternalErrorResponse,createWorkflowApiNotFoundResponse,createWorkflowApiSuccessResponse,parsePaginationQuery,parseWorkflowRunsQuery,resolveRunIdFromNitroEvent};
|