@mysten-incubation/devstack 0.0.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/LICENSE +189 -0
- package/README.md +94 -0
- package/dist/_virtual/_rolldown/runtime.mjs +13 -0
- package/dist/api/define-capabilities.d.mts +25 -0
- package/dist/api/define-capabilities.mjs +19 -0
- package/dist/api/define-capabilities.mjs.map +1 -0
- package/dist/api/define-devstack-with.d.mts +41 -0
- package/dist/api/define-devstack-with.mjs +24 -0
- package/dist/api/define-devstack-with.mjs.map +1 -0
- package/dist/api/define-devstack.d.mts +62 -0
- package/dist/api/define-devstack.mjs +108 -0
- package/dist/api/define-devstack.mjs.map +1 -0
- package/dist/api/define-plugin.d.mts +1 -0
- package/dist/api/inference-network.mjs +122 -0
- package/dist/api/inference-network.mjs.map +1 -0
- package/dist/api/mode-narrowed-factory.d.mts +26 -0
- package/dist/api/mode-narrowed-factory.mjs +8 -0
- package/dist/api/mode-narrowed-factory.mjs.map +1 -0
- package/dist/api/plugin-errors.mjs +10 -0
- package/dist/api/plugin-errors.mjs.map +1 -0
- package/dist/api/run-stack.d.mts +82 -0
- package/dist/api/run-stack.mjs +127 -0
- package/dist/api/run-stack.mjs.map +1 -0
- package/dist/build-integrations/playwright/config.d.mts +92 -0
- package/dist/build-integrations/playwright/config.mjs +71 -0
- package/dist/build-integrations/playwright/config.mjs.map +1 -0
- package/dist/build-integrations/playwright/errors.d.mts +82 -0
- package/dist/build-integrations/playwright/errors.mjs +43 -0
- package/dist/build-integrations/playwright/errors.mjs.map +1 -0
- package/dist/build-integrations/playwright/global-setup.d.mts +64 -0
- package/dist/build-integrations/playwright/global-setup.mjs +44 -0
- package/dist/build-integrations/playwright/global-setup.mjs.map +1 -0
- package/dist/build-integrations/playwright/index.d.mts +6 -0
- package/dist/build-integrations/playwright/index.mjs +6 -0
- package/dist/build-integrations/playwright/stack-context.d.mts +95 -0
- package/dist/build-integrations/playwright/stack-context.mjs +277 -0
- package/dist/build-integrations/playwright/stack-context.mjs.map +1 -0
- package/dist/build-integrations/playwright/wallet-context.d.mts +87 -0
- package/dist/build-integrations/playwright/wallet-context.mjs +148 -0
- package/dist/build-integrations/playwright/wallet-context.mjs.map +1 -0
- package/dist/build-integrations/runtime/cold-start-url.d.mts +67 -0
- package/dist/build-integrations/runtime/cold-start-url.mjs +56 -0
- package/dist/build-integrations/runtime/cold-start-url.mjs.map +1 -0
- package/dist/build-integrations/runtime/dapp-kit-slot.mjs +10 -0
- package/dist/build-integrations/runtime/dapp-kit-slot.mjs.map +1 -0
- package/dist/build-integrations/runtime/discover.d.mts +78 -0
- package/dist/build-integrations/runtime/discover.mjs +124 -0
- package/dist/build-integrations/runtime/discover.mjs.map +1 -0
- package/dist/build-integrations/runtime/endpoint-registry.d.mts +26 -0
- package/dist/build-integrations/runtime/endpoint-registry.mjs +41 -0
- package/dist/build-integrations/runtime/endpoint-registry.mjs.map +1 -0
- package/dist/build-integrations/runtime/errors.d.mts +64 -0
- package/dist/build-integrations/runtime/errors.mjs +51 -0
- package/dist/build-integrations/runtime/errors.mjs.map +1 -0
- package/dist/build-integrations/runtime/index.d.mts +7 -0
- package/dist/build-integrations/runtime/index.mjs +6 -0
- package/dist/build-integrations/runtime/read-stack-context.d.mts +38 -0
- package/dist/build-integrations/runtime/read-stack-context.mjs +130 -0
- package/dist/build-integrations/runtime/read-stack-context.mjs.map +1 -0
- package/dist/build-integrations/runtime/stack-context.d.mts +53 -0
- package/dist/build-integrations/vitest/config.d.mts +62 -0
- package/dist/build-integrations/vitest/config.mjs +80 -0
- package/dist/build-integrations/vitest/config.mjs.map +1 -0
- package/dist/build-integrations/vitest/env.d.mts +48 -0
- package/dist/build-integrations/vitest/env.mjs +50 -0
- package/dist/build-integrations/vitest/env.mjs.map +1 -0
- package/dist/build-integrations/vitest/errors.d.mts +44 -0
- package/dist/build-integrations/vitest/errors.mjs +18 -0
- package/dist/build-integrations/vitest/errors.mjs.map +1 -0
- package/dist/build-integrations/vitest/index.d.mts +6 -0
- package/dist/build-integrations/vitest/index.mjs +6 -0
- package/dist/build-integrations/vitest/setup.d.mts +53 -0
- package/dist/build-integrations/vitest/setup.mjs +56 -0
- package/dist/build-integrations/vitest/setup.mjs.map +1 -0
- package/dist/build-integrations/vitest/stack-context.d.mts +58 -0
- package/dist/build-integrations/vitest/stack-context.mjs +67 -0
- package/dist/build-integrations/vitest/stack-context.mjs.map +1 -0
- package/dist/cli/main.d.mts +5 -0
- package/dist/cli/main.mjs +586 -0
- package/dist/cli/main.mjs.map +1 -0
- package/dist/cli/prune-direct.mjs +216 -0
- package/dist/cli/prune-direct.mjs.map +1 -0
- package/dist/cli/snapshot-reader.mjs +73 -0
- package/dist/cli/snapshot-reader.mjs.map +1 -0
- package/dist/cli/up-lifecycle.mjs +28 -0
- package/dist/cli/up-lifecycle.mjs.map +1 -0
- package/dist/contracts/capability-decl.d.mts +42 -0
- package/dist/contracts/chain-probe.d.mts +26 -0
- package/dist/contracts/chain-probe.mjs +8 -0
- package/dist/contracts/chain-probe.mjs.map +1 -0
- package/dist/contracts/codegenable.d.mts +43 -0
- package/dist/contracts/container-runtime.d.mts +245 -0
- package/dist/contracts/liveness-classifier.d.mts +19 -0
- package/dist/contracts/network-resolver.d.mts +15 -0
- package/dist/contracts/network-resolver.mjs +7 -0
- package/dist/contracts/network-resolver.mjs.map +1 -0
- package/dist/contracts/projection.d.mts +15 -0
- package/dist/contracts/routable.d.mts +53 -0
- package/dist/contracts/snapshotable.d.mts +39 -0
- package/dist/contracts/strategy-contributor.d.mts +26 -0
- package/dist/index.d.mts +89 -0
- package/dist/index.mjs +37 -0
- package/dist/orchestrators/codegen/bindings.d.mts +2 -0
- package/dist/orchestrators/codegen/bindings.mjs +340 -0
- package/dist/orchestrators/codegen/bindings.mjs.map +1 -0
- package/dist/orchestrators/codegen/emit.mjs +56 -0
- package/dist/orchestrators/codegen/emit.mjs.map +1 -0
- package/dist/orchestrators/codegen/errors.d.mts +1 -0
- package/dist/orchestrators/codegen/errors.mjs +66 -0
- package/dist/orchestrators/codegen/errors.mjs.map +1 -0
- package/dist/orchestrators/codegen/extras.mjs +16 -0
- package/dist/orchestrators/codegen/extras.mjs.map +1 -0
- package/dist/orchestrators/codegen/format.mjs +109 -0
- package/dist/orchestrators/codegen/format.mjs.map +1 -0
- package/dist/orchestrators/codegen/gitignore.mjs +67 -0
- package/dist/orchestrators/codegen/gitignore.mjs.map +1 -0
- package/dist/orchestrators/codegen/paths.d.mts +1 -0
- package/dist/orchestrators/codegen/paths.mjs +33 -0
- package/dist/orchestrators/codegen/paths.mjs.map +1 -0
- package/dist/orchestrators/codegen/permissions.mjs +6 -0
- package/dist/orchestrators/codegen/permissions.mjs.map +1 -0
- package/dist/orchestrators/codegen/service.d.mts +1 -0
- package/dist/orchestrators/codegen/service.mjs +276 -0
- package/dist/orchestrators/codegen/service.mjs.map +1 -0
- package/dist/orchestrators/router/cleanup.mjs +58 -0
- package/dist/orchestrators/router/cleanup.mjs.map +1 -0
- package/dist/orchestrators/router/cors.mjs +31 -0
- package/dist/orchestrators/router/cors.mjs.map +1 -0
- package/dist/orchestrators/router/entrypoints.d.mts +1 -0
- package/dist/orchestrators/router/entrypoints.mjs +80 -0
- package/dist/orchestrators/router/entrypoints.mjs.map +1 -0
- package/dist/orchestrators/router/errors.d.mts +1 -0
- package/dist/orchestrators/router/errors.mjs +103 -0
- package/dist/orchestrators/router/errors.mjs.map +1 -0
- package/dist/orchestrators/router/file-provider.d.mts +1 -0
- package/dist/orchestrators/router/file-provider.mjs +320 -0
- package/dist/orchestrators/router/file-provider.mjs.map +1 -0
- package/dist/orchestrators/router/hostname.d.mts +1 -0
- package/dist/orchestrators/router/hostname.mjs +107 -0
- package/dist/orchestrators/router/hostname.mjs.map +1 -0
- package/dist/orchestrators/router/index.d.mts +1 -0
- package/dist/orchestrators/router/profile.d.mts +1 -0
- package/dist/orchestrators/router/profile.mjs +109 -0
- package/dist/orchestrators/router/profile.mjs.map +1 -0
- package/dist/orchestrators/router/service.d.mts +3 -0
- package/dist/orchestrators/router/service.mjs +421 -0
- package/dist/orchestrators/router/service.mjs.map +1 -0
- package/dist/orchestrators/router/traefik-container.d.mts +1 -0
- package/dist/orchestrators/router/traefik-container.mjs +229 -0
- package/dist/orchestrators/router/traefik-container.mjs.map +1 -0
- package/dist/orchestrators/runtime-composition.d.mts +10 -0
- package/dist/orchestrators/runtime-composition.mjs +168 -0
- package/dist/orchestrators/runtime-composition.mjs.map +1 -0
- package/dist/orchestrators/snapshot/capture.d.mts +1 -0
- package/dist/orchestrators/snapshot/capture.mjs +350 -0
- package/dist/orchestrators/snapshot/capture.mjs.map +1 -0
- package/dist/orchestrators/snapshot/descriptor.d.mts +1 -0
- package/dist/orchestrators/snapshot/descriptor.mjs +109 -0
- package/dist/orchestrators/snapshot/descriptor.mjs.map +1 -0
- package/dist/orchestrators/snapshot/identity-guard.d.mts +1 -0
- package/dist/orchestrators/snapshot/identity-guard.mjs +132 -0
- package/dist/orchestrators/snapshot/identity-guard.mjs.map +1 -0
- package/dist/orchestrators/snapshot/image-bundle-tags.mjs +207 -0
- package/dist/orchestrators/snapshot/image-bundle-tags.mjs.map +1 -0
- package/dist/orchestrators/snapshot/index.d.mts +1 -0
- package/dist/orchestrators/snapshot/integrity.d.mts +1 -0
- package/dist/orchestrators/snapshot/integrity.mjs +74 -0
- package/dist/orchestrators/snapshot/integrity.mjs.map +1 -0
- package/dist/orchestrators/snapshot/prune.d.mts +1 -0
- package/dist/orchestrators/snapshot/prune.mjs +110 -0
- package/dist/orchestrators/snapshot/prune.mjs.map +1 -0
- package/dist/orchestrators/snapshot/restore.d.mts +1 -0
- package/dist/orchestrators/snapshot/restore.mjs +404 -0
- package/dist/orchestrators/snapshot/restore.mjs.map +1 -0
- package/dist/orchestrators/snapshot/service.d.mts +1 -0
- package/dist/orchestrators/snapshot/service.mjs +296 -0
- package/dist/orchestrators/snapshot/service.mjs.map +1 -0
- package/dist/orchestrators/snapshot/state-document.mjs +18 -0
- package/dist/orchestrators/snapshot/state-document.mjs.map +1 -0
- package/dist/orchestrators/snapshot/wipe.d.mts +1 -0
- package/dist/orchestrators/snapshot/wipe.mjs +59 -0
- package/dist/orchestrators/snapshot/wipe.mjs.map +1 -0
- package/dist/plugins/account/codegen.d.mts +12 -0
- package/dist/plugins/account/codegen.mjs +22 -0
- package/dist/plugins/account/codegen.mjs.map +1 -0
- package/dist/plugins/account/errors.d.mts +44 -0
- package/dist/plugins/account/errors.mjs +16 -0
- package/dist/plugins/account/errors.mjs.map +1 -0
- package/dist/plugins/account/funding.d.mts +94 -0
- package/dist/plugins/account/funding.mjs +199 -0
- package/dist/plugins/account/funding.mjs.map +1 -0
- package/dist/plugins/account/index.d.mts +54 -0
- package/dist/plugins/account/index.mjs +151 -0
- package/dist/plugins/account/index.mjs.map +1 -0
- package/dist/plugins/account/keypair.d.mts +32 -0
- package/dist/plugins/account/keypair.mjs +99 -0
- package/dist/plugins/account/keypair.mjs.map +1 -0
- package/dist/plugins/account/lease.mjs +21 -0
- package/dist/plugins/account/lease.mjs.map +1 -0
- package/dist/plugins/account/registry.d.mts +33 -0
- package/dist/plugins/account/registry.mjs +36 -0
- package/dist/plugins/account/registry.mjs.map +1 -0
- package/dist/plugins/account/service.d.mts +104 -0
- package/dist/plugins/account/service.mjs +405 -0
- package/dist/plugins/account/service.mjs.map +1 -0
- package/dist/plugins/account/snapshot.mjs +33 -0
- package/dist/plugins/account/snapshot.mjs.map +1 -0
- package/dist/plugins/account/variants/env.mjs +24 -0
- package/dist/plugins/account/variants/env.mjs.map +1 -0
- package/dist/plugins/account/variants/ephemeral.mjs +72 -0
- package/dist/plugins/account/variants/ephemeral.mjs.map +1 -0
- package/dist/plugins/account/variants/impersonate.d.mts +16 -0
- package/dist/plugins/account/variants/impersonate.mjs +48 -0
- package/dist/plugins/account/variants/impersonate.mjs.map +1 -0
- package/dist/plugins/account/variants/inline.mjs +13 -0
- package/dist/plugins/account/variants/inline.mjs.map +1 -0
- package/dist/plugins/account/variants/keystore.mjs +93 -0
- package/dist/plugins/account/variants/keystore.mjs.map +1 -0
- package/dist/plugins/account/variants/signer.mjs +31 -0
- package/dist/plugins/account/variants/signer.mjs.map +1 -0
- package/dist/plugins/action/build-context.d.mts +41 -0
- package/dist/plugins/action/discriminator.d.mts +20 -0
- package/dist/plugins/action/discriminator.mjs +13 -0
- package/dist/plugins/action/discriminator.mjs.map +1 -0
- package/dist/plugins/action/errors.d.mts +31 -0
- package/dist/plugins/action/errors.mjs +13 -0
- package/dist/plugins/action/errors.mjs.map +1 -0
- package/dist/plugins/action/execute.d.mts +2 -0
- package/dist/plugins/action/execute.mjs +145 -0
- package/dist/plugins/action/execute.mjs.map +1 -0
- package/dist/plugins/action/index.d.mts +56 -0
- package/dist/plugins/action/index.mjs +82 -0
- package/dist/plugins/action/index.mjs.map +1 -0
- package/dist/plugins/action/service.d.mts +26 -0
- package/dist/plugins/action/service.mjs +84 -0
- package/dist/plugins/action/service.mjs.map +1 -0
- package/dist/plugins/coin/address-resolution.d.mts +34 -0
- package/dist/plugins/coin/address-resolution.mjs +80 -0
- package/dist/plugins/coin/address-resolution.mjs.map +1 -0
- package/dist/plugins/coin/codegen.d.mts +16 -0
- package/dist/plugins/coin/codegen.mjs +21 -0
- package/dist/plugins/coin/codegen.mjs.map +1 -0
- package/dist/plugins/coin/discovery.d.mts +26 -0
- package/dist/plugins/coin/discovery.mjs +112 -0
- package/dist/plugins/coin/discovery.mjs.map +1 -0
- package/dist/plugins/coin/errors.d.mts +48 -0
- package/dist/plugins/coin/errors.mjs +13 -0
- package/dist/plugins/coin/errors.mjs.map +1 -0
- package/dist/plugins/coin/index.d.mts +95 -0
- package/dist/plugins/coin/index.mjs +172 -0
- package/dist/plugins/coin/index.mjs.map +1 -0
- package/dist/plugins/coin/metadata.d.mts +15 -0
- package/dist/plugins/coin/metadata.mjs +99 -0
- package/dist/plugins/coin/metadata.mjs.map +1 -0
- package/dist/plugins/coin/mint.d.mts +34 -0
- package/dist/plugins/coin/mint.mjs +164 -0
- package/dist/plugins/coin/mint.mjs.map +1 -0
- package/dist/plugins/coin/registry.d.mts +1 -0
- package/dist/plugins/coin/registry.mjs +37 -0
- package/dist/plugins/coin/registry.mjs.map +1 -0
- package/dist/plugins/coin/service.d.mts +47 -0
- package/dist/plugins/coin/service.mjs +51 -0
- package/dist/plugins/coin/service.mjs.map +1 -0
- package/dist/plugins/coin/snapshot.mjs +19 -0
- package/dist/plugins/coin/snapshot.mjs.map +1 -0
- package/dist/plugins/coin/type-strings.mjs +49 -0
- package/dist/plugins/coin/type-strings.mjs.map +1 -0
- package/dist/plugins/deepbook/codegen.d.mts +39 -0
- package/dist/plugins/deepbook/codegen.mjs +15 -0
- package/dist/plugins/deepbook/codegen.mjs.map +1 -0
- package/dist/plugins/deepbook/deploy.mjs +437 -0
- package/dist/plugins/deepbook/deploy.mjs.map +1 -0
- package/dist/plugins/deepbook/errors.d.mts +29 -0
- package/dist/plugins/deepbook/errors.mjs +26 -0
- package/dist/plugins/deepbook/errors.mjs.map +1 -0
- package/dist/plugins/deepbook/faucet-strategy.d.mts +8 -0
- package/dist/plugins/deepbook/faucet-strategy.mjs +81 -0
- package/dist/plugins/deepbook/faucet-strategy.mjs.map +1 -0
- package/dist/plugins/deepbook/index.d.mts +171 -0
- package/dist/plugins/deepbook/index.mjs +359 -0
- package/dist/plugins/deepbook/index.mjs.map +1 -0
- package/dist/plugins/deepbook/plugin-key.mjs +7 -0
- package/dist/plugins/deepbook/plugin-key.mjs.map +1 -0
- package/dist/plugins/deepbook/pyth/index.mjs +226 -0
- package/dist/plugins/deepbook/pyth/index.mjs.map +1 -0
- package/dist/plugins/deepbook/routable.mjs +21 -0
- package/dist/plugins/deepbook/routable.mjs.map +1 -0
- package/dist/plugins/deepbook/snapshot.mjs +49 -0
- package/dist/plugins/deepbook/snapshot.mjs.map +1 -0
- package/dist/plugins/deepbook/types.d.mts +125 -0
- package/dist/plugins/deepbook/types.mjs +12 -0
- package/dist/plugins/deepbook/types.mjs.map +1 -0
- package/dist/plugins/faucet/dispatcher.d.mts +9 -0
- package/dist/plugins/faucet/dispatcher.mjs +13 -0
- package/dist/plugins/faucet/dispatcher.mjs.map +1 -0
- package/dist/plugins/faucet/errors.d.mts +86 -0
- package/dist/plugins/faucet/errors.mjs +19 -0
- package/dist/plugins/faucet/errors.mjs.map +1 -0
- package/dist/plugins/faucet/http.mjs +127 -0
- package/dist/plugins/faucet/http.mjs.map +1 -0
- package/dist/plugins/faucet/index.d.mts +43 -0
- package/dist/plugins/faucet/index.mjs +42 -0
- package/dist/plugins/faucet/index.mjs.map +1 -0
- package/dist/plugins/faucet/service.d.mts +20 -0
- package/dist/plugins/faucet/strategies/sui-local.d.mts +23 -0
- package/dist/plugins/faucet/strategies/sui-local.mjs +29 -0
- package/dist/plugins/faucet/strategies/sui-local.mjs.map +1 -0
- package/dist/plugins/host-service/errors.d.mts +27 -0
- package/dist/plugins/host-service/errors.mjs +14 -0
- package/dist/plugins/host-service/errors.mjs.map +1 -0
- package/dist/plugins/host-service/index.d.mts +10 -0
- package/dist/plugins/host-service/index.mjs +48 -0
- package/dist/plugins/host-service/index.mjs.map +1 -0
- package/dist/plugins/host-service/routable.mjs +24 -0
- package/dist/plugins/host-service/routable.mjs.map +1 -0
- package/dist/plugins/host-service/service.d.mts +49 -0
- package/dist/plugins/host-service/service.mjs +375 -0
- package/dist/plugins/host-service/service.mjs.map +1 -0
- package/dist/plugins/package/build.d.mts +1 -0
- package/dist/plugins/package/build.mjs +24 -0
- package/dist/plugins/package/build.mjs.map +1 -0
- package/dist/plugins/package/codegen.d.mts +19 -0
- package/dist/plugins/package/codegen.mjs +41 -0
- package/dist/plugins/package/codegen.mjs.map +1 -0
- package/dist/plugins/package/dep-resolution.mjs +10 -0
- package/dist/plugins/package/dep-resolution.mjs.map +1 -0
- package/dist/plugins/package/errors.d.mts +34 -0
- package/dist/plugins/package/errors.mjs +13 -0
- package/dist/plugins/package/errors.mjs.map +1 -0
- package/dist/plugins/package/index.d.mts +109 -0
- package/dist/plugins/package/index.mjs +207 -0
- package/dist/plugins/package/index.mjs.map +1 -0
- package/dist/plugins/package/mode-known.mjs +41 -0
- package/dist/plugins/package/mode-known.mjs.map +1 -0
- package/dist/plugins/package/mode-local.d.mts +1 -0
- package/dist/plugins/package/mode-local.mjs +183 -0
- package/dist/plugins/package/mode-local.mjs.map +1 -0
- package/dist/plugins/package/publish-executor.mjs +202 -0
- package/dist/plugins/package/publish-executor.mjs.map +1 -0
- package/dist/plugins/package/publish-output.d.mts +28 -0
- package/dist/plugins/package/publish-output.mjs +45 -0
- package/dist/plugins/package/publish-output.mjs.map +1 -0
- package/dist/plugins/package/registry.d.mts +25 -0
- package/dist/plugins/package/registry.mjs +30 -0
- package/dist/plugins/package/registry.mjs.map +1 -0
- package/dist/plugins/package/service.mjs +20 -0
- package/dist/plugins/package/service.mjs.map +1 -0
- package/dist/plugins/package/snapshot.mjs +25 -0
- package/dist/plugins/package/snapshot.mjs.map +1 -0
- package/dist/plugins/postgres/codegen.mjs +42 -0
- package/dist/plugins/postgres/codegen.mjs.map +1 -0
- package/dist/plugins/postgres/connection.d.mts +33 -0
- package/dist/plugins/postgres/connection.mjs +19 -0
- package/dist/plugins/postgres/connection.mjs.map +1 -0
- package/dist/plugins/postgres/db-ensure.mjs +100 -0
- package/dist/plugins/postgres/db-ensure.mjs.map +1 -0
- package/dist/plugins/postgres/errors.d.mts +55 -0
- package/dist/plugins/postgres/errors.mjs +29 -0
- package/dist/plugins/postgres/errors.mjs.map +1 -0
- package/dist/plugins/postgres/index.d.mts +37 -0
- package/dist/plugins/postgres/index.mjs +75 -0
- package/dist/plugins/postgres/index.mjs.map +1 -0
- package/dist/plugins/postgres/routable.mjs +33 -0
- package/dist/plugins/postgres/routable.mjs.map +1 -0
- package/dist/plugins/postgres/service.d.mts +50 -0
- package/dist/plugins/postgres/service.mjs +145 -0
- package/dist/plugins/postgres/service.mjs.map +1 -0
- package/dist/plugins/postgres/snapshot.d.mts +1 -0
- package/dist/plugins/postgres/snapshot.mjs +32 -0
- package/dist/plugins/postgres/snapshot.mjs.map +1 -0
- package/dist/plugins/router-entrypoints.mjs +21 -0
- package/dist/plugins/router-entrypoints.mjs.map +1 -0
- package/dist/plugins/seal/bootstrap-assets/cargo-image.mjs +59 -0
- package/dist/plugins/seal/bootstrap-assets/cargo-image.mjs.map +1 -0
- package/dist/plugins/seal/bootstrap-assets/source-fetch.mjs +132 -0
- package/dist/plugins/seal/bootstrap-assets/source-fetch.mjs.map +1 -0
- package/dist/plugins/seal/codegen.d.mts +19 -0
- package/dist/plugins/seal/codegen.mjs +16 -0
- package/dist/plugins/seal/codegen.mjs.map +1 -0
- package/dist/plugins/seal/config-render.mjs +82 -0
- package/dist/plugins/seal/config-render.mjs.map +1 -0
- package/dist/plugins/seal/deploy.mjs +198 -0
- package/dist/plugins/seal/deploy.mjs.map +1 -0
- package/dist/plugins/seal/errors.d.mts +52 -0
- package/dist/plugins/seal/errors.mjs +19 -0
- package/dist/plugins/seal/errors.mjs.map +1 -0
- package/dist/plugins/seal/index.d.mts +161 -0
- package/dist/plugins/seal/index.mjs +235 -0
- package/dist/plugins/seal/index.mjs.map +1 -0
- package/dist/plugins/seal/key-manager.d.mts +22 -0
- package/dist/plugins/seal/key-manager.mjs +22 -0
- package/dist/plugins/seal/key-manager.mjs.map +1 -0
- package/dist/plugins/seal/key-server.mjs +175 -0
- package/dist/plugins/seal/key-server.mjs.map +1 -0
- package/dist/plugins/seal/keygen.mjs +96 -0
- package/dist/plugins/seal/keygen.mjs.map +1 -0
- package/dist/plugins/seal/mode/fork-known.d.mts +8 -0
- package/dist/plugins/seal/mode/fork-known.mjs +23 -0
- package/dist/plugins/seal/mode/fork-known.mjs.map +1 -0
- package/dist/plugins/seal/mode/live.d.mts +18 -0
- package/dist/plugins/seal/mode/live.mjs +64 -0
- package/dist/plugins/seal/mode/live.mjs.map +1 -0
- package/dist/plugins/seal/mode/local-keygen.mjs +180 -0
- package/dist/plugins/seal/mode/local-keygen.mjs.map +1 -0
- package/dist/plugins/seal/plugin-key.mjs +7 -0
- package/dist/plugins/seal/plugin-key.mjs.map +1 -0
- package/dist/plugins/seal/registry-publish.d.mts +43 -0
- package/dist/plugins/seal/registry-publish.mjs +9 -0
- package/dist/plugins/seal/registry-publish.mjs.map +1 -0
- package/dist/plugins/seal/routable.mjs +57 -0
- package/dist/plugins/seal/routable.mjs.map +1 -0
- package/dist/plugins/seal/service.mjs +17 -0
- package/dist/plugins/seal/service.mjs.map +1 -0
- package/dist/plugins/seal/snapshot.mjs +51 -0
- package/dist/plugins/seal/snapshot.mjs.map +1 -0
- package/dist/plugins/sui/auto-tick.mjs +45 -0
- package/dist/plugins/sui/auto-tick.mjs.map +1 -0
- package/dist/plugins/sui/chain-build-container.d.mts +1 -0
- package/dist/plugins/sui/chain-probe.d.mts +85 -0
- package/dist/plugins/sui/chain-probe.mjs +104 -0
- package/dist/plugins/sui/chain-probe.mjs.map +1 -0
- package/dist/plugins/sui/codegen.d.mts +14 -0
- package/dist/plugins/sui/codegen.mjs +26 -0
- package/dist/plugins/sui/codegen.mjs.map +1 -0
- package/dist/plugins/sui/errors.d.mts +74 -0
- package/dist/plugins/sui/errors.mjs +28 -0
- package/dist/plugins/sui/errors.mjs.map +1 -0
- package/dist/plugins/sui/fork-orchestration.mjs +24 -0
- package/dist/plugins/sui/fork-orchestration.mjs.map +1 -0
- package/dist/plugins/sui/fork-transaction.mjs +96 -0
- package/dist/plugins/sui/fork-transaction.mjs.map +1 -0
- package/dist/plugins/sui/index.d.mts +318 -0
- package/dist/plugins/sui/index.mjs +182 -0
- package/dist/plugins/sui/index.mjs.map +1 -0
- package/dist/plugins/sui/mode/external.mjs +60 -0
- package/dist/plugins/sui/mode/external.mjs.map +1 -0
- package/dist/plugins/sui/mode/fork.mjs +283 -0
- package/dist/plugins/sui/mode/fork.mjs.map +1 -0
- package/dist/plugins/sui/mode/live.mjs +103 -0
- package/dist/plugins/sui/mode/live.mjs.map +1 -0
- package/dist/plugins/sui/mode/local.mjs +293 -0
- package/dist/plugins/sui/mode/local.mjs.map +1 -0
- package/dist/plugins/sui/mode/shared-boot.mjs +254 -0
- package/dist/plugins/sui/mode/shared-boot.mjs.map +1 -0
- package/dist/plugins/sui/mode/shared.d.mts +103 -0
- package/dist/plugins/sui/mode/shared.mjs +12 -0
- package/dist/plugins/sui/mode/shared.mjs.map +1 -0
- package/dist/plugins/sui/mode/spec.d.mts +94 -0
- package/dist/plugins/sui/network-resolver.d.mts +23 -0
- package/dist/plugins/sui/routable.mjs +88 -0
- package/dist/plugins/sui/routable.mjs.map +1 -0
- package/dist/plugins/sui/seed-objects.d.mts +18 -0
- package/dist/plugins/sui/seed-objects.mjs +25 -0
- package/dist/plugins/sui/seed-objects.mjs.map +1 -0
- package/dist/plugins/sui/service.mjs +38 -0
- package/dist/plugins/sui/service.mjs.map +1 -0
- package/dist/plugins/sui/snapshot.mjs +53 -0
- package/dist/plugins/sui/snapshot.mjs.map +1 -0
- package/dist/plugins/wallet/codegen.d.mts +33 -0
- package/dist/plugins/wallet/codegen.mjs +34 -0
- package/dist/plugins/wallet/codegen.mjs.map +1 -0
- package/dist/plugins/wallet/errors.d.mts +66 -0
- package/dist/plugins/wallet/errors.mjs +16 -0
- package/dist/plugins/wallet/errors.mjs.map +1 -0
- package/dist/plugins/wallet/index.d.mts +63 -0
- package/dist/plugins/wallet/index.mjs +126 -0
- package/dist/plugins/wallet/index.mjs.map +1 -0
- package/dist/plugins/wallet/origin-policy.d.mts +1 -0
- package/dist/plugins/wallet/origin-policy.mjs +65 -0
- package/dist/plugins/wallet/origin-policy.mjs.map +1 -0
- package/dist/plugins/wallet/pairing.d.mts +11 -0
- package/dist/plugins/wallet/pairing.mjs +125 -0
- package/dist/plugins/wallet/pairing.mjs.map +1 -0
- package/dist/plugins/wallet/protocol.d.mts +1 -0
- package/dist/plugins/wallet/protocol.mjs +96 -0
- package/dist/plugins/wallet/protocol.mjs.map +1 -0
- package/dist/plugins/wallet/routable.mjs +32 -0
- package/dist/plugins/wallet/routable.mjs.map +1 -0
- package/dist/plugins/wallet/server.d.mts +12 -0
- package/dist/plugins/wallet/server.mjs +317 -0
- package/dist/plugins/wallet/server.mjs.map +1 -0
- package/dist/plugins/wallet/service.d.mts +68 -0
- package/dist/plugins/wallet/service.mjs +97 -0
- package/dist/plugins/wallet/service.mjs.map +1 -0
- package/dist/plugins/wallet/snapshot.d.mts +1 -0
- package/dist/plugins/wallet/snapshot.mjs +14 -0
- package/dist/plugins/wallet/snapshot.mjs.map +1 -0
- package/dist/plugins/walrus/bootstrap-assets/cargo-image.mjs +42 -0
- package/dist/plugins/walrus/bootstrap-assets/cargo-image.mjs.map +1 -0
- package/dist/plugins/walrus/codegen.d.mts +38 -0
- package/dist/plugins/walrus/codegen.mjs +34 -0
- package/dist/plugins/walrus/codegen.mjs.map +1 -0
- package/dist/plugins/walrus/deploy-paths.mjs +14 -0
- package/dist/plugins/walrus/deploy-paths.mjs.map +1 -0
- package/dist/plugins/walrus/deploy.d.mts +1 -0
- package/dist/plugins/walrus/deploy.mjs +224 -0
- package/dist/plugins/walrus/deploy.mjs.map +1 -0
- package/dist/plugins/walrus/errors.d.mts +38 -0
- package/dist/plugins/walrus/errors.mjs +26 -0
- package/dist/plugins/walrus/errors.mjs.map +1 -0
- package/dist/plugins/walrus/faucet-strategy.d.mts +12 -0
- package/dist/plugins/walrus/faucet-strategy.mjs +62 -0
- package/dist/plugins/walrus/faucet-strategy.mjs.map +1 -0
- package/dist/plugins/walrus/index.d.mts +177 -0
- package/dist/plugins/walrus/index.mjs +284 -0
- package/dist/plugins/walrus/index.mjs.map +1 -0
- package/dist/plugins/walrus/mode/known-deploy.d.mts +25 -0
- package/dist/plugins/walrus/mode/known-deploy.mjs +71 -0
- package/dist/plugins/walrus/mode/known-deploy.mjs.map +1 -0
- package/dist/plugins/walrus/mode/local-cluster.d.mts +34 -0
- package/dist/plugins/walrus/mode/local-cluster.mjs +153 -0
- package/dist/plugins/walrus/mode/local-cluster.mjs.map +1 -0
- package/dist/plugins/walrus/plugin-key.mjs +7 -0
- package/dist/plugins/walrus/plugin-key.mjs.map +1 -0
- package/dist/plugins/walrus/registry-publish.d.mts +24 -0
- package/dist/plugins/walrus/registry-publish.mjs +7 -0
- package/dist/plugins/walrus/registry-publish.mjs.map +1 -0
- package/dist/plugins/walrus/routable.mjs +99 -0
- package/dist/plugins/walrus/routable.mjs.map +1 -0
- package/dist/plugins/walrus/service.mjs +20 -0
- package/dist/plugins/walrus/service.mjs.map +1 -0
- package/dist/plugins/walrus/snapshot.mjs +53 -0
- package/dist/plugins/walrus/snapshot.mjs.map +1 -0
- package/dist/plugins/walrus/storage-nodes.d.mts +15 -0
- package/dist/plugins/walrus/storage-nodes.mjs +154 -0
- package/dist/plugins/walrus/storage-nodes.mjs.map +1 -0
- package/dist/plugins/walrus/wal-swap.d.mts +2 -0
- package/dist/plugins/walrus/wal-swap.mjs +58 -0
- package/dist/plugins/walrus/wal-swap.mjs.map +1 -0
- package/dist/primitives/artifact-publisher.d.mts +12 -0
- package/dist/primitives/cache.d.mts +1 -0
- package/dist/runtime/built-in-plugin-layers.mjs +49 -0
- package/dist/runtime/built-in-plugin-layers.mjs.map +1 -0
- package/dist/runtime/docker/client.d.mts +2 -0
- package/dist/runtime/docker/client.mjs +54 -0
- package/dist/runtime/docker/client.mjs.map +1 -0
- package/dist/runtime/docker/container.d.mts +1 -0
- package/dist/runtime/docker/container.mjs +562 -0
- package/dist/runtime/docker/container.mjs.map +1 -0
- package/dist/runtime/docker/errors.d.mts +1 -0
- package/dist/runtime/docker/errors.mjs +187 -0
- package/dist/runtime/docker/errors.mjs.map +1 -0
- package/dist/runtime/docker/exec.d.mts +1 -0
- package/dist/runtime/docker/exec.mjs +63 -0
- package/dist/runtime/docker/exec.mjs.map +1 -0
- package/dist/runtime/docker/image.d.mts +1 -0
- package/dist/runtime/docker/image.mjs +278 -0
- package/dist/runtime/docker/image.mjs.map +1 -0
- package/dist/runtime/docker/index.d.mts +1 -0
- package/dist/runtime/docker/inventory.d.mts +1 -0
- package/dist/runtime/docker/inventory.mjs +167 -0
- package/dist/runtime/docker/inventory.mjs.map +1 -0
- package/dist/runtime/docker/labels.d.mts +1 -0
- package/dist/runtime/docker/labels.mjs +97 -0
- package/dist/runtime/docker/labels.mjs.map +1 -0
- package/dist/runtime/docker/logs.d.mts +1 -0
- package/dist/runtime/docker/logs.mjs +34 -0
- package/dist/runtime/docker/logs.mjs.map +1 -0
- package/dist/runtime/docker/network.d.mts +1 -0
- package/dist/runtime/docker/network.mjs +168 -0
- package/dist/runtime/docker/network.mjs.map +1 -0
- package/dist/runtime/docker/service.d.mts +9 -0
- package/dist/runtime/docker/service.mjs +266 -0
- package/dist/runtime/docker/service.mjs.map +1 -0
- package/dist/runtime/docker/sweep.d.mts +1 -0
- package/dist/runtime/docker/sweep.mjs +220 -0
- package/dist/runtime/docker/sweep.mjs.map +1 -0
- package/dist/runtime/docker/volume.d.mts +1 -0
- package/dist/runtime/docker/volume.mjs +24 -0
- package/dist/runtime/docker/volume.mjs.map +1 -0
- package/dist/runtime/docker/wrap.d.mts +1 -0
- package/dist/runtime/docker/wrap.mjs +131 -0
- package/dist/runtime/docker/wrap.mjs.map +1 -0
- package/dist/substrate/brand.d.mts +24 -0
- package/dist/substrate/brand.mjs +14 -0
- package/dist/substrate/brand.mjs.map +1 -0
- package/dist/substrate/cross-process.d.mts +1 -0
- package/dist/substrate/cross-process.mjs +28 -0
- package/dist/substrate/cross-process.mjs.map +1 -0
- package/dist/substrate/events.d.mts +117 -0
- package/dist/substrate/identity.d.mts +13 -0
- package/dist/substrate/lifecycle.d.mts +12 -0
- package/dist/substrate/manifest.d.mts +39 -0
- package/dist/substrate/manifest.mjs +33 -0
- package/dist/substrate/manifest.mjs.map +1 -0
- package/dist/substrate/network.d.mts +34 -0
- package/dist/substrate/options.d.mts +23 -0
- package/dist/substrate/plugin.d.mts +101 -0
- package/dist/substrate/plugin.mjs +61 -0
- package/dist/substrate/plugin.mjs.map +1 -0
- package/dist/substrate/projection.d.mts +100 -0
- package/dist/substrate/runtime/artifact-publisher/index.mjs +76 -0
- package/dist/substrate/runtime/artifact-publisher/index.mjs.map +1 -0
- package/dist/substrate/runtime/atomic-write.mjs +106 -0
- package/dist/substrate/runtime/atomic-write.mjs.map +1 -0
- package/dist/substrate/runtime/cache/index.d.mts +1 -0
- package/dist/substrate/runtime/cache/schema.d.mts +1 -0
- package/dist/substrate/runtime/cache/schema.mjs +22 -0
- package/dist/substrate/runtime/cache/schema.mjs.map +1 -0
- package/dist/substrate/runtime/cache/service.d.mts +1 -0
- package/dist/substrate/runtime/cache/service.mjs +89 -0
- package/dist/substrate/runtime/cache/service.mjs.map +1 -0
- package/dist/substrate/runtime/capability-sinks/index.d.mts +1 -0
- package/dist/substrate/runtime/capability-sinks/layer.d.mts +1 -0
- package/dist/substrate/runtime/capability-sinks/layer.mjs +31 -0
- package/dist/substrate/runtime/capability-sinks/layer.mjs.map +1 -0
- package/dist/substrate/runtime/capability-sinks/service.d.mts +36 -0
- package/dist/substrate/runtime/capability-sinks/service.mjs +74 -0
- package/dist/substrate/runtime/capability-sinks/service.mjs.map +1 -0
- package/dist/substrate/runtime/config-validation.d.mts +38 -0
- package/dist/substrate/runtime/config-validation.mjs +137 -0
- package/dist/substrate/runtime/config-validation.mjs.map +1 -0
- package/dist/substrate/runtime/context-helpers.mjs +32 -0
- package/dist/substrate/runtime/context-helpers.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/command-channel/channel.mjs +128 -0
- package/dist/substrate/runtime/cross-process/command-channel/channel.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/command-channel/file-channel.mjs +136 -0
- package/dist/substrate/runtime/cross-process/command-channel/file-channel.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/command-channel/protocol.mjs +49 -0
- package/dist/substrate/runtime/cross-process/command-channel/protocol.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/command-channel/runtime-control-lock.mjs +9 -0
- package/dist/substrate/runtime/cross-process/command-channel/runtime-control-lock.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/liveness.mjs +119 -0
- package/dist/substrate/runtime/cross-process/liveness.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/roster.mjs +275 -0
- package/dist/substrate/runtime/cross-process/roster.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/snapshot-reservation.d.mts +1 -0
- package/dist/substrate/runtime/cross-process/snapshot-reservation.mjs +117 -0
- package/dist/substrate/runtime/cross-process/snapshot-reservation.mjs.map +1 -0
- package/dist/substrate/runtime/cross-process/stack-lock.d.mts +1 -0
- package/dist/substrate/runtime/cross-process/stack-lock.mjs +142 -0
- package/dist/substrate/runtime/cross-process/stack-lock.mjs.map +1 -0
- package/dist/substrate/runtime/current-plugin.mjs +15 -0
- package/dist/substrate/runtime/current-plugin.mjs.map +1 -0
- package/dist/substrate/runtime/errors.d.mts +1 -0
- package/dist/substrate/runtime/errors.mjs +76 -0
- package/dist/substrate/runtime/errors.mjs.map +1 -0
- package/dist/substrate/runtime/host-tree-tar/index.mjs +364 -0
- package/dist/substrate/runtime/host-tree-tar/index.mjs.map +1 -0
- package/dist/substrate/runtime/http-probe.d.mts +35 -0
- package/dist/substrate/runtime/http-probe.mjs +65 -0
- package/dist/substrate/runtime/http-probe.mjs.map +1 -0
- package/dist/substrate/runtime/lease-broker/index.d.mts +1 -0
- package/dist/substrate/runtime/lease-broker/service.d.mts +64 -0
- package/dist/substrate/runtime/lease-broker/service.mjs +155 -0
- package/dist/substrate/runtime/lease-broker/service.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/dep-graph.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/dep-graph.mjs +138 -0
- package/dist/substrate/runtime/lifecycle/dep-graph.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/index.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/lifecycle-fact.mjs +31 -0
- package/dist/substrate/runtime/lifecycle/lifecycle-fact.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/plugin-registry.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/plugin-registry.mjs +133 -0
- package/dist/substrate/runtime/lifecycle/plugin-registry.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/ready-gate.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/ready-gate.mjs +34 -0
- package/dist/substrate/runtime/lifecycle/ready-gate.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/selective-restart.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/selective-restart.mjs +43 -0
- package/dist/substrate/runtime/lifecycle/selective-restart.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/signals.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/signals.mjs +64 -0
- package/dist/substrate/runtime/lifecycle/signals.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/state-machine.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/state-machine.mjs +38 -0
- package/dist/substrate/runtime/lifecycle/state-machine.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/watch-attribution.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/watch-attribution.mjs +27 -0
- package/dist/substrate/runtime/lifecycle/watch-attribution.mjs.map +1 -0
- package/dist/substrate/runtime/managed-container.d.mts +30 -0
- package/dist/substrate/runtime/managed-container.mjs +32 -0
- package/dist/substrate/runtime/managed-container.mjs.map +1 -0
- package/dist/substrate/runtime/manifest/manifest.mjs +73 -0
- package/dist/substrate/runtime/manifest/manifest.mjs.map +1 -0
- package/dist/substrate/runtime/mode-errors.d.mts +36 -0
- package/dist/substrate/runtime/observability/cascade-formatter.d.mts +1 -0
- package/dist/substrate/runtime/observability/cascade-formatter.mjs +135 -0
- package/dist/substrate/runtime/observability/cascade-formatter.mjs.map +1 -0
- package/dist/substrate/runtime/observability/formatter-registry.d.mts +1 -0
- package/dist/substrate/runtime/observability/formatter-registry.mjs +65 -0
- package/dist/substrate/runtime/observability/formatter-registry.mjs.map +1 -0
- package/dist/substrate/runtime/observability/index.d.mts +3 -0
- package/dist/substrate/runtime/observability/logger.d.mts +58 -0
- package/dist/substrate/runtime/observability/logger.mjs +89 -0
- package/dist/substrate/runtime/observability/logger.mjs.map +1 -0
- package/dist/substrate/runtime/observability/pretty-error.d.mts +1 -0
- package/dist/substrate/runtime/observability/pretty-error.mjs +119 -0
- package/dist/substrate/runtime/observability/pretty-error.mjs.map +1 -0
- package/dist/substrate/runtime/observability/process-lines.d.mts +31 -0
- package/dist/substrate/runtime/observability/process-lines.mjs +40 -0
- package/dist/substrate/runtime/observability/process-lines.mjs.map +1 -0
- package/dist/substrate/runtime/observability/redaction.d.mts +28 -0
- package/dist/substrate/runtime/observability/redaction.mjs +45 -0
- package/dist/substrate/runtime/observability/redaction.mjs.map +1 -0
- package/dist/substrate/runtime/observability/spans.d.mts +1 -0
- package/dist/substrate/runtime/observability/spans.mjs +87 -0
- package/dist/substrate/runtime/observability/spans.mjs.map +1 -0
- package/dist/substrate/runtime/observability/subprocess-capture.d.mts +2 -0
- package/dist/substrate/runtime/observability/subprocess-capture.mjs +82 -0
- package/dist/substrate/runtime/observability/subprocess-capture.mjs.map +1 -0
- package/dist/substrate/runtime/paths.d.mts +17 -0
- package/dist/substrate/runtime/paths.mjs +61 -0
- package/dist/substrate/runtime/paths.mjs.map +1 -0
- package/dist/substrate/runtime/port-broker/index.d.mts +1 -0
- package/dist/substrate/runtime/port-broker/service.d.mts +1 -0
- package/dist/substrate/runtime/port-broker/service.mjs +319 -0
- package/dist/substrate/runtime/port-broker/service.mjs.map +1 -0
- package/dist/substrate/runtime/post-acquire-tasks.d.mts +1 -0
- package/dist/substrate/runtime/post-acquire-tasks.mjs +34 -0
- package/dist/substrate/runtime/post-acquire-tasks.mjs.map +1 -0
- package/dist/substrate/runtime/probes.d.mts +51 -0
- package/dist/substrate/runtime/probes.mjs +84 -0
- package/dist/substrate/runtime/probes.mjs.map +1 -0
- package/dist/substrate/runtime/process-supervisor.d.mts +57 -0
- package/dist/substrate/runtime/process-supervisor.mjs +73 -0
- package/dist/substrate/runtime/process-supervisor.mjs.map +1 -0
- package/dist/substrate/runtime/projection/operational-endpoints.mjs +44 -0
- package/dist/substrate/runtime/projection/operational-endpoints.mjs.map +1 -0
- package/dist/substrate/runtime/projection/persisted.mjs +195 -0
- package/dist/substrate/runtime/projection/persisted.mjs.map +1 -0
- package/dist/substrate/runtime/projection/state-ref.mjs +48 -0
- package/dist/substrate/runtime/projection/state-ref.mjs.map +1 -0
- package/dist/substrate/runtime/projection/update.mjs +200 -0
- package/dist/substrate/runtime/projection/update.mjs.map +1 -0
- package/dist/substrate/runtime/retry-policy.d.mts +18 -0
- package/dist/substrate/runtime/retry-policy.mjs +16 -0
- package/dist/substrate/runtime/retry-policy.mjs.map +1 -0
- package/dist/substrate/runtime/run.mjs +86 -0
- package/dist/substrate/runtime/run.mjs.map +1 -0
- package/dist/substrate/runtime/runtime-decode.d.mts +32 -0
- package/dist/substrate/runtime/runtime-decode.mjs +53 -0
- package/dist/substrate/runtime/runtime-decode.mjs.map +1 -0
- package/dist/substrate/runtime/scoped-http-server.mjs +36 -0
- package/dist/substrate/runtime/scoped-http-server.mjs.map +1 -0
- package/dist/substrate/runtime/scoped-ref-map/service.mjs +83 -0
- package/dist/substrate/runtime/scoped-ref-map/service.mjs.map +1 -0
- package/dist/substrate/runtime/stage-and-swap/index.d.mts +1 -0
- package/dist/substrate/runtime/stage-and-swap/index.mjs +131 -0
- package/dist/substrate/runtime/stage-and-swap/index.mjs.map +1 -0
- package/dist/substrate/runtime/state-store/schema.mjs +36 -0
- package/dist/substrate/runtime/state-store/schema.mjs.map +1 -0
- package/dist/substrate/runtime/strategy-registry/chain-probe-for.d.mts +1 -0
- package/dist/substrate/runtime/strategy-registry/chain-probe-for.mjs +22 -0
- package/dist/substrate/runtime/strategy-registry/chain-probe-for.mjs.map +1 -0
- package/dist/substrate/runtime/strategy-registry/faucet-capability-for.d.mts +1 -0
- package/dist/substrate/runtime/strategy-registry/faucet-capability-for.mjs +30 -0
- package/dist/substrate/runtime/strategy-registry/faucet-capability-for.mjs.map +1 -0
- package/dist/substrate/runtime/strategy-registry/index.d.mts +1 -0
- package/dist/substrate/runtime/strategy-registry/service.d.mts +1 -0
- package/dist/substrate/runtime/strategy-registry/service.mjs +67 -0
- package/dist/substrate/runtime/strategy-registry/service.mjs.map +1 -0
- package/dist/substrate/runtime/sui-execute/index.d.mts +11 -0
- package/dist/substrate/runtime/sui-execute/index.mjs +144 -0
- package/dist/substrate/runtime/sui-execute/index.mjs.map +1 -0
- package/dist/substrate/runtime/sui-move-build/index.d.mts +1 -0
- package/dist/substrate/runtime/sui-move-build/index.mjs +283 -0
- package/dist/substrate/runtime/sui-move-build/index.mjs.map +1 -0
- package/dist/substrate/runtime/supervisor.d.mts +1 -0
- package/dist/substrate/runtime/supervisor.mjs +831 -0
- package/dist/substrate/runtime/supervisor.mjs.map +1 -0
- package/dist/surfaces/cli/command-tree.mjs +276 -0
- package/dist/surfaces/cli/command-tree.mjs.map +1 -0
- package/dist/surfaces/cli/commands/config.mjs +31 -0
- package/dist/surfaces/cli/commands/config.mjs.map +1 -0
- package/dist/surfaces/cli/commands/confirm-node.mjs +26 -0
- package/dist/surfaces/cli/commands/confirm-node.mjs.map +1 -0
- package/dist/surfaces/cli/commands/confirm.mjs +26 -0
- package/dist/surfaces/cli/commands/confirm.mjs.map +1 -0
- package/dist/surfaces/cli/commands/doctor-probes.mjs +452 -0
- package/dist/surfaces/cli/commands/doctor-probes.mjs.map +1 -0
- package/dist/surfaces/cli/commands/doctor.mjs +38 -0
- package/dist/surfaces/cli/commands/doctor.mjs.map +1 -0
- package/dist/surfaces/cli/commands/prune-picker.mjs +347 -0
- package/dist/surfaces/cli/commands/prune-picker.mjs.map +1 -0
- package/dist/surfaces/cli/commands/prune.mjs +178 -0
- package/dist/surfaces/cli/commands/prune.mjs.map +1 -0
- package/dist/surfaces/cli/commands/snapshot.mjs +141 -0
- package/dist/surfaces/cli/commands/snapshot.mjs.map +1 -0
- package/dist/surfaces/cli/commands/status.mjs +95 -0
- package/dist/surfaces/cli/commands/status.mjs.map +1 -0
- package/dist/surfaces/cli/commands/supervisor-presence.mjs +33 -0
- package/dist/surfaces/cli/commands/supervisor-presence.mjs.map +1 -0
- package/dist/surfaces/cli/commands/wipe.mjs +28 -0
- package/dist/surfaces/cli/commands/wipe.mjs.map +1 -0
- package/dist/surfaces/cli/envelope.mjs +43 -0
- package/dist/surfaces/cli/envelope.mjs.map +1 -0
- package/dist/surfaces/cli/errors.mjs +110 -0
- package/dist/surfaces/cli/errors.mjs.map +1 -0
- package/dist/surfaces/cli/flags.mjs +56 -0
- package/dist/surfaces/cli/flags.mjs.map +1 -0
- package/dist/surfaces/cli/index.mjs +418 -0
- package/dist/surfaces/cli/index.mjs.map +1 -0
- package/dist/surfaces/cli/output.mjs +115 -0
- package/dist/surfaces/cli/output.mjs.map +1 -0
- package/dist/surfaces/cli/sysexits.mjs +139 -0
- package/dist/surfaces/cli/sysexits.mjs.map +1 -0
- package/dist/surfaces/tui/app.mjs +104 -0
- package/dist/surfaces/tui/app.mjs.map +1 -0
- package/dist/surfaces/tui/dashboard.mjs +261 -0
- package/dist/surfaces/tui/dashboard.mjs.map +1 -0
- package/dist/surfaces/tui/display-derivation.mjs +395 -0
- package/dist/surfaces/tui/display-derivation.mjs.map +1 -0
- package/dist/surfaces/tui/errors.mjs +11 -0
- package/dist/surfaces/tui/errors.mjs.map +1 -0
- package/dist/surfaces/tui/event-log.mjs +155 -0
- package/dist/surfaces/tui/event-log.mjs.map +1 -0
- package/dist/surfaces/tui/heartbeat.mjs +33 -0
- package/dist/surfaces/tui/heartbeat.mjs.map +1 -0
- package/dist/surfaces/tui/index.mjs +50 -0
- package/dist/surfaces/tui/index.mjs.map +1 -0
- package/dist/surfaces/tui/input.mjs +104 -0
- package/dist/surfaces/tui/input.mjs.map +1 -0
- package/dist/surfaces/tui/mode-detect.mjs +32 -0
- package/dist/surfaces/tui/mode-detect.mjs.map +1 -0
- package/dist/surfaces/tui/mount-ink.mjs +31 -0
- package/dist/surfaces/tui/mount-ink.mjs.map +1 -0
- package/dist/surfaces/tui/plain-renderer.mjs +170 -0
- package/dist/surfaces/tui/plain-renderer.mjs.map +1 -0
- package/dist/surfaces/tui/resource-table.mjs +507 -0
- package/dist/surfaces/tui/resource-table.mjs.map +1 -0
- package/images/_shared/signal-forward.sh +77 -0
- package/images/postgres/Dockerfile +32 -0
- package/images/seal/Dockerfile +68 -0
- package/images/seal/entrypoint.sh +65 -0
- package/images/sui/Dockerfile +73 -0
- package/images/sui/entrypoint.sh +244 -0
- package/images/sui-fork/Dockerfile +53 -0
- package/images/sui-fork/entrypoint.sh +51 -0
- package/images/walrus/Dockerfile +122 -0
- package/images/walrus/deploy-walrus.sh +305 -0
- package/images/walrus/run-walrus.sh +53 -0
- package/package.json +94 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import * as _$effect_Types0 from "effect/Types";
|
|
2
|
+
import * as _$effect_Cause0 from "effect/Cause";
|
|
3
|
+
|
|
4
|
+
//#region src/build-integrations/playwright/errors.d.ts
|
|
5
|
+
declare const PlaywrightManifestDiscoveryError_base: new <A extends Record<string, any> = {}>(args: _$effect_Types0.VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => _$effect_Cause0.YieldableError & {
|
|
6
|
+
readonly _tag: "PlaywrightManifestDiscoveryError";
|
|
7
|
+
} & Readonly<A>;
|
|
8
|
+
/**
|
|
9
|
+
* The manifest could not be located on disk (no stack-scoped file
|
|
10
|
+
* along the walk-up path) AND the requested endpoint has no
|
|
11
|
+
* conventional URL fallback in the endpoint declaration registry.
|
|
12
|
+
*
|
|
13
|
+
* Recovery: run `devstack up` once to materialize the manifest, OR
|
|
14
|
+
* pass an explicit `baseURL` to the Playwright config helpers to
|
|
15
|
+
* bypass the discovery path.
|
|
16
|
+
*/
|
|
17
|
+
declare class PlaywrightManifestDiscoveryError extends PlaywrightManifestDiscoveryError_base<{
|
|
18
|
+
readonly message: string;
|
|
19
|
+
readonly searchedPaths: ReadonlyArray<string>;
|
|
20
|
+
readonly endpointKey?: string;
|
|
21
|
+
readonly recoveryHint: string;
|
|
22
|
+
}> {}
|
|
23
|
+
declare const PlaywrightManifestShapeError_base: new <A extends Record<string, any> = {}>(args: _$effect_Types0.VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => _$effect_Cause0.YieldableError & {
|
|
24
|
+
readonly _tag: "PlaywrightManifestShapeError";
|
|
25
|
+
} & Readonly<A>;
|
|
26
|
+
/**
|
|
27
|
+
* The manifest file was located but failed to decode against
|
|
28
|
+
* `ManifestEnvelopeSchema`. Wraps the substrate's `ManifestError`
|
|
29
|
+
* (reason = `decode-failed` | `version-mismatch`) with a recovery
|
|
30
|
+
* recipe targeted at the Playwright user (delete + re-run `devstack
|
|
31
|
+
* up` rather than the engine-side recovery).
|
|
32
|
+
*/
|
|
33
|
+
declare class PlaywrightManifestShapeError extends PlaywrightManifestShapeError_base<{
|
|
34
|
+
readonly message: string;
|
|
35
|
+
readonly manifestPath: string;
|
|
36
|
+
readonly phase: 'shape' | 'parse' | 'version-mismatch';
|
|
37
|
+
readonly recoveryHint: string;
|
|
38
|
+
readonly cause?: unknown;
|
|
39
|
+
}> {}
|
|
40
|
+
declare const PlaywrightEndpointNotFoundError_base: new <A extends Record<string, any> = {}>(args: _$effect_Types0.VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => _$effect_Cause0.YieldableError & {
|
|
41
|
+
readonly _tag: "PlaywrightEndpointNotFoundError";
|
|
42
|
+
} & Readonly<A>;
|
|
43
|
+
/**
|
|
44
|
+
* The manifest decoded but the requested endpoint name/alias is not
|
|
45
|
+
* present.
|
|
46
|
+
* Typically caused by a typo in user config or by referencing an
|
|
47
|
+
* endpoint owned by a plugin not present in the resolved stack.
|
|
48
|
+
*/
|
|
49
|
+
declare class PlaywrightEndpointNotFoundError extends PlaywrightEndpointNotFoundError_base<{
|
|
50
|
+
readonly message: string;
|
|
51
|
+
readonly endpointKey: string;
|
|
52
|
+
readonly endpointName?: string;
|
|
53
|
+
readonly available: ReadonlyArray<string>;
|
|
54
|
+
readonly manifestKeys?: ReadonlyArray<string>;
|
|
55
|
+
readonly recoveryHint: string;
|
|
56
|
+
}> {}
|
|
57
|
+
declare const PlaywrightWalletAdapterError_base: new <A extends Record<string, any> = {}>(args: _$effect_Types0.VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => _$effect_Cause0.YieldableError & {
|
|
58
|
+
readonly _tag: "PlaywrightWalletAdapterError";
|
|
59
|
+
} & Readonly<A>;
|
|
60
|
+
/**
|
|
61
|
+
* The wallet-context test helper failed to reach the dev wallet's
|
|
62
|
+
* HTTP API (the supervisor's wallet plugin exposes an endpoint that
|
|
63
|
+
* tests POST to for sign-tx flows). Typical causes: supervisor not
|
|
64
|
+
* up, wallet endpoint not yet registered in the manifest, network
|
|
65
|
+
* partition between test runner and supervisor.
|
|
66
|
+
*
|
|
67
|
+
* This tag is throwable from in-spec helpers AND constructible by
|
|
68
|
+
* `wallet-context.ts` callers; it carries enough detail to format a
|
|
69
|
+
* Playwright-friendly assertion failure.
|
|
70
|
+
*/
|
|
71
|
+
declare class PlaywrightWalletAdapterError extends PlaywrightWalletAdapterError_base<{
|
|
72
|
+
readonly message: string;
|
|
73
|
+
readonly operation: 'sign-tx' | 'list-accounts' | 'switch-account' | 'fetch';
|
|
74
|
+
readonly url?: string;
|
|
75
|
+
readonly status?: number;
|
|
76
|
+
readonly cause?: unknown;
|
|
77
|
+
}> {}
|
|
78
|
+
/** Discriminated union of every error the Playwright preset emits. */
|
|
79
|
+
type PlaywrightIntegrationError = PlaywrightManifestDiscoveryError | PlaywrightManifestShapeError | PlaywrightEndpointNotFoundError | PlaywrightWalletAdapterError;
|
|
80
|
+
//#endregion
|
|
81
|
+
export { PlaywrightEndpointNotFoundError, PlaywrightIntegrationError, PlaywrightManifestDiscoveryError, PlaywrightManifestShapeError, PlaywrightWalletAdapterError };
|
|
82
|
+
//# sourceMappingURL=errors.d.mts.map
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Data } from "effect";
|
|
2
|
+
//#region src/build-integrations/playwright/errors.ts
|
|
3
|
+
/**
|
|
4
|
+
* The manifest could not be located on disk (no stack-scoped file
|
|
5
|
+
* along the walk-up path) AND the requested endpoint has no
|
|
6
|
+
* conventional URL fallback in the endpoint declaration registry.
|
|
7
|
+
*
|
|
8
|
+
* Recovery: run `devstack up` once to materialize the manifest, OR
|
|
9
|
+
* pass an explicit `baseURL` to the Playwright config helpers to
|
|
10
|
+
* bypass the discovery path.
|
|
11
|
+
*/
|
|
12
|
+
var PlaywrightManifestDiscoveryError = class extends Data.TaggedError("PlaywrightManifestDiscoveryError") {};
|
|
13
|
+
/**
|
|
14
|
+
* The manifest file was located but failed to decode against
|
|
15
|
+
* `ManifestEnvelopeSchema`. Wraps the substrate's `ManifestError`
|
|
16
|
+
* (reason = `decode-failed` | `version-mismatch`) with a recovery
|
|
17
|
+
* recipe targeted at the Playwright user (delete + re-run `devstack
|
|
18
|
+
* up` rather than the engine-side recovery).
|
|
19
|
+
*/
|
|
20
|
+
var PlaywrightManifestShapeError = class extends Data.TaggedError("PlaywrightManifestShapeError") {};
|
|
21
|
+
/**
|
|
22
|
+
* The manifest decoded but the requested endpoint name/alias is not
|
|
23
|
+
* present.
|
|
24
|
+
* Typically caused by a typo in user config or by referencing an
|
|
25
|
+
* endpoint owned by a plugin not present in the resolved stack.
|
|
26
|
+
*/
|
|
27
|
+
var PlaywrightEndpointNotFoundError = class extends Data.TaggedError("PlaywrightEndpointNotFoundError") {};
|
|
28
|
+
/**
|
|
29
|
+
* The wallet-context test helper failed to reach the dev wallet's
|
|
30
|
+
* HTTP API (the supervisor's wallet plugin exposes an endpoint that
|
|
31
|
+
* tests POST to for sign-tx flows). Typical causes: supervisor not
|
|
32
|
+
* up, wallet endpoint not yet registered in the manifest, network
|
|
33
|
+
* partition between test runner and supervisor.
|
|
34
|
+
*
|
|
35
|
+
* This tag is throwable from in-spec helpers AND constructible by
|
|
36
|
+
* `wallet-context.ts` callers; it carries enough detail to format a
|
|
37
|
+
* Playwright-friendly assertion failure.
|
|
38
|
+
*/
|
|
39
|
+
var PlaywrightWalletAdapterError = class extends Data.TaggedError("PlaywrightWalletAdapterError") {};
|
|
40
|
+
//#endregion
|
|
41
|
+
export { PlaywrightEndpointNotFoundError, PlaywrightManifestDiscoveryError, PlaywrightManifestShapeError, PlaywrightWalletAdapterError };
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=errors.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.mjs","names":[],"sources":["../../../src/build-integrations/playwright/errors.ts"],"sourcesContent":["// Playwright build-integration errors.\n//\n// Architecture (distilled/23-build-integrations.md § Playwright):\n// every failure surface for the preset is a tagged error so the\n// config-load (synchronous, runs before any supervisor exists) can\n// raise a structured signal with an embedded recovery recipe rather\n// than an opaque downstream NPE.\n//\n// Scope discipline: this surface owns FOUR error tags. Anything that\n// would be a fifth tag is either upstream (manifest schema error from\n// the L0 substrate, which we re-raise unchanged) or a programmer\n// defect (Effect.die / throw — not part of this contract).\n//\n// The Playwright config-load is synchronous (Playwright's\n// `defineConfig` is sync), so these errors are constructed and\n// thrown rather than `Effect.fail`-ed. The surface mirrors the\n// `Data.TaggedError` shape so the tags are uniform across the\n// codebase, but the catch sites are `try` / `instanceof` in\n// Playwright host code.\n\nimport { Data } from 'effect';\n\n// -----------------------------------------------------------------------------\n// Discovery — manifest could not be located and no conventional URL\n// fallback exists for the requested endpoint.\n// -----------------------------------------------------------------------------\n\n/**\n * The manifest could not be located on disk (no stack-scoped file\n * along the walk-up path) AND the requested endpoint has no\n * conventional URL fallback in the endpoint declaration registry.\n *\n * Recovery: run `devstack up` once to materialize the manifest, OR\n * pass an explicit `baseURL` to the Playwright config helpers to\n * bypass the discovery path.\n */\nexport class PlaywrightManifestDiscoveryError extends Data.TaggedError(\n\t'PlaywrightManifestDiscoveryError',\n)<{\n\treadonly message: string;\n\treadonly searchedPaths: ReadonlyArray<string>;\n\treadonly endpointKey?: string;\n\treadonly recoveryHint: string;\n}> {}\n\n// -----------------------------------------------------------------------------\n// Shape — manifest exists but failed to decode against the L0\n// envelope schema.\n// -----------------------------------------------------------------------------\n\n/**\n * The manifest file was located but failed to decode against\n * `ManifestEnvelopeSchema`. Wraps the substrate's `ManifestError`\n * (reason = `decode-failed` | `version-mismatch`) with a recovery\n * recipe targeted at the Playwright user (delete + re-run `devstack\n * up` rather than the engine-side recovery).\n */\nexport class PlaywrightManifestShapeError extends Data.TaggedError('PlaywrightManifestShapeError')<{\n\treadonly message: string;\n\treadonly manifestPath: string;\n\treadonly phase: 'shape' | 'parse' | 'version-mismatch';\n\treadonly recoveryHint: string;\n\treadonly cause?: unknown;\n}> {}\n\n// -----------------------------------------------------------------------------\n// Endpoint lookup — manifest decoded fine but the requested endpoint\n// is absent from the flat lookup.\n// -----------------------------------------------------------------------------\n\n/**\n * The manifest decoded but the requested endpoint name/alias is not\n * present.\n * Typically caused by a typo in user config or by referencing an\n * endpoint owned by a plugin not present in the resolved stack.\n */\nexport class PlaywrightEndpointNotFoundError extends Data.TaggedError(\n\t'PlaywrightEndpointNotFoundError',\n)<{\n\treadonly message: string;\n\treadonly endpointKey: string;\n\treadonly endpointName?: string;\n\treadonly available: ReadonlyArray<string>;\n\treadonly manifestKeys?: ReadonlyArray<string>;\n\treadonly recoveryHint: string;\n}> {}\n\n// -----------------------------------------------------------------------------\n// Wallet adapter — the in-spec wallet helper could not talk to the\n// dev wallet's HTTP API.\n// -----------------------------------------------------------------------------\n\n/**\n * The wallet-context test helper failed to reach the dev wallet's\n * HTTP API (the supervisor's wallet plugin exposes an endpoint that\n * tests POST to for sign-tx flows). Typical causes: supervisor not\n * up, wallet endpoint not yet registered in the manifest, network\n * partition between test runner and supervisor.\n *\n * This tag is throwable from in-spec helpers AND constructible by\n * `wallet-context.ts` callers; it carries enough detail to format a\n * Playwright-friendly assertion failure.\n */\nexport class PlaywrightWalletAdapterError extends Data.TaggedError('PlaywrightWalletAdapterError')<{\n\treadonly message: string;\n\treadonly operation: 'sign-tx' | 'list-accounts' | 'switch-account' | 'fetch';\n\treadonly url?: string;\n\treadonly status?: number;\n\treadonly cause?: unknown;\n}> {}\n\n// -----------------------------------------------------------------------------\n// Union for catch sites that want to handle every surface tag.\n// -----------------------------------------------------------------------------\n\n/** Discriminated union of every error the Playwright preset emits. */\nexport type PlaywrightIntegrationError =\n\t| PlaywrightManifestDiscoveryError\n\t| PlaywrightManifestShapeError\n\t| PlaywrightEndpointNotFoundError\n\t| PlaywrightWalletAdapterError;\n"],"mappings":";;;;;;;;;;;AAoCA,IAAa,mCAAb,cAAsD,KAAK,YAC1D,mCACA,CAKE;;;;;;;;AAcH,IAAa,+BAAb,cAAkD,KAAK,YAAY,+BAA+B,CAM/F;;;;;;;AAaH,IAAa,kCAAb,cAAqD,KAAK,YACzD,kCACA,CAOE;;;;;;;;;;;;AAkBH,IAAa,+BAAb,cAAkD,KAAK,YAAY,+BAA+B,CAM/F"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { ResolveStackContextOptions } from "./stack-context.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/build-integrations/playwright/global-setup.d.ts
|
|
4
|
+
/** Playwright's `globalSetup` signature is `() => Promise<void | (() =>
|
|
5
|
+
* Promise<void>)>` — we model it explicitly so the preset compiles
|
|
6
|
+
* without `@playwright/test`. */
|
|
7
|
+
type PlaywrightGlobalSetup = () => Promise<void | (() => Promise<void>)>;
|
|
8
|
+
/**
|
|
9
|
+
* The shape global-setup writes to disk for in-spec tests to read.
|
|
10
|
+
* Tests do NOT re-walk-up to find the manifest at every assertion —
|
|
11
|
+
* they read this prepared fixture, which is faster and avoids a
|
|
12
|
+
* subtle cwd-mismatch class of failure when Playwright runs tests
|
|
13
|
+
* from a worker process.
|
|
14
|
+
*
|
|
15
|
+
* The fixture is written to a Playwright-known path (resolved from
|
|
16
|
+
* env Playwright populates) so worker processes pick it up. The
|
|
17
|
+
* setup also stamps `DEVSTACK_MANIFEST_PATH` into the worker env so
|
|
18
|
+
* `wallet-context` can reach the file without re-running discovery.
|
|
19
|
+
*/
|
|
20
|
+
interface PlaywrightStackFixture {
|
|
21
|
+
readonly endpoints: Readonly<Record<string, string>>;
|
|
22
|
+
readonly walletEndpoint: string | null;
|
|
23
|
+
readonly manifestPath: string;
|
|
24
|
+
readonly stack: string;
|
|
25
|
+
readonly app: string;
|
|
26
|
+
}
|
|
27
|
+
interface DefineGlobalSetupOptions extends ResolveStackContextOptions {
|
|
28
|
+
/**
|
|
29
|
+
* Verify the manifest's `endpoints` has at least one entry. The
|
|
30
|
+
* supervisor's manifest writer always emits at least the `app`
|
|
31
|
+
* endpoint, so an empty `endpoints` lookup means the supervisor
|
|
32
|
+
* crashed before reaching its eager snapshot-and-write — fail
|
|
33
|
+
* fast here rather than letting tests time out.
|
|
34
|
+
*/
|
|
35
|
+
readonly requireNonEmptyEndpoints?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Verify the named endpoints exist in the manifest. Used to fail
|
|
38
|
+
* fast when a test suite depends on a specific plugin (wallet,
|
|
39
|
+
* sui-faucet) being present in the resolved stack.
|
|
40
|
+
*/
|
|
41
|
+
readonly requireEndpoints?: ReadonlyArray<string>;
|
|
42
|
+
/**
|
|
43
|
+
* Pre-warm the stack context — read the manifest once and stash
|
|
44
|
+
* the result on `globalThis` so tests don't repeat the disk read.
|
|
45
|
+
* Default: `true`.
|
|
46
|
+
*/
|
|
47
|
+
readonly preloadContext?: boolean;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Build a Playwright `globalSetup` function. The returned function
|
|
51
|
+
* matches the signature Playwright expects (a default export of a
|
|
52
|
+
* module path; we return the function so the preset can wire it).
|
|
53
|
+
*/
|
|
54
|
+
declare const buildGlobalSetup: (options?: DefineGlobalSetupOptions) => PlaywrightGlobalSetup;
|
|
55
|
+
/** The slot on `globalThis` where the prewarmed stack context lives.
|
|
56
|
+
* In-spec helpers (`wallet-context.ts`) read from here when present
|
|
57
|
+
* to avoid a second disk read. */
|
|
58
|
+
declare const STACK_CONTEXT_SLOT: "__devstackPlaywrightStackContext__";
|
|
59
|
+
/** Read the slot. Returns `null` if global-setup didn't run (e.g. the
|
|
60
|
+
* user opted out by passing `globalSetup: null`). */
|
|
61
|
+
declare const readStashedFixture: () => PlaywrightStackFixture | null;
|
|
62
|
+
//#endregion
|
|
63
|
+
export { DefineGlobalSetupOptions, PlaywrightGlobalSetup, PlaywrightStackFixture, STACK_CONTEXT_SLOT, buildGlobalSetup, readStashedFixture };
|
|
64
|
+
//# sourceMappingURL=global-setup.d.mts.map
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { readStackContext } from "./stack-context.mjs";
|
|
2
|
+
//#region src/build-integrations/playwright/global-setup.ts
|
|
3
|
+
/**
|
|
4
|
+
* Build a Playwright `globalSetup` function. The returned function
|
|
5
|
+
* matches the signature Playwright expects (a default export of a
|
|
6
|
+
* module path; we return the function so the preset can wire it).
|
|
7
|
+
*/
|
|
8
|
+
const buildGlobalSetup = (options = {}) => {
|
|
9
|
+
return async () => {
|
|
10
|
+
const ctx = readStackContext(options);
|
|
11
|
+
if (options.requireNonEmptyEndpoints === true) {
|
|
12
|
+
if (ctx.endpointNames.length === 0) throw new Error(`devstack manifest at ${ctx.manifestPath} has no endpoints. The supervisor likely failed before its eager snapshot write; check the dev server logs for plugin acquire errors.`);
|
|
13
|
+
}
|
|
14
|
+
const required = options.requireEndpoints ?? [];
|
|
15
|
+
const missing = [];
|
|
16
|
+
for (const key of required) if (ctx.endpointMaybe(key) === null) missing.push(key);
|
|
17
|
+
if (missing.length > 0) throw new Error(`devstack manifest at ${ctx.manifestPath} is missing required endpoints: ${missing.join(", ")}. available endpoint names: ${ctx.endpointNames.join(", ") || "(none)"}. raw manifest keys: ${ctx.manifestEndpointKeys.join(", ") || "(none)"}.`);
|
|
18
|
+
if (options.preloadContext ?? true) stashStackContext(ctx);
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
buildGlobalSetup();
|
|
22
|
+
/** The slot on `globalThis` where the prewarmed stack context lives.
|
|
23
|
+
* In-spec helpers (`wallet-context.ts`) read from here when present
|
|
24
|
+
* to avoid a second disk read. */
|
|
25
|
+
const STACK_CONTEXT_SLOT = "__devstackPlaywrightStackContext__";
|
|
26
|
+
const stashStackContext = (ctx) => {
|
|
27
|
+
const fixture = {
|
|
28
|
+
endpoints: Object.fromEntries(ctx.endpointNames.map((name) => [name, ctx.endpoint(name)])),
|
|
29
|
+
walletEndpoint: ctx.endpointMaybe("wallet"),
|
|
30
|
+
manifestPath: ctx.manifestPath,
|
|
31
|
+
stack: ctx.manifest.identity.stack,
|
|
32
|
+
app: ctx.manifest.identity.app
|
|
33
|
+
};
|
|
34
|
+
globalThis[STACK_CONTEXT_SLOT] = fixture;
|
|
35
|
+
};
|
|
36
|
+
/** Read the slot. Returns `null` if global-setup didn't run (e.g. the
|
|
37
|
+
* user opted out by passing `globalSetup: null`). */
|
|
38
|
+
const readStashedFixture = () => {
|
|
39
|
+
return globalThis["__devstackPlaywrightStackContext__"] ?? null;
|
|
40
|
+
};
|
|
41
|
+
//#endregion
|
|
42
|
+
export { STACK_CONTEXT_SLOT, buildGlobalSetup, readStashedFixture };
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=global-setup.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-setup.mjs","names":[],"sources":["../../../src/build-integrations/playwright/global-setup.ts"],"sourcesContent":["// Playwright `globalSetup` hook.\n//\n// Architecture (distilled/23-build-integrations.md § Playwright):\n//\n// What it needs: the same manifest as Vite (...) but with a\n// cold-start fallback (...) — Playwright config-load runs BEFORE\n// the supervisor spawns to write the manifest.\n//\n// How it hooks in: the spawned `pnpm dev` (default `command`) brings\n// up the supervisor, which writes the real manifest. Playwright\n// polls `webServer.url` until reachable.\n//\n// This module is the third hook in that chain (config-load → webServer\n// spawn → globalSetup). By the time it runs, the supervisor IS up and\n// the manifest has been written; globalSetup verifies invariants and\n// populates fixtures the in-spec tests rely on (e.g. preloads the\n// stack context so each test doesn't repeat the disk read; warms the\n// wallet adapter; resolves the test-account list).\n//\n// What it does NOT do:\n// - Boot the supervisor. (`webServer.command` does that.)\n// - Wait on `webServer.url`. (Playwright does that.)\n// - Write any state. (Read-only.)\n//\n// Returns a teardown function (the inverse hook Playwright supports\n// via `globalTeardown` indirection — we return the teardown so the\n// preset's `globalTeardown` can call it).\n\nimport {\n\treadStackContext,\n\ttype ResolveStackContextOptions,\n\ttype StackContext,\n} from './stack-context.ts';\n\n// -----------------------------------------------------------------------------\n// Public shape Playwright expects\n// -----------------------------------------------------------------------------\n\n/** Playwright's `globalSetup` signature is `() => Promise<void | (() =>\n * Promise<void>)>` — we model it explicitly so the preset compiles\n * without `@playwright/test`. */\nexport type PlaywrightGlobalSetup = () => Promise<void | (() => Promise<void>)>;\n\n// -----------------------------------------------------------------------------\n// Fixture payload\n// -----------------------------------------------------------------------------\n\n/**\n * The shape global-setup writes to disk for in-spec tests to read.\n * Tests do NOT re-walk-up to find the manifest at every assertion —\n * they read this prepared fixture, which is faster and avoids a\n * subtle cwd-mismatch class of failure when Playwright runs tests\n * from a worker process.\n *\n * The fixture is written to a Playwright-known path (resolved from\n * env Playwright populates) so worker processes pick it up. The\n * setup also stamps `DEVSTACK_MANIFEST_PATH` into the worker env so\n * `wallet-context` can reach the file without re-running discovery.\n */\nexport interface PlaywrightStackFixture {\n\treadonly endpoints: Readonly<Record<string, string>>;\n\treadonly walletEndpoint: string | null;\n\treadonly manifestPath: string;\n\treadonly stack: string;\n\treadonly app: string;\n}\n\n// -----------------------------------------------------------------------------\n// Configurable factory\n// -----------------------------------------------------------------------------\n\nexport interface DefineGlobalSetupOptions extends ResolveStackContextOptions {\n\t/**\n\t * Verify the manifest's `endpoints` has at least one entry. The\n\t * supervisor's manifest writer always emits at least the `app`\n\t * endpoint, so an empty `endpoints` lookup means the supervisor\n\t * crashed before reaching its eager snapshot-and-write — fail\n\t * fast here rather than letting tests time out.\n\t */\n\treadonly requireNonEmptyEndpoints?: boolean;\n\n\t/**\n\t * Verify the named endpoints exist in the manifest. Used to fail\n\t * fast when a test suite depends on a specific plugin (wallet,\n\t * sui-faucet) being present in the resolved stack.\n\t */\n\treadonly requireEndpoints?: ReadonlyArray<string>;\n\n\t/**\n\t * Pre-warm the stack context — read the manifest once and stash\n\t * the result on `globalThis` so tests don't repeat the disk read.\n\t * Default: `true`.\n\t */\n\treadonly preloadContext?: boolean;\n}\n\n/**\n * Build a Playwright `globalSetup` function. The returned function\n * matches the signature Playwright expects (a default export of a\n * module path; we return the function so the preset can wire it).\n */\nexport const buildGlobalSetup = (options: DefineGlobalSetupOptions = {}): PlaywrightGlobalSetup => {\n\treturn async () => {\n\t\tconst ctx = readStackContext(options);\n\n\t\tif (options.requireNonEmptyEndpoints === true) {\n\t\t\tif (ctx.endpointNames.length === 0) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`devstack manifest at ${ctx.manifestPath} has no endpoints. ` +\n\t\t\t\t\t\t`The supervisor likely failed before its eager snapshot ` +\n\t\t\t\t\t\t`write; check the dev server logs for plugin acquire errors.`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tconst required = options.requireEndpoints ?? [];\n\t\tconst missing: string[] = [];\n\t\tfor (const key of required) {\n\t\t\tif (ctx.endpointMaybe(key) === null) missing.push(key);\n\t\t}\n\t\tif (missing.length > 0) {\n\t\t\tthrow new Error(\n\t\t\t\t`devstack manifest at ${ctx.manifestPath} is missing required ` +\n\t\t\t\t\t`endpoints: ${missing.join(', ')}. ` +\n\t\t\t\t\t`available endpoint names: ${ctx.endpointNames.join(', ') || '(none)'}. ` +\n\t\t\t\t\t`raw manifest keys: ${ctx.manifestEndpointKeys.join(', ') || '(none)'}.`,\n\t\t\t);\n\t\t}\n\n\t\tif (options.preloadContext ?? true) {\n\t\t\tstashStackContext(ctx);\n\t\t}\n\n\t\t// Return value: `void` (no teardown). Playwright accepts\n\t\t// `() => Promise<void>` here.\n\t};\n};\n\n/** Default export shape that mirrors what Playwright's\n * `defineConfig.globalSetup` resolves: a module whose default export\n * is the setup function. */\nexport default buildGlobalSetup();\n\n// -----------------------------------------------------------------------------\n// Global stash\n// -----------------------------------------------------------------------------\n\n/** The slot on `globalThis` where the prewarmed stack context lives.\n * In-spec helpers (`wallet-context.ts`) read from here when present\n * to avoid a second disk read. */\nexport const STACK_CONTEXT_SLOT = '__devstackPlaywrightStackContext__' as const;\n\ninterface GlobalSlot {\n\t[STACK_CONTEXT_SLOT]?: PlaywrightStackFixture;\n}\n\nconst stashStackContext = (ctx: StackContext): void => {\n\tconst fixture: PlaywrightStackFixture = {\n\t\tendpoints: Object.fromEntries(ctx.endpointNames.map((name) => [name, ctx.endpoint(name)])),\n\t\twalletEndpoint: ctx.endpointMaybe('wallet'),\n\t\tmanifestPath: ctx.manifestPath,\n\t\tstack: ctx.manifest.identity.stack,\n\t\tapp: ctx.manifest.identity.app,\n\t};\n\t(globalThis as unknown as GlobalSlot)[STACK_CONTEXT_SLOT] = fixture;\n};\n\n/** Read the slot. Returns `null` if global-setup didn't run (e.g. the\n * user opted out by passing `globalSetup: null`). */\nexport const readStashedFixture = (): PlaywrightStackFixture | null => {\n\tconst slot = (globalThis as unknown as GlobalSlot)[STACK_CONTEXT_SLOT];\n\treturn slot ?? null;\n};\n"],"mappings":";;;;;;;AAqGA,MAAa,oBAAoB,UAAoC,EAAE,KAA4B;AAClG,QAAO,YAAY;EAClB,MAAM,MAAM,iBAAiB,QAAQ;AAErC,MAAI,QAAQ,6BAA6B;OACpC,IAAI,cAAc,WAAW,EAChC,OAAM,IAAI,MACT,wBAAwB,IAAI,aAAa,uIAGzC;;EAIH,MAAM,WAAW,QAAQ,oBAAoB,EAAE;EAC/C,MAAM,UAAoB,EAAE;AAC5B,OAAK,MAAM,OAAO,SACjB,KAAI,IAAI,cAAc,IAAI,KAAK,KAAM,SAAQ,KAAK,IAAI;AAEvD,MAAI,QAAQ,SAAS,EACpB,OAAM,IAAI,MACT,wBAAwB,IAAI,aAAa,kCAC1B,QAAQ,KAAK,KAAK,CAAC,8BACJ,IAAI,cAAc,KAAK,KAAK,IAAI,SAAS,uBAChD,IAAI,qBAAqB,KAAK,KAAK,IAAI,SAAS,GACvE;AAGF,MAAI,QAAQ,kBAAkB,KAC7B,mBAAkB,IAAI;;;AAWV,kBAAkB;;;;AASjC,MAAa,qBAAqB;AAMlC,MAAM,qBAAqB,QAA4B;CACtD,MAAM,UAAkC;EACvC,WAAW,OAAO,YAAY,IAAI,cAAc,KAAK,SAAS,CAAC,MAAM,IAAI,SAAS,KAAK,CAAC,CAAC,CAAC;EAC1F,gBAAgB,IAAI,cAAc,SAAS;EAC3C,cAAc,IAAI;EAClB,OAAO,IAAI,SAAS,SAAS;EAC7B,KAAK,IAAI,SAAS,SAAS;EAC3B;AACA,YAAqC,sBAAsB;;;;AAK7D,MAAa,2BAA0D;AAEtE,QADc,WAAA,yCACC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PLAYWRIGHT_ENV, ResolveStackContextOptions, ResolvedEndpoint, StackContext, conventionalUrlFor, discoverManifestPath, makeStackContext, readManifestSync, readStackContext, resolveEndpointUrl } from "./stack-context.mjs";
|
|
2
|
+
import { DevstackPlaywrightBaseConfigOptions, DevstackPlaywrightEndpointOptions, DevstackPlaywrightProjectsOptions, DevstackPlaywrightUseOptions, DevstackPlaywrightWebServerOptions, PlaywrightBaseConfigShape, PlaywrightProjectShape, PlaywrightUseConfigShape, PlaywrightWebServerConfigShape, devstackPlaywrightBaseConfig, devstackPlaywrightProjects, devstackPlaywrightUse, devstackPlaywrightWebServer, resolveDevstackPlaywrightBaseURL } from "./config.mjs";
|
|
3
|
+
import { DefineGlobalSetupOptions, PlaywrightGlobalSetup, PlaywrightStackFixture, STACK_CONTEXT_SLOT, buildGlobalSetup, readStashedFixture } from "./global-setup.mjs";
|
|
4
|
+
import { DAPP_KIT_SLOT, DevAccount, PlaywrightPageLike, SignTxRequest, SignTxResponse, WALLET_ENDPOINT_KEY, WalletAdapter, WalletAdapterOptions, connectAs, createWalletAdapter, loadStackManifest, selectAccount } from "./wallet-context.mjs";
|
|
5
|
+
import { PlaywrightEndpointNotFoundError, PlaywrightIntegrationError, PlaywrightManifestDiscoveryError, PlaywrightManifestShapeError, PlaywrightWalletAdapterError } from "./errors.mjs";
|
|
6
|
+
export { DAPP_KIT_SLOT, type DefineGlobalSetupOptions, type DevAccount, type DevstackPlaywrightBaseConfigOptions, type DevstackPlaywrightEndpointOptions, type DevstackPlaywrightProjectsOptions, type DevstackPlaywrightUseOptions, type DevstackPlaywrightWebServerOptions, PLAYWRIGHT_ENV, type PlaywrightBaseConfigShape, PlaywrightEndpointNotFoundError, type PlaywrightGlobalSetup, type PlaywrightIntegrationError, PlaywrightManifestDiscoveryError, PlaywrightManifestShapeError, type PlaywrightPageLike, type PlaywrightProjectShape, type PlaywrightStackFixture, type PlaywrightUseConfigShape, PlaywrightWalletAdapterError, type PlaywrightWebServerConfigShape, type ResolveStackContextOptions, type ResolvedEndpoint, STACK_CONTEXT_SLOT, type SignTxRequest, type SignTxResponse, type StackContext, WALLET_ENDPOINT_KEY, type WalletAdapter, type WalletAdapterOptions, buildGlobalSetup, connectAs, conventionalUrlFor, createWalletAdapter, devstackPlaywrightBaseConfig, devstackPlaywrightProjects, devstackPlaywrightUse, devstackPlaywrightWebServer, discoverManifestPath, loadStackManifest, makeStackContext, readManifestSync, readStackContext, readStashedFixture, resolveDevstackPlaywrightBaseURL, resolveEndpointUrl, selectAccount };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PlaywrightEndpointNotFoundError, PlaywrightManifestDiscoveryError, PlaywrightManifestShapeError, PlaywrightWalletAdapterError } from "./errors.mjs";
|
|
2
|
+
import { PLAYWRIGHT_ENV, conventionalUrlFor, discoverManifestPath, makeStackContext, readManifestSync, readStackContext, resolveEndpointUrl } from "./stack-context.mjs";
|
|
3
|
+
import { devstackPlaywrightBaseConfig, devstackPlaywrightProjects, devstackPlaywrightUse, devstackPlaywrightWebServer, resolveDevstackPlaywrightBaseURL } from "./config.mjs";
|
|
4
|
+
import { STACK_CONTEXT_SLOT, buildGlobalSetup, readStashedFixture } from "./global-setup.mjs";
|
|
5
|
+
import { DAPP_KIT_SLOT, WALLET_ENDPOINT_KEY, connectAs, createWalletAdapter, loadStackManifest, selectAccount } from "./wallet-context.mjs";
|
|
6
|
+
export { DAPP_KIT_SLOT, PLAYWRIGHT_ENV, PlaywrightEndpointNotFoundError, PlaywrightManifestDiscoveryError, PlaywrightManifestShapeError, PlaywrightWalletAdapterError, STACK_CONTEXT_SLOT, WALLET_ENDPOINT_KEY, buildGlobalSetup, connectAs, conventionalUrlFor, createWalletAdapter, devstackPlaywrightBaseConfig, devstackPlaywrightProjects, devstackPlaywrightUse, devstackPlaywrightWebServer, discoverManifestPath, loadStackManifest, makeStackContext, readManifestSync, readStackContext, readStashedFixture, resolveDevstackPlaywrightBaseURL, resolveEndpointUrl, selectAccount };
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { EndpointEntry, ManifestEnvelope } from "../../substrate/manifest.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/build-integrations/playwright/stack-context.d.ts
|
|
4
|
+
/** Centralized env-var names this surface consults. Kept in sync with
|
|
5
|
+
* the CLI's `ENV_VARS` table. */
|
|
6
|
+
declare const PLAYWRIGHT_ENV: {
|
|
7
|
+
readonly STATE_DIR: "DEVSTACK_STATE_DIR";
|
|
8
|
+
readonly STACK: "DEVSTACK_STACK";
|
|
9
|
+
readonly MANIFEST_PATH: "DEVSTACK_MANIFEST_PATH";
|
|
10
|
+
readonly ROUTER_HOST_SUFFIX: "DEVSTACK_ROUTER_HOST_SUFFIX";
|
|
11
|
+
readonly ROUTER_PORT: "DEVSTACK_ROUTER_PORT";
|
|
12
|
+
};
|
|
13
|
+
interface ResolveStackContextOptions {
|
|
14
|
+
/** Working directory to start the walk-up from. */
|
|
15
|
+
readonly cwd?: string;
|
|
16
|
+
/** Explicit manifest path. Wins over discovery + env. */
|
|
17
|
+
readonly manifestPath?: string;
|
|
18
|
+
/** Explicit `<stateDir>` root override. Combined with `stack` to
|
|
19
|
+
* form `<root>/stacks/<stack>/manifest.json`. */
|
|
20
|
+
readonly stateDir?: string;
|
|
21
|
+
/** Stack name override. Defaults to env `DEVSTACK_STACK`. */
|
|
22
|
+
readonly stack?: string;
|
|
23
|
+
/** Env bag (defaults to `process.env`). Injectable for tests. */
|
|
24
|
+
readonly env?: Readonly<Record<string, string | undefined>>;
|
|
25
|
+
}
|
|
26
|
+
interface StackContext {
|
|
27
|
+
readonly manifest: ManifestEnvelope;
|
|
28
|
+
readonly manifestPath: string;
|
|
29
|
+
readonly endpointNames: ReadonlyArray<string>;
|
|
30
|
+
readonly manifestEndpointKeys: ReadonlyArray<string>;
|
|
31
|
+
readonly endpoint: (endpointNameOrAlias: string) => string;
|
|
32
|
+
readonly endpointMaybe: (endpointNameOrAlias: string) => string | null;
|
|
33
|
+
readonly endpointEntry: (endpointNameOrAlias: string) => EndpointEntry;
|
|
34
|
+
}
|
|
35
|
+
interface ResolvedEndpoint {
|
|
36
|
+
readonly url: string;
|
|
37
|
+
readonly source: 'manifest' | 'conventional';
|
|
38
|
+
readonly endpointKey: string;
|
|
39
|
+
readonly endpointName: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Find the stack-scoped manifest by walking up from `cwd` looking for
|
|
43
|
+
* `.devstack/stacks/<stack>/manifest.json`. Returns the absolute path
|
|
44
|
+
* + the list of paths probed, or `null` on miss.
|
|
45
|
+
*/
|
|
46
|
+
declare const discoverManifestPath: (options?: ResolveStackContextOptions) => {
|
|
47
|
+
readonly path: string;
|
|
48
|
+
readonly searched: ReadonlyArray<string>;
|
|
49
|
+
} | null;
|
|
50
|
+
/**
|
|
51
|
+
* Synchronously read + decode the manifest at `manifestPath`. Throws
|
|
52
|
+
* `PlaywrightManifestShapeError` on JSON-parse or schema-decode
|
|
53
|
+
* failure, or version mismatch. Used by callers that already know
|
|
54
|
+
* the path (preset's webServer.url resolution + global-setup).
|
|
55
|
+
*/
|
|
56
|
+
declare const readManifestSync: (manifestPath: string) => ManifestEnvelope;
|
|
57
|
+
/**
|
|
58
|
+
* Cold-start URL fallback for endpoints with a conventional host
|
|
59
|
+
* pattern. Playwright config-load runs BEFORE the supervisor writes
|
|
60
|
+
* the manifest; the preset MUST be able to resolve a `baseURL`
|
|
61
|
+
* without a manifest read.
|
|
62
|
+
*
|
|
63
|
+
* The route table shape matches `runtime/coldStartUrl`; Playwright
|
|
64
|
+
* only supplies its conventional endpoint hints while the shared
|
|
65
|
+
* runtime helper owns host formatting.
|
|
66
|
+
*/
|
|
67
|
+
declare const conventionalUrlFor: (endpointKey: string, opts?: {
|
|
68
|
+
readonly stack?: string;
|
|
69
|
+
readonly hostSuffix?: string;
|
|
70
|
+
readonly port?: number;
|
|
71
|
+
readonly app?: string;
|
|
72
|
+
readonly cwd?: string;
|
|
73
|
+
readonly env?: Readonly<Record<string, string | undefined>>;
|
|
74
|
+
}) => string | null;
|
|
75
|
+
/**
|
|
76
|
+
* Synchronously resolve the full stack context. Throws on missing
|
|
77
|
+
* manifest (no cold-start fallback here — caller wants the typed
|
|
78
|
+
* envelope, not a guessed URL).
|
|
79
|
+
*/
|
|
80
|
+
declare const readStackContext: (options?: ResolveStackContextOptions) => StackContext;
|
|
81
|
+
/** Project an in-memory envelope (test fixtures use this) into the
|
|
82
|
+
* same accessor shape as the on-disk read. */
|
|
83
|
+
declare const makeStackContext: (envelope: ManifestEnvelope, manifestPath: string) => StackContext;
|
|
84
|
+
/**
|
|
85
|
+
* Resolve a URL for a single endpoint with cold-start fallback to the
|
|
86
|
+
* conventional URL when the manifest is absent. Throws when both the
|
|
87
|
+
* manifest and the conventional table miss.
|
|
88
|
+
*/
|
|
89
|
+
declare const resolveEndpointUrl: (endpointNameOrAlias: string, options?: ResolveStackContextOptions & {
|
|
90
|
+
readonly port?: number;
|
|
91
|
+
readonly hostSuffix?: string;
|
|
92
|
+
}) => ResolvedEndpoint;
|
|
93
|
+
//#endregion
|
|
94
|
+
export { PLAYWRIGHT_ENV, ResolveStackContextOptions, ResolvedEndpoint, StackContext, conventionalUrlFor, discoverManifestPath, makeStackContext, readManifestSync, readStackContext, resolveEndpointUrl };
|
|
95
|
+
//# sourceMappingURL=stack-context.d.mts.map
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import { ManifestDiscoveryError, ManifestShapeError } from "../runtime/errors.mjs";
|
|
2
|
+
import { discoverManifestPath as discoverManifestPath$1 } from "../runtime/discover.mjs";
|
|
3
|
+
import { EndpointRegistry } from "../runtime/endpoint-registry.mjs";
|
|
4
|
+
import { manifestEnvelopeFromStackContext, readStackContext as readStackContext$1 } from "../runtime/read-stack-context.mjs";
|
|
5
|
+
import { coldStartUrl, conventionalRoutesFromHints } from "../runtime/cold-start-url.mjs";
|
|
6
|
+
import { PlaywrightEndpointNotFoundError, PlaywrightManifestDiscoveryError, PlaywrightManifestShapeError } from "./errors.mjs";
|
|
7
|
+
//#region src/build-integrations/playwright/stack-context.ts
|
|
8
|
+
/** Centralized env-var names this surface consults. Kept in sync with
|
|
9
|
+
* the CLI's `ENV_VARS` table. */
|
|
10
|
+
const PLAYWRIGHT_ENV = {
|
|
11
|
+
STATE_DIR: "DEVSTACK_STATE_DIR",
|
|
12
|
+
STACK: "DEVSTACK_STACK",
|
|
13
|
+
MANIFEST_PATH: "DEVSTACK_MANIFEST_PATH",
|
|
14
|
+
ROUTER_HOST_SUFFIX: "DEVSTACK_ROUTER_HOST_SUFFIX",
|
|
15
|
+
ROUTER_PORT: "DEVSTACK_ROUTER_PORT"
|
|
16
|
+
};
|
|
17
|
+
const PLAYWRIGHT_ENDPOINT_ALIASES = {
|
|
18
|
+
app: "dev",
|
|
19
|
+
wallet: "wallet-app"
|
|
20
|
+
};
|
|
21
|
+
const PLAYWRIGHT_DEFAULT_ROUTER_PORTS = {
|
|
22
|
+
app: 5175,
|
|
23
|
+
dev: 5175,
|
|
24
|
+
wallet: 5175,
|
|
25
|
+
"wallet-app": 5175
|
|
26
|
+
};
|
|
27
|
+
const playwrightEndpointNameFor = (endpointNameOrAlias) => PLAYWRIGHT_ENDPOINT_ALIASES[endpointNameOrAlias] ?? endpointNameOrAlias;
|
|
28
|
+
const endpointRegistryFromEnvelope = (envelope) => {
|
|
29
|
+
const entries = [];
|
|
30
|
+
for (const raw of Object.values(envelope.endpoints)) entries.push({
|
|
31
|
+
name: raw.name,
|
|
32
|
+
url: raw.url,
|
|
33
|
+
displayUrl: raw.displayUrl,
|
|
34
|
+
wireProtocol: raw.wireProtocol,
|
|
35
|
+
pluginKey: raw.pluginKey,
|
|
36
|
+
endpointKey: raw.endpointKey
|
|
37
|
+
});
|
|
38
|
+
return new EndpointRegistry(entries);
|
|
39
|
+
};
|
|
40
|
+
const buildRuntimeDiscoverOpts = (options) => {
|
|
41
|
+
const env = options.env ?? process.env;
|
|
42
|
+
const stack = options.stack ?? env[PLAYWRIGHT_ENV.STACK] ?? "main";
|
|
43
|
+
const stateDir = options.stateDir ?? env[PLAYWRIGHT_ENV.STATE_DIR];
|
|
44
|
+
return {
|
|
45
|
+
env,
|
|
46
|
+
stack,
|
|
47
|
+
...options.cwd !== void 0 ? { cwd: options.cwd } : {},
|
|
48
|
+
...options.manifestPath !== void 0 ? { override: options.manifestPath } : {},
|
|
49
|
+
...stateDir !== void 0 && stateDir !== "" ? { stateDir } : {}
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Find the stack-scoped manifest by walking up from `cwd` looking for
|
|
54
|
+
* `.devstack/stacks/<stack>/manifest.json`. Returns the absolute path
|
|
55
|
+
* + the list of paths probed, or `null` on miss.
|
|
56
|
+
*/
|
|
57
|
+
const discoverManifestPath = (options = {}) => {
|
|
58
|
+
const path = discoverManifestPath$1(buildRuntimeDiscoverOpts(options));
|
|
59
|
+
if (path === void 0) return null;
|
|
60
|
+
return {
|
|
61
|
+
path,
|
|
62
|
+
searched: [path]
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Synchronously read + decode the manifest at `manifestPath`. Throws
|
|
67
|
+
* `PlaywrightManifestShapeError` on JSON-parse or schema-decode
|
|
68
|
+
* failure, or version mismatch. Used by callers that already know
|
|
69
|
+
* the path (preset's webServer.url resolution + global-setup).
|
|
70
|
+
*/
|
|
71
|
+
const readManifestSync = (manifestPath) => {
|
|
72
|
+
try {
|
|
73
|
+
return manifestEnvelopeFromStackContext(readStackContext$1({ manifestPath }));
|
|
74
|
+
} catch (cause) {
|
|
75
|
+
if (cause instanceof ManifestShapeError) throw new PlaywrightManifestShapeError({
|
|
76
|
+
message: cause.phase === "version" ? `manifest at ${manifestPath} version mismatch: ${cause.message}` : `manifest at ${manifestPath} does not match the envelope schema`,
|
|
77
|
+
manifestPath,
|
|
78
|
+
phase: cause.phase === "version" ? "version-mismatch" : "shape",
|
|
79
|
+
recoveryHint: cause.phase === "version" ? "Re-run `devstack up` to write a manifest at the current version, or upgrade @mysten-incubation/devstack to a build-integration that understands the new envelope." : `Delete \`${manifestPath}\` and run \`devstack up\`. If the error persists, the build-integration is older than the supervisor.`,
|
|
80
|
+
cause
|
|
81
|
+
});
|
|
82
|
+
if (cause instanceof ManifestDiscoveryError) throw new PlaywrightManifestShapeError({
|
|
83
|
+
message: `failed to read manifest at ${manifestPath}`,
|
|
84
|
+
manifestPath,
|
|
85
|
+
phase: "parse",
|
|
86
|
+
recoveryHint: "Confirm the file exists and is readable. Run `devstack up` to regenerate it if the supervisor was interrupted mid-write.",
|
|
87
|
+
cause
|
|
88
|
+
});
|
|
89
|
+
throw cause;
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
/**
|
|
93
|
+
* Cold-start URL fallback for endpoints with a conventional host
|
|
94
|
+
* pattern. Playwright config-load runs BEFORE the supervisor writes
|
|
95
|
+
* the manifest; the preset MUST be able to resolve a `baseURL`
|
|
96
|
+
* without a manifest read.
|
|
97
|
+
*
|
|
98
|
+
* The route table shape matches `runtime/coldStartUrl`; Playwright
|
|
99
|
+
* only supplies its conventional endpoint hints while the shared
|
|
100
|
+
* runtime helper owns host formatting.
|
|
101
|
+
*/
|
|
102
|
+
const conventionalUrlFor = (endpointKey, opts = {}) => {
|
|
103
|
+
const stack = opts.stack ?? "main";
|
|
104
|
+
const env = opts.env ?? process.env;
|
|
105
|
+
const envPort = Number.parseInt(env[PLAYWRIGHT_ENV.ROUTER_PORT] ?? "", 10);
|
|
106
|
+
const resolvedPort = opts.port ?? (Number.isFinite(envPort) && envPort > 0 ? envPort : void 0) ?? PLAYWRIGHT_DEFAULT_ROUTER_PORTS[endpointKey];
|
|
107
|
+
if (resolvedPort === void 0 || !Number.isFinite(resolvedPort) || resolvedPort <= 0) return null;
|
|
108
|
+
const routes = conventionalRoutesFromHints([
|
|
109
|
+
{
|
|
110
|
+
endpoint: "app",
|
|
111
|
+
service: "dev"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
endpoint: "dev",
|
|
115
|
+
service: "dev"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
endpoint: "sui-rpc",
|
|
119
|
+
service: "sui-rpc"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
endpoint: "sui-faucet",
|
|
123
|
+
service: "sui-faucet"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
endpoint: "walrus-aggregator",
|
|
127
|
+
service: "walrus-aggregator"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
endpoint: "walrus-publisher",
|
|
131
|
+
service: "walrus-publisher"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
endpoint: "seal",
|
|
135
|
+
service: "seal"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
endpoint: "wallet",
|
|
139
|
+
service: "api"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
endpoint: "wallet-app",
|
|
143
|
+
service: "api"
|
|
144
|
+
}
|
|
145
|
+
], resolvedPort);
|
|
146
|
+
if (!routes.has(endpointKey)) return null;
|
|
147
|
+
return coldStartUrl(endpointKey, {
|
|
148
|
+
routes,
|
|
149
|
+
stack,
|
|
150
|
+
...opts.app !== void 0 ? { app: opts.app } : {},
|
|
151
|
+
...opts.cwd !== void 0 ? { cwd: opts.cwd } : {},
|
|
152
|
+
...opts.hostSuffix !== void 0 ? { hostSuffix: opts.hostSuffix } : {}
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
/**
|
|
156
|
+
* Synchronously resolve the full stack context. Throws on missing
|
|
157
|
+
* manifest (no cold-start fallback here — caller wants the typed
|
|
158
|
+
* envelope, not a guessed URL).
|
|
159
|
+
*/
|
|
160
|
+
const readStackContext = (options = {}) => {
|
|
161
|
+
try {
|
|
162
|
+
return projectFromRuntime(readStackContext$1(buildRuntimeDiscoverOpts(options)));
|
|
163
|
+
} catch (err) {
|
|
164
|
+
if (err instanceof ManifestDiscoveryError) throw new PlaywrightManifestDiscoveryError({
|
|
165
|
+
message: "no manifest found along walk-up path or env override",
|
|
166
|
+
searchedPaths: err.path !== void 0 ? [err.path] : [],
|
|
167
|
+
recoveryHint: "Run `devstack up` from your example app's directory to write the manifest, or set DEVSTACK_MANIFEST_PATH to an explicit path."
|
|
168
|
+
});
|
|
169
|
+
if (err instanceof ManifestShapeError) throw new PlaywrightManifestShapeError({
|
|
170
|
+
message: err.message,
|
|
171
|
+
manifestPath: err.path,
|
|
172
|
+
phase: err.phase === "version" ? "version-mismatch" : err.phase,
|
|
173
|
+
recoveryHint: `Delete \`${err.path}\` and run \`devstack up\` to regenerate.`,
|
|
174
|
+
cause: err
|
|
175
|
+
});
|
|
176
|
+
throw err;
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
const projectFromRuntime = (ctx) => {
|
|
180
|
+
return makeStackContext(manifestEnvelopeFromStackContext(ctx), ctx.manifestPath);
|
|
181
|
+
};
|
|
182
|
+
/** Project an in-memory envelope (test fixtures use this) into the
|
|
183
|
+
* same accessor shape as the on-disk read. */
|
|
184
|
+
const makeStackContext = (envelope, manifestPath) => {
|
|
185
|
+
const endpoints = endpointRegistryFromEnvelope(envelope);
|
|
186
|
+
const manifestEndpointKeys = Object.keys(envelope.endpoints).sort();
|
|
187
|
+
const endpointNames = endpoints.names();
|
|
188
|
+
const notFound = (endpointKey, endpointName) => new PlaywrightEndpointNotFoundError({
|
|
189
|
+
message: `no endpoint \`${endpointKey}\` (resolved endpoint name \`${endpointName}\`) in manifest at ${manifestPath}`,
|
|
190
|
+
endpointKey,
|
|
191
|
+
endpointName,
|
|
192
|
+
available: endpointNames,
|
|
193
|
+
manifestKeys: manifestEndpointKeys,
|
|
194
|
+
recoveryHint: `Available endpoint names: ${endpointNames.join(", ") || "(none)"}. Raw manifest keys: ${manifestEndpointKeys.join(", ") || "(none)"}. Check the plugin emitting this endpoint is present in your stack, or check for a typo in the endpoint name.`
|
|
195
|
+
});
|
|
196
|
+
const findEndpoint = (endpointNameOrAlias) => endpoints.byName(playwrightEndpointNameFor(endpointNameOrAlias));
|
|
197
|
+
const rawEntryFor = (resolved) => {
|
|
198
|
+
const byMapKey = envelope.endpoints[resolved.endpointKey];
|
|
199
|
+
if (byMapKey !== void 0) return byMapKey;
|
|
200
|
+
const byEntryKey = Object.values(envelope.endpoints).find((entry) => entry.endpointKey === resolved.endpointKey);
|
|
201
|
+
if (byEntryKey !== void 0) return byEntryKey;
|
|
202
|
+
return {
|
|
203
|
+
name: resolved.name,
|
|
204
|
+
url: resolved.url,
|
|
205
|
+
displayUrl: resolved.displayUrl,
|
|
206
|
+
wireProtocol: resolved.wireProtocol,
|
|
207
|
+
pluginKey: resolved.pluginKey,
|
|
208
|
+
endpointKey: resolved.endpointKey
|
|
209
|
+
};
|
|
210
|
+
};
|
|
211
|
+
return {
|
|
212
|
+
manifest: envelope,
|
|
213
|
+
manifestPath,
|
|
214
|
+
endpointNames,
|
|
215
|
+
manifestEndpointKeys,
|
|
216
|
+
endpoint: (endpointNameOrAlias) => {
|
|
217
|
+
const endpointName = playwrightEndpointNameFor(endpointNameOrAlias);
|
|
218
|
+
const entry = findEndpoint(endpointNameOrAlias);
|
|
219
|
+
if (entry === void 0) throw notFound(endpointNameOrAlias, endpointName);
|
|
220
|
+
return entry.url;
|
|
221
|
+
},
|
|
222
|
+
endpointMaybe: (endpointNameOrAlias) => findEndpoint(endpointNameOrAlias)?.url ?? null,
|
|
223
|
+
endpointEntry: (endpointNameOrAlias) => {
|
|
224
|
+
const endpointName = playwrightEndpointNameFor(endpointNameOrAlias);
|
|
225
|
+
const entry = findEndpoint(endpointNameOrAlias);
|
|
226
|
+
if (entry === void 0) throw notFound(endpointNameOrAlias, endpointName);
|
|
227
|
+
return rawEntryFor(entry);
|
|
228
|
+
}
|
|
229
|
+
};
|
|
230
|
+
};
|
|
231
|
+
/**
|
|
232
|
+
* Resolve a URL for a single endpoint with cold-start fallback to the
|
|
233
|
+
* conventional URL when the manifest is absent. Throws when both the
|
|
234
|
+
* manifest and the conventional table miss.
|
|
235
|
+
*/
|
|
236
|
+
const resolveEndpointUrl = (endpointNameOrAlias, options = {}) => {
|
|
237
|
+
const endpointName = playwrightEndpointNameFor(endpointNameOrAlias);
|
|
238
|
+
let ctx;
|
|
239
|
+
try {
|
|
240
|
+
ctx = readStackContext(options);
|
|
241
|
+
} catch (err) {
|
|
242
|
+
if (!(err instanceof PlaywrightManifestDiscoveryError)) throw err;
|
|
243
|
+
}
|
|
244
|
+
if (ctx !== void 0) {
|
|
245
|
+
const entry = ctx.endpointEntry(endpointNameOrAlias);
|
|
246
|
+
return {
|
|
247
|
+
url: entry.url,
|
|
248
|
+
source: "manifest",
|
|
249
|
+
endpointKey: entry.endpointKey,
|
|
250
|
+
endpointName
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
const env = options.env ?? process.env;
|
|
254
|
+
const fallback = conventionalUrlFor(endpointNameOrAlias, {
|
|
255
|
+
stack: options.stack ?? env[PLAYWRIGHT_ENV.STACK] ?? "main",
|
|
256
|
+
...options.cwd !== void 0 ? { cwd: options.cwd } : {},
|
|
257
|
+
...options.hostSuffix !== void 0 ? { hostSuffix: options.hostSuffix } : env[PLAYWRIGHT_ENV.ROUTER_HOST_SUFFIX] !== void 0 ? { hostSuffix: env[PLAYWRIGHT_ENV.ROUTER_HOST_SUFFIX] } : {},
|
|
258
|
+
...options.port !== void 0 ? { port: options.port } : {},
|
|
259
|
+
...options.env !== void 0 ? { env: options.env } : {}
|
|
260
|
+
});
|
|
261
|
+
if (fallback !== null) return {
|
|
262
|
+
url: fallback,
|
|
263
|
+
source: "conventional",
|
|
264
|
+
endpointKey: endpointNameOrAlias,
|
|
265
|
+
endpointName
|
|
266
|
+
};
|
|
267
|
+
throw new PlaywrightManifestDiscoveryError({
|
|
268
|
+
message: `no manifest found and no conventional fallback for endpoint \`${endpointNameOrAlias}\` (resolved endpoint name \`${endpointName}\`)`,
|
|
269
|
+
searchedPaths: [],
|
|
270
|
+
endpointKey: endpointNameOrAlias,
|
|
271
|
+
recoveryHint: "Run `devstack up` to materialize the manifest before invoking playwright, or pass an explicit `baseURL`."
|
|
272
|
+
});
|
|
273
|
+
};
|
|
274
|
+
//#endregion
|
|
275
|
+
export { PLAYWRIGHT_ENV, conventionalUrlFor, discoverManifestPath, makeStackContext, readManifestSync, readStackContext, resolveEndpointUrl };
|
|
276
|
+
|
|
277
|
+
//# sourceMappingURL=stack-context.mjs.map
|