eve 0.6.0-beta.9 → 0.7.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 +266 -0
- package/README.md +9 -6
- package/dist/docs/public/README.md +1 -1
- package/dist/docs/public/advanced/auth-and-route-protection.md +3 -1
- package/dist/docs/public/advanced/default-harness.md +2 -2
- package/dist/docs/public/advanced/dev-tui.md +9 -11
- package/dist/docs/public/advanced/instrumentation.md +1 -1
- package/dist/docs/public/advanced/meta.json +0 -1
- package/dist/docs/public/advanced/security-model.md +1 -1
- package/dist/docs/public/advanced/session-context.md +1 -1
- package/dist/docs/public/agent-config.md +1 -1
- package/dist/docs/public/channels/eve.mdx +1 -1
- package/dist/docs/public/channels/slack.mdx +14 -2
- package/dist/docs/public/connections.mdx +3 -1
- package/dist/docs/public/evals/assertions.mdx +108 -0
- package/dist/docs/public/evals/cases.mdx +143 -0
- package/dist/docs/public/evals/judge.mdx +94 -0
- package/dist/docs/public/evals/meta.json +4 -0
- package/dist/docs/public/evals/overview.mdx +118 -0
- package/dist/docs/public/evals/reporters.mdx +62 -0
- package/dist/docs/public/evals/running.mdx +63 -0
- package/dist/docs/public/evals/targets.mdx +54 -0
- package/dist/docs/public/frontend/nextjs.mdx +13 -4
- package/dist/docs/public/frontend/nuxt.mdx +4 -4
- package/dist/docs/public/frontend/sveltekit.mdx +2 -2
- package/dist/docs/public/getting-started.mdx +25 -13
- package/dist/docs/public/meta.json +1 -0
- package/dist/docs/public/reference/cli.md +34 -18
- package/dist/docs/public/reference/typescript-api.md +6 -2
- package/dist/docs/public/tools.mdx +0 -4
- package/dist/docs/public/tutorial/connect-a-warehouse.mdx +1 -1
- package/dist/docs/public/tutorial/first-agent.mdx +5 -2
- package/dist/src/chunks/{use-eve-agent-DCZbkLG7.js → use-eve-agent-DErQj5hs.js} +125 -37
- package/dist/src/chunks/{use-eve-agent-DoheC4_o.js → use-eve-agent-DoR8C4i6.js} +125 -37
- package/dist/src/cli/banner.d.ts +7 -0
- package/dist/src/cli/banner.js +1 -0
- package/dist/src/cli/commands/channel-add-conflicts.d.ts +1 -1
- package/dist/src/cli/commands/channels.d.ts +9 -6
- package/dist/src/cli/commands/channels.js +1 -1
- package/dist/src/cli/commands/deploy.d.ts +21 -0
- package/dist/src/cli/commands/deploy.js +1 -0
- package/dist/src/cli/commands/init-git.d.ts +15 -0
- package/dist/src/cli/commands/init-git.js +1 -0
- package/dist/src/cli/commands/init.d.ts +29 -0
- package/dist/src/cli/commands/init.js +1 -0
- package/dist/src/cli/commands/link.d.ts +21 -0
- package/dist/src/cli/commands/link.js +1 -0
- package/dist/src/cli/commands/preconditions.d.ts +7 -0
- package/dist/src/cli/commands/preconditions.js +1 -0
- package/dist/src/cli/commands/register-project-commands.d.ts +12 -0
- package/dist/src/cli/commands/register-project-commands.js +1 -0
- package/dist/src/cli/dev/tui/agent-header.d.ts +15 -9
- package/dist/src/cli/dev/tui/agent-header.js +1 -1
- package/dist/src/cli/dev/tui/blocks.d.ts +1 -1
- package/dist/src/cli/dev/tui/blocks.js +3 -2
- package/dist/src/cli/dev/tui/command-typeahead.d.ts +47 -0
- package/dist/src/cli/dev/tui/command-typeahead.js +1 -0
- package/dist/src/cli/dev/tui/dev-rebuild-status.d.ts +21 -0
- package/dist/src/cli/dev/tui/dev-rebuild-status.js +1 -0
- package/dist/src/cli/dev/tui/errors.d.ts +18 -0
- package/dist/src/cli/dev/tui/errors.js +1 -1
- package/dist/src/cli/dev/tui/prompt-command-handler.d.ts +14 -0
- package/dist/src/cli/dev/tui/prompt-command-handler.js +1 -0
- package/dist/src/cli/dev/tui/prompt-commands.d.ts +54 -0
- package/dist/src/cli/dev/tui/prompt-commands.js +2 -0
- package/dist/src/cli/dev/tui/runner.d.ts +62 -5
- package/dist/src/cli/dev/tui/runner.js +1 -1
- package/dist/src/cli/dev/tui/setup-commands.d.ts +48 -0
- package/dist/src/cli/dev/tui/setup-commands.js +2 -0
- package/dist/src/cli/dev/tui/setup-flow.d.ts +35 -0
- package/dist/src/cli/dev/tui/setup-issues.d.ts +40 -0
- package/dist/src/cli/dev/tui/setup-issues.js +1 -0
- package/dist/src/cli/dev/tui/setup-panel.d.ts +103 -0
- package/dist/src/cli/dev/tui/setup-panel.js +1 -0
- package/dist/src/cli/dev/tui/status-line.d.ts +25 -0
- package/dist/src/cli/dev/tui/status-line.js +1 -0
- package/dist/src/cli/dev/tui/stream-format.d.ts +16 -1
- package/dist/src/cli/dev/tui/stream-format.js +1 -1
- package/dist/src/cli/dev/tui/terminal-renderer.d.ts +32 -3
- package/dist/src/cli/dev/tui/terminal-renderer.js +5 -2
- package/dist/src/cli/dev/tui/test/index.d.ts +3 -1
- package/dist/src/cli/dev/tui/test/index.js +1 -1
- package/dist/src/cli/dev/tui/test/mock-terminal.d.ts +1 -0
- package/dist/src/cli/dev/tui/test/mock-terminal.js +1 -1
- package/dist/src/cli/dev/tui/theme.d.ts +10 -0
- package/dist/src/cli/dev/tui/theme.js +1 -1
- package/dist/src/cli/dev/tui/tui-prompter.d.ts +20 -0
- package/dist/src/cli/dev/tui/tui-prompter.js +1 -0
- package/dist/src/cli/dev/tui/tui.d.ts +6 -8
- package/dist/src/cli/dev/tui/tui.js +1 -1
- package/dist/src/cli/dev/tui/types.d.ts +4 -3
- package/dist/src/cli/dev/tui/vercel-status.d.ts +47 -0
- package/dist/src/cli/dev/tui/vercel-status.js +1 -0
- package/dist/src/cli/run.d.ts +9 -18
- package/dist/src/cli/run.js +2 -2
- package/dist/src/client/client.d.ts +8 -0
- package/dist/src/client/client.js +1 -1
- package/dist/src/client/file-parts.d.ts +18 -0
- package/dist/src/client/file-parts.js +1 -0
- package/dist/src/client/index.d.ts +3 -2
- package/dist/src/client/index.js +1 -1
- package/dist/src/client/message-response.js +1 -1
- package/dist/src/client/open-stream.d.ts +6 -0
- package/dist/src/client/open-stream.js +1 -1
- package/dist/src/client/session-utils.d.ts +5 -0
- package/dist/src/client/session-utils.js +1 -1
- package/dist/src/client/session.js +1 -1
- package/dist/src/client/types.d.ts +9 -2
- package/dist/src/compiled/.vendor-stamp.json +8 -8
- package/dist/src/compiled/@ai-sdk/anthropic/index.d.ts +56 -31
- package/dist/src/compiled/@ai-sdk/anthropic/index.js +2 -2
- package/dist/src/compiled/@ai-sdk/google/index.js +1 -1
- package/dist/src/compiled/@ai-sdk/mcp/index.js +1 -1
- package/dist/src/compiled/@ai-sdk/openai/index.d.ts +16 -9
- package/dist/src/compiled/@ai-sdk/openai/index.js +2 -2
- package/dist/src/compiled/@ai-sdk/otel/index.js +2 -2
- package/dist/src/compiled/@vercel/sandbox/index.js +1 -1
- package/dist/src/compiled/@workflow/core/index.js +2 -2
- package/dist/src/compiled/@workflow/core/runtime/helpers.d.ts +4 -2
- package/dist/src/compiled/@workflow/core/runtime/wait-until.d.ts +18 -0
- package/dist/src/compiled/@workflow/core/runtime.d.ts +3 -1
- package/dist/src/compiled/@workflow/core/runtime.js +28 -28
- package/dist/src/compiled/@workflow/core/serialization.d.ts +41 -0
- package/dist/src/compiled/@workflow/core/util.d.ts +0 -5
- package/dist/src/compiled/@workflow/core/version.d.ts +1 -1
- package/dist/src/compiled/@workflow/core/workflow.js +1 -1
- package/dist/src/compiled/@workflow/world/index.d.ts +2 -2
- package/dist/src/compiled/@workflow/world/queue.d.ts +28 -2
- package/dist/src/compiled/_chunks/workflow/{dist-gEXVSMPU.js → dist-CkMRLaRV.js} +1 -1
- package/dist/src/compiled/_chunks/workflow/functions-DuPjIvMH.js +1 -0
- package/dist/src/compiled/_chunks/workflow/resume-hook-CEAS3opc.js +12 -0
- package/dist/src/compiled/_chunks/workflow/sleep-Cup6vPoA.js +1 -0
- package/dist/src/compiled/_chunks/workflow/{symbols-BWCAoPHE.js → symbols-BUTtwS7j.js} +1 -1
- package/dist/src/compiled/just-bash/index.d.ts +4 -4
- package/dist/src/compiler/artifacts.js +1 -1
- package/dist/src/compiler/manifest.d.ts +8 -8
- package/dist/src/compiler/normalize-agent-config.js +1 -1
- package/dist/src/compiler/normalize-channel.d.ts +2 -1
- package/dist/src/compiler/normalize-channel.js +1 -1
- package/dist/src/compiler/normalize-connection.d.ts +2 -1
- package/dist/src/compiler/normalize-connection.js +1 -1
- package/dist/src/compiler/normalize-helpers.d.ts +5 -0
- package/dist/src/compiler/normalize-helpers.js +1 -1
- package/dist/src/compiler/normalize-instructions.d.ts +3 -2
- package/dist/src/compiler/normalize-instructions.js +1 -1
- package/dist/src/compiler/normalize-manifest.js +2 -2
- package/dist/src/compiler/normalize-sandbox.d.ts +2 -1
- package/dist/src/compiler/normalize-sandbox.js +1 -1
- package/dist/src/compiler/normalize-schedule.d.ts +2 -1
- package/dist/src/compiler/normalize-schedule.js +1 -1
- package/dist/src/compiler/normalize-skill.d.ts +2 -1
- package/dist/src/compiler/normalize-skill.js +1 -1
- package/dist/src/compiler/normalize-subagent.d.ts +4 -1
- package/dist/src/compiler/normalize-subagent.js +1 -1
- package/dist/src/compiler/normalize-tool.d.ts +2 -1
- package/dist/src/compiler/normalize-tool.js +1 -1
- package/dist/src/compiler/workspace-resources.js +1 -1
- package/dist/src/context/node.d.ts +1 -1
- package/dist/src/evals/assertions/collector.d.ts +43 -0
- package/dist/src/evals/assertions/collector.js +1 -0
- package/dist/src/evals/assertions/run.d.ts +72 -0
- package/dist/src/evals/assertions/run.js +2 -0
- package/dist/src/evals/autoevals-client.js +2 -0
- package/dist/src/evals/cli/eval-client.d.ts +22 -0
- package/dist/src/evals/cli/eval-client.js +1 -0
- package/dist/src/evals/cli/eval.d.ts +8 -5
- package/dist/src/evals/cli/eval.js +1 -1
- package/dist/src/evals/context.d.ts +19 -0
- package/dist/src/evals/context.js +1 -0
- package/dist/src/evals/define-eval-config.d.ts +16 -0
- package/dist/src/evals/define-eval-config.js +1 -0
- package/dist/src/evals/define-eval.d.ts +20 -0
- package/dist/src/evals/define-eval.js +1 -0
- package/dist/src/evals/expect/index.d.ts +25 -0
- package/dist/src/evals/expect/index.js +1 -0
- package/dist/src/evals/index.d.ts +6 -2
- package/dist/src/evals/index.js +1 -1
- package/dist/src/evals/judge.d.ts +20 -0
- package/dist/src/evals/judge.js +1 -0
- package/dist/src/evals/{checks/match.d.ts → match.d.ts} +17 -18
- package/dist/src/evals/match.js +1 -0
- package/dist/src/evals/reporters/index.d.ts +1 -0
- package/dist/src/evals/reporters/index.js +1 -1
- package/dist/src/evals/requirements.d.ts +3 -0
- package/dist/src/evals/requirements.js +1 -0
- package/dist/src/evals/runner/artifacts.d.ts +7 -6
- package/dist/src/evals/runner/artifacts.js +3 -3
- package/dist/src/evals/runner/discover.d.ts +31 -10
- package/dist/src/evals/runner/discover.js +1 -1
- package/dist/src/evals/runner/execute-eval.d.ts +25 -0
- package/dist/src/evals/runner/execute-eval.js +1 -0
- package/dist/src/evals/runner/execute-task.d.ts +31 -0
- package/dist/src/evals/runner/execute-task.js +1 -0
- package/dist/src/evals/runner/reporters/braintrust.d.ts +7 -5
- package/dist/src/evals/runner/reporters/braintrust.js +2 -2
- package/dist/src/evals/runner/reporters/console.d.ts +4 -4
- package/dist/src/evals/runner/reporters/console.js +1 -1
- package/dist/src/evals/runner/reporters/junit.d.ts +10 -0
- package/dist/src/evals/runner/reporters/junit.js +4 -0
- package/dist/src/evals/runner/reporters/types.d.ts +14 -8
- package/dist/src/evals/runner/run-evals.d.ts +38 -0
- package/dist/src/evals/runner/run-evals.js +1 -0
- package/dist/src/evals/runner/verdict.d.ts +10 -15
- package/dist/src/evals/runner/verdict.js +1 -1
- package/dist/src/evals/session.d.ts +52 -0
- package/dist/src/evals/session.js +1 -0
- package/dist/src/evals/target.d.ts +23 -0
- package/dist/src/evals/target.js +1 -0
- package/dist/src/evals/types.d.ts +294 -219
- package/dist/src/execution/compaction.d.ts +14 -0
- package/dist/src/execution/compaction.js +1 -0
- package/dist/src/execution/delegated-parent-notification.js +1 -1
- package/dist/src/execution/dispatch-runtime-actions-step.js +1 -1
- package/dist/src/execution/node-step.js +1 -1
- package/dist/src/execution/sandbox/bash-tool.d.ts +6 -6
- package/dist/src/execution/sandbox/bash-tool.js +1 -1
- package/dist/src/execution/sandbox/bindings/local.js +1 -1
- package/dist/src/execution/sandbox/glob-tool.js +3 -3
- package/dist/src/execution/sandbox/grep-tool.js +3 -3
- package/dist/src/execution/sandbox/read-file-tool.js +1 -1
- package/dist/src/execution/subagent-adapter.js +1 -1
- package/dist/src/execution/tool-auth.js +1 -1
- package/dist/src/execution/turn-workflow.js +1 -1
- package/dist/src/execution/workflow-runtime.d.ts +2 -2
- package/dist/src/execution/workflow-runtime.js +1 -1
- package/dist/src/execution/workflow-steps.js +1 -1
- package/dist/src/harness/action-result-helpers.js +1 -1
- package/dist/src/harness/authorization.d.ts +26 -0
- package/dist/src/harness/authorization.js +1 -1
- package/dist/src/harness/code-mode-lifecycle.js +1 -1
- package/dist/src/harness/emission.d.ts +12 -5
- package/dist/src/harness/emission.js +1 -1
- package/dist/src/harness/model-call-error.d.ts +35 -6
- package/dist/src/harness/model-call-error.js +1 -1
- package/dist/src/harness/step-hooks.d.ts +10 -4
- package/dist/src/harness/step-hooks.js +1 -1
- package/dist/src/harness/tool-loop.js +1 -1
- package/dist/src/harness/tools.d.ts +4 -6
- package/dist/src/harness/tools.js +1 -1
- package/dist/src/harness/turn-tag-state.d.ts +4 -0
- package/dist/src/harness/turn-tag-state.js +1 -1
- package/dist/src/harness/types.d.ts +4 -15
- package/dist/src/internal/application/cache-metadata.js +1 -1
- package/dist/src/internal/application/compiled-artifacts.js +1 -1
- package/dist/src/internal/application/package.js +1 -1
- package/dist/src/internal/application/paths.js +1 -1
- package/dist/src/internal/authored-definition/schema-backed.js +1 -1
- package/dist/src/internal/authored-module-loader.d.ts +4 -1
- package/dist/src/internal/authored-module-loader.js +2 -2
- package/dist/src/internal/authored-module-map-loader.js +1 -1
- package/dist/src/internal/nitro/dev-runtime-artifacts.js +1 -1
- package/dist/src/internal/nitro/host/build-application.js +1 -1
- package/dist/src/internal/nitro/host/build-vercel-agent-summary.js +1 -1
- package/dist/src/internal/nitro/host/configure-nitro-routes.js +3 -3
- package/dist/src/internal/nitro/host/create-application-nitro.js +1 -1
- package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +1 -1
- package/dist/src/internal/nitro/host/dev-watcher-log.d.ts +37 -0
- package/dist/src/internal/nitro/host/dev-watcher-log.js +1 -0
- package/dist/src/internal/nitro/host/ports.d.ts +8 -0
- package/dist/src/internal/nitro/host/ports.js +1 -0
- package/dist/src/internal/nitro/host/prepare-application-host.js +1 -1
- package/dist/src/internal/nitro/host/server-external-packages.d.ts +1 -1
- package/dist/src/internal/nitro/host/server-external-packages.js +1 -1
- package/dist/src/internal/nitro/host/start-development-server.js +1 -1
- package/dist/src/internal/nitro/host/start-production-server.js +1 -1
- package/dist/src/internal/nitro/routes/agent-info/build-agent-info-response-from-manifest.d.ts +5 -0
- package/dist/src/internal/nitro/routes/agent-info/build-agent-info-response-from-manifest.js +1 -0
- package/dist/src/internal/nitro/routes/agent-info/build-agent-info-response.d.ts +31 -2
- package/dist/src/internal/nitro/routes/agent-info/build-agent-info-response.js +1 -1
- package/dist/src/internal/nitro/routes/agent-info/load-agent-info-data.d.ts +13 -0
- package/dist/src/internal/nitro/routes/agent-info/load-agent-info-data.js +1 -1
- package/dist/src/internal/nitro/routes/info.d.ts +2 -2
- package/dist/src/internal/nitro/routes/info.js +1 -1
- package/dist/src/internal/workflow/queue-namespace.d.ts +5 -0
- package/dist/src/internal/workflow/queue-namespace.js +1 -0
- package/dist/src/internal/workflow-bundle/builder-support.js +2 -2
- package/dist/src/internal/workflow-bundle/builder.js +3 -5
- package/dist/src/internal/workflow-bundle/vercel-workflow-output.js +1 -1
- package/dist/src/internal/workflow-bundle/workflow-builders.d.ts +1 -1
- package/dist/src/internal/workflow-bundle/workflow-builders.js +1 -1
- package/dist/src/node_modules/.pnpm/@clack_core@1.3.1/node_modules/@clack/core/dist/index.js +4 -4
- package/dist/src/protocol/message.d.ts +15 -0
- package/dist/src/protocol/message.js +2 -2
- package/dist/src/public/channels/slack/api.d.ts +8 -0
- package/dist/src/public/channels/slack/api.js +1 -1
- package/dist/src/public/channels/slack/connections.d.ts +26 -18
- package/dist/src/public/channels/slack/connections.js +1 -1
- package/dist/src/public/channels/slack/defaults.d.ts +5 -2
- package/dist/src/public/channels/slack/defaults.js +1 -1
- package/dist/src/public/channels/slack/index.d.ts +1 -1
- package/dist/src/public/channels/slack/slackChannel.d.ts +65 -5
- package/dist/src/public/channels/slack/slackChannel.js +1 -1
- package/dist/src/public/channels/teams/defaults.js +1 -1
- package/dist/src/public/connections/errors.d.ts +8 -0
- package/dist/src/public/definitions/tool.d.ts +0 -33
- package/dist/src/public/next/index.d.ts +7 -1
- package/dist/src/public/next/index.js +1 -1
- package/dist/src/public/next/server.d.ts +1 -0
- package/dist/src/public/next/server.js +1 -1
- package/dist/src/public/nuxt/dev-server.js +1 -1
- package/dist/src/public/sveltekit/dev-server.js +1 -1
- package/dist/src/public/sveltekit/index.d.ts +1 -1
- package/dist/src/public/tools/defaults.d.ts +2 -4
- package/dist/src/public/tools/defaults.js +1 -1
- package/dist/src/public/tools/define-bash-tool.d.ts +3 -3
- package/dist/src/public/tools/define-bash-tool.js +1 -1
- package/dist/src/public/tools/define-read-file-tool.d.ts +0 -6
- package/dist/src/public/tools/define-read-file-tool.js +1 -1
- package/dist/src/public/tools/index.d.ts +2 -2
- package/dist/src/public/tools/index.js +1 -1
- package/dist/src/public/tools/internal.js +1 -1
- package/dist/src/runtime/actions/types.d.ts +11 -11
- package/dist/src/runtime/agent/mock-model-adapter.js +1 -1
- package/dist/src/runtime/agent/mock-model-fixtures.js +3 -2
- package/dist/src/runtime/agent/mock-model-skill-selection.js +3 -4
- package/dist/src/runtime/connections/callback-route.js +1 -1
- package/dist/src/runtime/connections/mcp-client.js +1 -1
- package/dist/src/runtime/connections/scoped-authorization.d.ts +21 -5
- package/dist/src/runtime/connections/scoped-authorization.js +1 -1
- package/dist/src/runtime/connections/types.d.ts +33 -0
- package/dist/src/runtime/connections/validate-authorization.js +1 -1
- package/dist/src/runtime/framework-tools/bash.d.ts +3 -3
- package/dist/src/runtime/framework-tools/bash.js +1 -1
- package/dist/src/runtime/framework-tools/connection-search-dynamic.d.ts +1 -1
- package/dist/src/runtime/framework-tools/connection-search-dynamic.js +1 -1
- package/dist/src/runtime/framework-tools/file-state.d.ts +3 -3
- package/dist/src/runtime/framework-tools/index.js +1 -1
- package/dist/src/runtime/framework-tools/read-file.js +2 -2
- package/dist/src/runtime/framework-tools/todo.d.ts +7 -0
- package/dist/src/runtime/framework-tools/todo.js +2 -2
- package/dist/src/runtime/governance/auth/http-basic.js +1 -1
- package/dist/src/runtime/input/types.d.ts +1 -1
- package/dist/src/runtime/resolve-tool.d.ts +2 -2
- package/dist/src/runtime/resolve-tool.js +1 -1
- package/dist/src/runtime/sandbox/keys.js +1 -1
- package/dist/src/runtime/session-callback-route.js +1 -1
- package/dist/src/runtime/types.d.ts +1 -7
- package/dist/src/services/dev-client/client-options.d.ts +8 -0
- package/dist/src/services/dev-client/client-options.js +1 -0
- package/dist/src/services/dev-client/runtime-artifacts.d.ts +13 -0
- package/dist/src/services/dev-client/runtime-artifacts.js +1 -0
- package/dist/src/services/dev-client.d.ts +13 -46
- package/dist/src/services/dev-client.js +1 -1
- package/dist/src/setup/ask.d.ts +205 -0
- package/dist/src/setup/ask.js +1 -0
- package/dist/src/setup/boxes/add-channels.d.ts +100 -16
- package/dist/src/setup/boxes/add-channels.js +2 -1
- package/dist/src/setup/boxes/add-connections.d.ts +13 -23
- package/dist/src/setup/boxes/add-connections.js +1 -1
- package/dist/src/setup/boxes/apply-ai-gateway-credential.d.ts +2 -2
- package/dist/src/setup/boxes/apply-ai-gateway-credential.js +1 -1
- package/dist/src/setup/boxes/deploy-project.d.ts +46 -14
- package/dist/src/setup/boxes/deploy-project.js +1 -1
- package/dist/src/setup/boxes/detect-ai-gateway.d.ts +10 -3
- package/dist/src/setup/boxes/detect-ai-gateway.js +1 -1
- package/dist/src/setup/boxes/link-project.d.ts +3 -3
- package/dist/src/setup/boxes/link-project.js +1 -1
- package/dist/src/setup/boxes/one-shot-next-steps.d.ts +18 -0
- package/dist/src/setup/boxes/one-shot-next-steps.js +2 -0
- package/dist/src/setup/boxes/preflight.d.ts +14 -6
- package/dist/src/setup/boxes/preflight.js +1 -1
- package/dist/src/setup/boxes/resolve-provisioning.d.ts +36 -8
- package/dist/src/setup/boxes/resolve-provisioning.js +1 -1
- package/dist/src/setup/boxes/resolve-target.d.ts +25 -8
- package/dist/src/setup/boxes/resolve-target.js +1 -1
- package/dist/src/setup/boxes/scaffold.d.ts +12 -6
- package/dist/src/setup/boxes/scaffold.js +1 -1
- package/dist/src/setup/boxes/select-channels.d.ts +38 -9
- package/dist/src/setup/boxes/select-channels.js +1 -1
- package/dist/src/setup/boxes/select-chat.d.ts +15 -11
- package/dist/src/setup/boxes/select-chat.js +1 -1
- package/dist/src/setup/boxes/select-connections.d.ts +30 -0
- package/dist/src/setup/boxes/select-connections.js +1 -0
- package/dist/src/setup/boxes/select-model.d.ts +18 -14
- package/dist/src/setup/boxes/select-model.js +1 -1
- package/dist/src/setup/boxes/select-setup-mode.d.ts +32 -0
- package/dist/src/setup/boxes/select-setup-mode.js +1 -0
- package/dist/src/setup/channel-add-conflicts.d.ts +28 -0
- package/dist/src/setup/channel-add-conflicts.js +1 -0
- package/dist/src/setup/cli/channel-setup-prompter.d.ts +23 -0
- package/dist/src/setup/cli/channel-setup-prompter.js +1 -0
- package/dist/src/setup/cli/connection-add-prompter.d.ts +8 -0
- package/dist/src/setup/cli/connection-add-prompter.js +1 -0
- package/dist/src/setup/{scaffold/cli → cli}/index.d.ts +4 -3
- package/dist/src/setup/cli/index.js +1 -0
- package/dist/src/setup/{scaffold/cli → cli}/prompt-ui.d.ts +39 -15
- package/dist/src/setup/cli/prompt-ui.js +5 -0
- package/dist/src/setup/{scaffold/cli → cli}/rail-log.d.ts +2 -0
- package/dist/src/setup/{scaffold/cli → cli}/rail-log.js +2 -2
- package/dist/src/setup/{scaffold/cli → cli}/select-component.d.ts +18 -3
- package/dist/src/setup/cli/select-component.js +1 -0
- package/dist/src/setup/cli/select-option-codec.d.ts +12 -0
- package/dist/src/setup/cli/select-option-codec.js +1 -0
- package/dist/src/setup/{scaffold/cli → cli}/select-state.d.ts +13 -1
- package/dist/src/setup/cli/select-state.js +1 -0
- package/dist/src/setup/cli/whimsy.d.ts +16 -0
- package/dist/src/setup/cli/whimsy.js +1 -0
- package/dist/src/setup/{scaffold/steps/setup-connection.d.ts → connection-connector.d.ts} +3 -2
- package/dist/src/setup/connection-connector.js +1 -0
- package/dist/src/setup/flows/channels.d.ts +43 -0
- package/dist/src/setup/flows/channels.js +1 -0
- package/dist/src/setup/flows/deploy.d.ts +40 -0
- package/dist/src/setup/flows/deploy.js +1 -0
- package/dist/src/setup/flows/in-project.d.ts +16 -0
- package/dist/src/setup/flows/in-project.js +1 -0
- package/dist/src/setup/flows/link.d.ts +43 -0
- package/dist/src/setup/flows/link.js +1 -0
- package/dist/src/setup/flows/model.d.ts +112 -0
- package/dist/src/setup/flows/model.js +1 -0
- package/dist/src/setup/flows/vercel.d.ts +31 -0
- package/dist/src/setup/flows/vercel.js +2 -0
- package/dist/src/setup/gateway-models.js +1 -1
- package/dist/src/setup/headless.d.ts +1 -1
- package/dist/src/setup/index.d.ts +10 -4
- package/dist/src/setup/index.js +1 -1
- package/dist/src/setup/onboarding.d.ts +7 -4
- package/dist/src/setup/onboarding.js +1 -1
- package/dist/src/setup/package-manager.d.ts +27 -0
- package/dist/src/setup/package-manager.js +1 -0
- package/dist/src/setup/primitives/index.d.ts +3 -0
- package/dist/src/setup/primitives/index.js +1 -0
- package/dist/src/setup/primitives/pm/bun.d.ts +10 -0
- package/dist/src/setup/primitives/pm/bun.js +1 -0
- package/dist/src/setup/primitives/pm/index.d.ts +11 -0
- package/dist/src/setup/primitives/pm/index.js +1 -0
- package/dist/src/setup/primitives/pm/npm.d.ts +10 -0
- package/dist/src/setup/primitives/pm/npm.js +1 -0
- package/dist/src/setup/primitives/pm/pnpm.d.ts +27 -0
- package/dist/src/setup/primitives/pm/pnpm.js +8 -0
- package/dist/src/setup/primitives/pm/run.d.ts +23 -0
- package/dist/src/setup/primitives/pm/run.js +1 -0
- package/dist/src/setup/primitives/pm/shared.d.ts +8 -0
- package/dist/src/setup/primitives/pm/shared.js +1 -0
- package/dist/src/setup/primitives/pm/types.d.ts +37 -0
- package/dist/src/setup/primitives/pm/types.js +1 -0
- package/dist/src/setup/primitives/pm/yarn.d.ts +10 -0
- package/dist/src/setup/primitives/pm/yarn.js +1 -0
- package/dist/src/setup/primitives/run-pnpm.d.ts +1 -0
- package/dist/src/setup/primitives/run-pnpm.js +1 -0
- package/dist/src/setup/{scaffold/primitives → primitives}/run-vercel.d.ts +7 -0
- package/dist/src/setup/primitives/run-vercel.js +1 -0
- package/dist/src/setup/project-name.d.ts +4 -0
- package/dist/src/setup/project-name.js +1 -0
- package/dist/src/setup/project-resolution.d.ts +54 -0
- package/dist/src/setup/project-resolution.js +1 -0
- package/dist/src/setup/prompter.d.ts +52 -4
- package/dist/src/setup/prompter.js +1 -1
- package/dist/src/setup/quit-guard.d.ts +1 -1
- package/dist/src/setup/run-vercel-link.d.ts +1 -1
- package/dist/src/setup/run-vercel-link.js +1 -1
- package/dist/src/setup/runner.d.ts +5 -4
- package/dist/src/setup/runner.js +1 -1
- package/dist/src/setup/scaffold/channels-catalog.d.ts +3 -3
- package/dist/src/setup/scaffold/channels-catalog.js +1 -1
- package/dist/src/setup/scaffold/create/add-to-project.d.ts +26 -0
- package/dist/src/setup/scaffold/create/add-to-project.js +1 -0
- package/dist/src/setup/scaffold/create/project.d.ts +54 -0
- package/dist/src/setup/scaffold/create/project.js +80 -0
- package/dist/src/setup/scaffold/index.d.ts +4 -4
- package/dist/src/setup/scaffold/index.js +1 -1
- package/dist/src/setup/scaffold/{channels.d.ts → update/channels.d.ts} +11 -0
- package/dist/src/setup/scaffold/update/channels.js +7 -0
- package/dist/src/setup/scaffold/{connections.d.ts → update/connections.d.ts} +1 -1
- package/dist/src/setup/scaffold/update/connections.js +21 -0
- package/dist/src/setup/scaffold/version-tokens.d.ts +11 -0
- package/dist/src/setup/scaffold/version-tokens.js +1 -0
- package/dist/src/setup/{scaffold/steps/setup-slackbot.d.ts → slackbot.d.ts} +24 -20
- package/dist/src/setup/slackbot.js +1 -0
- package/dist/src/setup/state.d.ts +62 -15
- package/dist/src/setup/state.js +1 -1
- package/dist/src/setup/step.d.ts +9 -18
- package/dist/src/setup/vercel-project.d.ts +15 -8
- package/dist/src/setup/vercel-project.js +1 -1
- package/dist/src/shared/agent-definition.d.ts +5 -3
- package/dist/src/shared/default-agent-model.d.ts +5 -0
- package/dist/src/shared/default-agent-model.js +1 -0
- package/dist/src/source-change/apply-model-name.d.ts +25 -0
- package/dist/src/source-change/apply-model-name.js +2 -0
- package/dist/src/source-change/static-source-change.d.ts +36 -0
- package/dist/src/source-change/static-source-change.js +1 -0
- package/dist/src/svelte/index.js +1 -1
- package/dist/src/svelte/use-eve-agent.js +1 -1
- package/dist/src/vue/index.js +1 -1
- package/dist/src/vue/use-eve-agent.js +1 -1
- package/package.json +22 -42
- package/dist/docs/evals-v2-plan.md +0 -939
- package/dist/docs/public/advanced/evals.md +0 -158
- package/dist/src/cli/commands/setup.d.ts +0 -55
- package/dist/src/cli/commands/setup.js +0 -1
- package/dist/src/cli/dev/repl/input-requests.d.ts +0 -38
- package/dist/src/cli/dev/repl/input-requests.js +0 -1
- package/dist/src/cli/dev/repl/input.d.ts +0 -19
- package/dist/src/cli/dev/repl/input.js +0 -1
- package/dist/src/cli/dev/repl/repl.d.ts +0 -62
- package/dist/src/cli/dev/repl/repl.js +0 -2
- package/dist/src/cli/dev/repl/terminal.d.ts +0 -21
- package/dist/src/cli/dev/repl/terminal.js +0 -5
- package/dist/src/compiled/_chunks/workflow/resume-hook-0Zk0zSvq.js +0 -12
- package/dist/src/compiled/_chunks/workflow/sleep-DXZr2BgM.js +0 -1
- package/dist/src/evals/checks/checks.d.ts +0 -66
- package/dist/src/evals/checks/checks.js +0 -2
- package/dist/src/evals/checks/index.d.ts +0 -21
- package/dist/src/evals/checks/index.js +0 -1
- package/dist/src/evals/checks/match.js +0 -1
- package/dist/src/evals/define-eval-suite.d.ts +0 -18
- package/dist/src/evals/define-eval-suite.js +0 -1
- package/dist/src/evals/runner/execute-case.d.ts +0 -23
- package/dist/src/evals/runner/execute-case.js +0 -1
- package/dist/src/evals/runner/execute-suite.d.ts +0 -24
- package/dist/src/evals/runner/execute-suite.js +0 -1
- package/dist/src/evals/scorers/autoevals-client.js +0 -2
- package/dist/src/evals/scorers/autoevals.d.ts +0 -58
- package/dist/src/evals/scorers/autoevals.js +0 -1
- package/dist/src/evals/scorers/json.d.ts +0 -10
- package/dist/src/evals/scorers/json.js +0 -1
- package/dist/src/evals/scorers/model-marker.d.ts +0 -12
- package/dist/src/evals/scorers/model-marker.js +0 -1
- package/dist/src/evals/scorers/run.d.ts +0 -24
- package/dist/src/evals/scorers/run.js +0 -1
- package/dist/src/evals/scorers/sql.d.ts +0 -9
- package/dist/src/evals/scorers/sql.js +0 -1
- package/dist/src/evals/scorers/text.d.ts +0 -18
- package/dist/src/evals/scorers/text.js +0 -1
- package/dist/src/evals/scores/index.d.ts +0 -72
- package/dist/src/evals/scores/index.js +0 -1
- package/dist/src/execution/tool-compaction.d.ts +0 -9
- package/dist/src/execution/tool-compaction.js +0 -1
- package/dist/src/services/dev-client/stream.d.ts +0 -5
- package/dist/src/services/dev-client/stream.js +0 -1
- package/dist/src/services/dev-client/url.d.ts +0 -11
- package/dist/src/services/dev-client/url.js +0 -1
- package/dist/src/setup/channel-setup-prompter.d.ts +0 -8
- package/dist/src/setup/channel-setup-prompter.js +0 -1
- package/dist/src/setup/scaffold/channels.js +0 -7
- package/dist/src/setup/scaffold/cli/channel-add-prompter.d.ts +0 -12
- package/dist/src/setup/scaffold/cli/channel-add-prompter.js +0 -1
- package/dist/src/setup/scaffold/cli/channel-setup-prompter.d.ts +0 -56
- package/dist/src/setup/scaffold/cli/connection-add-prompter.d.ts +0 -44
- package/dist/src/setup/scaffold/cli/connection-add-prompter.js +0 -1
- package/dist/src/setup/scaffold/cli/index.js +0 -1
- package/dist/src/setup/scaffold/cli/prompt-ui.js +0 -5
- package/dist/src/setup/scaffold/cli/select-component.js +0 -1
- package/dist/src/setup/scaffold/cli/select-state.js +0 -1
- package/dist/src/setup/scaffold/connections.js +0 -21
- package/dist/src/setup/scaffold/pnpm-workspace.d.ts +0 -3
- package/dist/src/setup/scaffold/pnpm-workspace.js +0 -11
- package/dist/src/setup/scaffold/primitives/detect-deployment.d.ts +0 -13
- package/dist/src/setup/scaffold/primitives/detect-deployment.js +0 -1
- package/dist/src/setup/scaffold/primitives/index.d.ts +0 -3
- package/dist/src/setup/scaffold/primitives/index.js +0 -1
- package/dist/src/setup/scaffold/primitives/pnpm-invocation.d.ts +0 -12
- package/dist/src/setup/scaffold/primitives/pnpm-invocation.js +0 -1
- package/dist/src/setup/scaffold/primitives/run-pnpm.d.ts +0 -17
- package/dist/src/setup/scaffold/primitives/run-pnpm.js +0 -1
- package/dist/src/setup/scaffold/primitives/run-vercel.js +0 -1
- package/dist/src/setup/scaffold/project.d.ts +0 -21
- package/dist/src/setup/scaffold/project.js +0 -80
- package/dist/src/setup/scaffold/steps/deploy-to-vercel.d.ts +0 -17
- package/dist/src/setup/scaffold/steps/deploy-to-vercel.js +0 -1
- package/dist/src/setup/scaffold/steps/index.d.ts +0 -4
- package/dist/src/setup/scaffold/steps/index.js +0 -1
- package/dist/src/setup/scaffold/steps/project-resolution.d.ts +0 -19
- package/dist/src/setup/scaffold/steps/project-resolution.js +0 -1
- package/dist/src/setup/scaffold/steps/run-add-connection.d.ts +0 -40
- package/dist/src/setup/scaffold/steps/run-add-connection.js +0 -1
- package/dist/src/setup/scaffold/steps/run-add-to-agent.d.ts +0 -81
- package/dist/src/setup/scaffold/steps/run-add-to-agent.js +0 -2
- package/dist/src/setup/scaffold/steps/setup-connection.js +0 -1
- package/dist/src/setup/scaffold/steps/setup-slackbot.js +0 -1
- /package/dist/src/{setup/scaffold/cli/channel-setup-prompter.js → cli/dev/tui/setup-flow.js} +0 -0
- /package/dist/src/evals/{scorers/autoevals-client.d.ts → autoevals-client.d.ts} +0 -0
- /package/dist/src/setup/{scaffold/cli → cli}/command-output.d.ts +0 -0
- /package/dist/src/setup/{scaffold/cli → cli}/command-output.js +0 -0
- /package/dist/src/setup/{scaffold/human-action.d.ts → human-action.d.ts} +0 -0
- /package/dist/src/setup/{scaffold/human-action.js → human-action.js} +0 -0
- /package/dist/src/setup/{scaffold/primitives → primitives}/process-output.d.ts +0 -0
- /package/dist/src/setup/{scaffold/primitives → primitives}/process-output.js +0 -0
- /package/dist/src/setup/scaffold/{web-template.d.ts → create/web-template.d.ts} +0 -0
- /package/dist/src/setup/scaffold/{web-template.js → create/web-template.js} +0 -0
- /package/dist/src/setup/scaffold/{module-files.d.ts → update/module-files.d.ts} +0 -0
- /package/dist/src/setup/scaffold/{module-files.js → update/module-files.js} +0 -0
- /package/dist/src/setup/scaffold/{package-json.d.ts → update/package-json.d.ts} +0 -0
- /package/dist/src/setup/scaffold/{package-json.js → update/package-json.js} +0 -0
- /package/dist/src/setup/scaffold/{primitives → update}/update-connection-connector.d.ts +0 -0
- /package/dist/src/setup/scaffold/{primitives → update}/update-connection-connector.js +0 -0
- /package/dist/src/setup/scaffold/{primitives → update}/update-slack-channel.d.ts +0 -0
- /package/dist/src/setup/scaffold/{primitives → update}/update-slack-channel.js +0 -0
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import{i as e,n as t,t as n}from"./chunk-DSjMdhoD.js";import{a as r,c as i,i as a,l as o,o as s,s as c,u as l}from"./dist-D0jyrm7a.js";import{E as u,T as d,a as f,c as p,d as m,f as h,i as g,n as _,o as v,s as y,w as b}from"./dist-6a3viBXZ.js";import{C as x,a as S,c as C,d as w,dt as T,f as ee,ft as te,i as E,k as ne,l as re,mt as ie,n as ae,o as oe,pt as se,r as ce,s as D,t as O,u as le,ut as ue,x as de}from"./symbols-BWCAoPHE.js";import{getStepFunction as fe}from"../../@workflow/core/private.js";import{types as pe}from"node:util";import{AsyncLocalStorage as me}from"node:async_hooks";var he=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{CITY_HEADER_NAME:()=>u,COUNTRY_HEADER_NAME:()=>d,EMOJI_FLAG_UNICODE_STARTING_POSITION:()=>v,IP_HEADER_NAME:()=>f,LATITUDE_HEADER_NAME:()=>p,LONGITUDE_HEADER_NAME:()=>m,POSTAL_CODE_HEADER_NAME:()=>g,REGION_HEADER_NAME:()=>h,REQUEST_ID_HEADER_NAME:()=>_,geolocation:()=>w,ipAddress:()=>S}),t.exports=c(l);let u=`x-vercel-ip-city`,d=`x-vercel-ip-country`,f=`x-real-ip`,p=`x-vercel-ip-latitude`,m=`x-vercel-ip-longitude`,h=`x-vercel-ip-country-region`,g=`x-vercel-ip-postal-code`,_=`x-vercel-id`,v=127397;function y(e,t){return e.get(t)??void 0}function b(e,t){let n=y(e.headers,t);return n?decodeURIComponent(n):void 0}function x(e){let t=RegExp(`^[A-Z]{2}$`).test(e);if(!(!e||!t))return String.fromCodePoint(...e.split(``).map(e=>v+e.charCodeAt(0)))}function S(e){return y(`headers`in e?e.headers:e,f)}function C(e){return e?e.split(`:`)[0]:`dev1`}function w(e){return{city:b(e,u),country:y(e.headers,d),flag:x(y(e.headers,d)),countryRegion:y(e.headers,h),region:C(y(e.headers,_)),latitude:y(e.headers,p),longitude:y(e.headers,m),postalCode:y(e.headers,g)}}0&&(t.exports={CITY_HEADER_NAME:u,COUNTRY_HEADER_NAME:d,EMOJI_FLAG_UNICODE_STARTING_POSITION:v,IP_HEADER_NAME:f,LATITUDE_HEADER_NAME:p,LONGITUDE_HEADER_NAME:m,POSTAL_CODE_HEADER_NAME:g,REGION_HEADER_NAME:h,REQUEST_ID_HEADER_NAME:_,geolocation:w,ipAddress:S})})),ge=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{getEnv:()=>u}),t.exports=c(l);let u=(e=process.env)=>({VERCEL:d(e,`VERCEL`),CI:d(e,`CI`),VERCEL_ENV:d(e,`VERCEL_ENV`),VERCEL_URL:d(e,`VERCEL_URL`),VERCEL_BRANCH_URL:d(e,`VERCEL_BRANCH_URL`),VERCEL_PROJECT_PRODUCTION_URL:d(e,`VERCEL_PROJECT_PRODUCTION_URL`),VERCEL_REGION:d(e,`VERCEL_REGION`),VERCEL_DEPLOYMENT_ID:d(e,`VERCEL_DEPLOYMENT_ID`),VERCEL_SKEW_PROTECTION_ENABLED:d(e,`VERCEL_SKEW_PROTECTION_ENABLED`),VERCEL_AUTOMATION_BYPASS_SECRET:d(e,`VERCEL_AUTOMATION_BYPASS_SECRET`),VERCEL_GIT_PROVIDER:d(e,`VERCEL_GIT_PROVIDER`),VERCEL_GIT_REPO_SLUG:d(e,`VERCEL_GIT_REPO_SLUG`),VERCEL_GIT_REPO_OWNER:d(e,`VERCEL_GIT_REPO_OWNER`),VERCEL_GIT_REPO_ID:d(e,`VERCEL_GIT_REPO_ID`),VERCEL_GIT_COMMIT_REF:d(e,`VERCEL_GIT_COMMIT_REF`),VERCEL_GIT_COMMIT_SHA:d(e,`VERCEL_GIT_COMMIT_SHA`),VERCEL_GIT_COMMIT_MESSAGE:d(e,`VERCEL_GIT_COMMIT_MESSAGE`),VERCEL_GIT_COMMIT_AUTHOR_LOGIN:d(e,`VERCEL_GIT_COMMIT_AUTHOR_LOGIN`),VERCEL_GIT_COMMIT_AUTHOR_NAME:d(e,`VERCEL_GIT_COMMIT_AUTHOR_NAME`),VERCEL_GIT_PREVIOUS_SHA:d(e,`VERCEL_GIT_PREVIOUS_SHA`),VERCEL_GIT_PULL_REQUEST_ID:d(e,`VERCEL_GIT_PULL_REQUEST_ID`)}),d=(e,t)=>{let n=e[t];return n===``?void 0:n};0&&(t.exports={getEnv:u})})),_e=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{SYMBOL_FOR_REQ_CONTEXT:()=>u,getContext:()=>d}),t.exports=c(l);let u=Symbol.for(`@vercel/request-context`);function d(){return globalThis[u]?.get?.()??{}}0&&(t.exports={SYMBOL_FOR_REQ_CONTEXT:u,getContext:d})})),ve=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{waitUntil:()=>d}),t.exports=c(l);var u=_e();let d=e=>{if(typeof e!=`object`||!e||typeof e.then!=`function`)throw TypeError(`waitUntil can only be called with a Promise, got ${typeof e}`);return(0,u.getContext)().waitUntil?.(e)};0&&(t.exports={waitUntil:d})})),ye=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{next:()=>f,rewrite:()=>d}),t.exports=c(l);function u(e,t){if(e?.request?.headers){if(!(e.request.headers instanceof Headers))throw Error(`request.headers must be an instance of Headers`);let n=[];for(let[r,i]of e.request.headers)t.set(`x-middleware-request-`+r,i),n.push(r);t.set(`x-middleware-override-headers`,n.join(`,`))}}function d(e,t){let n=new Headers(t?.headers??{});return n.set(`x-middleware-rewrite`,String(e)),u(t,n),new Response(null,{...t,headers:n})}function f(e){let t=new Headers(e?.headers??{});return t.set(`x-middleware-next`,`1`),u(e,t),new Response(null,{...e,headers:t})}0&&(t.exports={next:f,rewrite:d})})),be=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{InMemoryCache:()=>u}),t.exports=c(l);var u=class{constructor(){this.cache={}}async get(e){let t=this.cache[e];return t?t.ttl&&t.lastModified+t.ttl*1e3<Date.now()?(await this.delete(e),null):JSON.parse(t.value):null}async set(e,t,n){let r=JSON.stringify(t??null);this.cache[e]={value:r,lastModified:Date.now(),ttl:n?.ttl,tags:new Set(n?.tags||[])}}async delete(e){delete this.cache[e]}async expireTag(e){let t=Array.isArray(e)?e:[e];for(let e in this.cache)if(Object.prototype.hasOwnProperty.call(this.cache,e)){let n=this.cache[e];t.some(e=>n.tags.has(e))&&delete this.cache[e]}}};0&&(t.exports={InMemoryCache:u})})),xe=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{BuildCache:()=>d}),t.exports=c(l);var u=Se(),d=class{constructor({endpoint:e,headers:t,onError:n,timeout:r=500}){this.get=async e=>{let t=new AbortController,n=setTimeout(()=>t.abort(),this.timeout);try{let r=await fetch(`${this.endpoint}${e}`,{headers:this.headers,method:`GET`,signal:t.signal});if(r.status===404)return clearTimeout(n),null;if(r.status===200){if(r.headers.get(u.HEADERS_VERCEL_CACHE_STATE)!==u.PkgCacheState.Fresh)return r.body?.cancel?.(),clearTimeout(n),null;let e=await r.json();return clearTimeout(n),e}else throw clearTimeout(n),Error(`Failed to get cache: ${r.statusText}`)}catch(e){if(clearTimeout(n),e.name===`AbortError`){let t=Error(`Cache request timed out after ${this.timeout}ms`);t.stack=e.stack,this.onError?.(t)}else this.onError?.(e);return null}},this.set=async(e,t,n)=>{let r=new AbortController,i=setTimeout(()=>r.abort(),this.timeout);try{let a={};n?.ttl&&(a[u.HEADERS_VERCEL_REVALIDATE]=n.ttl.toString()),n?.tags&&n.tags.length>0&&(a[u.HEADERS_VERCEL_CACHE_TAGS]=n.tags.join(`,`)),n?.name&&(a[u.HEADERS_VERCEL_CACHE_ITEM_NAME]=n.name);let o=await fetch(`${this.endpoint}${e}`,{method:`POST`,headers:{...this.headers,...a},body:JSON.stringify(t),signal:r.signal});if(clearTimeout(i),o.status!==200)throw Error(`Failed to set cache: ${o.status} ${o.statusText}`)}catch(e){if(clearTimeout(i),e.name===`AbortError`){let t=Error(`Cache request timed out after ${this.timeout}ms`);t.stack=e.stack,this.onError?.(t)}else this.onError?.(e)}},this.delete=async e=>{let t=new AbortController,n=setTimeout(()=>t.abort(),this.timeout);try{let r=await fetch(`${this.endpoint}${e}`,{method:`DELETE`,headers:this.headers,signal:t.signal});if(clearTimeout(n),r.status!==200)throw Error(`Failed to delete cache: ${r.statusText}`)}catch(e){if(clearTimeout(n),e.name===`AbortError`){let t=Error(`Cache request timed out after ${this.timeout}ms`);t.stack=e.stack,this.onError?.(t)}else this.onError?.(e)}},this.expireTag=async e=>{let t=new AbortController,n=setTimeout(()=>t.abort(),this.timeout);try{Array.isArray(e)&&(e=e.join(`,`));let r=await fetch(`${this.endpoint}revalidate?tags=${e}`,{method:`POST`,headers:this.headers,signal:t.signal});if(clearTimeout(n),r.status!==200)throw Error(`Failed to revalidate tag: ${r.statusText}`)}catch(e){if(clearTimeout(n),e.name===`AbortError`){let t=Error(`Cache request timed out after ${this.timeout}ms`);t.stack=e.stack,this.onError?.(t)}else this.onError?.(e)}},this.endpoint=e,this.headers=t,this.onError=n,this.timeout=r}};0&&(t.exports={BuildCache:d})})),Se=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{HEADERS_VERCEL_CACHE_ITEM_NAME:()=>T,HEADERS_VERCEL_CACHE_STATE:()=>S,HEADERS_VERCEL_CACHE_TAGS:()=>w,HEADERS_VERCEL_REVALIDATE:()=>C,PkgCacheState:()=>x,getCache:()=>g}),t.exports=c(l);var u=_e(),d=be(),f=xe();let p=e=>{let t=5381;for(let n=0;n<e.length;n++)t=t*33^e.charCodeAt(n);return(t>>>0).toString(16)},m=null,h=null,g=e=>v(()=>{let e;return e=(0,u.getContext)().cache?(0,u.getContext)().cache:b(process.env.SUSPENSE_CACHE_DEBUG===`true`),e},_(e));function _(e){let t=e?.keyHashFunction||p;return n=>{if(!e?.namespace)return t(n);let r=e.namespaceSeparator||`$`;return`${e.namespace}${r}${t(n)}`}}function v(e,t){return{get:n=>e().get(t(n)),set:(n,r,i)=>e().set(t(n),r,{...i,name:i?.name??n}),delete:n=>e().delete(t(n)),expireTag:t=>e().expireTag(t)}}let y=!1;function b(e){if(m||=new d.InMemoryCache,process.env.RUNTIME_CACHE_DISABLE_BUILD_CACHE===`true`)return e&&console.log(`Using InMemoryCache as build cache is disabled`),m;let{RUNTIME_CACHE_ENDPOINT:t,RUNTIME_CACHE_HEADERS:n}=process.env;if(e&&console.log(`Runtime cache environment variables:`,{RUNTIME_CACHE_ENDPOINT:t,RUNTIME_CACHE_HEADERS:n}),!t||!n)return y||=(console.warn(`Runtime Cache unavailable in this environment. Falling back to in-memory cache.`),!0),m;if(!h){let e={};try{e=JSON.parse(n)}catch(e){return console.error(`Failed to parse RUNTIME_CACHE_HEADERS:`,e),m}let r=500;if(process.env.RUNTIME_CACHE_TIMEOUT){let e=parseInt(process.env.RUNTIME_CACHE_TIMEOUT,10);!isNaN(e)&&e>0?r=e:console.warn(`Invalid RUNTIME_CACHE_TIMEOUT value: "${process.env.RUNTIME_CACHE_TIMEOUT}". Using default: ${r}ms`)}h=new f.BuildCache({endpoint:t,headers:e,onError:e=>console.error(e),timeout:r})}return h}var x=(e=>(e.Fresh=`fresh`,e.Stale=`stale`,e.Expired=`expired`,e.NotFound=`notFound`,e.Error=`error`,e))(x||{});let S=`x-vercel-cache-state`,C=`x-vercel-revalidate`,w=`x-vercel-cache-tags`,T=`x-vercel-cache-item-name`;0&&(t.exports={HEADERS_VERCEL_CACHE_ITEM_NAME:T,HEADERS_VERCEL_CACHE_STATE:S,HEADERS_VERCEL_CACHE_TAGS:w,HEADERS_VERCEL_REVALIDATE:C,PkgCacheState:x,getCache:g})})),Ce=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{attachDatabasePool:()=>_,experimental_attachDatabasePool:()=>v}),t.exports=c(l);var u=_e();let d=!!process.env.DEBUG;function f(e){if(`options`in e&&e.options){if(`idleTimeoutMillis`in e.options)return typeof e.options.idleTimeoutMillis==`number`?e.options.idleTimeoutMillis:1e4;if(`maxIdleTimeMS`in e.options)return typeof e.options.maxIdleTimeMS==`number`?e.options.maxIdleTimeMS:0;if(`status`in e)return 5e3;if(`connect`in e&&`execute`in e)return 3e4}if(`config`in e&&e.config){if(`connectionConfig`in e.config&&e.config.connectionConfig)return e.config.connectionConfig.idleTimeout||6e4;if(`idleTimeout`in e.config)return typeof e.config.idleTimeout==`number`?e.config.idleTimeout:6e4}return`poolTimeout`in e?typeof e.poolTimeout==`number`?e.poolTimeout:6e4:`idleTimeout`in e?typeof e.idleTimeout==`number`?e.idleTimeout:0:1e4}let p=null,m=()=>{},h=Date.now();function g(e){if(!process.env.VERCEL_URL||!process.env.VERCEL_REGION)return;p&&(clearTimeout(p),m());let t=new Promise(e=>{m=e}),n=Math.min(f(e)+100,Math.max(100,899e3-(Date.now()-h)));p=setTimeout(()=>{m?.(),d&&console.log(`Database pool idle timeout reached. Releasing connections.`)},n);let r=(0,u.getContext)();r?.waitUntil?r.waitUntil(t):console.warn(`Pool release event triggered outside of request scope.`)}function _(e){if(p&&(m?.(),clearTimeout(p)),`on`in e&&e.on&&`options`in e&&`idleTimeoutMillis`in e.options){e.on(`release`,()=>{d&&console.log(`Client released from pool`),g(e)});return}else if(`on`in e&&e.on&&`config`in e&&e.config&&`connectionConfig`in e.config){e.on(`release`,()=>{d&&console.log(`MySQL client released from pool`),g(e)});return}else if(`on`in e&&e.on&&`config`in e&&e.config&&`idleTimeout`in e.config){e.on(`release`,()=>{d&&console.log(`MySQL2/MariaDB client released from pool`),g(e)});return}if(`on`in e&&e.on&&`options`in e&&e.options&&`maxIdleTimeMS`in e.options){e.on(`connectionCheckedOut`,()=>{d&&console.log(`MongoDB connection checked out`),g(e)});return}if(`on`in e&&e.on&&`options`in e&&e.options&&`socket`in e.options){e.on(`end`,()=>{d&&console.log(`Redis connection ended`),g(e)});return}throw Error(`Unsupported database pool type`)}let v=_;0&&(t.exports={attachDatabasePool:_,experimental_attachDatabasePool:v})})),we=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{dangerouslyDeleteBySrcImage:()=>m,dangerouslyDeleteByTag:()=>f,invalidateBySrcImage:()=>p,invalidateByTag:()=>d}),t.exports=c(l);var u=_e();let d=e=>{let t=(0,u.getContext)().purge;return t?t.invalidateByTag(e):Promise.resolve()},f=(e,t)=>{let n=(0,u.getContext)().purge;return n?n.dangerouslyDeleteByTag(e,t):Promise.resolve()},p=e=>{let t=(0,u.getContext)().purge;return t?t.invalidateBySrcImage(e):Promise.resolve()},m=(e,t)=>{let n=(0,u.getContext)().purge;return n?n.dangerouslyDeleteBySrcImage(e,t):Promise.resolve()};0&&(t.exports={dangerouslyDeleteBySrcImage:m,dangerouslyDeleteByTag:f,invalidateBySrcImage:p,invalidateByTag:d})})),Te=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{addCacheTag:()=>d}),t.exports=c(l);var u=_e();let d=e=>{let t=(0,u.getContext)().addCacheTag;return t?t(e):Promise.resolve()};0&&(t.exports={addCacheTag:d})})),Ee=n(((e,t)=>{var n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,o=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},s=(e,t,o,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let c of i(t))!a.call(e,c)&&c!==o&&n(e,c,{get:()=>t[c],enumerable:!(s=r(t,c))||s.enumerable});return e},c=e=>s(n({},`__esModule`,{value:!0}),e),l={};o(l,{addCacheTag:()=>_.addCacheTag,attachDatabasePool:()=>h.attachDatabasePool,dangerouslyDeleteBySrcImage:()=>g.dangerouslyDeleteBySrcImage,dangerouslyDeleteByTag:()=>g.dangerouslyDeleteByTag,experimental_attachDatabasePool:()=>h.experimental_attachDatabasePool,geolocation:()=>u.geolocation,getCache:()=>m.getCache,getEnv:()=>d.getEnv,invalidateBySrcImage:()=>g.invalidateBySrcImage,invalidateByTag:()=>g.invalidateByTag,ipAddress:()=>u.ipAddress,next:()=>p.next,rewrite:()=>p.rewrite,waitUntil:()=>f.waitUntil}),t.exports=c(l);var u=he(),d=ge(),f=ve(),p=ye(),m=Se(),h=Ce(),g=we(),_=Te();0&&(t.exports={addCacheTag,attachDatabasePool,dangerouslyDeleteBySrcImage,dangerouslyDeleteByTag,experimental_attachDatabasePool,geolocation,getCache,getEnv,invalidateBySrcImage,invalidateByTag,ipAddress,next,rewrite,waitUntil})})),De=n(((e,t)=>{t.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:2**53-1||9007199254740991,RELEASE_TYPES:[`major`,`premajor`,`minor`,`preminor`,`patch`,`prepatch`,`prerelease`],SEMVER_SPEC_VERSION:`2.0.0`,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}})),Oe=n(((e,t)=>{t.exports=typeof process==`object`&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error(`SEMVER`,...e):()=>{}})),ke=n(((e,t)=>{let{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:r,MAX_LENGTH:i}=De(),a=Oe();e=t.exports={};let o=e.re=[],s=e.safeRe=[],c=e.src=[],l=e.safeSrc=[],u=e.t={},d=0,f=`[a-zA-Z0-9-]`,p=[[`\\s`,1],[`\\d`,i],[f,r]],m=e=>{for(let[t,n]of p)e=e.split(`${t}*`).join(`${t}{0,${n}}`).split(`${t}+`).join(`${t}{1,${n}}`);return e},h=(e,t,n)=>{let r=m(t),i=d++;a(e,i,t),u[e]=i,c[i]=t,l[i]=r,o[i]=new RegExp(t,n?`g`:void 0),s[i]=new RegExp(r,n?`g`:void 0)};h(`NUMERICIDENTIFIER`,`0|[1-9]\\d*`),h(`NUMERICIDENTIFIERLOOSE`,`\\d+`),h(`NONNUMERICIDENTIFIER`,`\\d*[a-zA-Z-]${f}*`),h(`MAINVERSION`,`(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})`),h(`MAINVERSIONLOOSE`,`(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASEIDENTIFIER`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIER]})`),h(`PRERELEASEIDENTIFIERLOOSE`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASE`,`(?:-(${c[u.PRERELEASEIDENTIFIER]}(?:\\.${c[u.PRERELEASEIDENTIFIER]})*))`),h(`PRERELEASELOOSE`,`(?:-?(${c[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${c[u.PRERELEASEIDENTIFIERLOOSE]})*))`),h(`BUILDIDENTIFIER`,`${f}+`),h(`BUILD`,`(?:\\+(${c[u.BUILDIDENTIFIER]}(?:\\.${c[u.BUILDIDENTIFIER]})*))`),h(`FULLPLAIN`,`v?${c[u.MAINVERSION]}${c[u.PRERELEASE]}?${c[u.BUILD]}?`),h(`FULL`,`^${c[u.FULLPLAIN]}$`),h(`LOOSEPLAIN`,`[v=\\s]*${c[u.MAINVERSIONLOOSE]}${c[u.PRERELEASELOOSE]}?${c[u.BUILD]}?`),h(`LOOSE`,`^${c[u.LOOSEPLAIN]}$`),h(`GTLT`,`((?:<|>)?=?)`),h(`XRANGEIDENTIFIERLOOSE`,`${c[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),h(`XRANGEIDENTIFIER`,`${c[u.NUMERICIDENTIFIER]}|x|X|\\*`),h(`XRANGEPLAIN`,`[v=\\s]*(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:${c[u.PRERELEASE]})?${c[u.BUILD]}?)?)?`),h(`XRANGEPLAINLOOSE`,`[v=\\s]*(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:${c[u.PRERELEASELOOSE]})?${c[u.BUILD]}?)?)?`),h(`XRANGE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAIN]}$`),h(`XRANGELOOSE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAINLOOSE]}$`),h(`COERCEPLAIN`,`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?`),h(`COERCE`,`${c[u.COERCEPLAIN]}(?:$|[^\\d])`),h(`COERCEFULL`,c[u.COERCEPLAIN]+`(?:${c[u.PRERELEASE]})?(?:${c[u.BUILD]})?(?:$|[^\\d])`),h(`COERCERTL`,c[u.COERCE],!0),h(`COERCERTLFULL`,c[u.COERCEFULL],!0),h(`LONETILDE`,`(?:~>?)`),h(`TILDETRIM`,`(\\s*)${c[u.LONETILDE]}\\s+`,!0),e.tildeTrimReplace=`$1~`,h(`TILDE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAIN]}$`),h(`TILDELOOSE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAINLOOSE]}$`),h(`LONECARET`,`(?:\\^)`),h(`CARETTRIM`,`(\\s*)${c[u.LONECARET]}\\s+`,!0),e.caretTrimReplace=`$1^`,h(`CARET`,`^${c[u.LONECARET]}${c[u.XRANGEPLAIN]}$`),h(`CARETLOOSE`,`^${c[u.LONECARET]}${c[u.XRANGEPLAINLOOSE]}$`),h(`COMPARATORLOOSE`,`^${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]})$|^$`),h(`COMPARATOR`,`^${c[u.GTLT]}\\s*(${c[u.FULLPLAIN]})$|^$`),h(`COMPARATORTRIM`,`(\\s*)${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]}|${c[u.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace=`$1$2$3`,h(`HYPHENRANGE`,`^\\s*(${c[u.XRANGEPLAIN]})\\s+-\\s+(${c[u.XRANGEPLAIN]})\\s*$`),h(`HYPHENRANGELOOSE`,`^\\s*(${c[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${c[u.XRANGEPLAINLOOSE]})\\s*$`),h(`STAR`,`(<|>)?=?\\s*\\*`),h(`GTE0`,`^\\s*>=\\s*0\\.0\\.0\\s*$`),h(`GTE0PRE`,`^\\s*>=\\s*0\\.0\\.0-0\\s*$`)})),Ae=n(((e,t)=>{let n=Object.freeze({loose:!0}),r=Object.freeze({});t.exports=e=>e?typeof e==`object`?e:n:r})),je=n(((e,t)=>{let n=/^[0-9]+$/,r=(e,t)=>{if(typeof e==`number`&&typeof t==`number`)return e===t?0:e<t?-1:1;let r=n.test(e),i=n.test(t);return r&&i&&(e=+e,t=+t),e===t?0:r&&!i?-1:i&&!r?1:e<t?-1:1};t.exports={compareIdentifiers:r,rcompareIdentifiers:(e,t)=>r(t,e)}})),k=n(((e,t)=>{let n=Oe(),{MAX_LENGTH:r,MAX_SAFE_INTEGER:i}=De(),{safeRe:a,t:o}=ke(),s=Ae(),{compareIdentifiers:c}=je();t.exports=class e{constructor(t,c){if(c=s(c),t instanceof e){if(t.loose===!!c.loose&&t.includePrerelease===!!c.includePrerelease)return t;t=t.version}else if(typeof t!=`string`)throw TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>r)throw TypeError(`version is longer than ${r} characters`);n(`SemVer`,t,c),this.options=c,this.loose=!!c.loose,this.includePrerelease=!!c.includePrerelease;let l=t.trim().match(c.loose?a[o.LOOSE]:a[o.FULL]);if(!l)throw TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+l[1],this.minor=+l[2],this.patch=+l[3],this.major>i||this.major<0)throw TypeError(`Invalid major version`);if(this.minor>i||this.minor<0)throw TypeError(`Invalid minor version`);if(this.patch>i||this.patch<0)throw TypeError(`Invalid patch version`);l[4]?this.prerelease=l[4].split(`.`).map(e=>{if(/^[0-9]+$/.test(e)){let t=+e;if(t>=0&&t<i)return t}return e}):this.prerelease=[],this.build=l[5]?l[5].split(`.`):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(`.`)}`),this.version}toString(){return this.version}compare(t){if(n(`SemVer.compare`,this.version,this.options,t),!(t instanceof e)){if(typeof t==`string`&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:+(this.patch>t.patch)}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let e=this.prerelease[r],i=t.prerelease[r];if(n(`prerelease compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let e=this.build[r],i=t.build[r];if(n(`build compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}inc(e,t,n){if(e.startsWith(`pre`)){if(!t&&n===!1)throw Error(`invalid increment argument: identifier is empty`);if(t){let e=`-${t}`.match(this.options.loose?a[o.PRERELEASELOOSE]:a[o.PRERELEASE]);if(!e||e[1]!==t)throw Error(`invalid identifier: ${t}`)}}switch(e){case`premajor`:this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc(`pre`,t,n);break;case`preminor`:this.prerelease.length=0,this.patch=0,this.minor++,this.inc(`pre`,t,n);break;case`prepatch`:this.prerelease.length=0,this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`prerelease`:this.prerelease.length===0&&this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`release`:if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case`major`:(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case`minor`:(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case`patch`:this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case`pre`:{let e=+!!Number(n);if(this.prerelease.length===0)this.prerelease=[e];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]==`number`&&(this.prerelease[r]++,r=-2);if(r===-1){if(t===this.prerelease.join(`.`)&&n===!1)throw Error(`invalid increment argument: identifier already exists`);this.prerelease.push(e)}}if(t){let r=[t,e];n===!1&&(r=[t]),c(this.prerelease[0],t)===0?isNaN(this.prerelease[1])&&(this.prerelease=r):this.prerelease=r}break}default:throw Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(`.`)}`),this}}})),A=n(((e,t)=>{let n=k();t.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(e){if(!r)return null;throw e}}})),Me=n(((e,t)=>{let n=A();t.exports=(e,t)=>{let r=n(e,t);return r?r.version:null}})),Ne=n(((e,t)=>{let n=A();t.exports=(e,t)=>{let r=n(e.trim().replace(/^[=v]+/,``),t);return r?r.version:null}})),Pe=n(((e,t)=>{let n=k();t.exports=(e,t,r,i,a)=>{typeof r==`string`&&(a=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,a).version}catch{return null}}})),Fe=n(((e,t)=>{let n=A();t.exports=(e,t)=>{let r=n(e,null,!0),i=n(t,null,!0),a=r.compare(i);if(a===0)return null;let o=a>0,s=o?r:i,c=o?i:r,l=!!s.prerelease.length;if(c.prerelease.length&&!l){if(!c.patch&&!c.minor)return`major`;if(c.compareMain(s)===0)return c.minor&&!c.patch?`minor`:`patch`}let u=l?`pre`:``;return r.major===i.major?r.minor===i.minor?r.patch===i.patch?`prerelease`:u+`patch`:u+`minor`:u+`major`}})),Ie=n(((e,t)=>{let n=k();t.exports=(e,t)=>new n(e,t).major})),Le=n(((e,t)=>{let n=k();t.exports=(e,t)=>new n(e,t).minor})),Re=n(((e,t)=>{let n=k();t.exports=(e,t)=>new n(e,t).patch})),ze=n(((e,t)=>{let n=A();t.exports=(e,t)=>{let r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}})),j=n(((e,t)=>{let n=k();t.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))})),Be=n(((e,t)=>{let n=j();t.exports=(e,t,r)=>n(t,e,r)})),Ve=n(((e,t)=>{let n=j();t.exports=(e,t)=>n(e,t,!0)})),He=n(((e,t)=>{let n=k();t.exports=(e,t,r)=>{let i=new n(e,r),a=new n(t,r);return i.compare(a)||i.compareBuild(a)}})),Ue=n(((e,t)=>{let n=He();t.exports=(e,t)=>e.sort((e,r)=>n(e,r,t))})),We=n(((e,t)=>{let n=He();t.exports=(e,t)=>e.sort((e,r)=>n(r,e,t))})),Ge=n(((e,t)=>{let n=j();t.exports=(e,t,r)=>n(e,t,r)>0})),Ke=n(((e,t)=>{let n=j();t.exports=(e,t,r)=>n(e,t,r)<0})),qe=n(((e,t)=>{let n=j();t.exports=(e,t,r)=>n(e,t,r)===0})),Je=n(((e,t)=>{let n=j();t.exports=(e,t,r)=>n(e,t,r)!==0})),Ye=n(((e,t)=>{let n=j();t.exports=(e,t,r)=>n(e,t,r)>=0})),Xe=n(((e,t)=>{let n=j();t.exports=(e,t,r)=>n(e,t,r)<=0})),Ze=n(((e,t)=>{let n=qe(),r=Je(),i=Ge(),a=Ye(),o=Ke(),s=Xe();t.exports=(e,t,c,l)=>{switch(t){case`===`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e===c;case`!==`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e!==c;case``:case`=`:case`==`:return n(e,c,l);case`!=`:return r(e,c,l);case`>`:return i(e,c,l);case`>=`:return a(e,c,l);case`<`:return o(e,c,l);case`<=`:return s(e,c,l);default:throw TypeError(`Invalid operator: ${t}`)}}})),Qe=n(((e,t)=>{let n=k(),r=A(),{safeRe:i,t:a}=ke();t.exports=(e,t)=>{if(e instanceof n)return e;if(typeof e==`number`&&(e=String(e)),typeof e!=`string`)return null;t||={};let o=null;if(!t.rtl)o=e.match(t.includePrerelease?i[a.COERCEFULL]:i[a.COERCE]);else{let n=t.includePrerelease?i[a.COERCERTLFULL]:i[a.COERCERTL],r;for(;(r=n.exec(e))&&(!o||o.index+o[0].length!==e.length);)(!o||r.index+r[0].length!==o.index+o[0].length)&&(o=r),n.lastIndex=r.index+r[1].length+r[2].length;n.lastIndex=-1}if(o===null)return null;let s=o[2];return r(`${s}.${o[3]||`0`}.${o[4]||`0`}${t.includePrerelease&&o[5]?`-${o[5]}`:``}${t.includePrerelease&&o[6]?`+${o[6]}`:``}`,t)}})),$e=n(((e,t)=>{t.exports=class{constructor(){this.max=1e3,this.map=new Map}get(e){let t=this.map.get(e);if(t!==void 0)return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let e=this.map.keys().next().value;this.delete(e)}this.map.set(e,t)}return this}}})),M=n(((e,t)=>{let n=/\s+/g;t.exports=class e{constructor(t,r){if(r=i(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof a)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(n,` `),this.set=this.raw.split(`||`).map(e=>this.parseRange(e.trim())).filter(e=>e.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let e=this.set[0];if(this.set=this.set.filter(e=>!h(e[0])),this.set.length===0)this.set=[e];else if(this.set.length>1){for(let e of this.set)if(e.length===1&&g(e[0])){this.set=[e];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted=``;for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+=`||`);let t=this.set[e];for(let e=0;e<t.length;e++)e>0&&(this.formatted+=` `),this.formatted+=t[e].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+`:`+e,n=r.get(t);if(n)return n;let i=this.options.loose,s=i?c[l.HYPHENRANGELOOSE]:c[l.HYPHENRANGE];e=e.replace(s,E(this.options.includePrerelease)),o(`hyphen replace`,e),e=e.replace(c[l.COMPARATORTRIM],u),o(`comparator trim`,e),e=e.replace(c[l.TILDETRIM],d),o(`tilde trim`,e),e=e.replace(c[l.CARETTRIM],f),o(`caret trim`,e);let g=e.split(` `).map(e=>v(e,this.options)).join(` `).split(/\s+/).map(e=>te(e,this.options));i&&(g=g.filter(e=>(o(`loose invalid filter`,e,this.options),!!e.match(c[l.COMPARATORLOOSE])))),o(`range list`,g);let _=new Map,y=g.map(e=>new a(e,this.options));for(let e of y){if(h(e))return[e];_.set(e.value,e)}_.size>1&&_.has(``)&&_.delete(``);let b=[..._.values()];return r.set(t,b),b}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Range is required`);return this.set.some(e=>_(e,n)&&t.set.some(t=>_(t,n)&&e.every(e=>t.every(t=>e.intersects(t,n)))))}test(e){if(!e)return!1;if(typeof e==`string`)try{e=new s(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(ne(this.set[t],e,this.options))return!0;return!1}};let r=new($e()),i=Ae(),a=et(),o=Oe(),s=k(),{safeRe:c,t:l,comparatorTrimReplace:u,tildeTrimReplace:d,caretTrimReplace:f}=ke(),{FLAG_INCLUDE_PRERELEASE:p,FLAG_LOOSE:m}=De(),h=e=>e.value===`<0.0.0-0`,g=e=>e.value===``,_=(e,t)=>{let n=!0,r=e.slice(),i=r.pop();for(;n&&r.length;)n=r.every(e=>i.intersects(e,t)),i=r.pop();return n},v=(e,t)=>(e=e.replace(c[l.BUILD],``),o(`comp`,e,t),e=S(e,t),o(`caret`,e),e=b(e,t),o(`tildes`,e),e=w(e,t),o(`xrange`,e),e=ee(e,t),o(`stars`,e),e),y=e=>!e||e.toLowerCase()===`x`||e===`*`,b=(e,t)=>e.trim().split(/\s+/).map(e=>x(e,t)).join(` `),x=(e,t)=>{let n=t.loose?c[l.TILDELOOSE]:c[l.TILDE];return e.replace(n,(t,n,r,i,a)=>{o(`tilde`,e,t,n,r,i,a);let s;return y(n)?s=``:y(r)?s=`>=${n}.0.0 <${+n+1}.0.0-0`:y(i)?s=`>=${n}.${r}.0 <${n}.${+r+1}.0-0`:a?(o(`replaceTilde pr`,a),s=`>=${n}.${r}.${i}-${a} <${n}.${+r+1}.0-0`):s=`>=${n}.${r}.${i} <${n}.${+r+1}.0-0`,o(`tilde return`,s),s})},S=(e,t)=>e.trim().split(/\s+/).map(e=>C(e,t)).join(` `),C=(e,t)=>{o(`caret`,e,t);let n=t.loose?c[l.CARETLOOSE]:c[l.CARET],r=t.includePrerelease?`-0`:``;return e.replace(n,(t,n,i,a,s)=>{o(`caret`,e,t,n,i,a,s);let c;return y(n)?c=``:y(i)?c=`>=${n}.0.0${r} <${+n+1}.0.0-0`:y(a)?c=n===`0`?`>=${n}.${i}.0${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.0${r} <${+n+1}.0.0-0`:s?(o(`replaceCaret pr`,s),c=n===`0`?i===`0`?`>=${n}.${i}.${a}-${s} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}-${s} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a}-${s} <${+n+1}.0.0-0`):(o(`no pr`),c=n===`0`?i===`0`?`>=${n}.${i}.${a}${r} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a} <${+n+1}.0.0-0`),o(`caret return`,c),c})},w=(e,t)=>(o(`replaceXRanges`,e,t),e.split(/\s+/).map(e=>T(e,t)).join(` `)),T=(e,t)=>{e=e.trim();let n=t.loose?c[l.XRANGELOOSE]:c[l.XRANGE];return e.replace(n,(n,r,i,a,s,c)=>{o(`xRange`,e,n,r,i,a,s,c);let l=y(i),u=l||y(a),d=u||y(s),f=d;return r===`=`&&f&&(r=``),c=t.includePrerelease?`-0`:``,l?n=r===`>`||r===`<`?`<0.0.0-0`:`*`:r&&f?(u&&(a=0),s=0,r===`>`?(r=`>=`,u?(i=+i+1,a=0,s=0):(a=+a+1,s=0)):r===`<=`&&(r=`<`,u?i=+i+1:a=+a+1),r===`<`&&(c=`-0`),n=`${r+i}.${a}.${s}${c}`):u?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),o(`xRange return`,n),n})},ee=(e,t)=>(o(`replaceStars`,e,t),e.trim().replace(c[l.STAR],``)),te=(e,t)=>(o(`replaceGTE0`,e,t),e.trim().replace(c[t.includePrerelease?l.GTE0PRE:l.GTE0],``)),E=e=>(t,n,r,i,a,o,s,c,l,u,d,f)=>(n=y(r)?``:y(i)?`>=${r}.0.0${e?`-0`:``}`:y(a)?`>=${r}.${i}.0${e?`-0`:``}`:o?`>=${n}`:`>=${n}${e?`-0`:``}`,c=y(l)?``:y(u)?`<${+l+1}.0.0-0`:y(d)?`<${l}.${+u+1}.0-0`:f?`<=${l}.${u}.${d}-${f}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`,`${n} ${c}`.trim()),ne=(e,t,n)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!n.includePrerelease){for(let n=0;n<e.length;n++)if(o(e[n].semver),e[n].semver!==a.ANY&&e[n].semver.prerelease.length>0){let r=e[n].semver;if(r.major===t.major&&r.minor===t.minor&&r.patch===t.patch)return!0}return!1}return!0}})),et=n(((e,t)=>{let n=Symbol(`SemVer ANY`);t.exports=class e{static get ANY(){return n}constructor(t,i){if(i=r(i),t instanceof e){if(t.loose===!!i.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(` `),s(`comparator`,t,i),this.options=i,this.loose=!!i.loose,this.parse(t),this.semver===n?this.value=``:this.value=this.operator+this.semver.version,s(`comp`,this)}parse(e){let t=this.options.loose?i[a.COMPARATORLOOSE]:i[a.COMPARATOR],r=e.match(t);if(!r)throw TypeError(`Invalid comparator: ${e}`);this.operator=r[1]===void 0?``:r[1],this.operator===`=`&&(this.operator=``),r[2]?this.semver=new c(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(s(`Comparator.test`,e,this.options.loose),this.semver===n||e===n)return!0;if(typeof e==`string`)try{e=new c(e,this.options)}catch{return!1}return o(e,this.operator,this.semver,this.options)}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Comparator is required`);return this.operator===``?this.value===``?!0:new l(t.value,n).test(this.value):t.operator===``?t.value===``?!0:new l(this.value,n).test(t.semver):(n=r(n),n.includePrerelease&&(this.value===`<0.0.0-0`||t.value===`<0.0.0-0`)||!n.includePrerelease&&(this.value.startsWith(`<0.0.0`)||t.value.startsWith(`<0.0.0`))?!1:!!(this.operator.startsWith(`>`)&&t.operator.startsWith(`>`)||this.operator.startsWith(`<`)&&t.operator.startsWith(`<`)||this.semver.version===t.semver.version&&this.operator.includes(`=`)&&t.operator.includes(`=`)||o(this.semver,`<`,t.semver,n)&&this.operator.startsWith(`>`)&&t.operator.startsWith(`<`)||o(this.semver,`>`,t.semver,n)&&this.operator.startsWith(`<`)&&t.operator.startsWith(`>`)))}};let r=Ae(),{safeRe:i,t:a}=ke(),o=Ze(),s=Oe(),c=k(),l=M()})),tt=n(((e,t)=>{let n=M();t.exports=(e,t,r)=>{try{t=new n(t,r)}catch{return!1}return t.test(e)}})),nt=n(((e,t)=>{let n=M();t.exports=(e,t)=>new n(e,t).set.map(e=>e.map(e=>e.value).join(` `).trim().split(` `))})),rt=n(((e,t)=>{let n=k(),r=M();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===-1)&&(a=e,o=new n(a,i))}),a}})),it=n(((e,t)=>{let n=k(),r=M();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===1)&&(a=e,o=new n(a,i))}),a}})),at=n(((e,t)=>{let n=k(),r=M(),i=Ge();t.exports=(e,t)=>{e=new r(e,t);let a=new n(`0.0.0`);if(e.test(a)||(a=new n(`0.0.0-0`),e.test(a)))return a;a=null;for(let t=0;t<e.set.length;++t){let r=e.set[t],o=null;r.forEach(e=>{let t=new n(e.semver.version);switch(e.operator){case`>`:t.prerelease.length===0?t.patch++:t.prerelease.push(0),t.raw=t.format();case``:case`>=`:(!o||i(t,o))&&(o=t);break;case`<`:case`<=`:break;default:throw Error(`Unexpected operation: ${e.operator}`)}}),o&&(!a||i(a,o))&&(a=o)}return a&&e.test(a)?a:null}})),ot=n(((e,t)=>{let n=M();t.exports=(e,t)=>{try{return new n(e,t).range||`*`}catch{return null}}})),st=n(((e,t)=>{let n=k(),r=et(),{ANY:i}=r,a=M(),o=tt(),s=Ge(),c=Ke(),l=Xe(),u=Ye();t.exports=(e,t,d,f)=>{e=new n(e,f),t=new a(t,f);let p,m,h,g,_;switch(d){case`>`:p=s,m=l,h=c,g=`>`,_=`>=`;break;case`<`:p=c,m=u,h=s,g=`<`,_=`<=`;break;default:throw TypeError(`Must provide a hilo val of "<" or ">"`)}if(o(e,t,f))return!1;for(let n=0;n<t.set.length;++n){let a=t.set[n],o=null,s=null;if(a.forEach(e=>{e.semver===i&&(e=new r(`>=0.0.0`)),o||=e,s||=e,p(e.semver,o.semver,f)?o=e:h(e.semver,s.semver,f)&&(s=e)}),o.operator===g||o.operator===_||(!s.operator||s.operator===g)&&m(e,s.semver)||s.operator===_&&h(e,s.semver))return!1}return!0}})),ct=n(((e,t)=>{let n=st();t.exports=(e,t,r)=>n(e,t,`>`,r)})),lt=n(((e,t)=>{let n=st();t.exports=(e,t,r)=>n(e,t,`<`,r)})),ut=n(((e,t)=>{let n=M();t.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))})),dt=n(((e,t)=>{let n=tt(),r=j();t.exports=(e,t,i)=>{let a=[],o=null,s=null,c=e.sort((e,t)=>r(e,t,i));for(let e of c)n(e,t,i)?(s=e,o||=e):(s&&a.push([o,s]),s=null,o=null);o&&a.push([o,null]);let l=[];for(let[e,t]of a)e===t?l.push(e):!t&&e===c[0]?l.push(`*`):t?e===c[0]?l.push(`<=${t}`):l.push(`${e} - ${t}`):l.push(`>=${e}`);let u=l.join(` || `),d=typeof t.raw==`string`?t.raw:String(t);return u.length<d.length?u:t}})),ft=n(((e,t)=>{let n=M(),r=et(),{ANY:i}=r,a=tt(),o=j(),s=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;OUTER:for(let n of e.set){for(let e of t.set){let t=u(n,e,r);if(i||=t!==null,t)continue OUTER}if(i)return!1}return!0},c=[new r(`>=0.0.0-0`)],l=[new r(`>=0.0.0`)],u=(e,t,n)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===i){if(t.length===1&&t[0].semver===i)return!0;e=n.includePrerelease?c:l}if(t.length===1&&t[0].semver===i){if(n.includePrerelease)return!0;t=l}let r=new Set,s,u;for(let t of e)t.operator===`>`||t.operator===`>=`?s=d(s,t,n):t.operator===`<`||t.operator===`<=`?u=f(u,t,n):r.add(t.semver);if(r.size>1)return null;let p;if(s&&u&&(p=o(s.semver,u.semver,n),p>0||p===0&&(s.operator!==`>=`||u.operator!==`<=`)))return null;for(let e of r){if(s&&!a(e,String(s),n)||u&&!a(e,String(u),n))return null;for(let r of t)if(!a(e,String(r),n))return!1;return!0}let m,h,g,_,v=u&&!n.includePrerelease&&u.semver.prerelease.length?u.semver:!1,y=s&&!n.includePrerelease&&s.semver.prerelease.length?s.semver:!1;v&&v.prerelease.length===1&&u.operator===`<`&&v.prerelease[0]===0&&(v=!1);for(let e of t){if(_=_||e.operator===`>`||e.operator===`>=`,g=g||e.operator===`<`||e.operator===`<=`,s){if(y&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===y.major&&e.semver.minor===y.minor&&e.semver.patch===y.patch&&(y=!1),e.operator===`>`||e.operator===`>=`){if(m=d(s,e,n),m===e&&m!==s)return!1}else if(s.operator===`>=`&&!a(s.semver,String(e),n))return!1}if(u){if(v&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===v.major&&e.semver.minor===v.minor&&e.semver.patch===v.patch&&(v=!1),e.operator===`<`||e.operator===`<=`){if(h=f(u,e,n),h===e&&h!==u)return!1}else if(u.operator===`<=`&&!a(u.semver,String(e),n))return!1}if(!e.operator&&(u||s)&&p!==0)return!1}return!(s&&g&&!u&&p!==0||u&&_&&!s&&p!==0||y||v)},d=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r>0?e:r<0||t.operator===`>`&&e.operator===`>=`?t:e},f=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r<0?e:r>0||t.operator===`<`&&e.operator===`<=`?t:e};t.exports=s})),pt=n(((e,t)=>{let n=ke(),r=De(),i=k(),a=je();t.exports={parse:A(),valid:Me(),clean:Ne(),inc:Pe(),diff:Fe(),major:Ie(),minor:Le(),patch:Re(),prerelease:ze(),compare:j(),rcompare:Be(),compareLoose:Ve(),compareBuild:He(),sort:Ue(),rsort:We(),gt:Ge(),lt:Ke(),eq:qe(),neq:Je(),gte:Ye(),lte:Xe(),cmp:Ze(),coerce:Qe(),Comparator:et(),Range:M(),satisfies:tt(),toComparators:nt(),maxSatisfying:rt(),minSatisfying:it(),minVersion:at(),validRange:ot(),outside:st(),gtr:ct(),ltr:lt(),intersects:ut(),simplifyRange:dt(),subset:ft(),SemVer:i,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:r.SEMVER_SPEC_VERSION,RELEASE_TYPES:r.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}}));const mt=2**32-1,ht=mt-1;var N=class extends Error{constructor(e,t,n,r){super(e),this.name=`DevalueError`,this.path=t.join(``),this.value=n,this.root=r}};function gt(e){return e===null||typeof e!=`object`&&typeof e!=`function`}const _t=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function vt(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===_t}function yt(e){return Object.prototype.toString.call(e).slice(8,-1)}function bt(e){switch(e){case`"`:return`\\"`;case`<`:return`\\u003C`;case`\\`:return`\\\\`;case`
|
|
2
|
-
`:return`\\n`;case`\r`:return`\\r`;case` `:return`\\t`;case`\b`:return`\\b`;case`\f`:return`\\f`;case`\u2028`:return`\\u2028`;case`\u2029`:return`\\u2029`;default:return e<` `?`\\u${e.charCodeAt(0).toString(16).padStart(4,`0`)}`:``}}function P(e){let t=``,n=0,r=e.length;for(let i=0;i<r;i+=1){let r=e[i],a=bt(r);a&&(t+=e.slice(n,i)+a,n=i+1)}return`"${n===0?e:t+e.slice(n)}"`}function xt(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}const St=/^[a-zA-Z_$][a-zA-Z_$0-9]*$/;function Ct(e){return St.test(e)?`.`+e:`[`+JSON.stringify(e)+`]`}function wt(e){return!(!Number.isInteger(e)||e<0||e>ht)}function Tt(e){return!(!Number.isInteger(e)||e<0||e>mt)}function Et(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return wt(+e)}function Dt(e){let t=Object.keys(e);for(var n=t.length-1;n>=0&&!Et(t[n]);n--);return t.length=n+1,t}function Ot(e){return new Uint8Array(e).toBase64()}function kt(e){return Uint8Array.fromBase64(e).buffer}function At(e){return Buffer.from(e).toString(`base64`)}function jt(e){return Uint8Array.from(Buffer.from(e,`base64`)).buffer}function Mt(e){let t=new Uint8Array(e),n=``,r=32768;for(let e=0;e<t.length;e+=r){let i=t.subarray(e,e+r);n+=String.fromCharCode.apply(null,i)}return btoa(n)}function Nt(e){let t=atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer}const Pt=typeof Uint8Array.fromBase64==`function`,Ft=typeof process==`object`&&process.versions?.node!==void 0,It=Pt?Ot:Ft?At:Mt,Lt=Pt?kt:Ft?jt:Nt;function Rt(e,t){return zt(JSON.parse(e),t)}function zt(e,t){if(typeof e==`number`)return a(e,!0);if(!Array.isArray(e)||e.length===0)throw Error(`Invalid input`);let n=e,r=Array(n.length),i=null;function a(e,o=!1){if(e===-1)return;if(e===-3)return NaN;if(e===-4)return 1/0;if(e===-5)return-1/0;if(e===-6)return-0;if(o||typeof e!=`number`)throw Error(`Invalid input`);if(e in r)return r[e];let s=n[e];if(!s||typeof s!=`object`)r[e]=s;else if(Array.isArray(s))if(typeof s[0]==`string`){let o=s[0],c=t&&Object.hasOwn(t,o)?t[o]:void 0;if(c){let t=s[1];if(typeof t!=`number`&&(t=n.push(s[1])-1),i??=new Set,i.has(t))throw Error(`Invalid circular reference`);return i.add(t),r[e]=c(a(t)),i.delete(t),r[e]}switch(o){case`Date`:r[e]=new Date(s[1]);break;case`Set`:let t=new Set;r[e]=t;for(let e=1;e<s.length;e+=1)t.add(a(s[e]));break;case`Map`:let i=new Map;r[e]=i;for(let e=1;e<s.length;e+=2)i.set(a(s[e]),a(s[e+1]));break;case`RegExp`:r[e]=new RegExp(s[1],s[2]);break;case`Object`:{let t=s[1];if(typeof n[t]==`object`&&n[t][0]!==`BigInt`)throw Error(`Invalid input`);r[e]=Object(a(t));break}case`BigInt`:r[e]=BigInt(s[1]);break;case`null`:let c=Object.create(null);r[e]=c;for(let e=1;e<s.length;e+=2){if(s[e]===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");c[s[e]]=a(s[e+1])}break;case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:case`Int16Array`:case`Uint16Array`:case`Float16Array`:case`Int32Array`:case`Uint32Array`:case`Float32Array`:case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:case`DataView`:{if(n[s[1]][0]!==`ArrayBuffer`)throw Error(`Invalid data`);let t=globalThis[o],i=a(s[1]);r[e]=s[2]===void 0?new t(i):new t(i,s[2],s[3]);break}case`ArrayBuffer`:{let t=s[1];if(typeof t!=`string`)throw Error(`Invalid ArrayBuffer encoding`);r[e]=Lt(t);break}case`Temporal.Duration`:case`Temporal.Instant`:case`Temporal.PlainDate`:case`Temporal.PlainTime`:case`Temporal.PlainDateTime`:case`Temporal.PlainMonthDay`:case`Temporal.PlainYearMonth`:case`Temporal.ZonedDateTime`:{let t=o.slice(9);r[e]=Temporal[t].from(s[1]);break}case`URL`:r[e]=new URL(s[1]);break;case`URLSearchParams`:r[e]=new URLSearchParams(s[1]);break;default:throw Error(`Unknown type ${o}`)}}else if(s[0]===-7){let t=s[1];if(!Tt(t))throw Error(`Invalid input`);let n=[];r[e]=n,n[ht]=void 0,delete n[ht];for(let e=2;e<s.length;e+=2){let r=s[e];if(!wt(r)||r>=t)throw Error(`Invalid input`);n[r]=a(s[e+1])}n.length=t}else{let t=Array(s.length);r[e]=t;for(let e=0;e<s.length;e+=1){let n=s[e];n!==-2&&(t[e]=a(n))}}else{let t={};r[e]=t;for(let e of Object.keys(s)){if(e===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");let n=s[e];t[e]=a(n)}}return r[e]}return a(0)}function F(e,t){let n=Bt(!1,e,t);return typeof n==`string`?n:`[${n.join(`,`)}]`}function Bt(e,t,n){let r=[],i=new Map,a=[];if(n)for(let e of Object.getOwnPropertyNames(n))a.push({key:e,fn:n[e]});let o=[],s=0;function c(n,l){if(n===void 0)return-1;if(Number.isNaN(n))return-3;if(n===1/0)return-4;if(n===-1/0)return-5;if(n===0&&1/n<0)return-6;if(i.has(n))return i.get(n);l??=s++,i.set(n,l);for(let{key:e,fn:t}of a){let i=t(n);if(i)return r[l]=`["${e}",${c(i)}]`,l}if(typeof n==`function`)throw new N(`Cannot stringify a function`,o,n,t);if(typeof n==`symbol`)throw new N(`Cannot stringify a Symbol primitive`,o,n,t);let u=``;if(gt(n))u=Vt(n);else if(typeof n.then==`function`){if(!e)throw new N(`Cannot stringify a Promise or thenable — use stringifyAsync instead`,o,n,t);u=Promise.resolve(n).then(e=>{let t=c(e,l);t<0&&(r[l]=t)})}else{let e=yt(n);switch(e){case`Number`:case`String`:case`Boolean`:case`BigInt`:u=`["Object",${c(n.valueOf())}]`;break;case`Date`:u=`["Date","${isNaN(n.getDate())?``:n.toISOString()}"]`;break;case`URL`:u=`["URL",${P(n.toString())}]`;break;case`URLSearchParams`:u=`["URLSearchParams",${P(n.toString())}]`;break;case`RegExp`:let{source:r,flags:i}=n;u=i?`["RegExp",${P(r)},"${i}"]`:`["RegExp",${P(r)}]`;break;case`Array`:{let e=!1;u=`[`;for(let t=0;t<n.length;t+=1)if(t>0&&(u+=`,`),Object.hasOwn(n,t))o.push(`[${t}]`),u+=c(n[t]),o.pop();else if(e)u+=-2;else{let t=Dt(n),r=t.length,i=String(n.length).length;if((n.length-r)*3>4+i+r*(i+1)){u=`[-7,`+n.length;for(let e=0;e<t.length;e++){let r=t[e];o.push(`[${r}]`),u+=`,`+r+`,`+c(n[r]),o.pop()}break}else e=!0,u+=-2}u+=`]`;break}case`Set`:u=`["Set"`;for(let e of n)u+=`,${c(e)}`;u+=`]`;break;case`Map`:u=`["Map"`;for(let[e,t]of n)o.push(`.get(${gt(e)?Vt(e):`...`})`),u+=`,${c(e)},${c(t)}`,o.pop();u+=`]`;break;case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:case`Int16Array`:case`Uint16Array`:case`Float16Array`:case`Int32Array`:case`Uint32Array`:case`Float32Array`:case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:case`DataView`:{let t=n;u=`["`+e+`",`+c(t.buffer),t.byteLength!==t.buffer.byteLength&&(u+=`,${t.byteOffset},${t.length}`),u+=`]`;break}case`ArrayBuffer`:u=`["ArrayBuffer","${It(n)}"]`;break;case`Temporal.Duration`:case`Temporal.Instant`:case`Temporal.PlainDate`:case`Temporal.PlainTime`:case`Temporal.PlainDateTime`:case`Temporal.PlainMonthDay`:case`Temporal.PlainYearMonth`:case`Temporal.ZonedDateTime`:u=`["${e}",${P(n.toString())}]`;break;default:if(!vt(n))throw new N(`Cannot stringify arbitrary non-POJOs`,o,n,t);if(xt(n).length>0)throw new N(`Cannot stringify POJOs with symbolic keys`,o,n,t);if(Object.getPrototypeOf(n)===null){u=`["null"`;for(let e of Object.keys(n)){if(e===`__proto__`)throw new N(`Cannot stringify objects with __proto__ keys`,o,n,t);o.push(Ct(e)),u+=`,${P(e)},${c(n[e])}`,o.pop()}u+=`]`}else{u=`{`;let e=!1;for(let r of Object.keys(n)){if(r===`__proto__`)throw new N(`Cannot stringify objects with __proto__ keys`,o,n,t);e&&(u+=`,`),e=!0,o.push(Ct(r)),u+=`${P(r)}:${c(n[r])}`,o.pop()}u+=`}`}}}return r[l]=u,l}let l=c(t);return l<0?`${l}`:r}function Vt(e){let t=typeof e;return t===`string`?P(e):e===void 0?`-1`:e===0&&1/e<0?`-6`:t===`bigint`?`["BigInt","${e}"]`:String(e)}var Ht=Ee(),Ut=e(pt(),1);async function Wt(e,t=[`encrypt`,`decrypt`]){if(e.byteLength!==32)throw new b(`Encryption key must be exactly 32 bytes, got ${e.byteLength}`);return globalThis.crypto.subtle.importKey(`raw`,e,`AES-GCM`,!1,t)}async function Gt(e,t){let n=globalThis.crypto.getRandomValues(new Uint8Array(12)),r;try{r=await globalThis.crypto.subtle.encrypt({name:`AES-GCM`,iv:n,tagLength:128},e,t)}catch(e){throw new m(`AES-256-GCM encryption failed: ${e instanceof Error?e.message:String(e)}`,{cause:e,context:{operation:`encrypt`,byteLength:t.byteLength}})}let i=new Uint8Array(12+r.byteLength);return i.set(n,0),i.set(new Uint8Array(r),12),i}async function Kt(e,t){if(t.byteLength<28)throw new m(`Encrypted data too short: expected at least 28 bytes, got ${t.byteLength}`,{context:{operation:`decrypt`,byteLength:t.byteLength}});let n=t.subarray(0,12),r=t.subarray(12),i;try{i=await globalThis.crypto.subtle.decrypt({name:`AES-GCM`,iv:n,tagLength:128},e,r)}catch(e){throw new m(`AES-256-GCM decryption failed: ${e instanceof Error?e.message:String(e)}`,{cause:e,context:{operation:`decrypt`,byteLength:t.byteLength}})}return new Uint8Array(i)}function I(){let e={...r(),pendingOps:0,doneResolved:!1,streamEnded:!1};return e.promise.catch(()=>{}),e}function qt(e){if(e.locked)return!1;let t;try{t=e.getWriter()}catch{return!1}try{t.releaseLock()}catch{return!1}return!0}function Jt(e){if(e.locked)return!1;let t;try{t=e.getReader()}catch{return!1}try{t.releaseLock()}catch{return!1}return!0}function Yt(e,t){if(t.writablePollingInterval!==void 0)return;let n=setInterval(()=>{if(t.doneResolved||t.streamEnded){clearInterval(n),t.writablePollingInterval=void 0;return}qt(e)&&t.pendingOps===0&&(t.doneResolved=!0,t.resolve(),clearInterval(n),t.writablePollingInterval=void 0)},10);t.writablePollingInterval=n}function Xt(e,t){if(t.readablePollingInterval!==void 0)return;let n=setInterval(()=>{if(t.doneResolved||t.streamEnded){clearInterval(n),t.readablePollingInterval=void 0;return}Jt(e)&&t.pendingOps===0&&(t.doneResolved=!0,t.resolve(),clearInterval(n),t.readablePollingInterval=void 0)},10);t.readablePollingInterval=n}async function L(e,t,n){let r=e.getReader(),i=t.getWriter(),a;try{for(;;){if(n.streamEnded)return;let e=await Promise.race([r.read(),i.closed.then(()=>{throw new b(`Writable stream closed prematurely`)})]);if(n.streamEnded)return;if(e.done){n.streamEnded=!0,await i.close(),n.doneResolved||(n.doneResolved=!0,n.resolve());return}n.pendingOps++;try{await i.write(e.value)}finally{n.pendingOps--}}}catch(e){throw n.streamEnded=!0,a=e,n.doneResolved||(n.doneResolved=!0,n.reject(e)),e}finally{r.cancel(a).catch(()=>{}),r.releaseLock(),i.releaseLock()}}const Zt=Symbol.for(`@workflow/world//cache`),Qt=Symbol.for(`@workflow/world//cachePromise`),$t=Symbol.for(`@workflow/world//getWorldFn`);async function R(){let e=globalThis;if(e[Zt])return e[Zt];if(e[Qt])return e[Zt]=await e[Qt],e[Zt];let t=e[$t];if(t)return t();let{getWorld:n}=await import([`./world`,`js`].join(`.`));return n()}const en=Symbol.for(`workflow-serialize`),tn=Symbol.for(`workflow-deserialize`);function nn(e=globalThis){let t=e,n=t[ee];return n||(n=new Map,t[ee]=n),n}function rn(e,t){return nn(t).get(e)}function an(){return{Class:e=>{if(typeof e!=`function`)return!1;let t=e.classId;return typeof t==`string`?{classId:t}:!1},Instance:e=>{if(typeof e!=`object`||!e)return!1;let t=e.constructor;if(!t||typeof t!=`function`)return!1;let n=t[en];if(typeof n!=`function`)return!1;let r=t.classId;if(typeof r!=`string`)throw Error(`Class "${t.name}" with ${String(en)} must have a static "classId" property.`);return{classId:r,data:n.call(t,e)}}}}function on(e=globalThis){return{Class:t=>{let n=t.classId,r=rn(n,e);if(!r)throw Error(`Class "${n}" not found. Make sure the class is registered with registerSerializationClass.`);return r},Instance:t=>{let n=t.classId,r=t.data,i=rn(n,e);if(!i)throw Error(`Class "${n}" not found. Make sure the class is registered with registerSerializationClass.`);let a=i[tn];if(typeof a!=`function`)throw Error(`Class "${n}" does not have a static ${String(tn)} method.`);return a.call(i,r)}}}function sn(e,t,n){if(n===0)return`.`;let r=new Uint8Array(e,t,n);return Buffer.from(r).toString(`base64`)}function z(e){return sn(e.buffer,e.byteOffset,e.byteLength)}function B(e,t){let n=e===`.`?``:e,r=Buffer.from(n,`base64`),i=new t.ArrayBuffer(r.length);return new t.Uint8Array(i).set(r),i}function cn(e){return JSON.parse(e)}function ln(e){if(!pe.isNativeError(e))return!1;let t={message:e.message,stack:e.stack};return`cause`in e&&(t.cause=e.cause),t}function un(e,t){return!pe.isNativeError(t)||t.name!==e?!1:ln(t)}function V(e){return t=>un(e,t)||!1}function H(e,t){return n=>{let r=n,i=`cause`in r?{cause:r.cause}:void 0,a=e[t],o=new a(r.message,i);return r.stack!==void 0&&(o.stack=r.stack),o}}function dn(e=globalThis){return{ArrayBuffer:t=>t instanceof e.ArrayBuffer&&sn(t,0,t.byteLength),BigInt:e=>typeof e==`bigint`&&e.toString(),BigInt64Array:t=>t instanceof e.BigInt64Array&&z(t),BigUint64Array:t=>t instanceof e.BigUint64Array&&z(t),Date:t=>t instanceof e.Date?Number.isNaN(t.getDate())?`.`:t.toISOString():!1,DOMException:e=>{if(typeof e!=`object`||!e||e.constructor?.name!==`DOMException`)return!1;let t=e,n={message:t.message,name:t.name,stack:t.stack};return`cause`in t&&(n.cause=t.cause),n},EvalError:V(`EvalError`),FatalError:V(`FatalError`),HookConflictError:e=>{let t=un(`HookConflictError`,e);if(!t)return!1;let n=e,r={...t,token:n.token};return n.conflictingRunId!==void 0&&(r.conflictingRunId=n.conflictingRunId),r},RangeError:V(`RangeError`),ReferenceError:V(`ReferenceError`),RetryableError:e=>{let t=un(`RetryableError`,e);if(!t)return!1;let n=e.retryAfter,r;if(n&&typeof n==`object`&&typeof n.getTime==`function`){let e=n.getTime();r=Number.isNaN(e)?Date.now()+1e3:e}else if(typeof n==`string`||typeof n==`number`){let e=new Date(n).getTime();r=Number.isNaN(e)?Date.now()+1e3:e}else r=Date.now()+1e3;return{...t,retryAfter:r}},RuntimeDecryptionError:e=>{let t=un(`RuntimeDecryptionError`,e);if(!t)return!1;let n={...t},r=e.context;return r!==void 0&&(n.context=r),n},SyntaxError:V(`SyntaxError`),TypeError:V(`TypeError`),URIError:V(`URIError`),AggregateError:e=>{let t=un(`AggregateError`,e);return t?{...t,errors:e.errors}:!1},Error:e=>{if(!pe.isNativeError(e))return!1;let t={name:e.name,message:e.message,stack:e.stack};return`cause`in e&&(t.cause=e.cause),t},Float32Array:t=>t instanceof e.Float32Array&&z(t),Float64Array:t=>t instanceof e.Float64Array&&z(t),Headers:t=>t instanceof e.Headers&&Array.from(t),Int8Array:t=>t instanceof e.Int8Array&&z(t),Int16Array:t=>t instanceof e.Int16Array&&z(t),Int32Array:t=>t instanceof e.Int32Array&&z(t),Map:t=>t instanceof e.Map&&Array.from(t),RegExp:t=>t instanceof e.RegExp&&{source:t.source,flags:t.flags},Set:t=>t instanceof e.Set&&Array.from(t),URL:t=>t instanceof e.URL&&t.href,WorkflowFunction:e=>{if(typeof e!=`function`)return!1;let t=e.workflowId;return typeof t==`string`?{workflowId:t}:!1},URLSearchParams:t=>t instanceof e.URLSearchParams?t.size===0?`.`:String(t):!1,Uint8Array:t=>t instanceof e.Uint8Array&&z(t),Uint8ClampedArray:t=>t instanceof e.Uint8ClampedArray&&z(t),Uint16Array:t=>t instanceof e.Uint16Array&&z(t),Uint32Array:t=>t instanceof e.Uint32Array&&z(t)}}function fn(e=globalThis){return{ArrayBuffer:t=>B(t,e),BigInt:t=>e.BigInt(t),BigInt64Array:t=>new e.BigInt64Array(B(t,e)),BigUint64Array:t=>new e.BigUint64Array(B(t,e)),Date:t=>new e.Date(t),DOMException:t=>{let n=new e.DOMException(t.message,t.name);return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},EvalError:H(e,`EvalError`),FatalError:t=>{let n=new(e[Symbol.for(`@workflow/errors//FatalError`)]??g)(t.message);return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},HookConflictError:t=>{let n=new(e[Symbol.for(`@workflow/errors//HookConflictError`)]??f)(t.token,t.conflictingRunId);return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},RangeError:H(e,`RangeError`),ReferenceError:H(e,`ReferenceError`),RetryableError:t=>{let n=new(e[Symbol.for(`@workflow/errors//RetryableError`)]??p)(t.message,{retryAfter:new e.Date(t.retryAfter)});return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},RuntimeDecryptionError:t=>{let n=e[Symbol.for(`@workflow/errors//RuntimeDecryptionError`)]??m,r={};`cause`in t&&(r.cause=t.cause),t.context!==void 0&&(r.context=t.context);let i=new n(t.message,r);return t.stack!==void 0&&(i.stack=t.stack),i},SyntaxError:H(e,`SyntaxError`),TypeError:H(e,`TypeError`),URIError:H(e,`URIError`),AggregateError:t=>{let n=`cause`in t?{cause:t.cause}:void 0,r=new e.AggregateError(t.errors,t.message,n);return t.stack!==void 0&&(r.stack=t.stack),r},Error:t=>{let n=`cause`in t?{cause:t.cause}:void 0,r=new e.Error(t.message,n);return r.name=t.name,t.stack!==void 0&&(r.stack=t.stack),r},Float32Array:t=>new e.Float32Array(B(t,e)),Float64Array:t=>new e.Float64Array(B(t,e)),Headers:t=>new e.Headers(t),Int8Array:t=>new e.Int8Array(B(t,e)),Int16Array:t=>new e.Int16Array(B(t,e)),Int32Array:t=>new e.Int32Array(B(t,e)),Map:t=>new e.Map(t),RegExp:t=>new e.RegExp(t.source,t.flags),Set:t=>new e.Set(t),URL:t=>new e.URL(t),WorkflowFunction:e=>Object.assign(()=>{throw Error(`Workflow functions cannot be called directly. Use start() to invoke them.`)},{workflowId:e.workflowId}),URLSearchParams:t=>new e.URLSearchParams(t===`.`?``:t),Uint8Array:t=>new e.Uint8Array(B(t,e)),Uint8ClampedArray:t=>new e.Uint8ClampedArray(B(t,e)),Uint16Array:t=>new e.Uint16Array(B(t,e)),Uint32Array:t=>new e.Uint32Array(B(t,e))}}function pn(){return{StepFunction:e=>{if(typeof e!=`function`)return!1;let t=e.stepId;if(typeof t!=`string`)return!1;let n=e.__closureVarsFn,r=n&&typeof n==`function`?n():void 0,i=`__boundThis`in e,a=i?e.__boundThis:void 0,o=e.__boundArgs,s={stepId:t};return r!==void 0&&(s.closureVars=r),i&&(s.boundThis=a),Array.isArray(o)&&o.length>0&&(s.boundArgs=o),s}}}function mn(e=globalThis){let t=e[Symbol.for(`WORKFLOW_USE_STEP`)];return{StepFunction:e=>{let n=e.stepId,r=e.closureVars;if(!t)throw Error(`WORKFLOW_USE_STEP not found on global object. Step functions cannot be deserialized outside workflow context.`);let i=r?t(n,()=>r):t(n);if(`boundThis`in e){let t=Array.isArray(e.boundArgs)?e.boundArgs:[];return i.bind(e.boundThis,...t)}return i}}}function hn(e){return e.length===4&&/^[a-z0-9]{4}$/.test(e)}const U={DEVALUE_V1:`devl`,ENCRYPTED:`encr`},gn=new TextEncoder,_n=new TextDecoder;function vn(e,t=globalThis,n){let r;switch(e){case`workflow`:r={...an(),...pn(),...dn(t)};break;case`step`:r={...an(),...dn(t)};break;case`client`:r={...an(),...dn(t)};break}return n?{...r,...n}:r}function yn(e,t=globalThis,n){let r;switch(e){case`workflow`:r={...on(t),...mn(t),...fn(t)};break;case`step`:r={...on(t),...fn(t)};break;case`client`:r={...on(t),...fn(t),StepFunction:()=>{throw Error(`Step functions cannot be deserialized in client context.`)}};break}return n?{...r,...n}:r}const W={formatPrefix:U.DEVALUE_V1,serialize(e,t,n){let r=F(e,vn(t,n?.global,n?.extraReducers));return gn.encode(r)},deserialize(e,t,n){let r=yn(t,n?.global,n?.extraRevivers);return Rt(_n.decode(e),r)},deserializeLegacy(e,t,n){return zt(e,yn(t,n?.global,n?.extraRevivers))}},bn=new TextEncoder,xn=new TextDecoder;function G(e,t){if(!(t instanceof Uint8Array))return t;let n=bn.encode(e),r=new Uint8Array(4+t.length);return r.set(n,0),r.set(t,4),r}function Sn(e){if(!(e instanceof Uint8Array)||e.length<4)return null;let t=e.subarray(0,4),n=xn.decode(t);return hn(n)?n:null}function K(e){if(!(e instanceof Uint8Array))return{format:U.DEVALUE_V1,payload:new TextEncoder().encode(JSON.stringify(e))};if(e.length<4)throw Error(`Data too short to contain format prefix: expected at least 4 bytes, got ${e.length}`);let t=e.subarray(0,4),n=xn.decode(t);if(!hn(n))throw Error(`Invalid format prefix: "${n}". Must be 4 characters of [a-z0-9].`);return{format:n,payload:e.subarray(4)}}async function Cn(e){return typeof e==`function`?e():e}async function wn(e,t){if(!t||!(e instanceof Uint8Array))return e;let n=await Gt(t,e);return G(U.ENCRYPTED,n)}async function Tn(e,t){if(!(e instanceof Uint8Array))return e;let n=Sn(e);if(n===U.ENCRYPTED&&!t)throw new m(`Encrypted data encountered but no encryption key is available. Encryption is not configured or no key was provided for this run.`,{context:{operation:`decrypt`,byteLength:e.byteLength,formatPrefix:`encr`}});if(n!==U.ENCRYPTED)return e;let{payload:r}=K(e);try{return await Kt(t,r)}catch(e){throw m.is(e)&&e.context&&(e.context.formatPrefix=n),e}}function En(e,t,n){let[r,...i]=t.split(`
|
|
3
|
-
`),a=i.join(`
|
|
4
|
-
`),o=Dn(r??``,n),s=On(a),c=[`${e} ${r??``}`];return o&&c.push(o),s&&c.push(s),c.join(`
|
|
5
|
-
`)}function Dn(e,t){if(!t||Object.keys(t).length===0)return null;let n=new Set;n.add(`errorStack`),typeof t.errorMessage==`string`&&e.includes(t.errorMessage)&&n.add(`errorMessage`);let r=new Set([`workflowRunId`,`workflowName`,`stepId`,`stepName`,`errorAttribution`,`errorCode`,`errorName`,`errorMessage`,`errorStack`,`hint`,`attempt`,`retryCount`]),i=[],a=q(t,`errorName`),o=q(t,`errorAttribution`);if(a||o){let e=o?o===`sdk`?se(`sdk error`):ie(`user error`):``,t=a?ue(a):``,n=e&&t?T(` · `):``;i.push(` ${e}${n}${t}`)}let l=q(t,`workflowRunId`),u=q(t,`workflowName`);l?i.push(jn(`run`,l,u,c)):u&&i.push(jn(`run`,null,u,c));let d=q(t,`stepId`),f=q(t,`stepName`);if((d||f)&&i.push(jn(`step`,d,f,s)),t.attempt!==void 0||t.retryCount!==void 0){let e=t.attempt,n=t.retryCount;e!==void 0&&n!==void 0?i.push(` ${An(`retry`)} ${e} ${T(`attempts ·`)} ${n} ${T(`max retries`)}`):e!==void 0&&i.push(` ${An(`retry`)} ${e} ${T(`attempts`)}`)}let p=q(t,`errorCode`);p&&p!==a&&i.push(` ${An(`code`)} ${T(p)}`);let m=q(t,`hint`);m&&i.push(` ${te(m)}`);let h=Object.entries(t).filter(([e,t])=>!r.has(e)&&!n.has(e)&&t!=null).sort(([e],[t])=>e.localeCompare(t));for(let[e,t]of h)i.push(` ${An(e)} ${Mn(t)}`);return i.length?i.join(`
|
|
6
|
-
`):null}function On(e){if(!e)return null;let t=e.split(`
|
|
7
|
-
`),n=[],r=0,i=0,a=0,o=()=>{r>0&&(n.push(T(` … ${r} more ${r===1?`frame`:`frames`} in framework internals`)),r=0)};for(let e of t){let t=e.trimStart().startsWith(`at `);if(t&&kn(e)){r++;continue}if(t&&i>=6){a++;continue}o(),n.push(e),t&&i++}return o(),a>0&&n.push(T(` … ${a} more ${a===1?`frame`:`frames`} (run \`pnpm wf inspect run <id>\` for the full stack)`)),n.join(`
|
|
8
|
-
`)}function kn(e){let t=e.trimStart();return t.startsWith(`at `)?!!(t.includes(`node:internal/`)||t.includes(`node_modules/.pnpm/`)||t.includes(`node_modules__pnpm_`)||t.includes(`_next_dist_`)||t.includes(`node_modules/next/`)||t.includes(`node_modules/@opentelemetry/`)||t.includes(`node_modules/vitest/`)||t.includes(`node_modules/@vitest/`)):!1}function q(e,t){let n=e[t];return typeof n==`string`&&n.length>0?n:null}function An(e){return T(e.padEnd(6))}function jn(e,t,n,r){let a=t||T(`—`),s=n&&(e===`run`?o(n):i(n))?`${T(`·`)} ${r(n)}`:``;return` ${An(e)} ${a}${s?` `+s:``}`}function Mn(e){if(typeof e==`string`)return e.includes(`
|
|
9
|
-
`)?e.split(`
|
|
10
|
-
`).map((e,t)=>t===0?e:` ${e}`).join(`
|
|
11
|
-
`):e;if(typeof e==`number`||typeof e==`boolean`)return String(e);try{return JSON.stringify(e)}catch{return String(e)}}var Nn=class e extends Error{steps;globalThis;stepCount;hookCount;waitCount;hookDisposedCount;abortCount;constructor(e,t){let n=[...e.values()],r=0,i=0,a=0,o=0,s=0;for(let e of n)e.type===`step`?r++:e.type===`hook`?e.disposed?o++:e.abortRequested?s++:i++:e.type===`wait`&&a++;let c=[];r>0&&c.push(`${r} ${l(`step`,`steps`,r)}`),i>0&&c.push(`${i} ${l(`hook`,`hooks`,i)}`),a>0&&c.push(`${a} ${l(`wait`,`waits`,a)}`),o>0&&c.push(`${o} hook ${l(`disposal`,`disposals`,o)}`);let u=l(`has`,`have`,r+i+a+o),d=+(r>0)+ +(i>0)+ +(a>0)+ +(o>0),f;f=d>1?`processed`:r>0?`run`:i>0||a>0?`created`:o>0?`processed`:`received`;let p=c.length>0?`${c.join(` and `)} ${u} not been ${f} yet`:`0 steps have not been run yet`;super(p),this.name=`WorkflowSuspension`,this.steps=n,this.globalThis=t,this.stepCount=r,this.hookCount=i,this.waitCount=a,this.hookDisposedCount=o,this.abortCount=s}static is(t){return t instanceof e}};function Pn(){throw new b(`This API is not available inside a workflow function. Workflow functions run in a deterministic VM; move the call to a step function for full Node.js access.`)}function J(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const Fn=J(`workflow.name`),In=J(`workflow.operation`),Ln=J(`workflow.run.id`),Rn=J(`workflow.run.status`),zn=J(`workflow.started_at`),Bn=J(`workflow.events.count`),Vn=J(`workflow.arguments.count`),Hn=J(`workflow.result.type`),Un=J(`workflow.trace.propagated`),Wn=J(`workflow.error.name`),Gn=J(`workflow.error.message`),Kn=J(`workflow.error.code`),qn=J(`workflow.steps.created`),Jn=J(`workflow.hooks.created`),Yn=J(`workflow.waits.created`),Xn=J(`step.name`),Zn=J(`step.id`),Qn=J(`step.attempt`),$n=J(`step.status`),er=J(`step.max_retries`),tr=J(`step.skipped`),nr=J(`step.skip_reason`),rr=J(`step.arguments.count`),ir=J(`step.result.type`),ar=J(`step.error.name`),or=J(`step.error.message`),sr=J(`step.fatal_error`),cr=J(`step.retry.exhausted`),lr=J(`step.retry.timeout_seconds`),ur=J(`step.retry.will_retry`),dr=J(`messaging.system`),fr=J(`messaging.destination.name`),pr=J(`messaging.message.id`),mr=J(`messaging.operation.type`),hr=J(`workflow.queue.overhead_ms`),gr=J(`deployment.id`),_r=J(`workflow.hook.token`),vr=J(`workflow.hook.id`),yr=J(`workflow.hook.found`),br=J(`workflow.suspension.state`),xr=J(`workflow.suspension.hook_count`),Sr=J(`workflow.suspension.step_count`),Cr=J(`workflow.suspension.wait_count`),wr=J(`error.type`),Tr=J(`workflow.events.pages_loaded`),Er=J(`workflow.queue.deserialize_time_ms`),Dr=J(`workflow.queue.execution_time_ms`),Or=J(`workflow.queue.serialize_time_ms`),kr=J(`peer.service`),Ar=J(`rpc.system`),jr=J(`rpc.service`),Mr=J(`rpc.method`),Nr=J(`error.retryable`),Pr=J(`error.category`);async function Fr(){let e=await Y.value;if(!e)return{};let t={};return e.propagation.inject(e.context.active(),t),t}async function Ir(e){let t=await Y.value;if(t)return t.propagation.extract(t.context.active(),e)}async function Lr(e,t){if(!e)return t();let n=await Y.value;if(!n)return t();let r=await Ir(e);return r?n.context.with(r,async()=>await t()):t()}const Y=a(async()=>{try{return await import(`./src-B54rYDvB.js`).then(t=>e(t.t(),1))}catch{return X.info(`OpenTelemetry not available, tracing will be disabled`),null}}),Rr=a(async()=>{let e=await Y.value;return e?e.trace.getTracer(`workflow`):null});async function zr(e,...t){let[n,r]=await Promise.all([Rr.value,Y.value]),{fn:i,opts:a}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!i)throw Error(`Function to trace must be provided`);return!n||!r?await i():n.startActiveSpan(e,a,async e=>{try{let t=await i(e);return e.setStatus({code:r.SpanStatusCode.OK}),t}catch(t){throw e.setStatus({code:r.SpanStatusCode.ERROR,message:t.message}),Br(t,r,e),t}finally{e.end()}})}function Br(e,t,n){!e||!Nn.is(e)||(n.setStatus({code:t.SpanStatusCode.OK}),n.setAttributes({...br(`suspended`),...Sr(e.stepCount),...xr(e.hookCount),...Cr(e.waitCount)}))}async function Vr(e){let[t,n]=await Promise.all([Ir(e),Y.value]);if(!(!t||!n))return n.trace.getSpanContext(t)}async function Hr(){return await Wr(e=>e.trace.getActiveSpan())}async function Ur(e){return Wr(t=>t.SpanKind[e])}async function Wr(e){let t=await Y.value;if(t)return await e(t)}function Gr(){return Wr(e=>{let t=e.trace.getActiveSpan()?.spanContext();if(t)return[{context:t}]})}async function Kr(e,t){let n=await Y.value;if(!n)return t();let r=n.propagation.createBaggage({"workflow.run_id":{value:e.workflowRunId},"workflow.name":{value:e.workflowName}}),i=n.propagation.setBaggage(n.context.active(),r);return n.context.with(i,()=>t())}function qr(e,t){if(!t)return!1;let n=!1;for(let r of t.split(`,`)){let t=r.trim();if(!t)continue;let i=t.startsWith(`-`),a=i?t.slice(1):t;RegExp(`^${a.replace(/[|\\{}()[\]^$+?.]/g,`\\$&`).replace(/\*/g,`.*`)}$`).test(e)&&(n=!i)}return n}function Jr(e){let t=n=>{let r=t=>{let r=`workflow:${e}:${t}`;return(i,a)=>{let o=Object.keys(n).length>0,s=a&&Object.keys(a).length>0,c=o||s?{...n,...a??{}}:void 0;(t===`error`||t===`warn`)&&(t===`error`?console.error:console.warn)(En(`[workflow-sdk]`,i,c)),qr(r,process.env.DEBUG)&&(console.debug(`[${r}] ${i}`,c??``),Hr().then(n=>{n?.addEvent(`${t}.${e}`,{message:i,...c})}).catch(()=>{}))}};return{debug:r(`debug`),info:r(`info`),warn:r(`warn`),error:r(`error`),child:e=>t({...n,...e}),forRun:(e,r,i)=>t({...n,workflowRunId:e,...r===void 0?{}:{workflowName:r},...i??{}})}};return t({})}const Yr=Jr(`step`),X=Jr(`runtime`),Xr=Jr(`webhook`),Zr=Jr(`events`);Jr(`adapter`);function Qr(e){if(m.is(e))throw e}function Z(e,t){let n=e.includes(`return value`)?`returning`:`passing`,r=`Failed to serialize ${e}`;t instanceof N&&t.path&&(r+=` at path "${t.path}"`);let i=`Ensure you're ${n} workflow serializable types. Check the serialization docs to see what's serializable: https://workflow-sdk.dev/docs/foundations/serialization`;return t instanceof N&&t.value!==void 0&&X.error(`Serialization failed`,{context:e,problematicValue:t.value}),{message:r,hint:i}}async function $r(e,t,n){try{let r=W.serialize(e,`client`,n);return wn(G(U.DEVALUE_V1,r),t)}catch(e){Qr(e);let{message:t,hint:n}=Z(`client value`,e);throw new h(t,{hint:n,cause:e})}}async function ei(e,t,n){let r=await Tn(e,t);if(!(r instanceof Uint8Array)){if(W.deserializeLegacy)return W.deserializeLegacy(r,`client`,n);throw Error(`Cannot deserialize non-binary data without legacy support`)}let{format:i,payload:a}=K(r);if(i===U.DEVALUE_V1)return W.deserialize(a,`client`,n);throw Error(`Unsupported serialization format: ${i}`)}async function ti(e,t,n){try{let r=W.serialize(e,`step`,n);return wn(G(U.DEVALUE_V1,r),t)}catch(e){Qr(e);let{message:t,hint:n}=Z(`step value`,e);throw new h(t,{hint:n,cause:e})}}async function ni(e,t,n){let r=await Tn(e,t);if(!(r instanceof Uint8Array)){if(W.deserializeLegacy)return W.deserializeLegacy(r,`step`,n);throw Error(`Cannot deserialize non-binary data without legacy support`)}let{format:i,payload:a}=K(r);if(i===U.DEVALUE_V1)return W.deserialize(a,`step`,n);throw Error(`Unsupported serialization format: ${i}`)}function ri(e,t){if(!(e instanceof Uint8Array)){if(W.deserializeLegacy)return W.deserializeLegacy(e,`workflow`,t);throw Error(`Cannot deserialize non-binary data without legacy support`)}let{format:n,payload:r}=K(e);if(n===U.DEVALUE_V1)return W.deserialize(r,`workflow`,t);throw Error(`Unsupported serialization format: ${n}`)}const ii=Symbol.for(`WORKFLOW_STEP_CONTEXT_STORAGE`),ai=globalThis[ii]??(globalThis[ii]=new me);function oi(e,t,n){if(e===0&&t===0&&n===0)return null;let r=[];e>0&&r.push(`${e} ${l(`step`,`steps`,e)}`),t>0&&r.push(`${t} ${l(`hook`,`hooks`,t)}`),n>0&&r.push(`${n} ${l(`timer`,`timers`,n)}`);let i=[];e>0&&i.push(`steps are completed`),t>0&&i.push(`hooks are received`),n>0&&i.push(`timers have elapsed`);let a=i.join(` and `);return`${r.join(` and `)} to be enqueued\n Workflow will suspend and resume when ${a}`}function si(e,t){let n=`${e.replace(`wrun_`,`strm_`)}_user`;return t?`${n}_${Buffer.from(t,`utf-8`).toString(`base64url`)}`:n}function ci(e){return`strm_${e}_system_abort`}function li(e){if(!e.startsWith(`abrt_`))throw Error(`Invalid abort hook token format: expected "abrt_" prefix, got "${e}"`);return ci(e.slice(5))}async function ui(e){let t=e();return(0,Ht.waitUntil)(t.catch(()=>{})),t}var Q;(function(e){e[e.Consumed=0]=`Consumed`,e[e.NotConsumed=1]=`NotConsumed`,e[e.Finished=2]=`Finished`})(Q||={});var di=class{eventIndex;events=[];callbacks=[];onConsumedEvent;onUnconsumedEvent;getPromiseQueue;pendingUnconsumedCheck=null;pendingUnconsumedTimeout=null;unconsumedCheckVersion=0;constructor(e,t){this.events=e,this.eventIndex=0,this.onConsumedEvent=t.onConsumedEvent,this.onUnconsumedEvent=t.onUnconsumedEvent,this.getPromiseQueue=t.getPromiseQueue}subscribe(e){this.callbacks.push(e),this.pendingUnconsumedCheck!==null&&(this.unconsumedCheckVersion++,this.pendingUnconsumedCheck=null,this.pendingUnconsumedTimeout!==null&&(clearTimeout(this.pendingUnconsumedTimeout),this.pendingUnconsumedTimeout=null)),process.nextTick(this.consume)}notifyConsumedEvent(e){if(this.onConsumedEvent)try{this.onConsumedEvent(e)}catch(e){Zr.error(`onConsumedEvent callback threw an error`,{error:e})}}consume=()=>{let e=this.events[this.eventIndex]??null;for(let t=0;t<this.callbacks.length;t++){let n=this.callbacks[t],r=Q.NotConsumed;try{r=n(e)}catch(e){Zr.error(`EventConsumer callback threw an error`,{error:e})}if(r===Q.Consumed||r===Q.Finished){e!==null&&this.notifyConsumedEvent(e),this.eventIndex++,r===Q.Finished&&this.callbacks.splice(t,1),process.nextTick(this.consume);return}}if(e!==null){let t=++this.unconsumedCheckVersion;this.pendingUnconsumedCheck=this.getPromiseQueue().then(()=>new Promise(e=>setTimeout(e,0))).then(()=>this.getPromiseQueue()).then(()=>{this.pendingUnconsumedTimeout=setTimeout(()=>{this.pendingUnconsumedTimeout=null,this.unconsumedCheckVersion===t&&(this.pendingUnconsumedCheck=null,this.onUnconsumedEvent(e))},100)})}}},fi=class{aborted=!1;reason=void 0;[E];[O];#e=[];#t=null;get onabort(){return this.#t}set onabort(e){this.#t=e,e&&this.aborted&&e.call(this)}constructor(e,t){this[E]=e,this[O]=t}_setAborted(e){if(!this.aborted){this.aborted=!0,this.reason=e,this.#t&&this.#t.call(this);for(let e of this.#e)e();this.#e=[]}}addEventListener(e,t){if(e===`abort`){if(this.aborted){t();return}this.#e.push(t)}}removeEventListener(e,t){e===`abort`&&(this.#e=this.#e.filter(e=>e!==t))}throwIfAborted(){if(this.aborted)throw this.reason??new DOMException(`The operation was aborted.`,`AbortError`)}};function pi(e){return class{signal;[E];[O];constructor(){let t=e.generateUlid(),n=ci(t),r=`abrt_${t}`;this[E]=n,this[O]=r,this.signal=new fi(n,r);let i=`hook_${e.generateUlid()}`;e.invocationsQueue.set(i,{type:`hook`,correlationId:i,token:r,isWebhook:!1,isSystem:!0}),e.eventsConsumer.subscribe(t=>{if(!t||t.correlationId!==i)return Q.NotConsumed;let n=`eventData`in t&&t.eventData&&`token`in t.eventData?t.eventData.token:void 0;if(typeof n==`string`&&n!==this[O])return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new y(`Replay divergence: abort hook event ${t.eventType} for ${i} belongs to token "${n}", but the current abort hook expects "${this[O]}"`,{eventId:t.eventId}))}),Q.Finished;if(t.eventType===`hook_created`){let t=e.invocationsQueue.get(i);return t&&t.type===`hook`&&(t.hasCreatedEvent=!0),Q.Consumed}if(t.eventType===`hook_received`){let n=t.eventData?.payload;return e.promiseQueue=e.promiseQueue.then(async()=>{let t;if(n!==void 0)try{let r=await Zi(n,e.runId,e.encryptionKey,e.globalThis);r&&typeof r==`object`&&`reason`in r&&(t=r.reason)}catch{}this.signal._setAborted(t)}),e.invocationsQueue.delete(i),Q.Consumed}return t.eventType===`hook_disposed`?(e.invocationsQueue.delete(i),Q.Finished):Q.NotConsumed})}abort(t){if(!this.signal.aborted){this.signal._setAborted(t);for(let[,n]of e.invocationsQueue)if(n.type===`hook`&&n.token===this[O]){n.abortRequested=!0,n.abortReason=t;break}}}}}function mi(){return{abort(e){let t=new fi(``,``);return t._setAborted(e??new DOMException(`The operation was aborted.`,`AbortError`)),t},any(e){let t=new fi(``,``),n=Array.from(e);for(let e of n)if(e.aborted)return t._setAborted(e.reason),t;let r=[],i=()=>{for(let{signal:e,listener:t}of r)e.removeEventListener&&e.removeEventListener(`abort`,t);r.length=0};for(let e of n){if(!e.addEventListener)continue;let n=()=>{t.aborted||(t._setAborted(e.reason),i())};r.push({signal:e,listener:n}),e.addEventListener(`abort`,n)}return t},timeout(){throw Error(`AbortSignal.timeout() is not supported in workflow functions. Use sleep() with an AbortController instead. See: /docs/errors/abort-signal-timeout-in-workflow`)}}}const hi=de();function gi(e){try{return e.getReader({mode:`byob`}).releaseLock(),`bytes`}catch{}}function _i(e){return Qr(e),e instanceof h&&e.cause!==void 0||e instanceof b&&e.cause!==void 0?e.cause:e}function vi(e,t){let n=new TextEncoder,r={resolved:!1,key:void 0};return new TransformStream({async transform(i,a){try{r.resolved||=(r.key=await Cn(t),!0);let o=F(i,e),s=n.encode(o),c=G(U.DEVALUE_V1,s);if(r.key){let e=await Gt(r.key,c);c=G(U.ENCRYPTED,e)}let l=new Uint8Array(4+c.length);new DataView(l.buffer).setUint32(0,c.length,!1),l.set(c,4),a.enqueue(l)}catch(e){if(m.is(e)){a.error(e);return}let{message:t,hint:n}=Z(`stream chunk`,e);a.error(new h(t,{hint:n,cause:e}))}}})}function yi(e,t){let n=new TextDecoder,r=new Uint8Array,i={resolved:!1,key:void 0};function a(e){let t=new Uint8Array(r.length+e.length);t.set(r,0),t.set(e,r.length),r=t}async function o(a){for(i.resolved||=(i.key=await Cn(t),!0);r.length>=4;){let t=new DataView(r.buffer,r.byteOffset,r.byteLength).getUint32(0,!1);if(r.length<4+t)break;let o=r.slice(4,4+t);r=r.slice(4+t);let{format:s,payload:c}=K(o);if(s===U.ENCRYPTED){if(!i.key){a.error(new m(`Encrypted stream data encountered but no encryption key is available. Encryption is not configured or no key was provided for this run.`,{context:{operation:`decrypt`,byteLength:c.byteLength,formatPrefix:`encr`}}));return}let e;try{e=await Kt(i.key,c)}catch(e){throw m.is(e)&&e.context&&(e.context.formatPrefix=s),e}({format:s,payload:c}=K(e))}if(s===U.DEVALUE_V1){let t=n.decode(c);a.enqueue(Rt(t,e))}}}return new TransformStream({async transform(t,i){if(r.length===0&&t.length>=4){let e=new DataView(t.buffer,t.byteOffset,t.byteLength).getUint32(0,!1);if(e>0&&e<1e8){a(t),await o(i);return}}else if(r.length>0){a(t),await o(i);return}let s=n.decode(t).split(`
|
|
12
|
-
`);for(let t of s)t.length>0&&i.enqueue(Rt(t,e))},async flush(e){r.length>0&&await o(e)}})}var bi=class extends ReadableStream{#e;constructor(e,t,n){if(typeof t!=`string`||t.length===0)throw new b(`"name" is required, got "${t}"`);super({type:`bytes`,pull:async r=>{let i=this.#e;if(!i){let r=await(await R()).streams.get(e,t,n);i=this.#e=r.getReader()}if(!i){r.error(Error(`Failed to get reader`));return}let a=await i.read();a.done?(this.#e=void 0,r.close()):r.enqueue(a.value)},cancel:async e=>{this.#e&&=(await this.#e.cancel(e).catch(()=>{}),void 0)}})}},$=class extends WritableStream{constructor(e,t){if(typeof e!=`string`)throw new b(`"runId" must be a string, got "${typeof e}"`);if(typeof t!=`string`||t.length===0)throw new b(`"name" is required, got "${t}"`);let n=R(),r=[],i=null,a=null,o,s=async()=>{if(i&&=(clearTimeout(i),null),r.length===0)return;let a=r.slice(),s=await n;if(o===void 0&&(o=s.streamFlushIntervalMs??10),typeof s.streams.writeMulti==`function`&&a.length>1)await s.streams.writeMulti(e,t,a);else for(let n of a)await s.streams.write(e,t,n);r=[]},c=[],l=()=>{i||=setTimeout(()=>{i=null;let e=c;c=[],a=s().then(()=>{for(let t of e)t.resolve()},t=>{for(let n of e)n.reject(t)})},o??10)};super({async write(e){a&&=(await a,null),r.push(e),l(),await new Promise((e,t)=>{c.push({resolve:e,reject:t})})},async close(){a&&=(await a,null),await s(),await(await n).streams.close(e,t)},abort(e){i&&=(clearTimeout(i),null),r=[];let t=c;c=[];let n=e??Error(`Stream aborted`);for(let e of t)e.reject(n)}})}};function xi(e=globalThis){return{...an(),...pn(),...dn(e),Request:t=>{if(!(t instanceof e.Request))return!1;let n={method:t.method,url:t.url,headers:t.headers,body:t.body,duplex:t.duplex},r=t[w];return r&&(n.responseWritable=r),t.signal&&(t.signal.aborted||t.signal[E])&&(n.signal=t.signal),n},Response:t=>t instanceof e.Response?{type:t.type,url:t.url,status:t.status,statusText:t.statusText,headers:t.headers,body:t.body,redirected:t.redirected}:!1}}function Si(e,t,n,r,i,a){let o=t[E],s=t[O];if(!o){let e=(n[oe]||hi)();o=ci(e),s=`abrt_${e}`,t[E]=o,t[O]=s,t.signal&&(t.signal[E]=o,t.signal[O]=s)}return wi(e,o,i,a,r),{streamName:o,hookToken:s,aborted:e.aborted,reason:e.aborted?e.reason:void 0}}function Ci(e,t){let n=t[E]??t.signal?.[E],r=t[O]??t.signal?.[O];if(!n)throw Error(`AbortController/AbortSignal stream name is not set`);return{streamName:n,hookToken:r,aborted:e.aborted,reason:e.aborted?e.reason:void 0}}function wi(e,t,n,r,i){e.aborted||e[ae]||(e[ae]=!0,e.addEventListener(`abort`,()=>{i.push((async()=>{try{let i=await Cn(r),a=await Wi({aborted:!0,reason:e.reason},n,i),o=new $(n,t).getWriter();await o.write(a),await o.close()}catch{}})())},{once:!0}))}function Ti(e=globalThis,t,n,r){return{...xi(e),ReadableStream:i=>{if(!(i instanceof e.ReadableStream))return!1;if(i.locked)throw new h(`ReadableStream is locked and cannot be passed across a workflow boundary.`,{hint:`Pass the stream before calling .getReader() / .pipeThrough() / .pipeTo(), or tee it with .tee() and pass one of the branches.`});let a=`strm_${(e[oe]||hi)()}`,o=gi(i),s=new $(n,a);o===`bytes`?t.push(i.pipeTo(s)):t.push(i.pipeThrough(vi(Ti(e,t,n,r),r)).pipeTo(s));let c={name:a};return o&&(c.type=o),c},WritableStream:r=>{if(!(r instanceof e.WritableStream))return!1;let i=r[D],a=r[re];if(typeof i==`string`&&typeof a==`string`){let e={name:i,runId:a},t=r[C];return typeof t==`string`&&(e.deploymentId=t),e}let o=`strm_${(e[oe]||hi)()}`,s=new bi(n,o);return t.push(s.pipeTo(r)),{name:o}},AbortController:i=>!e.AbortController||typeof e.AbortController!=`function`||!(i instanceof e.AbortController)?!1:Si(i.signal,i,e,t,n,r),AbortSignal:i=>!e.AbortSignal||typeof e.AbortSignal!=`function`||!(i instanceof e.AbortSignal)?!1:Si(i,i,e,t,n,r)}}function Ei(e=globalThis){return{...xi(e),ReadableStream:t=>{if(!(t instanceof e.ReadableStream))return!1;let n=t[S];if(n!==void 0)return{bodyInit:n};let r=t[D];if(!r)throw new b("ReadableStream `name` is not set");let i={name:r},a=t[le];return a&&(i.type=a),i},WritableStream:t=>{if(!(t instanceof e.WritableStream))return!1;let n=t[D];if(!n)throw new b("WritableStream `name` is not set");let r={name:n},i=t[re];typeof i==`string`&&(r.runId=i);let a=t[C];return typeof a==`string`&&(r.deploymentId=a),r},AbortController:t=>{if(!t||!t.signal)return!1;let n=t,r=n[E]??n.signal?.[E],i=e.AbortController&&typeof e.AbortController==`function`&&t instanceof e.AbortController;return!r&&!i?!1:Ci(t.signal,n)},AbortSignal:t=>{let n=t?.[E],r=e.AbortSignal&&typeof e.AbortSignal==`function`&&t instanceof e.AbortSignal;return!n&&!r?!1:Ci(t,t)}}}function Di(e=globalThis,t,n,r){return{...xi(e),ReadableStream:i=>{if(!(i instanceof e.ReadableStream))return!1;if(i.locked)throw new h(`ReadableStream is locked and cannot be passed across a workflow boundary.`,{hint:`Pass the stream before calling .getReader() / .pipeThrough() / .pipeTo(), or tee it with .tee() and pass one of the branches.`});let a=i[D],o=i[le];if(!a){a=`strm_${(e[oe]||hi)()}`,o=gi(i);let s=new $(n,a);o===`bytes`?t.push(i.pipeTo(s)):t.push(i.pipeThrough(vi(Di(e,t,n,r),r)).pipeTo(s))}let s={name:a};return o&&(s.type=o),s},WritableStream:i=>{if(!(i instanceof e.WritableStream))return!1;let a=i[D],o=i[re];a||(a=`strm_${(e[oe]||hi)()}`,t.push(new bi(n,a).pipeThrough(yi(Li(e,t,n,r),r)).pipeTo(i)));let s={name:a};typeof o==`string`&&(s.runId=o);let c=i[C];return typeof c==`string`&&(s.deploymentId=c),s},AbortController:i=>!e.AbortController||typeof e.AbortController!=`function`||!(i instanceof e.AbortController)?!1:Si(i.signal,i,e,t,n,r),AbortSignal:i=>!e.AbortSignal||typeof e.AbortSignal!=`function`||!(i instanceof e.AbortSignal)?!1:Si(i,i,e,t,n,r)}}function Oi(e,t,n,r){let i=new AbortController;return r.push((async()=>{try{let r=new bi(t,n).getReader(),a=await Promise.race([r.read(),new Promise(e=>{if(i.signal.aborted){e({value:void 0,done:!0});return}i.signal.addEventListener(`abort`,()=>e({value:void 0,done:!0}),{once:!0})})]);if(r.releaseLock(),a.value&&!a.done)try{let n=ai.getStore(),r=await Gi(a.value,t,n?.encryptionKey);e.abort(r?.reason)}catch{e.abort()}}catch{}})()),i}function ki(e,t,n){let r=e,i=e.signal;r[E]=t.streamName,r[O]=t.hookToken,i[E]=t.streamName,i[O]=t.hookToken,n&&(r[ce]=n,i[ce]=n)}function Ai(e,t){let n=e,r=t;n[E]!==void 0&&(r[E]=n[E]),n[O]!==void 0&&(r[O]=n[O]),n[ce]!==void 0&&(r[ce]=n[ce])}function ji(e,t,n){let r=new AbortController;e.aborted?(ki(r,e),r.abort(e.reason)):e.streamName?ki(r,e,Oi(r,n,e.streamName,t)):ki(r,e);let i=r.abort.bind(r);return r.abort=t=>{if(r.signal.aborted)return;i(t);let n=ai.getStore();n&&(n.ops.push((async()=>{try{let r=await Wi({aborted:!0,reason:t},n.workflowMetadata.workflowRunId,n.encryptionKey),i=new $(n.workflowMetadata.workflowRunId,e.streamName).getWriter();await i.write(r),await i.close()}catch{}})()),e.hookToken&&n.ops.push((async()=>{try{let{resumeHook:n}=await Promise.resolve().then(()=>Ea);await n(e.hookToken,{aborted:!0,reason:t})}catch{}})()))},r}function Mi(e,t,n){let r=new AbortController;return e.aborted?(ki(r,e),r.abort(e.reason)):e.streamName?ki(r,e,Oi(r,n,e.streamName,t)):ki(r,e),r.signal}function Ni(e=globalThis){return{...on(e),...fn(e)}}async function Pi(e,t){let n=await R();if(!n.getEncryptionKeyForRun)return;let r=t?await n.getEncryptionKeyForRun(e,{deploymentId:t}):await n.getEncryptionKeyForRun(await n.runs.get(e));return r?await Wt(r,[`encrypt`]):void 0}function Fi(e=globalThis,t,n,r){return{...Ni(e),StepFunction:()=>{throw new h(`Step functions cannot be deserialized in client context. Step functions should not be returned from workflows.`,{hint:`A step function reference reached the client. Return a serializable value (e.g. the step result) instead of the step itself.`})},WorkflowFunction:e=>Object.assign(()=>{throw new h(`Workflow functions cannot be called directly. Use start() to invoke them.`,{hint:"Wrap the workflow with `start(workflowFn, { ... })` from `workflow` to begin a run instead of invoking it like a normal function."})},{workflowId:e.workflowId}),Request:t=>{let n={method:t.method,headers:new e.Headers(t.headers),body:t.body,duplex:t.duplex};t.signal&&(n.signal=t.signal);let r=new e.Request(t.url,n);return t.signal&&Ai(t.signal,r.signal),r},Response:t=>new e.Response(t.body,{status:t.status,statusText:t.statusText,headers:new e.Headers(t.headers)}),ReadableStream:i=>{if(`bodyInit`in i){let t=i.bodyInit;return new e.Response(t).body}let a=new bi(n,i.name,i.startIndex);if(i.type===`bytes`){let n=I();t.push(n.promise);let{readable:r,writable:i}=new e.TransformStream;return L(a,i,n).catch(()=>{}),Xt(r,n),r}else{let i=yi(Fi(e,t,n,r),r),o=I();return t.push(o.promise),L(a,i.writable,o).catch(()=>{}),Xt(i.readable,o),i.readable}},WritableStream:i=>{let a=typeof i.runId==`string`?i.runId:n,o=a===n?r:Pi(a,i.deploymentId),s=vi(Ti(e,t,a,o),o),c=new $(a,i.name),l=I();return t.push(l.promise),L(s.readable,c,l).catch(()=>{}),Yt(s.writable,l),Object.defineProperty(s.writable,D,{value:i.name,writable:!1}),Object.defineProperty(s.writable,re,{value:a,writable:!1}),typeof i.deploymentId==`string`&&Object.defineProperty(s.writable,C,{value:i.deploymentId,writable:!1}),s.writable},AbortController:e=>ji(e,t,n),AbortSignal:e=>Mi(e,t,n)}}function Ii(e=globalThis){return{...Ni(e),...mn(e),Request:t=>{Object.setPrototypeOf(t,e.Request.prototype);let n=t.responseWritable;return n&&(t[w]=n,delete t.responseWritable,t.respondWith=()=>{throw new h("`respondWith()` must be called from within a step function.",{hint:'Move the `respondWith(...)` call inside a `"use step"` function — it cannot be invoked from a workflow context.'})}),t},WorkflowFunction:e=>Object.assign(()=>{throw new h(`Workflow functions cannot be called directly. Use start() to invoke them.`,{hint:"Wrap the workflow with `start(workflowFn, { ... })` from `workflow` to begin a run instead of invoking it like a normal function."})},{workflowId:e.workflowId}),Response:t=>(Object.setPrototypeOf(t,e.Response.prototype),t),ReadableStream:t=>`bodyInit`in t?Object.create(e.ReadableStream.prototype,{[S]:{value:t.bodyInit,writable:!1}}):Object.create(e.ReadableStream.prototype,{[D]:{value:t.name,writable:!1},[le]:{value:t.type,writable:!1}}),WritableStream:t=>{let n={[D]:{value:t.name,writable:!1}};return typeof t.runId==`string`&&(n[re]={value:t.runId,writable:!1}),typeof t.deploymentId==`string`&&(n[C]={value:t.deploymentId,writable:!1}),Object.create(e.WritableStream.prototype,n)},AbortController:e=>{let t=new fi(e.streamName,e.hookToken);return e.aborted&&t._setAborted(e.reason),{[E]:e.streamName,[O]:e.hookToken,signal:t,abort:()=>{}}},AbortSignal:e=>{let t=new fi(e.streamName,e.hookToken);return e.aborted&&t._setAborted(e.reason),t}}}function Li(e=globalThis,t,n,r,i){return{...Ni(e),StepFunction:e=>{let t=e.stepId,n=e.closureVars,r=`boundThis`in e,i=r?e.boundThis:void 0,a=Array.isArray(e.boundArgs)?e.boundArgs:[],o=fe(t);if(!o)throw new h(`Step function "${t}" not found. Make sure the step function is registered.`,{hint:`Make sure the step file is included in your build (i.e. it is listed in the workflow manifest), and that the SWC plugin is configured for the file.`});if(!n&&!r&&a.length===0)return o;let s=function(...e){let t=r?i:this,s=a.length>0?[...a,...e]:e;if(n){let e=ai.getStore();if(!e)throw new b(`Cannot call step function with closure variables outside step context`);let r={...e,closureVars:n};return ai.run(r,()=>o.apply(t,s))}return o.apply(t,s)};return Object.defineProperty(s,"name",{value:o.name}),Object.defineProperty(s,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),o.maxRetries!==void 0&&(s.maxRetries=o.maxRetries),s},WorkflowFunction:e=>Object.assign(()=>{throw new h(`Workflow functions cannot be called directly. Use start() to invoke them.`,{hint:"Wrap the workflow with `start(workflowFn, { ... })` from `workflow` to begin a run instead of invoking it like a normal function."})},{workflowId:e.workflowId}),Request:t=>{let n=t.responseWritable,r={method:t.method,headers:new e.Headers(t.headers),body:t.body,duplex:t.duplex};t.signal&&(r.signal=t.signal);let i=new e.Request(t.url,r);return t.signal&&Ai(t.signal,i.signal),n&&(i.respondWith=async e=>{let t=n.getWriter();await t.write(e),await t.close()}),i},Response:t=>new e.Response(t.body,{status:t.status,statusText:t.statusText,headers:new e.Headers(t.headers)}),ReadableStream:a=>{if(`bodyInit`in a){let t=a.bodyInit;return new e.Response(t).body}let o=new bi(n,a.name);if(a.type===`bytes`){let n=I();t.push(n.promise);let{readable:r,writable:i}=new e.TransformStream;return L(o,i,n).catch(()=>{}),Xt(r,n),r}else{let a=yi(Li(e,t,n,r,i),r),s=I();return t.push(s.promise),L(o,a.writable,s).catch(()=>{}),Xt(a.readable,s),a.readable}},WritableStream:a=>{let o=typeof a.runId==`string`?a.runId:n,s=typeof a.deploymentId==`string`?a.deploymentId:o===n?i:void 0,c=o===n?r:Pi(o,s),l=vi(Di(e,t,o,c),c),u=new $(o,a.name),d=I();return t.push(d.promise),L(l.readable,u,d).catch(()=>{}),Yt(l.writable,d),Object.defineProperty(l.writable,D,{value:a.name,writable:!1}),Object.defineProperty(l.writable,re,{value:o,writable:!1}),s&&Object.defineProperty(l.writable,C,{value:s,writable:!1}),l.writable},AbortController:e=>ji(e,t,n),AbortSignal:e=>Mi(e,t,n)}}async function Ri(e,t){return await wn(e,t)}async function zi(e,t){return Tn(e,t)}async function Bi(e,t,n,r=[],i=globalThis,a=!1){if(a)return cn(F(e,Ti(i,r,t,n)));try{return await $r(e,n,{global:i,extraReducers:$i(Ti(i,r,t,n))})}catch(e){let t=_i(e),{message:n,hint:r}=Z(`workflow arguments`,t);throw new h(n,{hint:r,cause:t})}}async function Vi(e,t,n,r=globalThis,i={}){return ri(await zi(e,n),{global:r,extraRevivers:{...ea(Ii(r)),...i}})}async function Hi(e,t,n,r=globalThis,i=!1){if(i)return cn(F(e,Ei(r)));try{return await ti(e,n,{global:r,extraReducers:$i(Ei(r))})}catch(e){let t=_i(e),{message:n,hint:r}=Z(`workflow return value`,t);throw new h(n,{hint:r,cause:t})}}async function Ui(e,t,n,r=[],i=globalThis,a={}){return ei(e,n,{global:i,extraRevivers:{...ea(Fi(i,r,t,n)),...a}})}async function Wi(e,t,n,r=globalThis,i=!1){if(i)return cn(F(e,Ei(r)));try{return await ti(e,n,{global:r,extraReducers:$i(Ei(r))})}catch(e){let t=_i(e),{message:n,hint:r}=Z(`step arguments`,t);throw new h(n,{hint:r,cause:t})}}async function Gi(e,t,n,r=[],i=globalThis,a={},o){return ni(e,n,{global:i,extraRevivers:{...ea(Li(i,r,t,n,o)),...a}})}async function Ki(e,t,n,r=[],i=globalThis,a=!1){if(a)return cn(F(e,Di(i,r,t,n)));try{return await ti(e,n,{global:i,extraReducers:$i(Di(i,r,t,n))})}catch(e){let t=_i(e),{message:n,hint:r}=Z(`step return value`,t);throw new h(n,{hint:r,cause:t})}}async function qi(e,t,n,r=[],i=globalThis){try{let a=F(e,Di(i,r,t,n)),o=new TextEncoder().encode(a);return await Ri(G(U.DEVALUE_V1,o),n)}catch(e){let t=_i(e),{message:n,hint:r}=Z(`step error`,t);throw new h(n,{hint:r,cause:t})}}async function Ji(e,t,n,r=globalThis,i={}){let a=await zi(e,n);if(!(a instanceof Uint8Array))return zt(a,{...Ii(r),...i});let{format:o,payload:s}=K(a);if(o===U.DEVALUE_V1)return Rt(new TextDecoder().decode(s),{...Ii(r),...i});throw Error(`Unsupported serialization format: ${o}`)}async function Yi(e,t,n,r=globalThis){try{let t=F(e,Ei(r)),i=new TextEncoder().encode(t);return await Ri(G(U.DEVALUE_V1,i),n)}catch(e){let t=_i(e),{message:n,hint:r}=Z(`run error`,t);throw new h(n,{hint:r,cause:t})}}async function Xi(e,t,n,r=[],i=globalThis,a={}){let o=await zi(e,n);if(!(o instanceof Uint8Array))return zt(o,{...Fi(i,r,t,n),...a});let{format:s,payload:c}=K(o);if(s===U.DEVALUE_V1)return Rt(new TextDecoder().decode(c),{...Fi(i,r,t,n),...a});throw Error(`Unsupported serialization format: ${s}`)}async function Zi(e,t,n,r=globalThis,i={}){return ri(await zi(e,n),{global:r,extraRevivers:{...ea(Ii(r)),...i}})}const Qi=[`ReadableStream`,`WritableStream`,`Request`,`Response`,`StepFunction`,`AbortController`,`AbortSignal`];function $i(e){let t={};for(let n of Qi)n in e&&(t[n]=e[n]);return t}function ea(e){let t={};for(let n of Qi)n in e&&(t[n]=e[n]);return t}const ta=[{format:U.ENCRYPTED,minVersion:`4.2.0-beta.64`}],na=new Set([U.DEVALUE_V1]);function ra(e){if(!e||!Ut.default.valid(e))return{supportedFormats:na};let t=new Set(na);for(let{format:n,minVersion:r}of ta)Ut.default.gte(e,r)&&t.add(n);return{supportedFormats:t}}const ia=`5.0.0-beta.13`,aa=/^[a-zA-Z0-9_\-./@]+$/;function oa(e){if(!aa.test(e))throw Error(`Invalid workflow name "${e}": must only contain alphanumeric characters, underscores, hyphens, dots, forward slashes, or at signs`);return`__wkf_workflow_${e}`}const sa=de();function ca(e){return`__health_check__${e}`}function la(e){let t=ne.safeParse(e);if(t.success)return t.data}function ua(e){return`wrun_hc_${e}`}async function da(e,t,n){let r=await R(),i=ca(e.correlationId),a=JSON.stringify({healthy:!0,endpoint:t,correlationId:e.correlationId,specVersion:n??3,workflowCoreVersion:ia,timestamp:Date.now()}),o=ua(e.correlationId);await r.streams.write(o,i,a),await r.streams.close(o,i)}async function fa(e,t){let n=[],r=!1,i=!1;for(;!r&&!i;){let a=e.read(),o=new Promise(e=>setTimeout(()=>{i=!0,e({done:!0,value:void 0})},t)),s=await Promise.race([a,o]);r=s.done,s.value&&n.push(s.value)}return{chunks:n,timedOut:i}}function pa(e){if(e.length===0)return null;let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;let i=new TextDecoder().decode(n),a;try{a=JSON.parse(i)}catch{return i.length>0?{healthy:!0}:null}if(typeof a!=`object`||!a||!(`healthy`in a)||typeof a.healthy!=`boolean`)return null;let o=a,s={healthy:o.healthy};return typeof o.specVersion==`number`&&(s.specVersion=o.specVersion),typeof o.workflowCoreVersion==`string`&&(s.workflowCoreVersion=o.workflowCoreVersion),s}async function ma(e,t,n){let r=n?.timeout??3e4,i=sa(),a=ca(i),o=t===`workflow`?`__wkf_workflow_health_check`:`__wkf_step_health_check`,s=Date.now();try{for(await e.queue(o,{__healthCheck:!0,correlationId:i},{specVersion:1,deploymentId:n?.deploymentId});Date.now()-s<r;)try{let t=(await e.streams.get(ua(i),a)).getReader(),{chunks:n,timedOut:r}=await fa(t,500);if(r){try{t.cancel()}catch{}await new Promise(e=>setTimeout(e,100));continue}let o=pa(n);if(o)return{...o,latencyMs:Date.now()-s};await new Promise(e=>setTimeout(e,100))}catch{await new Promise(e=>setTimeout(e,100))}return{healthy:!1,error:`Health check timed out after ${r}ms`}}catch(e){return{healthy:!1,error:e instanceof Error?e.message:String(e)}}}function ha(e,t){return new d(`Event pagination ${t} for workflow run "${e}".`,{code:u.WORLD_CONTRACT_ERROR})}function ga(e,t,n){if(t){if(n.has(t))throw ha(e,`did not advance`);n.add(t)}}function _a(e,t,n){for(let r of n)t.has(r.eventId)||(t.add(r.eventId),e.push(r))}function va(e,t,n,r){if(t){if(n===null)throw ha(e,`returned more pages without a cursor`);if(r.has(n))throw ha(e,`repeated a cursor`)}}function ya(e,t,n){return t!==null&&!n&&d.is(e)&&e.status===400}async function ba(e,t){let n=t!==void 0;return zr(n?`workflow.loadNewEvents`:`workflow.loadEvents`,async r=>{r?.setAttributes({...Ln(e)});let i=[],a=new Set,o=new Set,s=t??null,c=!0,l=0,u=!1,d=await R(),f=Date.now();for(;c;){let t=Date.now(),r=s;ga(e,r,o);let f;try{f=await d.events.list({runId:e,pagination:{sortOrder:`asc`,cursor:r??void 0}})}catch(t){if(ya(t,r,u)){X.warn(`Event cursor was rejected; retrying with a full event reload.`,{workflowRunId:e}),i.length=0,a.clear(),o.clear(),s=null,u=!0;continue}throw t}_a(i,a,f.data),c=f.hasMore,va(e,c,f.cursor,o),s=f.cursor??s,l++,X.debug(`Loaded event page`,{workflowRunId:e,incremental:n,page:l,pageEvents:f.data.length,totalEvents:i.length,hasMore:c,pageMs:Date.now()-t})}return X.debug(`Event load complete`,{workflowRunId:e,incremental:n,totalEvents:i.length,pagesLoaded:l,totalMs:Date.now()-f}),r?.setAttributes({...Bn(i.length),...Tr(l)}),{events:i,cursor:s}})}const xa={"Access-Control-Allow-Origin":`*`,"Access-Control-Allow-Methods":`POST, OPTIONS, GET, HEAD`,"Access-Control-Allow-Headers":`Content-Type`};function Sa(e,t){return async n=>{let r=new URL(n.url);return r.searchParams.has(`__health`)?n.method===`OPTIONS`?new Response(null,{status:204,headers:xa}):new Response(JSON.stringify({healthy:!0,endpoint:r.pathname,specVersion:t??3,workflowCoreVersion:ia}),{status:200,headers:{"Content-Type":`application/json`,...xa}}):await e(n)}}async function Ca(e,...t){let n=t[0];await zr(`queue.publish`,{attributes:{...dr(`vercel-queue`),...fr(n),...mr(`publish`),...kr(`vercel-queue`),...Ar(`vercel-queue`),...jr(`vqs`),...Mr(`publish`)},kind:await Ur(`PRODUCER`)},async n=>{let{messageId:r}=await e.queue(...t);r&&n?.setAttributes(pr(r))})}function wa(e){if(e.requestedAt)try{return hr(Date.now()-e.requestedAt.getTime())}catch{return}}function Ta(e,t){let n;return()=>(n||=(async()=>{let n=await e.getEncryptionKeyForRun?.(t);return n?await Wt(n):void 0})(),n)}var Ea=t({getHookByToken:()=>Oa,resumeHook:()=>ka,resumeWebhook:()=>Aa});async function Da(e){let t=await R(),n=await t.hooks.getByToken(e),r=await t.runs.get(n.runId),i=await t.getEncryptionKeyForRun?.(r),a=i?await Wt(i):void 0;return n.metadata!==void 0&&(n.metadata=await Gi(n.metadata,n.runId,a)),{hook:n,run:r,encryptionKey:a}}async function Oa(e){let{hook:t}=await Da(e);return t}async function ka(e,t,n){return await ui(()=>zr(`hook.resume`,async r=>{let i=await R();try{let a,o,s;if(typeof e==`string`){let t=await Da(e);a=t.hook,o=t.run,s=n??t.encryptionKey}else if(a=e,o=await i.runs.get(a.runId),n)s=n;else{let e=await i.getEncryptionKeyForRun?.(o);s=e?await Wt(e):void 0}r?.setAttributes({..._r(a.token),...vr(a.hookId),...Ln(a.runId)});let c=o.executionContext?.workflowCoreVersion,{supportedFormats:l}=ra(typeof c==`string`?c:void 0);l.has(U.ENCRYPTED)||(s=void 0);let u=[],d=x(a.specVersion),f=await Ki(t,a.runId,s,u,globalThis,d);(0,Ht.waitUntil)(Promise.all(u).catch(e=>{if(e!==void 0)throw e})),await i.events.create(a.runId,{eventType:`hook_received`,specVersion:3,correlationId:a.hookId,eventData:{...d?{}:{token:a.token},payload:f}},{v1Compat:d}),r?.setAttributes({...Fn(o.workflowName)});let p=o.executionContext?.traceCarrier;if(p){let e=await Vr(p);e&&r?.addLink?.({context:e})}return await i.queue(oa(o.workflowName),{runId:a.runId,traceCarrier:o.executionContext?.traceCarrier??void 0},{deploymentId:o.deploymentId,specVersion:o.specVersion??1}),a}catch(t){throw r?.setAttributes({..._r(typeof e==`string`?e:e.token),...yr(!1)}),t}}))}async function Aa(e,t){let{hook:n,encryptionKey:r}=await Da(e);if(n.isWebhook===!1)throw new v(e);let i,a;if(n.metadata&&typeof n.metadata==`object`&&`respondWith`in n.metadata)if(n.metadata.respondWith===`manual`){let{readable:e,writable:n}=new TransformStream;a=e,t[w]=n}else if(n.metadata.respondWith instanceof Response)i=n.metadata.respondWith;else throw new b(`Invalid \`respondWith\` value: ${n.metadata.respondWith}`,{slug:_.WEBHOOK_INVALID_RESPOND_WITH_VALUE});else i=new Response(null,{status:202});if(await ka(n,t,r),a){let e=a.getReader(),t=await e.read();t.value&&(i=t.value),e.cancel()}if(!i)throw new b(`Workflow run did not send a response`,{slug:_.WEBHOOK_RESPONSE_NOT_SENT});return i}export{mr as $,mi as A,zn as At,Yr as B,L as Bt,vi as C,Bn as Ct,Zi as D,Hn as Dt,Ji as E,In as Et,li as F,Nn as Ft,Lr as G,Gr as H,Wt as Ht,si as I,tn as It,Pr as J,Kr as K,ui as L,en as Lt,Q as M,Un as Mt,di as N,Yn as Nt,Vi as O,Ln as Ot,oi as P,Pn as Pt,pr as Q,ai as R,R as Rt,Fi as S,Wn as St,Gi as T,Fn as Tt,Fr as U,Ee as Ut,Xr as V,Yt as Vt,zr as W,wr as X,Nr as Y,fr as Z,qi as _,tr as _t,oa as a,Qn as at,Hi as b,Kn as bt,ba as c,sr as ct,Ca as d,Xn as dt,dr as et,Sa as f,ir as ft,Wi as g,nr as gt,Yi as h,ur as ht,wa as i,rr as it,pi as j,qn as jt,Ui as k,Rn as kt,Ta as l,Zn as lt,$ as m,lr as mt,ka as n,Dr as nt,da as o,or as ot,ia as p,cr as pt,gr as q,Aa as r,Or as rt,ma as s,ar as st,Oa as t,Er as tt,la as u,er as ut,Ki as v,$n as vt,Xi as w,Jn as wt,Ti as x,Gn as xt,Bi as y,Vn as yt,X as z,I as zt};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./dist-6a3viBXZ.js";import{V as t,h as n,nt as r,z as i}from"./symbols-BWCAoPHE.js";function a(n,r={}){if(typeof n!=`object`||!n||Array.isArray(n))throw new e(`experimental_setAttributes requires a plain object, got ${n===null?`null`:Array.isArray(n)?`array`:typeof n}`);let a=Object.entries(n).map(([e,t])=>({key:e,value:t===void 0?null:t}));if(a.length===0)return a;let o=r.allowReservedAttributes===!0;try{t(a,{allowReservedAttributes:o})}catch(t){throw t instanceof i?new e(t.message):t}return a}async function o(e){let t=globalThis[n];return t||r(`sleep()`,`https://workflow-sdk.dev/docs/api-reference/workflow/sleep`,o),t(e)}export{a as n,o as t};
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import type { StandardSchemaV1 } from "#compiled/@standard-schema/spec/index.js";
|
|
2
|
-
import type { HandleMessageStreamEvent } from "#protocol/message.js";
|
|
3
|
-
import type { EveEvalCheck } from "#evals/types.js";
|
|
4
|
-
import { type EveEvalSubagentCallMatchOptions, type EveEvalToolCallMatchOptions } from "#evals/checks/match.js";
|
|
5
|
-
/**
|
|
6
|
-
* Asserts the run ran to completion: it did not fail and did not park on an
|
|
7
|
-
* unanswered HITL input request.
|
|
8
|
-
*/
|
|
9
|
-
export declare function completed(): EveEvalCheck;
|
|
10
|
-
/**
|
|
11
|
-
* Asserts the run ended parked on HITL input (`input.requested` with no
|
|
12
|
-
* resolution). For park-shaped suites: approval gates, ask-question flows.
|
|
13
|
-
*/
|
|
14
|
-
export declare function waiting(): EveEvalCheck;
|
|
15
|
-
/**
|
|
16
|
-
* Asserts the run did not fail: terminal status is not `"failed"` and no
|
|
17
|
-
* `turn.failed` / `step.failed` events were emitted. Parked runs pass; use
|
|
18
|
-
* {@link completed} to also reject parking.
|
|
19
|
-
*/
|
|
20
|
-
export declare function didNotFail(): EveEvalCheck;
|
|
21
|
-
/**
|
|
22
|
-
* Asserts the joined assistant message text contains `token` (substring for
|
|
23
|
-
* strings, `test` for RegExps).
|
|
24
|
-
*/
|
|
25
|
-
export declare function messageIncludes(token: string | RegExp): EveEvalCheck;
|
|
26
|
-
/**
|
|
27
|
-
* Asserts `result.output` deep-equals `value` (exact structural equality;
|
|
28
|
-
* objects must carry the same keys on both sides).
|
|
29
|
-
*/
|
|
30
|
-
export declare function outputEquals(value: unknown): EveEvalCheck;
|
|
31
|
-
/**
|
|
32
|
-
* Asserts `result.output` validates against a Standard Schema (e.g. a Zod
|
|
33
|
-
* schema). Useful with `outputSchema` turns and `task.parseOutput`.
|
|
34
|
-
*/
|
|
35
|
-
export declare function outputMatches(schema: StandardSchemaV1): EveEvalCheck;
|
|
36
|
-
/**
|
|
37
|
-
* Asserts a tool call with `name` happened. Options constrain the call
|
|
38
|
-
* further: `input` partial-deep-matches the call input, `output` matches the
|
|
39
|
-
* result, `isError` constrains error state, and `times` requires an exact
|
|
40
|
-
* count of matching calls.
|
|
41
|
-
*/
|
|
42
|
-
export declare function toolCalled(name: string, options?: EveEvalToolCallMatchOptions): EveEvalCheck;
|
|
43
|
-
/**
|
|
44
|
-
* Asserts no tool call with `name` happened.
|
|
45
|
-
*/
|
|
46
|
-
export declare function toolNotCalled(name: string): EveEvalCheck;
|
|
47
|
-
/**
|
|
48
|
-
* Asserts the named tools were called in the given order (subsequence match:
|
|
49
|
-
* other calls may interleave).
|
|
50
|
-
*/
|
|
51
|
-
export declare function toolOrder(names: readonly string[]): EveEvalCheck;
|
|
52
|
-
/**
|
|
53
|
-
* Asserts no action result (tool, subagent, or skill) reported a failure.
|
|
54
|
-
*/
|
|
55
|
-
export declare function noFailedActions(): EveEvalCheck;
|
|
56
|
-
/**
|
|
57
|
-
* Asserts a subagent delegation to `name` occurred. `remoteUrl` matches the
|
|
58
|
-
* `subagent.called` remote metadata, `output` matches the
|
|
59
|
-
* `subagent.completed` output.
|
|
60
|
-
*/
|
|
61
|
-
export declare function subagentCalled(name: string, options?: EveEvalSubagentCallMatchOptions): EveEvalCheck;
|
|
62
|
-
/**
|
|
63
|
-
* Escape hatch: asserts an arbitrary predicate over the full typed event
|
|
64
|
-
* stream. `label` names the check in reports.
|
|
65
|
-
*/
|
|
66
|
-
export declare function event(predicate: (events: readonly HandleMessageStreamEvent[]) => boolean, label: string): EveEvalCheck;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{toErrorMessage}from"#shared/errors.js";import{deepEquals,subagentCallMatches,testRegExp,toolCallMatches}from"#evals/checks/match.js";function defineCheck(t,n){return async r=>{try{return{name:t,...await n(r)}}catch(n){return{name:t,passed:!1,message:toErrorMessage(n)}}}}function completed(){return defineCheck(`completed`,({result:e})=>e.status===`failed`?{passed:!1,message:failureDetail(`run failed`,e.derived.failureCode)}:e.derived.parked?{passed:!1,message:`run parked on ${e.derived.inputRequests.length} unanswered input request(s)`}:{passed:!0})}function waiting(){return defineCheck(`waiting`,({result:e})=>e.derived.parked?{passed:!0}:{passed:!1,message:`expected the run to park on HITL input; it ended "${e.status}" with no pending requests`})}function didNotFail(){return defineCheck(`didNotFail`,({result:e})=>{if(e.status===`failed`)return{passed:!1,message:failureDetail(`run failed`,e.derived.failureCode)};let t=e.events.find(e=>e.type===`turn.failed`||e.type===`step.failed`);return t===void 0?{passed:!0}:{passed:!1,message:`${t.type} (${t.data.code}): ${t.data.message}`}})}function messageIncludes(e){return defineCheck(`messageIncludes(${String(e)})`,({result:t})=>{let n=joinCompletedMessages(t.events);return(typeof e==`string`?n.includes(e):testRegExp(e,n))?{passed:!0}:{passed:!1,message:`assistant messages did not include ${String(e)}; got: ${truncate(n)}`}})}function outputEquals(e){return defineCheck(`outputEquals`,({result:n})=>deepEquals(n.output,e)?{passed:!0}:{passed:!1,message:`output ${truncate(JSON.stringify(n.output))} does not equal expected ${truncate(JSON.stringify(e))}`})}function outputMatches(e){return defineCheck(`outputMatches`,async({result:t})=>{let n=await e[`~standard`].validate(t.output);return!(`issues`in n)||n.issues===void 0?{passed:!0}:{passed:!1,message:`output failed schema validation: ${n.issues.map(e=>e.message).join(`; `)}`}})}function toolCalled(e,t={}){return defineCheck(`toolCalled(${e})`,n=>{let r=n.result.derived.toolCalls.filter(t=>t.name===e),a=r.filter(e=>toolCallMatches(e,t,n));if(t.times===void 0?a.length>0:a.length===t.times)return{passed:!0,metadata:{matchingCalls:a.length}};let o=r.length>0?`observed ${e} calls: ${r.map(e=>truncate(JSON.stringify(e.input))).join(`, `)}`:`observed tools: ${formatToolNames(n)}`;return{passed:!1,message:`${t.times===void 0?`expected a matching call to "${e}"`:`expected exactly ${t.times} matching call(s), found ${a.length}`}; ${o}`}})}function toolNotCalled(e){return defineCheck(`toolNotCalled(${e})`,({result:t})=>{let n=t.derived.toolCalls.filter(t=>t.name===e).length;return n===0?{passed:!0}:{passed:!1,message:`"${e}" was called ${n} time(s)`}})}function toolOrder(e){return defineCheck(`toolOrder(${e.join(` → `)})`,t=>{let n=t.result.derived.toolCalls.map(e=>e.name),r=0;for(let t of n)if(t===e[r]&&(r+=1),r===e.length)break;return r===e.length?{passed:!0}:{passed:!1,message:`missing "${e[r]}" after [${e.slice(0,r).join(`, `)}]; observed order: [${n.join(`, `)}]`}})}function noFailedActions(){return defineCheck(`noFailedActions`,({result:e})=>{let t=e.events.filter(e=>e.type===`action.result`&&(e.data.status===`failed`||e.data.result.isError===!0));if(t.length===0)return{passed:!0};let n=t.map(e=>e.data.result.kind===`tool-result`?e.data.result.toolName:e.data.result.kind);return{passed:!1,message:`${t.length} failed action(s): ${n.join(`, `)}`}})}function subagentCalled(e,t={}){return defineCheck(`subagentCalled(${e})`,r=>{let i=r.result.derived.subagentCalls.filter(t=>t.name===e);return i.filter(e=>subagentCallMatches(e,t,r)).length>0?{passed:!0}:i.length===0?{passed:!1,message:`subagent "${e}" was never called; observed: [${r.result.derived.subagentCalls.map(e=>e.name).join(`, `)}]`,metadata:{observedSubagentCalls:r.result.derived.subagentCalls}}:{passed:!1,message:`subagent "${e}" was called but no call matched the constraints`,metadata:{observedSubagentCalls:i}}})}function event(e,t){return defineCheck(`event(${t})`,({result:n})=>e(n.events)?{passed:!0}:{passed:!1,message:`event predicate "${t}" did not hold`})}function joinCompletedMessages(e){let t=[];for(let n of e)n.type===`message.completed`&&n.data.message!==null&&t.push(n.data.message);return t.join(`
|
|
2
|
-
`)}function formatToolNames(e){return`[${e.result.derived.toolCalls.map(e=>e.name).join(`, `)}]`}function failureDetail(e,t){return t===void 0?e:`${e} (code: ${t})`}function truncate(e,t=200){return e===void 0?`undefined`:e.length<=t?e:`${e.slice(0,t)}…`}export{completed,didNotFail,event,messageIncludes,noFailedActions,outputEquals,outputMatches,subagentCalled,toolCalled,toolNotCalled,toolOrder,waiting};
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import * as CheckBuiltins from "#evals/checks/checks.js";
|
|
2
|
-
export type { EveEvalCheck, EveEvalCheckArgs, EveEvalCheckResult } from "#evals/types.js";
|
|
3
|
-
export type { EveEvalSubagentCallMatchOptions, EveEvalToolCallMatchOptions, EveEvalValueMatcher, } from "#evals/checks/match.js";
|
|
4
|
-
/**
|
|
5
|
-
* Built-in hard assertions for eval suites. Unlike scores, a failed check
|
|
6
|
-
* marks its case failed and produces a non-zero `eve eval` exit code.
|
|
7
|
-
*
|
|
8
|
-
* @example
|
|
9
|
-
* ```ts
|
|
10
|
-
* import { Checks } from "eve/evals/checks";
|
|
11
|
-
*
|
|
12
|
-
* Checks.completed()
|
|
13
|
-
* Checks.didNotFail()
|
|
14
|
-
* Checks.messageIncludes("Sunny")
|
|
15
|
-
* Checks.toolCalled("bash", { input: { command: /pwd/ } })
|
|
16
|
-
* Checks.toolOrder(["search", "get_weather"])
|
|
17
|
-
* Checks.subagentCalled("weather", { output: /72F/ })
|
|
18
|
-
* Checks.event((events) => events.length > 0, "stream-not-empty")
|
|
19
|
-
* ```
|
|
20
|
-
*/
|
|
21
|
-
export declare const Checks: typeof CheckBuiltins;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import*as CheckBuiltins from"#evals/checks/checks.js";const Checks=CheckBuiltins;export{Checks};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function matchesValue(e,t,n){if(e instanceof RegExp)return testRegExpAgainst(e,t);if(typeof e==`function`){let r=e(t,n);return typeof r==`boolean`?r:typeof r==`function`?Object.is(r,t):matchesValue(r,t,n)}return Array.isArray(e)?!Array.isArray(t)||t.length!==e.length?!1:e.every((e,r)=>matchesValue(e,t[r],n)):isPlainObject(e)?isPlainObject(t)?Object.entries(e).every(([e,r])=>matchesValue(r,t[e],n)):!1:Object.is(e,t)}function toolCallMatches(e,t,n){return!(t.input!==void 0&&!matchesValue(t.input,e.input,n)||t.output!==void 0&&!matchesValue(t.output,e.output,n)||t.isError!==void 0&&e.isError!==t.isError)}function subagentCallMatches(e,t,n){return!(t.remoteUrl!==void 0&&!matchesValue(t.remoteUrl,e.remoteUrl,n)||t.output!==void 0&&!matchesValue(t.output,e.output,n))}function deepEquals(e,t){if(Object.is(e,t))return!0;if(Array.isArray(e)||Array.isArray(t))return!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((e,n)=>deepEquals(e,t[n]));if(isPlainObject(e)&&isPlainObject(t)){let n=Object.keys(e),r=Object.keys(t);return n.length===r.length?n.every(n=>deepEquals(e[n],t[n])):!1}return!1}function testRegExpAgainst(e,t){if(typeof t==`string`)return testRegExp(e,t);if(t===void 0)return!1;let n=JSON.stringify(t);return n!==void 0&&testRegExp(e,n)}function testRegExp(e,t){return(e.global||e.sticky)&&(e.lastIndex=0),e.test(t)}function isPlainObject(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}export{deepEquals,matchesValue,subagentCallMatches,testRegExp,toolCallMatches};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { EveEvalSuiteDefinition, EveEvalSuiteInput, EveEvalSuiteInputFields } from "#evals/types.js";
|
|
2
|
-
import type { ExactDefinition } from "#public/definitions/exact.js";
|
|
3
|
-
/**
|
|
4
|
-
* Defines one Eve eval suite.
|
|
5
|
-
*
|
|
6
|
-
* Requires a `scores` array, and a `model` only when a model-backed scorer
|
|
7
|
-
* (e.g. the `Autoevals` wrappers) is present without its own model override —
|
|
8
|
-
* the model is used solely for scoring, never for the agent under test. Pass
|
|
9
|
-
* either `load` (an async case loader) or `cases` (a static array), but not
|
|
10
|
-
* both. Suite identity is derived from the `evals/<path>.eval.ts` file path
|
|
11
|
-
* by the discovery layer, so authoring `id` or `name` throws.
|
|
12
|
-
*
|
|
13
|
-
* Throws on invalid input: missing `scores`, a model-backed scorer without a
|
|
14
|
-
* `model`, both or neither of `load`/`cases`, both `task.prompt` and
|
|
15
|
-
* `task.messages`, a non-array `checks`, a non-positive or non-integer
|
|
16
|
-
* `maxConcurrency`, or a negative or non-finite `timeoutMs`.
|
|
17
|
-
*/
|
|
18
|
-
export declare function defineEvalSuite<TInput extends EveEvalSuiteInput>(input: ExactDefinition<TInput, EveEvalSuiteInputFields>): EveEvalSuiteDefinition;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{modelBackedScorerName}from"#evals/scorers/model-marker.js";function defineEvalSuite(e){validateSuiteInput(e);let t=e.load??(()=>Promise.resolve([...e.cases]));return{...e,load:t,_tag:`EveEvalSuite`}}function validateSuiteInput(t){if(`id`in t)throw Error("Eval suite must not specify `id`. Suite identity is derived from the file path under evals/.");if(`name`in t)throw Error("Eval suite must not specify `name`. Suite identity is derived from the file path under evals/.");if(t.load!==void 0&&t.cases!==void 0)throw Error("Eval suite cannot specify both `load` and `cases`. Use one or the other.");if(t.load===void 0&&t.cases===void 0)throw Error("Eval suite requires either a `load` function or a `cases` array.");if(!Array.isArray(t.scores))throw Error("Eval suite requires a `scores` array.");if(t.checks!==void 0&&!Array.isArray(t.checks))throw Error("Eval suite `checks` must be an array of check functions.");if(t.model===void 0){let n=t.scores.map(modelBackedScorerName).find(e=>e!==void 0);if(n!==void 0)throw Error(`Eval suite requires a \`model\` because the ${n} scorer is model-backed. Set the suite-level \`model\` or pass \`model\` to the scorer.`)}if(t.task?.prompt!==void 0&&t.task?.messages!==void 0)throw Error("Eval suite task cannot specify both `prompt` and `messages`. Use one or the other.");if(t.maxConcurrency!==void 0&&(t.maxConcurrency<1||!Number.isInteger(t.maxConcurrency)))throw Error("Eval suite `maxConcurrency` must be a positive integer.");if(t.timeoutMs!==void 0&&(t.timeoutMs<0||!Number.isFinite(t.timeoutMs)))throw Error("Eval suite `timeoutMs` must be a non-negative finite number.")}export{defineEvalSuite};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { Client } from "#client/client.js";
|
|
2
|
-
import type { EveEvalCase, EveEvalTask, EveEvalTaskResult } from "#evals/types.js";
|
|
3
|
-
/**
|
|
4
|
-
* Options for executing one eval case.
|
|
5
|
-
*/
|
|
6
|
-
interface ExecuteCaseOptions {
|
|
7
|
-
readonly client: Client;
|
|
8
|
-
readonly testCase: EveEvalCase;
|
|
9
|
-
readonly task?: EveEvalTask;
|
|
10
|
-
readonly timeoutMs?: number;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Executes one eval case against an Eve agent target.
|
|
14
|
-
*
|
|
15
|
-
* The runner owns session lifecycle, stream capture, and derived metadata.
|
|
16
|
-
* The suite only declares how to derive messages and parse outputs.
|
|
17
|
-
*
|
|
18
|
-
* For multi-turn cases (`task.messages`), events from all turns are
|
|
19
|
-
* accumulated so derived facts reflect the full conversation. The output
|
|
20
|
-
* and status come from the final turn only.
|
|
21
|
-
*/
|
|
22
|
-
export declare function executeCase(options: ExecuteCaseOptions): Promise<EveEvalTaskResult>;
|
|
23
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{createEmptyDerivedFacts,deriveRunFacts}from"#evals/runner/derive-run-facts.js";async function executeCase(e){let{client:n,testCase:r,task:i,timeoutMs:a}=e,o=n.session(),s=resolveMessages(r,i),c=a===void 0?void 0:AbortSignal.timeout(a),l=[],u;for(let e of s)u=await(await o.send({message:e,signal:c})).result(),l.push(...u.events);if(!u)return createEmptyResult();let d=u.message??null,f=deriveRunFacts(l,{sessionId:u.sessionId}),p=extractRuntimeIdentity(l),m={output:d,finalMessage:d,sessionId:u.sessionId,status:u.status,events:l,derived:f,runtimeIdentity:p};return i?.parseOutput!==void 0&&(m.output=i.parseOutput(m)),m}function resolveMessages(e,t){return t?.messages===void 0?t?.prompt===void 0?[typeof e.input==`string`?e.input:JSON.stringify(e.input)]:[t.prompt(e)]:t.messages(e)}function extractRuntimeIdentity(e){for(let t of e)if(t.type===`session.started`&&t.data.runtime!==void 0)return t.data.runtime}function createEmptyResult(){return{output:null,finalMessage:null,status:`failed`,events:[],derived:createEmptyDerivedFacts()}}export{executeCase};
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { Client } from "#client/client.js";
|
|
2
|
-
import type { EveEvalSuite, EveEvalSuiteResult, EveEvalTarget } from "#evals/types.js";
|
|
3
|
-
import type { EvalReporter } from "#evals/runner/reporters/types.js";
|
|
4
|
-
/**
|
|
5
|
-
* Options for executing one eval suite.
|
|
6
|
-
*/
|
|
7
|
-
interface ExecuteSuiteOptions {
|
|
8
|
-
readonly suite: EveEvalSuite;
|
|
9
|
-
readonly target: EveEvalTarget;
|
|
10
|
-
readonly reporters: readonly EvalReporter[];
|
|
11
|
-
readonly appRoot: string;
|
|
12
|
-
/**
|
|
13
|
-
* Pre-configured client for communicating with the Eve agent.
|
|
14
|
-
* The CLI constructs this once with the appropriate auth and headers,
|
|
15
|
-
* and every case creates a fresh session from it.
|
|
16
|
-
*/
|
|
17
|
-
readonly client: Client;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Executes all cases in one eval suite, runs checks and scorers, writes
|
|
21
|
-
* artifacts, and reports results.
|
|
22
|
-
*/
|
|
23
|
-
export declare function executeSuite(options: ExecuteSuiteOptions): Promise<EveEvalSuiteResult>;
|
|
24
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{toErrorMessage}from"#shared/errors.js";import{createEmptyDerivedFacts}from"#evals/runner/derive-run-facts.js";import{resolveArtifactDirectory,writeArtifacts}from"#evals/runner/artifacts.js";import{executeCase}from"#evals/runner/execute-case.js";import{computeCaseVerdict}from"#evals/runner/verdict.js";async function executeSuite(e){let{suite:t,target:i,reporters:a,appRoot:o,client:s}=e,c=new Date().toISOString();for(let e of a)await e.onSuiteStart(t,i);let l=await t.load(),u=t.maxConcurrency??8,d=[],f=[...l],p=new Set;for(;f.length>0||p.size>0;){for(;f.length>0&&p.size<u;){let e=f.shift();if(e===void 0)break;let n=(async()=>{let n=await executeSingleCase(t,e,s,i);d.push(n);for(let e of a)await e.onCaseComplete(n)})().finally(()=>{p.delete(n)});p.add(n)}p.size>0&&await Promise.race(p)}let m=new Date().toISOString(),h={suite:t.id,target:i,cases:d,startedAt:c,completedAt:m,passed:countVerdicts(d,`passed`),failed:countVerdicts(d,`failed`),scored:countVerdicts(d,`scored`),skipped:countVerdicts(d,`skipped`),errored:d.filter(e=>e.error!==void 0).length};await writeArtifacts(resolveArtifactDirectory(o,t.id),h);for(let e of a)await e.onSuiteComplete(h);return h}async function executeSingleCase(n,r,o,s){let c,l;try{c=await executeCase({client:o,testCase:r,task:n.task,timeoutMs:n.timeoutMs})}catch(n){l=toErrorMessage(n),c={output:null,finalMessage:null,status:`failed`,events:[],derived:createEmptyDerivedFacts()}}let u=await runChecks(n,r,c,s),d=await runScorers(n,r,c),f=computeCaseVerdict({error:l,checks:u,scores:d,thresholds:n.thresholds});return{case:r,result:c,checks:u,scores:d,verdict:f,error:l}}async function runChecks(t,n,r,i){let a=[...t.checks??[],...n.checks??[]];if(a.length===0)return[];let o={case:n,result:r,target:i},s=[];for(let[t,n]of a.entries())try{s.push(await n(o))}catch(r){s.push({name:n.name===``?`check#${t}`:n.name,passed:!1,message:toErrorMessage(r)})}return s}async function runScorers(e,t,n){let r={input:typeof t.input==`string`?t.input:JSON.stringify(t.input),output:String(n.output??``),expected:t.expected===void 0?void 0:String(t.expected),model:e.model,modelOptions:e.modelOptions,case:t,result:n},i=[];for(let n of[...e.scores,...t.scores??[]]){let e=await n(r);e!==null&&i.push(e)}return i}function countVerdicts(e,t){return e.filter(e=>e.verdict===t).length}export{executeSuite};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"../../node_modules/.pnpm/autoevals@0.0.132_ws@8.21.0/node_modules/autoevals/jsdist/index.js";import{generateText,jsonSchema}from"ai";function createAutoevalsClient(e){return{chat:{completions:{create:t=>createChatCompletion(t,e)}}}}async function createChatCompletion(t,n){let r=convertTools(t.tools),i=await generateText({model:n.languageModel,messages:convertMessages(t.messages??[]),tools:Object.keys(r).length>0?r:void 0,toolChoice:convertToolChoice(t.tool_choice),providerOptions:n.providerOptions}),a=i.toolCalls.map(e=>({id:e.toolCallId,type:`function`,function:{name:e.toolName,arguments:JSON.stringify(e.input??{})}}));return{choices:[{index:0,finish_reason:a.length>0?`tool_calls`:`stop`,message:{role:`assistant`,content:i.text||null,tool_calls:a.length>0?a:void 0}}]}}function convertMessages(e){return e.map(e=>{let t=contentToText(e.content);switch(e.role){case`assistant`:return{role:`assistant`,content:t};case`developer`:case`system`:return{role:`system`,content:t};default:return{role:`user`,content:t}}})}function contentToText(e){return e==null?``:typeof e==`string`?e:e.map(e=>e.text??``).filter(Boolean).join(`
|
|
2
|
-
`)}function convertTools(e){let n={};for(let r of e??[])r.type!==`function`||r.function?.name===void 0||(n[r.function.name]={description:r.function.description,inputSchema:jsonSchema(r.function.parameters??{})});return n}function convertToolChoice(e){if(e!==void 0)return typeof e==`string`?e:{type:`tool`,toolName:e.function.name}}export{createAutoevalsClient};
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { type LanguageModel } from "ai";
|
|
2
|
-
import type { AgentModelOptionsDefinition } from "#shared/agent-definition.js";
|
|
3
|
-
import type { EveEvalScorer } from "#evals/types.js";
|
|
4
|
-
/**
|
|
5
|
-
* Optional per-scorer overrides for model-backed Autoevals scorers. When
|
|
6
|
-
* omitted, the suite's `model` and `modelOptions` apply.
|
|
7
|
-
*/
|
|
8
|
-
export interface AutoevalsModelScorerOptions {
|
|
9
|
-
/** Judge model for this scorer. Overrides the suite judge model. */
|
|
10
|
-
readonly model?: LanguageModel;
|
|
11
|
-
/** Provider options for this scorer. Eve merges them over the suite's `modelOptions`. */
|
|
12
|
-
readonly modelOptions?: AgentModelOptionsDefinition;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Options for {@link closedQA}. Extends {@link AutoevalsModelScorerOptions}
|
|
16
|
-
* with the required free-form `criteria` the judge applies.
|
|
17
|
-
*/
|
|
18
|
-
export interface AutoevalsClosedQAOptions extends AutoevalsModelScorerOptions {
|
|
19
|
-
/**
|
|
20
|
-
* Natural-language criterion the judge model evaluates the output against.
|
|
21
|
-
*
|
|
22
|
-
* @example "The answer must mention the refund policy."
|
|
23
|
-
*/
|
|
24
|
-
readonly criteria: string;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Scores output factuality against the case `expected` value using the
|
|
28
|
-
* Autoevals Factuality grader. Requires a per-case `expected` and a judge
|
|
29
|
-
* model (the suite `model`/`modelOptions`, overridable via `options`).
|
|
30
|
-
* Returns a graded score between 0 and 1.
|
|
31
|
-
*/
|
|
32
|
-
export declare function factuality(options?: AutoevalsModelScorerOptions): EveEvalScorer;
|
|
33
|
-
/**
|
|
34
|
-
* Scores whether `output` summarizes the case `input` better than the case
|
|
35
|
-
* `expected` summary, using the Autoevals Summary grader. Requires a per-case
|
|
36
|
-
* `expected` and a judge model (the suite `model`/`modelOptions`, overridable
|
|
37
|
-
* via `options`). Returns a graded score between 0 and 1.
|
|
38
|
-
*/
|
|
39
|
-
export declare function summary(options?: AutoevalsModelScorerOptions): EveEvalScorer;
|
|
40
|
-
/**
|
|
41
|
-
* Scores semantic equivalence between the `output` SQL and the case `expected`
|
|
42
|
-
* SQL using the model-judged Autoevals Sql grader. Requires a per-case
|
|
43
|
-
* `expected` and a judge model (the suite `model`/`modelOptions`, overridable
|
|
44
|
-
* via `options`). For a deterministic check, use `Sql.exactNormalized()`
|
|
45
|
-
* instead.
|
|
46
|
-
*/
|
|
47
|
-
export declare function sql(options?: AutoevalsModelScorerOptions): EveEvalScorer;
|
|
48
|
-
/**
|
|
49
|
-
* Judges whether `output` meets a required free-form natural-language
|
|
50
|
-
* `criteria` using a judge model.
|
|
51
|
-
*
|
|
52
|
-
* Use this when "correct" cannot be expressed as exact or fuzzy match against
|
|
53
|
-
* an `expected` value (for example, "must cite a source" or "must apologize
|
|
54
|
-
* before refusing"). The `criteria` is the only required field; the judge model
|
|
55
|
-
* comes from the suite `model`/`modelOptions`, overridable via `options`.
|
|
56
|
-
* Per-case `expected` is ignored.
|
|
57
|
-
*/
|
|
58
|
-
export declare function closedQA(options: AutoevalsClosedQAOptions): EveEvalScorer;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{ClosedQA,Factuality,Sql,Summary}from"../../node_modules/.pnpm/autoevals@0.0.132_ws@8.21.0/node_modules/autoevals/jsdist/index.js";import{formatLanguageModelGatewayId}from"#internal/runtime-model.js";import"ai";import{markModelBackedScorer}from"#evals/scorers/model-marker.js";import{createAutoevalsClient}from"#evals/scorers/autoevals-client.js";function factuality(e={}){return languageScorer(`Autoevals.factuality`,Factuality,e)}function summary(e={}){return languageScorer(`Autoevals.summary`,Summary,e)}function sql(e={}){return languageScorer(`Autoevals.sql`,Sql,e)}function closedQA(t){return markWhenSuiteModelRequired(`Autoevals.closedQA`,async n=>{let r=resolveJudgeModel(`Autoevals.closedQA`,t,n);return toScorerResult(await ClosedQA({input:n.input,output:n.output,criteria:t.criteria,model:formatLanguageModelGatewayId(r),client:createAutoevalsClient({languageModel:r,providerOptions:mergeProviderOptions(n,t.modelOptions)})}))},t)}function languageScorer(e,t,n){return markWhenSuiteModelRequired(e,async r=>{let i=resolveJudgeModel(e,n,r);return toScorerResult(await t({input:r.input,output:r.output,expected:r.expected,model:formatLanguageModelGatewayId(i),client:createAutoevalsClient({languageModel:i,providerOptions:mergeProviderOptions(r,n.modelOptions)})}))},n)}function markWhenSuiteModelRequired(e,t,n){return n.model===void 0?markModelBackedScorer(e,t):t}function resolveJudgeModel(e,t,n){let r=t.model??n.model;if(r===void 0)throw Error(`${e} needs a judge model. Set the suite-level \`model\` or pass \`model\` to the scorer.`);return r}function mergeProviderOptions(e,t){let n=e.modelOptions?.providerOptions,r=t?.providerOptions;if(!(n===void 0&&r===void 0))return{...n,...r}}function toScorerResult(e){return{name:e.name,score:e.score,metadata:e.metadata}}export{closedQA,factuality,sql,summary};
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { EveEvalScorer } from "#evals/types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Scores 1 when the task output deep-equals the case expected value (via
|
|
4
|
-
* `JSON.stringify` with sorted keys), 0 otherwise. Returns `null` when
|
|
5
|
-
* expected is absent.
|
|
6
|
-
*
|
|
7
|
-
* Uses `case.expected` and `result.output` for the raw values rather than
|
|
8
|
-
* the coerced string fields.
|
|
9
|
-
*/
|
|
10
|
-
export declare function deepEqual(): EveEvalScorer;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function deepEqual(){return({case:e,result:t})=>e.expected===void 0?null:{name:`json.deepEqual`,score:+(stableStringify(t.output)===stableStringify(e.expected))}}function stableStringify(e){return JSON.stringify(e,(e,t)=>{if(typeof t==`object`&&t&&!Array.isArray(t)){let e={};for(let n of Object.keys(t).sort())e[n]=t[n];return e}return t})}export{deepEqual};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { EveEvalScorer } from "#evals/types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Marks a scorer as model-backed: it reads `args.model` and needs the suite
|
|
4
|
-
* to provide one. `defineEvalSuite` uses the marker to require `model` only
|
|
5
|
-
* when such a scorer is present without its own per-scorer model override.
|
|
6
|
-
*/
|
|
7
|
-
export declare function markModelBackedScorer(name: string, scorer: EveEvalScorer): EveEvalScorer;
|
|
8
|
-
/**
|
|
9
|
-
* Returns the marked scorer name when a scorer requires the suite judge
|
|
10
|
-
* model, or `undefined` for deterministic scorers.
|
|
11
|
-
*/
|
|
12
|
-
export declare function modelBackedScorerName(scorer: EveEvalScorer): string | undefined;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const JUDGE_MODEL_MARKER=Symbol.for(`eve.evals.requiresJudgeModel`);function markModelBackedScorer(e,t){return t[JUDGE_MODEL_MARKER]=e,t}function modelBackedScorerName(e){return e[JUDGE_MODEL_MARKER]}export{markModelBackedScorer,modelBackedScorerName};
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { type EveEvalToolCallMatchOptions } from "#evals/checks/match.js";
|
|
2
|
-
import type { EveEvalScorer } from "#evals/types.js";
|
|
3
|
-
/**
|
|
4
|
-
* Scores 1 when the run did not fail and did not end parked on unanswered
|
|
5
|
-
* HITL input requests, 0 otherwise. A parked run never produced a final
|
|
6
|
-
* answer, so it does not count as success.
|
|
7
|
-
*/
|
|
8
|
-
export declare function didNotFail(): EveEvalScorer;
|
|
9
|
-
/**
|
|
10
|
-
* Scores 1 when the run called a tool with the given name at least once,
|
|
11
|
-
* 0 otherwise. `options` constrain the match further with the same matcher
|
|
12
|
-
* mini-language as `Checks.toolCalled`: `input` partial-deep-matches the
|
|
13
|
-
* call input, `output` matches the result, `isError` constrains error
|
|
14
|
-
* state, and `times` requires an exact count of matching calls.
|
|
15
|
-
*/
|
|
16
|
-
export declare function usedTool(name: string, options?: EveEvalToolCallMatchOptions): EveEvalScorer;
|
|
17
|
-
/**
|
|
18
|
-
* Scores 1 when the run made no tool calls at all, 0 otherwise.
|
|
19
|
-
*/
|
|
20
|
-
export declare function usedNoTools(): EveEvalScorer;
|
|
21
|
-
/**
|
|
22
|
-
* Scores 1 when the run made at most `max` tool calls, 0 otherwise.
|
|
23
|
-
*/
|
|
24
|
-
export declare function maxToolCalls(max: number): EveEvalScorer;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{toolCallMatches}from"#evals/checks/match.js";function didNotFail(){return({result:e})=>({name:`run.didNotFail`,score:+(e.status!==`failed`&&!e.derived.parked),metadata:{status:e.status,parked:e.derived.parked}})}function usedTool(t,n={}){return({result:r})=>{let i=r.derived.toolCalls.filter(e=>e.name===t).filter(t=>toolCallMatches(t,n)),a=n.times===void 0?i.length>0:i.length===n.times;return{name:`run.usedTool(${t})`,score:+!!a,metadata:{expectedTool:t,matchingCalls:i.length,actualToolCalls:r.derived.toolCalls.map(e=>e.name)}}}}function usedNoTools(){return({result:e})=>({name:`run.usedNoTools`,score:+(e.derived.toolCallCount===0),metadata:{toolCallCount:e.derived.toolCallCount}})}function maxToolCalls(e){return({result:t})=>{let n=+(t.derived.toolCallCount<=e);return{name:`run.maxToolCalls(${e})`,score:n,metadata:{maxAllowed:e,actualToolCallCount:t.derived.toolCallCount}}}}export{didNotFail,maxToolCalls,usedNoTools,usedTool};
|