@mysten-incubation/devstack 0.1.0 → 0.2.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/README.md +7 -4
- package/dashboard-ui/assets/grpc-a4usE3Nk.js +3 -0
- package/dashboard-ui/assets/index-B82Bh84P.css +1 -0
- package/dashboard-ui/assets/index-CRYJ4pru.js +1277 -0
- package/dashboard-ui/index.html +2 -2
- package/dist/api/define-capabilities.d.mts +1 -20
- package/dist/api/define-capabilities.mjs +15 -22
- package/dist/api/define-capabilities.mjs.map +1 -1
- package/dist/api/define-devstack-with.d.mts +7 -1
- package/dist/api/define-devstack-with.mjs.map +1 -1
- package/dist/api/define-devstack.mjs.map +1 -1
- package/dist/api/define-plugin.d.mts +2 -1
- package/dist/api/inference-network.d.mts +31 -17
- package/dist/api/inference-network.mjs +40 -43
- package/dist/api/inference-network.mjs.map +1 -1
- package/dist/api/load-config.mjs +88 -0
- package/dist/api/load-config.mjs.map +1 -0
- package/dist/api/mode-narrowed-factory.d.mts +1 -1
- package/dist/api/mode-narrowed-factory.mjs.map +1 -1
- package/dist/api/run-stack-internal.mjs +202 -0
- package/dist/api/run-stack-internal.mjs.map +1 -0
- package/dist/api/run-stack.d.mts +82 -31
- package/dist/api/run-stack.mjs +22 -141
- package/dist/api/run-stack.mjs.map +1 -1
- package/dist/build-integrations/dapp-kit/index.d.mts +61 -0
- package/dist/build-integrations/dapp-kit/index.mjs +58 -0
- package/dist/build-integrations/dapp-kit/index.mjs.map +1 -0
- package/dist/build-integrations/playwright/config.d.mts +1 -30
- package/dist/build-integrations/playwright/config.mjs +1 -27
- package/dist/build-integrations/playwright/config.mjs.map +1 -1
- package/dist/build-integrations/playwright/errors.d.mts +4 -7
- package/dist/build-integrations/playwright/errors.mjs.map +1 -1
- package/dist/build-integrations/playwright/global-setup.d.mts +42 -71
- package/dist/build-integrations/playwright/global-setup.mjs +142 -218
- package/dist/build-integrations/playwright/global-setup.mjs.map +1 -1
- package/dist/build-integrations/playwright/index.d.mts +2 -2
- package/dist/build-integrations/playwright/index.mjs +2 -2
- package/dist/build-integrations/playwright/stack-context.d.mts +3 -1
- package/dist/build-integrations/playwright/stack-context.mjs +4 -2
- package/dist/build-integrations/playwright/stack-context.mjs.map +1 -1
- package/dist/build-integrations/playwright/wallet-context.mjs +44 -19
- package/dist/build-integrations/playwright/wallet-context.mjs.map +1 -1
- package/dist/build-integrations/runtime/cold-start-url.mjs.map +1 -1
- package/dist/build-integrations/runtime/conventional-routes.mjs.map +1 -1
- package/dist/build-integrations/runtime/dapp-kit-slot.mjs.map +1 -1
- package/dist/build-integrations/runtime/discover.d.mts +6 -4
- package/dist/build-integrations/runtime/discover.mjs +15 -4
- package/dist/build-integrations/runtime/discover.mjs.map +1 -1
- package/dist/build-integrations/runtime/endpoint-registry.mjs.map +1 -1
- package/dist/build-integrations/runtime/errors.mjs.map +1 -1
- package/dist/build-integrations/runtime/read-stack-context.mjs +3 -3
- package/dist/build-integrations/runtime/read-stack-context.mjs.map +1 -1
- package/dist/build-integrations/runtime/resolve-discovery-env.d.mts +23 -7
- package/dist/build-integrations/runtime/resolve-discovery-env.mjs +25 -12
- package/dist/build-integrations/runtime/resolve-discovery-env.mjs.map +1 -1
- package/dist/build-integrations/runtime/stack-context.d.mts +2 -2
- package/dist/build-integrations/vite/index.d.mts +84 -19
- package/dist/build-integrations/vite/index.mjs +203 -28
- package/dist/build-integrations/vite/index.mjs.map +1 -1
- package/dist/build-integrations/vitest/config.d.mts +20 -2
- package/dist/build-integrations/vitest/config.mjs +16 -4
- package/dist/build-integrations/vitest/config.mjs.map +1 -1
- package/dist/build-integrations/vitest/env.d.mts +18 -10
- package/dist/build-integrations/vitest/env.mjs +11 -10
- package/dist/build-integrations/vitest/env.mjs.map +1 -1
- package/dist/build-integrations/vitest/errors.d.mts +7 -11
- package/dist/build-integrations/vitest/errors.mjs +3 -4
- package/dist/build-integrations/vitest/errors.mjs.map +1 -1
- package/dist/build-integrations/vitest/global-setup.d.mts +35 -0
- package/dist/build-integrations/vitest/global-setup.mjs +156 -0
- package/dist/build-integrations/vitest/global-setup.mjs.map +1 -0
- package/dist/build-integrations/vitest/index.d.mts +3 -2
- package/dist/build-integrations/vitest/index.mjs +3 -2
- package/dist/build-integrations/vitest/setup.mjs +2 -2
- package/dist/build-integrations/vitest/setup.mjs.map +1 -1
- package/dist/build-integrations/vitest/stack-context.d.mts +5 -3
- package/dist/build-integrations/vitest/stack-context.mjs +3 -2
- package/dist/build-integrations/vitest/stack-context.mjs.map +1 -1
- package/dist/cli/bail.mjs.map +1 -1
- package/dist/cli/doctor-probes.mjs +1 -3
- package/dist/cli/doctor-probes.mjs.map +1 -1
- package/dist/cli/main.d.mts +23 -1
- package/dist/cli/main.mjs +63 -8
- package/dist/cli/main.mjs.map +1 -1
- package/dist/cli/prune-direct.mjs.map +1 -1
- package/dist/cli/snapshot-reader.mjs.map +1 -1
- package/dist/cli/up-lifecycle.mjs.map +1 -1
- package/dist/cli/wirings/apply.mjs +28 -21
- package/dist/cli/wirings/apply.mjs.map +1 -1
- package/dist/cli/wirings/codegen.mjs +108 -0
- package/dist/cli/wirings/codegen.mjs.map +1 -0
- package/dist/cli/wirings/config-loader.mjs +12 -62
- package/dist/cli/wirings/config-loader.mjs.map +1 -1
- package/dist/cli/wirings/dump-ids.mjs +86 -0
- package/dist/cli/wirings/dump-ids.mjs.map +1 -0
- package/dist/cli/wirings/engine-command.mjs +1 -1
- package/dist/cli/wirings/engine-command.mjs.map +1 -1
- package/dist/cli/wirings/identity.mjs +2 -2
- package/dist/cli/wirings/identity.mjs.map +1 -1
- package/dist/cli/wirings/provide-file-system.mjs.map +1 -1
- package/dist/cli/wirings/read-devstack-version.mjs +17 -0
- package/dist/cli/wirings/read-devstack-version.mjs.map +1 -0
- package/dist/cli/wirings/snapshot.mjs +27 -34
- package/dist/cli/wirings/snapshot.mjs.map +1 -1
- package/dist/cli/wirings/up-ipc.mjs +147 -0
- package/dist/cli/wirings/up-ipc.mjs.map +1 -0
- package/dist/cli/wirings/up.mjs +218 -198
- package/dist/cli/wirings/up.mjs.map +1 -1
- package/dist/cli/wirings/wipe.mjs +1 -1
- package/dist/cli/wirings/wipe.mjs.map +1 -1
- package/dist/contracts/chain-probe.d.mts +1 -1
- package/dist/contracts/chain-probe.mjs +1 -1
- package/dist/contracts/chain-probe.mjs.map +1 -1
- package/dist/contracts/codegenable.d.mts +60 -6
- package/dist/contracts/codegenable.mjs +28 -0
- package/dist/contracts/codegenable.mjs.map +1 -0
- package/dist/contracts/config-bindings.mjs +162 -0
- package/dist/contracts/config-bindings.mjs.map +1 -0
- package/dist/contracts/container-runtime.d.mts +23 -17
- package/dist/contracts/plugin-expander.mjs.map +1 -1
- package/dist/contracts/snapshotable.d.mts +5 -7
- package/dist/contracts/wallet-protocol.d.mts +2 -5
- package/dist/contracts/wallet-protocol.mjs +2 -5
- package/dist/contracts/wallet-protocol.mjs.map +1 -1
- package/dist/index.d.mts +21 -26
- package/dist/index.mjs +8 -9
- package/dist/orchestrators/boot.d.mts +28 -0
- package/dist/orchestrators/boot.mjs +440 -0
- package/dist/orchestrators/boot.mjs.map +1 -0
- package/dist/orchestrators/codegen/bindings.d.mts +13 -1
- package/dist/orchestrators/codegen/bindings.mjs +23 -9
- package/dist/orchestrators/codegen/bindings.mjs.map +1 -1
- package/dist/orchestrators/codegen/config-runtime.mjs +208 -0
- package/dist/orchestrators/codegen/config-runtime.mjs.map +1 -0
- package/dist/orchestrators/codegen/emit.mjs +1 -1
- package/dist/orchestrators/codegen/emit.mjs.map +1 -1
- package/dist/orchestrators/codegen/errors.mjs +21 -1
- package/dist/orchestrators/codegen/errors.mjs.map +1 -1
- package/dist/orchestrators/codegen/format.mjs +2 -0
- package/dist/orchestrators/codegen/format.mjs.map +1 -1
- package/dist/orchestrators/codegen/gitignore.mjs +30 -11
- package/dist/orchestrators/codegen/gitignore.mjs.map +1 -1
- package/dist/orchestrators/codegen/id-config.mjs +107 -0
- package/dist/orchestrators/codegen/id-config.mjs.map +1 -0
- package/dist/orchestrators/codegen/output-location.mjs +23 -31
- package/dist/orchestrators/codegen/output-location.mjs.map +1 -1
- package/dist/orchestrators/codegen/paths.mjs +8 -1
- package/dist/orchestrators/codegen/paths.mjs.map +1 -1
- package/dist/orchestrators/codegen/permissions.mjs.map +1 -1
- package/dist/orchestrators/codegen/service.mjs +286 -58
- package/dist/orchestrators/codegen/service.mjs.map +1 -1
- package/dist/orchestrators/layers.mjs +31 -0
- package/dist/orchestrators/layers.mjs.map +1 -0
- package/dist/orchestrators/lifecycle-prune/errors.mjs.map +1 -1
- package/dist/orchestrators/lifecycle-prune/index.mjs +8 -10
- package/dist/orchestrators/lifecycle-prune/index.mjs.map +1 -1
- package/dist/orchestrators/network-options.d.mts +52 -0
- package/dist/orchestrators/network-options.mjs +43 -0
- package/dist/orchestrators/network-options.mjs.map +1 -0
- package/dist/orchestrators/router/cleanup.mjs.map +1 -1
- package/dist/orchestrators/router/cors.mjs.map +1 -1
- package/dist/orchestrators/router/entrypoints.mjs.map +1 -1
- package/dist/orchestrators/router/errors.mjs.map +1 -1
- package/dist/orchestrators/router/file-provider.mjs.map +1 -1
- package/dist/orchestrators/router/hostname.mjs.map +1 -1
- package/dist/orchestrators/router/profile.mjs +1 -1
- package/dist/orchestrators/router/profile.mjs.map +1 -1
- package/dist/orchestrators/router/service.d.mts +2 -2
- package/dist/orchestrators/router/service.mjs +12 -27
- package/dist/orchestrators/router/service.mjs.map +1 -1
- package/dist/orchestrators/router/traefik-container.mjs +1 -1
- package/dist/orchestrators/router/traefik-container.mjs.map +1 -1
- package/dist/orchestrators/snapshot/capture.mjs +171 -195
- package/dist/orchestrators/snapshot/capture.mjs.map +1 -1
- package/dist/orchestrators/snapshot/descriptor.d.mts +1 -1
- package/dist/orchestrators/snapshot/descriptor.mjs +53 -11
- package/dist/orchestrators/snapshot/descriptor.mjs.map +1 -1
- package/dist/orchestrators/snapshot/identity-guard.mjs +3 -5
- package/dist/orchestrators/snapshot/identity-guard.mjs.map +1 -1
- package/dist/orchestrators/snapshot/image-bundle-tags.mjs +32 -101
- package/dist/orchestrators/snapshot/image-bundle-tags.mjs.map +1 -1
- package/dist/orchestrators/snapshot/index.mjs +1 -4
- package/dist/orchestrators/snapshot/integrity.mjs.map +1 -1
- package/dist/orchestrators/snapshot/interrupted-restore.mjs +116 -0
- package/dist/orchestrators/snapshot/interrupted-restore.mjs.map +1 -0
- package/dist/orchestrators/snapshot/phase-error.mjs.map +1 -1
- package/dist/orchestrators/snapshot/prune.mjs +40 -31
- package/dist/orchestrators/snapshot/prune.mjs.map +1 -1
- package/dist/orchestrators/snapshot/restore.mjs +221 -196
- package/dist/orchestrators/snapshot/restore.mjs.map +1 -1
- package/dist/orchestrators/snapshot/service.mjs +72 -62
- package/dist/orchestrators/snapshot/service.mjs.map +1 -1
- package/dist/orchestrators/snapshot/wipe.mjs +67 -56
- package/dist/orchestrators/snapshot/wipe.mjs.map +1 -1
- package/dist/plugins/account/codegen.mjs +3 -0
- package/dist/plugins/account/codegen.mjs.map +1 -1
- package/dist/plugins/account/errors.d.mts +2 -2
- package/dist/plugins/account/errors.mjs +1 -4
- package/dist/plugins/account/errors.mjs.map +1 -1
- package/dist/plugins/account/funding.mjs +3 -27
- package/dist/plugins/account/funding.mjs.map +1 -1
- package/dist/plugins/account/index.d.mts +3 -8
- package/dist/plugins/account/index.mjs +71 -35
- package/dist/plugins/account/index.mjs.map +1 -1
- package/dist/plugins/account/keypair.d.mts +8 -7
- package/dist/plugins/account/keypair.mjs +5 -18
- package/dist/plugins/account/keypair.mjs.map +1 -1
- package/dist/plugins/account/lease.mjs.map +1 -1
- package/dist/plugins/account/registry.d.mts +1 -46
- package/dist/plugins/account/registry.mjs.map +1 -1
- package/dist/plugins/account/service.d.mts +43 -34
- package/dist/plugins/account/service.mjs +9 -54
- package/dist/plugins/account/service.mjs.map +1 -1
- package/dist/plugins/account/snapshot.mjs.map +1 -1
- package/dist/plugins/account/variants/ephemeral.mjs.map +1 -1
- package/dist/plugins/account/variants/impersonate.mjs.map +1 -1
- package/dist/plugins/account/variants/signer.mjs.map +1 -1
- package/dist/plugins/action/discriminator.mjs.map +1 -1
- package/dist/plugins/action/errors.mjs +1 -4
- package/dist/plugins/action/errors.mjs.map +1 -1
- package/dist/plugins/action/execute.mjs +3 -4
- package/dist/plugins/action/execute.mjs.map +1 -1
- package/dist/plugins/action/index.d.mts +2 -2
- package/dist/plugins/action/index.mjs +7 -11
- package/dist/plugins/action/index.mjs.map +1 -1
- package/dist/plugins/action/service.d.mts +5 -7
- package/dist/plugins/action/service.mjs +2 -16
- package/dist/plugins/action/service.mjs.map +1 -1
- package/dist/plugins/coin/address-resolution.mjs.map +1 -1
- package/dist/plugins/coin/codegen.mjs +97 -16
- package/dist/plugins/coin/codegen.mjs.map +1 -1
- package/dist/plugins/coin/discovery.mjs.map +1 -1
- package/dist/plugins/coin/errors.mjs +1 -4
- package/dist/plugins/coin/errors.mjs.map +1 -1
- package/dist/plugins/coin/index.d.mts +4 -34
- package/dist/plugins/coin/index.mjs +47 -28
- package/dist/plugins/coin/index.mjs.map +1 -1
- package/dist/plugins/coin/metadata.d.mts +1 -0
- package/dist/plugins/coin/metadata.mjs +8 -9
- package/dist/plugins/coin/metadata.mjs.map +1 -1
- package/dist/plugins/coin/mint.mjs +7 -21
- package/dist/plugins/coin/mint.mjs.map +1 -1
- package/dist/plugins/coin/registry.mjs +33 -20
- package/dist/plugins/coin/registry.mjs.map +1 -1
- package/dist/plugins/coin/service.d.mts +1 -1
- package/dist/plugins/coin/service.mjs +1 -8
- package/dist/plugins/coin/service.mjs.map +1 -1
- package/dist/plugins/coin/snapshot.mjs.map +1 -1
- package/dist/plugins/coin/type-strings.mjs.map +1 -1
- package/dist/plugins/dashboard/domain.mjs +106 -167
- package/dist/plugins/dashboard/domain.mjs.map +1 -1
- package/dist/plugins/dashboard/index.mjs +13 -13
- package/dist/plugins/dashboard/index.mjs.map +1 -1
- package/dist/plugins/dashboard/origin-policy.mjs +3 -3
- package/dist/plugins/dashboard/origin-policy.mjs.map +1 -1
- package/dist/plugins/dashboard/routable.mjs.map +1 -1
- package/dist/plugins/dashboard/schema/builder.mjs.map +1 -1
- package/dist/plugins/dashboard/schema/enums.mjs.map +1 -1
- package/dist/plugins/dashboard/schema/root.mjs +23 -44
- package/dist/plugins/dashboard/schema/root.mjs.map +1 -1
- package/dist/plugins/dashboard/schema/types.mjs +37 -91
- package/dist/plugins/dashboard/schema/types.mjs.map +1 -1
- package/dist/plugins/dashboard/schema.mjs.map +1 -1
- package/dist/plugins/dashboard/server.mjs.map +1 -1
- package/dist/plugins/deepbook/codegen.d.mts +12 -11
- package/dist/plugins/deepbook/codegen.mjs +108 -11
- package/dist/plugins/deepbook/codegen.mjs.map +1 -1
- package/dist/plugins/deepbook/deploy.mjs +7 -14
- package/dist/plugins/deepbook/deploy.mjs.map +1 -1
- package/dist/plugins/deepbook/errors.mjs +4 -2
- package/dist/plugins/deepbook/errors.mjs.map +1 -1
- package/dist/plugins/deepbook/faucet-strategy.mjs +4 -10
- package/dist/plugins/deepbook/faucet-strategy.mjs.map +1 -1
- package/dist/plugins/deepbook/hash.mjs.map +1 -1
- package/dist/plugins/deepbook/index.d.mts +38 -34
- package/dist/plugins/deepbook/index.mjs +133 -64
- package/dist/plugins/deepbook/index.mjs.map +1 -1
- package/dist/plugins/deepbook/plugin-key.mjs.map +1 -1
- package/dist/plugins/deepbook/pyth/index.mjs +4 -8
- package/dist/plugins/deepbook/pyth/index.mjs.map +1 -1
- package/dist/plugins/deepbook/snapshot.mjs +0 -1
- package/dist/plugins/deepbook/snapshot.mjs.map +1 -1
- package/dist/plugins/deepbook/type-strings.mjs.map +1 -1
- package/dist/plugins/deepbook/types.d.mts +2 -1
- package/dist/plugins/deepbook/types.mjs.map +1 -1
- package/dist/plugins/faucet/dispatcher.d.mts +3 -3
- package/dist/plugins/faucet/dispatcher.mjs.map +1 -1
- package/dist/plugins/faucet/errors.mjs.map +1 -1
- package/dist/plugins/faucet/http.mjs +2 -10
- package/dist/plugins/faucet/http.mjs.map +1 -1
- package/dist/plugins/faucet/index.mjs +0 -1
- package/dist/plugins/faucet/index.mjs.map +1 -1
- package/dist/plugins/host-service/errors.d.mts +1 -3
- package/dist/plugins/host-service/errors.mjs +1 -2
- package/dist/plugins/host-service/errors.mjs.map +1 -1
- package/dist/plugins/host-service/index.d.mts +1 -2
- package/dist/plugins/host-service/index.mjs +11 -11
- package/dist/plugins/host-service/index.mjs.map +1 -1
- package/dist/plugins/host-service/routable.mjs.map +1 -1
- package/dist/plugins/host-service/service.mjs +13 -13
- package/dist/plugins/host-service/service.mjs.map +1 -1
- package/dist/plugins/internal/acquire-on-chain-artifact.mjs.map +1 -1
- package/dist/plugins/internal/codegen-helpers.mjs +2 -0
- package/dist/plugins/internal/codegen-helpers.mjs.map +1 -1
- package/dist/plugins/internal/funding-failure-error.mjs.map +1 -1
- package/dist/plugins/{postgres → internal/postgres-sidecar}/connection.mjs +1 -1
- package/dist/plugins/internal/postgres-sidecar/connection.mjs.map +1 -0
- package/dist/plugins/{postgres → internal/postgres-sidecar}/db-ensure.mjs +30 -16
- package/dist/plugins/internal/postgres-sidecar/db-ensure.mjs.map +1 -0
- package/dist/plugins/internal/postgres-sidecar/errors.mjs +21 -0
- package/dist/plugins/internal/postgres-sidecar/errors.mjs.map +1 -0
- package/dist/{substrate/runtime/scoped-multimap → plugins/internal/postgres-sidecar}/index.mjs +1 -0
- package/dist/plugins/internal/postgres-sidecar/service.mjs +121 -0
- package/dist/plugins/internal/postgres-sidecar/service.mjs.map +1 -0
- package/dist/plugins/package/build.mjs +2 -2
- package/dist/plugins/package/build.mjs.map +1 -1
- package/dist/plugins/package/codegen.d.mts +7 -14
- package/dist/plugins/package/codegen.mjs +187 -59
- package/dist/plugins/package/codegen.mjs.map +1 -1
- package/dist/plugins/package/dep-resolution.mjs +51 -3
- package/dist/plugins/package/dep-resolution.mjs.map +1 -1
- package/dist/plugins/package/errors.mjs +1 -4
- package/dist/plugins/package/errors.mjs.map +1 -1
- package/dist/plugins/package/git-source.d.mts +18 -0
- package/dist/plugins/package/git-source.mjs +119 -0
- package/dist/plugins/package/git-source.mjs.map +1 -0
- package/dist/plugins/package/index.d.mts +28 -19
- package/dist/plugins/package/index.mjs +107 -32
- package/dist/plugins/package/index.mjs.map +1 -1
- package/dist/plugins/package/mode-known.mjs +2 -2
- package/dist/plugins/package/mode-known.mjs.map +1 -1
- package/dist/plugins/package/mode-local.mjs +18 -35
- package/dist/plugins/package/mode-local.mjs.map +1 -1
- package/dist/plugins/package/publish-executor.mjs +13 -8
- package/dist/plugins/package/publish-executor.mjs.map +1 -1
- package/dist/plugins/package/publish-output.d.mts +1 -11
- package/dist/plugins/package/publish-output.mjs +1 -9
- package/dist/plugins/package/publish-output.mjs.map +1 -1
- package/dist/plugins/package/registry.d.mts +1 -1
- package/dist/plugins/package/registry.mjs +26 -14
- package/dist/plugins/package/registry.mjs.map +1 -1
- package/dist/plugins/package/service.mjs.map +1 -1
- package/dist/plugins/package/snapshot.mjs.map +1 -1
- package/dist/plugins/router-entrypoints.mjs +1 -3
- package/dist/plugins/router-entrypoints.mjs.map +1 -1
- package/dist/plugins/seal/bootstrap-assets/cargo-image.mjs +1 -2
- package/dist/plugins/seal/bootstrap-assets/cargo-image.mjs.map +1 -1
- package/dist/plugins/seal/bootstrap-assets/source-fetch.mjs +1 -6
- package/dist/plugins/seal/bootstrap-assets/source-fetch.mjs.map +1 -1
- package/dist/plugins/seal/codegen.d.mts +1 -5
- package/dist/plugins/seal/codegen.mjs +83 -12
- package/dist/plugins/seal/codegen.mjs.map +1 -1
- package/dist/plugins/seal/config-render.mjs +2 -6
- package/dist/plugins/seal/config-render.mjs.map +1 -1
- package/dist/plugins/seal/deploy.mjs +18 -29
- package/dist/plugins/seal/deploy.mjs.map +1 -1
- package/dist/plugins/seal/errors.d.mts +4 -5
- package/dist/plugins/seal/errors.mjs +1 -8
- package/dist/plugins/seal/errors.mjs.map +1 -1
- package/dist/plugins/seal/index.d.mts +7 -28
- package/dist/plugins/seal/index.mjs +69 -47
- package/dist/plugins/seal/index.mjs.map +1 -1
- package/dist/plugins/seal/key-manager.mjs.map +1 -1
- package/dist/plugins/seal/key-server.mjs +1 -6
- package/dist/plugins/seal/key-server.mjs.map +1 -1
- package/dist/plugins/seal/keygen.mjs +2 -3
- package/dist/plugins/seal/keygen.mjs.map +1 -1
- package/dist/plugins/seal/mode/fork-known.mjs.map +1 -1
- package/dist/plugins/seal/mode/live.mjs +1 -1
- package/dist/plugins/seal/mode/live.mjs.map +1 -1
- package/dist/plugins/seal/mode/local-keygen.mjs +4 -10
- package/dist/plugins/seal/mode/local-keygen.mjs.map +1 -1
- package/dist/plugins/seal/plugin-key.mjs.map +1 -1
- package/dist/plugins/seal/registry-publish.mjs.map +1 -1
- package/dist/plugins/seal/routable.mjs.map +1 -1
- package/dist/plugins/seal/service.mjs.map +1 -1
- package/dist/plugins/seal/snapshot.mjs +1 -2
- package/dist/plugins/seal/snapshot.mjs.map +1 -1
- package/dist/plugins/sui/auto-tick.mjs +5 -5
- package/dist/plugins/sui/auto-tick.mjs.map +1 -1
- package/dist/plugins/sui/chain-build-container.mjs +2 -2
- package/dist/plugins/sui/chain-build-container.mjs.map +1 -1
- package/dist/plugins/sui/chain-probe.mjs +4 -4
- package/dist/plugins/sui/chain-probe.mjs.map +1 -1
- package/dist/plugins/sui/codegen.d.mts +9 -7
- package/dist/plugins/sui/codegen.mjs +49 -46
- package/dist/plugins/sui/codegen.mjs.map +1 -1
- package/dist/plugins/sui/errors.d.mts +1 -1
- package/dist/plugins/sui/errors.mjs +1 -9
- package/dist/plugins/sui/errors.mjs.map +1 -1
- package/dist/{substrate/runtime/sui-execute → plugins/sui/exec}/index.d.mts +1 -1
- package/dist/{substrate/runtime/sui-execute → plugins/sui/exec}/index.mjs +3 -7
- package/dist/plugins/sui/exec/index.mjs.map +1 -0
- package/dist/{substrate/runtime/sui-execute → plugins/sui/exec}/sign-and-dispatch.mjs +1 -1
- package/dist/plugins/sui/exec/sign-and-dispatch.mjs.map +1 -0
- package/dist/plugins/sui/fork-faucet-strategy.mjs +2 -6
- package/dist/plugins/sui/fork-faucet-strategy.mjs.map +1 -1
- package/dist/plugins/sui/fork-orchestration.mjs +13 -23
- package/dist/plugins/sui/fork-orchestration.mjs.map +1 -1
- package/dist/plugins/sui/fork-transaction.mjs.map +1 -1
- package/dist/plugins/sui/index.d.mts +34 -83
- package/dist/plugins/sui/index.mjs +200 -68
- package/dist/plugins/sui/index.mjs.map +1 -1
- package/dist/{substrate/runtime/sui-ledger → plugins/sui/ledger}/object-ref.mjs +1 -1
- package/dist/plugins/sui/ledger/object-ref.mjs.map +1 -0
- package/dist/plugins/sui/local-faucet-strategy.mjs +1 -5
- package/dist/plugins/sui/local-faucet-strategy.mjs.map +1 -1
- package/dist/plugins/sui/log-attrs.mjs +11 -0
- package/dist/plugins/sui/log-attrs.mjs.map +1 -0
- package/dist/plugins/sui/mode/external.mjs +4 -12
- package/dist/plugins/sui/mode/external.mjs.map +1 -1
- package/dist/plugins/sui/mode/fork.mjs +19 -16
- package/dist/plugins/sui/mode/fork.mjs.map +1 -1
- package/dist/plugins/sui/mode/live.mjs +4 -17
- package/dist/plugins/sui/mode/live.mjs.map +1 -1
- package/dist/plugins/sui/mode/local.d.mts +1 -0
- package/dist/plugins/sui/mode/local.mjs +203 -61
- package/dist/plugins/sui/mode/local.mjs.map +1 -1
- package/dist/plugins/sui/mode/shared-boot.mjs +18 -23
- package/dist/plugins/sui/mode/shared-boot.mjs.map +1 -1
- package/dist/plugins/sui/mode/shared.d.mts +6 -7
- package/dist/plugins/sui/mode/shared.mjs.map +1 -1
- package/dist/plugins/sui/mode/spec.d.mts +23 -6
- package/dist/{substrate/runtime/sui-move-build → plugins/sui/move}/index.mjs +28 -30
- package/dist/plugins/sui/move/index.mjs.map +1 -0
- package/dist/plugins/sui/move-summary-runner.mjs +8 -4
- package/dist/plugins/sui/move-summary-runner.mjs.map +1 -1
- package/dist/{substrate/network.d.mts → plugins/sui/network-config.d.mts} +11 -10
- package/dist/plugins/sui/network-resolver.d.mts +6 -6
- package/dist/plugins/sui/routable.mjs.map +1 -1
- package/dist/plugins/sui/service.mjs +10 -6
- package/dist/plugins/sui/service.mjs.map +1 -1
- package/dist/plugins/sui/snapshot.mjs +10 -5
- package/dist/plugins/sui/snapshot.mjs.map +1 -1
- package/dist/plugins/wallet/codegen.d.mts +8 -6
- package/dist/plugins/wallet/codegen.mjs +4 -10
- package/dist/plugins/wallet/codegen.mjs.map +1 -1
- package/dist/plugins/wallet/errors.mjs +1 -4
- package/dist/plugins/wallet/errors.mjs.map +1 -1
- package/dist/plugins/wallet/index.d.mts +3 -6
- package/dist/plugins/wallet/index.mjs +16 -21
- package/dist/plugins/wallet/index.mjs.map +1 -1
- package/dist/plugins/wallet/origin-policy.mjs +3 -3
- package/dist/plugins/wallet/origin-policy.mjs.map +1 -1
- package/dist/plugins/wallet/pairing.mjs +6 -24
- package/dist/plugins/wallet/pairing.mjs.map +1 -1
- package/dist/plugins/wallet/protocol.mjs.map +1 -1
- package/dist/plugins/wallet/routable.mjs.map +1 -1
- package/dist/plugins/wallet/server.mjs +17 -24
- package/dist/plugins/wallet/server.mjs.map +1 -1
- package/dist/plugins/wallet/service.d.mts +2 -2
- package/dist/plugins/wallet/service.mjs +4 -15
- package/dist/plugins/wallet/service.mjs.map +1 -1
- package/dist/plugins/wallet/snapshot.mjs.map +1 -1
- package/dist/plugins/walrus/bootstrap-assets/cargo-image.mjs +1 -5
- package/dist/plugins/walrus/bootstrap-assets/cargo-image.mjs.map +1 -1
- package/dist/plugins/walrus/codegen.d.mts +2 -13
- package/dist/plugins/walrus/codegen.mjs +93 -28
- package/dist/plugins/walrus/codegen.mjs.map +1 -1
- package/dist/plugins/walrus/deploy-paths.mjs +2 -3
- package/dist/plugins/walrus/deploy-paths.mjs.map +1 -1
- package/dist/plugins/walrus/deploy.mjs +26 -19
- package/dist/plugins/walrus/deploy.mjs.map +1 -1
- package/dist/plugins/walrus/errors.mjs +1 -8
- package/dist/plugins/walrus/errors.mjs.map +1 -1
- package/dist/plugins/walrus/faucet-strategy.mjs +15 -1
- package/dist/plugins/walrus/faucet-strategy.mjs.map +1 -1
- package/dist/plugins/walrus/index.d.mts +13 -44
- package/dist/plugins/walrus/index.mjs +119 -122
- package/dist/plugins/walrus/index.mjs.map +1 -1
- package/dist/plugins/walrus/mode/known-deploy.mjs +6 -6
- package/dist/plugins/walrus/mode/known-deploy.mjs.map +1 -1
- package/dist/plugins/walrus/mode/local-cluster.d.mts +2 -2
- package/dist/plugins/walrus/mode/local-cluster.mjs +2 -10
- package/dist/plugins/walrus/mode/local-cluster.mjs.map +1 -1
- package/dist/plugins/walrus/plugin-key.mjs.map +1 -1
- package/dist/plugins/walrus/registry-publish.mjs.map +1 -1
- package/dist/plugins/walrus/routable.mjs.map +1 -1
- package/dist/plugins/walrus/service.mjs.map +1 -1
- package/dist/plugins/walrus/snapshot.mjs +3 -3
- package/dist/plugins/walrus/snapshot.mjs.map +1 -1
- package/dist/plugins/walrus/storage-nodes.mjs +53 -14
- package/dist/plugins/walrus/storage-nodes.mjs.map +1 -1
- package/dist/plugins/walrus/wal-swap.mjs +4 -8
- package/dist/plugins/walrus/wal-swap.mjs.map +1 -1
- package/dist/primitives/artifact-publisher.mjs.map +1 -1
- package/dist/primitives/cache.d.mts +1 -1
- package/dist/runtime/docker/client.mjs +47 -3
- package/dist/runtime/docker/client.mjs.map +1 -1
- package/dist/runtime/docker/container.mjs +37 -57
- package/dist/runtime/docker/container.mjs.map +1 -1
- package/dist/runtime/docker/errors.mjs.map +1 -1
- package/dist/runtime/docker/exec.mjs +2 -2
- package/dist/runtime/docker/exec.mjs.map +1 -1
- package/dist/runtime/docker/image.mjs +10 -11
- package/dist/runtime/docker/image.mjs.map +1 -1
- package/dist/runtime/docker/index.mjs +0 -1
- package/dist/runtime/docker/inspect-and-decode.mjs.map +1 -1
- package/dist/runtime/docker/inventory.mjs +9 -9
- package/dist/runtime/docker/inventory.mjs.map +1 -1
- package/dist/runtime/docker/labels.mjs +12 -1
- package/dist/runtime/docker/labels.mjs.map +1 -1
- package/dist/runtime/docker/network.mjs +6 -6
- package/dist/runtime/docker/network.mjs.map +1 -1
- package/dist/runtime/docker/render-run-args.mjs.map +1 -1
- package/dist/runtime/docker/service.mjs +31 -45
- package/dist/runtime/docker/service.mjs.map +1 -1
- package/dist/runtime/docker/sweep.mjs +14 -64
- package/dist/runtime/docker/sweep.mjs.map +1 -1
- package/dist/runtime/docker/volume.mjs +1 -1
- package/dist/runtime/docker/volume.mjs.map +1 -1
- package/dist/runtime/docker/wrap.mjs +14 -2
- package/dist/runtime/docker/wrap.mjs.map +1 -1
- package/dist/substrate/brand.d.mts +2 -5
- package/dist/substrate/brand.mjs +3 -2
- package/dist/substrate/brand.mjs.map +1 -1
- package/dist/substrate/cross-process.mjs +2 -16
- package/dist/substrate/cross-process.mjs.map +1 -1
- package/dist/substrate/event-time.mjs +0 -2
- package/dist/substrate/event-time.mjs.map +1 -1
- package/dist/substrate/events.d.mts +46 -16
- package/dist/substrate/identity.d.mts +11 -5
- package/dist/substrate/manifest.d.mts +33 -26
- package/dist/substrate/manifest.mjs +8 -3
- package/dist/substrate/manifest.mjs.map +1 -1
- package/dist/substrate/options.d.mts +33 -4
- package/dist/substrate/plugin-ctx.d.mts +70 -0
- package/dist/substrate/plugin-ctx.mjs +66 -0
- package/dist/substrate/plugin-ctx.mjs.map +1 -0
- package/dist/substrate/plugin.d.mts +46 -38
- package/dist/substrate/plugin.mjs +13 -9
- package/dist/substrate/plugin.mjs.map +1 -1
- package/dist/substrate/projection.d.mts +1 -1
- package/dist/substrate/runtime/atomic-write.mjs +3 -4
- package/dist/substrate/runtime/atomic-write.mjs.map +1 -1
- package/dist/substrate/runtime/cache/schema.mjs.map +1 -1
- package/dist/substrate/runtime/cache/service.mjs +50 -20
- package/dist/substrate/runtime/cache/service.mjs.map +1 -1
- package/dist/substrate/runtime/config-validation.mjs.map +1 -1
- package/dist/substrate/runtime/control-plane/domain.mjs +34 -12
- package/dist/substrate/runtime/control-plane/domain.mjs.map +1 -1
- package/dist/substrate/runtime/control-plane/service.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/command-channel/channel.mjs +14 -17
- package/dist/substrate/runtime/cross-process/command-channel/channel.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/command-channel/file-channel.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/command-channel/protocol.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/command-channel/runtime-control-lock.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/index.mjs +0 -2
- package/dist/substrate/runtime/cross-process/live-clock.mjs +1 -1
- package/dist/substrate/runtime/cross-process/live-clock.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/liveness.mjs +11 -18
- package/dist/substrate/runtime/cross-process/liveness.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/reclaim-stale-file.mjs +2 -2
- package/dist/substrate/runtime/cross-process/reclaim-stale-file.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/roster.mjs +17 -127
- package/dist/substrate/runtime/cross-process/roster.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/self-pid.mjs.map +1 -1
- package/dist/substrate/runtime/cross-process/stack-lock.mjs +29 -28
- package/dist/substrate/runtime/cross-process/stack-lock.mjs.map +1 -1
- package/dist/substrate/runtime/current-plugin.mjs.map +1 -1
- package/dist/substrate/runtime/errors.mjs +1 -13
- package/dist/substrate/runtime/errors.mjs.map +1 -1
- package/dist/substrate/runtime/format-unknown-error.mjs.map +1 -1
- package/dist/substrate/runtime/host-bind-mount-owner.mjs.map +1 -1
- package/dist/substrate/runtime/host-gateway.mjs.map +1 -1
- package/dist/substrate/runtime/host-tree-tar/index.mjs +15 -163
- package/dist/substrate/runtime/host-tree-tar/index.mjs.map +1 -1
- package/dist/substrate/runtime/http-probe.d.mts +1 -3
- package/dist/substrate/runtime/http-probe.mjs.map +1 -1
- package/dist/substrate/runtime/index.mjs +1 -6
- package/dist/substrate/runtime/lease-broker/service.mjs +5 -23
- package/dist/substrate/runtime/lease-broker/service.mjs.map +1 -1
- package/dist/substrate/runtime/lifecycle/dep-graph.mjs +3 -3
- package/dist/substrate/runtime/lifecycle/dep-graph.mjs.map +1 -1
- package/dist/substrate/runtime/lifecycle/graph-input-id.d.mts +1 -0
- package/dist/substrate/runtime/lifecycle/graph-input-id.mjs +133 -0
- package/dist/substrate/runtime/lifecycle/graph-input-id.mjs.map +1 -0
- package/dist/substrate/runtime/lifecycle/index.mjs +2 -2
- package/dist/substrate/runtime/lifecycle/plugin-registry.d.mts +1 -1
- package/dist/substrate/runtime/lifecycle/plugin-registry.mjs +22 -1
- package/dist/substrate/runtime/lifecycle/plugin-registry.mjs.map +1 -1
- package/dist/substrate/runtime/lifecycle/ready-gate.mjs +2 -15
- package/dist/substrate/runtime/lifecycle/ready-gate.mjs.map +1 -1
- package/dist/substrate/runtime/lifecycle/selective-restart.mjs +29 -25
- package/dist/substrate/runtime/lifecycle/selective-restart.mjs.map +1 -1
- package/dist/substrate/runtime/lifecycle/signals.mjs +1 -1
- package/dist/substrate/runtime/lifecycle/signals.mjs.map +1 -1
- package/dist/substrate/runtime/lifecycle/state-machine.mjs.map +1 -1
- package/dist/substrate/runtime/lifecycle/watch-attribution.d.mts +1 -1
- package/dist/substrate/runtime/lifecycle/watch-attribution.mjs +0 -1
- package/dist/substrate/runtime/lifecycle/watch-attribution.mjs.map +1 -1
- package/dist/substrate/runtime/managed-container.d.mts +5 -1
- package/dist/substrate/runtime/managed-container.mjs +8 -10
- package/dist/substrate/runtime/managed-container.mjs.map +1 -1
- package/dist/substrate/runtime/manifest/manifest.mjs +8 -30
- package/dist/substrate/runtime/manifest/manifest.mjs.map +1 -1
- package/dist/substrate/runtime/mode-errors.d.mts +1 -2
- package/dist/substrate/runtime/mode-errors.mjs.map +1 -1
- package/dist/substrate/runtime/observability/cascade-formatter.mjs +1 -11
- package/dist/substrate/runtime/observability/cascade-formatter.mjs.map +1 -1
- package/dist/substrate/runtime/observability/ignore-with-log.mjs.map +1 -1
- package/dist/substrate/runtime/observability/index.d.mts +1 -1
- package/dist/substrate/runtime/observability/index.mjs +4 -6
- package/dist/substrate/runtime/observability/log-attrs.mjs +46 -0
- package/dist/substrate/runtime/observability/log-attrs.mjs.map +1 -0
- package/dist/substrate/runtime/observability/log-store.mjs.map +1 -1
- package/dist/substrate/runtime/observability/logger.mjs +3 -3
- package/dist/substrate/runtime/observability/logger.mjs.map +1 -1
- package/dist/substrate/runtime/observability/output-truncate.mjs.map +1 -1
- package/dist/substrate/runtime/observability/pretty-error.mjs.map +1 -1
- package/dist/substrate/runtime/observability/process-lines.mjs.map +1 -1
- package/dist/substrate/runtime/observability/redaction.mjs.map +1 -1
- package/dist/substrate/runtime/observability/subprocess-capture.mjs +2 -2
- package/dist/substrate/runtime/observability/subprocess-capture.mjs.map +1 -1
- package/dist/substrate/runtime/passthrough-or-wrap.mjs.map +1 -1
- package/dist/substrate/runtime/paths.mjs +27 -9
- package/dist/substrate/runtime/paths.mjs.map +1 -1
- package/dist/substrate/runtime/phase-preserving-produce.mjs.map +1 -1
- package/dist/substrate/runtime/port-broker/service.mjs +10 -27
- package/dist/substrate/runtime/port-broker/service.mjs.map +1 -1
- package/dist/substrate/runtime/post-acquire-tasks.mjs.map +1 -1
- package/dist/substrate/runtime/probes.d.mts +2 -3
- package/dist/substrate/runtime/probes.mjs.map +1 -1
- package/dist/substrate/runtime/process-supervisor.mjs.map +1 -1
- package/dist/substrate/runtime/projection/operational-endpoints.mjs.map +1 -1
- package/dist/substrate/runtime/projection/state-ref.mjs.map +1 -1
- package/dist/substrate/runtime/projection/update.mjs +87 -11
- package/dist/substrate/runtime/projection/update.mjs.map +1 -1
- package/dist/substrate/runtime/random-suffix.mjs.map +1 -1
- package/dist/substrate/runtime/reconcile/fs-plan.mjs +146 -0
- package/dist/substrate/runtime/reconcile/fs-plan.mjs.map +1 -0
- package/dist/substrate/runtime/reconcile/graph.mjs +19 -0
- package/dist/substrate/runtime/reconcile/graph.mjs.map +1 -0
- package/dist/substrate/runtime/reconcile/index.mjs +5 -0
- package/dist/substrate/runtime/reconcile/label.mjs +41 -0
- package/dist/substrate/runtime/reconcile/label.mjs.map +1 -0
- package/dist/substrate/runtime/reconcile/spec.mjs +15 -0
- package/dist/substrate/runtime/reconcile/spec.mjs.map +1 -0
- package/dist/substrate/runtime/retry-policy.d.mts +2 -3
- package/dist/substrate/runtime/retry-policy.mjs.map +1 -1
- package/dist/substrate/runtime/routed-url.mjs.map +1 -1
- package/dist/substrate/runtime/runtime-decode.mjs.map +1 -1
- package/dist/substrate/runtime/scoped-http-server.mjs.map +1 -1
- package/dist/substrate/runtime/stage-and-swap/index.mjs +49 -12
- package/dist/substrate/runtime/stage-and-swap/index.mjs.map +1 -1
- package/dist/substrate/runtime/strategy-registry/chain-keyed-strategy-for.mjs.map +1 -1
- package/dist/substrate/runtime/strategy-registry/chain-probe-for.mjs.map +1 -1
- package/dist/substrate/runtime/strategy-registry/service.mjs +29 -17
- package/dist/substrate/runtime/strategy-registry/service.mjs.map +1 -1
- package/dist/substrate/runtime/subnet-broker.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/acquire-node.mjs +188 -56
- package/dist/substrate/runtime/supervisor/acquire-node.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/background-tasks.mjs +79 -65
- package/dist/substrate/runtime/supervisor/background-tasks.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/command-loop.mjs +82 -23
- package/dist/substrate/runtime/supervisor/command-loop.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/contribution-dispatcher.mjs +16 -0
- package/dist/substrate/runtime/supervisor/contribution-dispatcher.mjs.map +1 -0
- package/dist/substrate/runtime/supervisor/errors.mjs +11 -2
- package/dist/substrate/runtime/supervisor/errors.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/index.mjs +2 -0
- package/dist/substrate/runtime/supervisor/shutdown.mjs +6 -6
- package/dist/substrate/runtime/supervisor/shutdown.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/start-supervisor.mjs +60 -70
- package/dist/substrate/runtime/supervisor/start-supervisor.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/state.d.mts +1 -1
- package/dist/substrate/runtime/supervisor/state.mjs +1 -1
- package/dist/substrate/runtime/supervisor/state.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/teardown.mjs +10 -9
- package/dist/substrate/runtime/supervisor/teardown.mjs.map +1 -1
- package/dist/substrate/runtime/supervisor/wiring.mjs +6 -20
- package/dist/substrate/runtime/supervisor/wiring.mjs.map +1 -1
- package/dist/substrate/runtime/tar/reader.mjs +216 -0
- package/dist/substrate/runtime/tar/reader.mjs.map +1 -0
- package/dist/substrate/runtime/typed-env.mjs.map +1 -1
- package/dist/substrate/versioned-doc-schema.mjs.map +1 -1
- package/dist/substrate/versioned-doc-sync.mjs +5 -5
- package/dist/substrate/versioned-doc-sync.mjs.map +1 -1
- package/dist/surfaces/cli/command-tree.mjs +49 -7
- package/dist/surfaces/cli/command-tree.mjs.map +1 -1
- package/dist/surfaces/cli/commands/config.mjs +1 -1
- package/dist/surfaces/cli/commands/config.mjs.map +1 -1
- package/dist/surfaces/cli/commands/confirm-node.mjs.map +1 -1
- package/dist/surfaces/cli/commands/confirm.mjs.map +1 -1
- package/dist/surfaces/cli/commands/doctor.mjs +1 -1
- package/dist/surfaces/cli/commands/doctor.mjs.map +1 -1
- package/dist/surfaces/cli/commands/prune-picker-entry.mjs.map +1 -1
- package/dist/surfaces/cli/commands/prune-picker.mjs.map +1 -1
- package/dist/surfaces/cli/commands/prune.mjs +1 -1
- package/dist/surfaces/cli/commands/prune.mjs.map +1 -1
- package/dist/surfaces/cli/commands/snapshot.mjs +1 -1
- package/dist/surfaces/cli/commands/snapshot.mjs.map +1 -1
- package/dist/surfaces/cli/commands/status.mjs +1 -1
- package/dist/surfaces/cli/commands/status.mjs.map +1 -1
- package/dist/surfaces/cli/commands/supervisor-presence.mjs.map +1 -1
- package/dist/surfaces/cli/commands/wipe.mjs +3 -4
- package/dist/surfaces/cli/commands/wipe.mjs.map +1 -1
- package/dist/surfaces/cli/envelope.mjs.map +1 -1
- package/dist/surfaces/cli/errors.mjs.map +1 -1
- package/dist/surfaces/cli/flags.mjs.map +1 -1
- package/dist/surfaces/cli/index.mjs +45 -14
- package/dist/surfaces/cli/index.mjs.map +1 -1
- package/dist/surfaces/cli/output.mjs.map +1 -1
- package/dist/surfaces/cli/sysexits.mjs.map +1 -1
- package/dist/surfaces/tui/app.mjs +0 -21
- package/dist/surfaces/tui/app.mjs.map +1 -1
- package/dist/surfaces/tui/dashboard.mjs +0 -48
- package/dist/surfaces/tui/dashboard.mjs.map +1 -1
- package/dist/surfaces/tui/display-derivation.mjs +80 -16
- package/dist/surfaces/tui/display-derivation.mjs.map +1 -1
- package/dist/surfaces/tui/errors.mjs.map +1 -1
- package/dist/surfaces/tui/event-log.mjs +0 -9
- package/dist/surfaces/tui/event-log.mjs.map +1 -1
- package/dist/surfaces/tui/heartbeat.mjs.map +1 -1
- package/dist/surfaces/tui/index.mjs +2 -2
- package/dist/surfaces/tui/index.mjs.map +1 -1
- package/dist/surfaces/tui/input.mjs.map +1 -1
- package/dist/surfaces/tui/mode-detect.mjs.map +1 -1
- package/dist/surfaces/tui/mount-ink.mjs.map +1 -1
- package/dist/surfaces/tui/plain-renderer.mjs +26 -19
- package/dist/surfaces/tui/plain-renderer.mjs.map +1 -1
- package/dist/surfaces/tui/resource-table.mjs +8 -10
- package/dist/surfaces/tui/resource-table.mjs.map +1 -1
- package/images/postgres/Dockerfile +0 -1
- package/images/sui/Dockerfile +27 -54
- package/images/sui/entrypoint.sh +17 -179
- package/package.json +23 -15
- package/dashboard-ui/assets/index-Bmi1UtAg.js +0 -1356
- package/dashboard-ui/assets/index-D5EShVt4.js +0 -3
- package/dashboard-ui/assets/index-Deml9drg.css +0 -1
- package/dist/api/plugin-errors.d.mts +0 -7
- package/dist/api/plugin-errors.mjs +0 -10
- package/dist/api/plugin-errors.mjs.map +0 -1
- package/dist/cli/wirings/build-verb-layers.mjs +0 -42
- package/dist/cli/wirings/build-verb-layers.mjs.map +0 -1
- package/dist/contracts/capability-decl.d.mts +0 -40
- package/dist/orchestrators/built-in-plugin-layers.mjs +0 -54
- package/dist/orchestrators/built-in-plugin-layers.mjs.map +0 -1
- package/dist/orchestrators/run.mjs +0 -91
- package/dist/orchestrators/run.mjs.map +0 -1
- package/dist/orchestrators/runtime-composition.d.mts +0 -10
- package/dist/orchestrators/runtime-composition.mjs +0 -252
- package/dist/orchestrators/runtime-composition.mjs.map +0 -1
- package/dist/orchestrators/snapshot/capture-command.d.mts +0 -1
- package/dist/orchestrators/snapshot/capture-command.mjs +0 -25
- package/dist/orchestrators/snapshot/capture-command.mjs.map +0 -1
- package/dist/orchestrators/snapshot/pending-marker.mjs +0 -99
- package/dist/orchestrators/snapshot/pending-marker.mjs.map +0 -1
- package/dist/orchestrators/snapshot/recover-pending.mjs +0 -223
- package/dist/orchestrators/snapshot/recover-pending.mjs.map +0 -1
- package/dist/orchestrators/snapshot/state-document.d.mts +0 -1
- package/dist/orchestrators/snapshot/state-document.mjs +0 -58
- package/dist/orchestrators/snapshot/state-document.mjs.map +0 -1
- package/dist/plugins/account/spans.mjs +0 -16
- package/dist/plugins/account/spans.mjs.map +0 -1
- package/dist/plugins/account/variants/env.mjs +0 -24
- package/dist/plugins/account/variants/env.mjs.map +0 -1
- package/dist/plugins/account/variants/inline.mjs +0 -13
- package/dist/plugins/account/variants/inline.mjs.map +0 -1
- package/dist/plugins/account/variants/keystore.mjs +0 -91
- package/dist/plugins/account/variants/keystore.mjs.map +0 -1
- package/dist/plugins/action/spans.mjs +0 -11
- package/dist/plugins/action/spans.mjs.map +0 -1
- package/dist/plugins/coin/spans.mjs +0 -20
- package/dist/plugins/coin/spans.mjs.map +0 -1
- package/dist/plugins/deepbook/spans.mjs +0 -18
- package/dist/plugins/deepbook/spans.mjs.map +0 -1
- package/dist/plugins/faucet/spans.mjs +0 -12
- package/dist/plugins/faucet/spans.mjs.map +0 -1
- package/dist/plugins/package/spans.mjs +0 -14
- package/dist/plugins/package/spans.mjs.map +0 -1
- package/dist/plugins/postgres/codegen.mjs +0 -42
- package/dist/plugins/postgres/codegen.mjs.map +0 -1
- package/dist/plugins/postgres/connection.d.mts +0 -33
- package/dist/plugins/postgres/connection.mjs.map +0 -1
- package/dist/plugins/postgres/db-ensure.mjs.map +0 -1
- package/dist/plugins/postgres/errors.d.mts +0 -60
- package/dist/plugins/postgres/errors.mjs +0 -29
- package/dist/plugins/postgres/errors.mjs.map +0 -1
- package/dist/plugins/postgres/index.d.mts +0 -37
- package/dist/plugins/postgres/index.mjs +0 -68
- package/dist/plugins/postgres/index.mjs.map +0 -1
- package/dist/plugins/postgres/routable.mjs +0 -33
- package/dist/plugins/postgres/routable.mjs.map +0 -1
- package/dist/plugins/postgres/service.d.mts +0 -50
- package/dist/plugins/postgres/service.mjs +0 -179
- package/dist/plugins/postgres/service.mjs.map +0 -1
- package/dist/plugins/postgres/snapshot.mjs +0 -32
- package/dist/plugins/postgres/snapshot.mjs.map +0 -1
- package/dist/plugins/postgres/spans.mjs +0 -11
- package/dist/plugins/postgres/spans.mjs.map +0 -1
- package/dist/plugins/seal/spans.mjs +0 -18
- package/dist/plugins/seal/spans.mjs.map +0 -1
- package/dist/plugins/sui/spans.mjs +0 -17
- package/dist/plugins/sui/spans.mjs.map +0 -1
- package/dist/plugins/wallet/spans.mjs +0 -22
- package/dist/plugins/wallet/spans.mjs.map +0 -1
- package/dist/plugins/walrus/registry-publish.d.mts +0 -24
- package/dist/plugins/walrus/spans.mjs +0 -18
- package/dist/plugins/walrus/spans.mjs.map +0 -1
- package/dist/runtime/docker/logs.d.mts +0 -1
- package/dist/runtime/docker/logs.mjs +0 -34
- package/dist/runtime/docker/logs.mjs.map +0 -1
- package/dist/substrate/runtime/artifact-publisher/index.mjs +0 -86
- package/dist/substrate/runtime/artifact-publisher/index.mjs.map +0 -1
- package/dist/substrate/runtime/capability-sinks/index.d.mts +0 -1
- package/dist/substrate/runtime/capability-sinks/index.mjs +0 -3
- package/dist/substrate/runtime/capability-sinks/layer.d.mts +0 -1
- package/dist/substrate/runtime/capability-sinks/layer.mjs +0 -31
- package/dist/substrate/runtime/capability-sinks/layer.mjs.map +0 -1
- package/dist/substrate/runtime/capability-sinks/service.d.mts +0 -95
- package/dist/substrate/runtime/capability-sinks/service.mjs +0 -69
- package/dist/substrate/runtime/capability-sinks/service.mjs.map +0 -1
- package/dist/substrate/runtime/cross-process/lock.d.mts +0 -1
- package/dist/substrate/runtime/cross-process/lock.mjs +0 -23
- package/dist/substrate/runtime/cross-process/lock.mjs.map +0 -1
- package/dist/substrate/runtime/cross-process/snapshot-reservation.mjs +0 -113
- package/dist/substrate/runtime/cross-process/snapshot-reservation.mjs.map +0 -1
- package/dist/substrate/runtime/lifecycle/lifecycle-fact.mjs +0 -31
- package/dist/substrate/runtime/lifecycle/lifecycle-fact.mjs.map +0 -1
- package/dist/substrate/runtime/observability/formatter-registry.d.mts +0 -1
- package/dist/substrate/runtime/observability/formatter-registry.mjs +0 -48
- package/dist/substrate/runtime/observability/formatter-registry.mjs.map +0 -1
- package/dist/substrate/runtime/observability/span-store.d.mts +0 -1
- package/dist/substrate/runtime/observability/span-store.mjs +0 -110
- package/dist/substrate/runtime/observability/span-store.mjs.map +0 -1
- package/dist/substrate/runtime/observability/spans.d.mts +0 -1
- package/dist/substrate/runtime/observability/spans.mjs +0 -87
- package/dist/substrate/runtime/observability/spans.mjs.map +0 -1
- package/dist/substrate/runtime/projection/index.mjs +0 -4
- package/dist/substrate/runtime/projection/persisted.mjs +0 -213
- package/dist/substrate/runtime/projection/persisted.mjs.map +0 -1
- package/dist/substrate/runtime/scoped-multimap/service.mjs +0 -52
- package/dist/substrate/runtime/scoped-multimap/service.mjs.map +0 -1
- package/dist/substrate/runtime/scoped-ref-map/index.mjs +0 -2
- package/dist/substrate/runtime/scoped-ref-map/service.mjs +0 -83
- package/dist/substrate/runtime/scoped-ref-map/service.mjs.map +0 -1
- package/dist/substrate/runtime/state-store/index.mjs +0 -3
- package/dist/substrate/runtime/state-store/schema.d.mts +0 -1
- package/dist/substrate/runtime/state-store/schema.mjs +0 -41
- package/dist/substrate/runtime/state-store/schema.mjs.map +0 -1
- package/dist/substrate/runtime/state-store/service.d.mts +0 -1
- package/dist/substrate/runtime/state-store/service.mjs +0 -145
- package/dist/substrate/runtime/state-store/service.mjs.map +0 -1
- package/dist/substrate/runtime/sui-execute/index.mjs.map +0 -1
- package/dist/substrate/runtime/sui-execute/sign-and-dispatch.mjs.map +0 -1
- package/dist/substrate/runtime/sui-ledger/object-ref.mjs.map +0 -1
- package/dist/substrate/runtime/sui-move-build/index.mjs.map +0 -1
- package/dist/substrate/runtime/supervisor/dispatch-contributions.mjs +0 -151
- package/dist/substrate/runtime/supervisor/dispatch-contributions.mjs.map +0 -1
- package/dist/substrate/state-store.d.mts +0 -1
- /package/dist/orchestrators/{snapshot/pending-marker.d.mts → codegen/id-config.d.mts} +0 -0
- /package/dist/orchestrators/snapshot/{recover-pending.d.mts → interrupted-restore.d.mts} +0 -0
- /package/dist/{substrate/runtime/sui-execute → plugins/sui/exec}/sign-and-dispatch.d.mts +0 -0
- /package/dist/plugins/{postgres/snapshot.d.mts → sui/ledger/object-ref.d.mts} +0 -0
- /package/dist/{substrate/runtime/sui-move-build → plugins/sui/move}/index.d.mts +0 -0
- /package/dist/substrate/runtime/{state-store/index.d.mts → reconcile/graph.d.mts} +0 -0
- /package/dist/substrate/runtime/{cross-process/snapshot-reservation.d.mts → supervisor/contribution-dispatcher.d.mts} +0 -0
|
@@ -1,24 +1,25 @@
|
|
|
1
|
-
import { CodegenableDecl } from "../../contracts/codegenable.mjs";
|
|
2
|
-
import { ChainId } from "../../substrate/brand.mjs";
|
|
3
|
-
import { RoutableDecl } from "../../contracts/routable.mjs";
|
|
4
|
-
import { SnapshotableDecl } from "../../contracts/snapshotable.mjs";
|
|
5
|
-
import { StrategyContributorDecl } from "../../contracts/strategy-contributor.mjs";
|
|
6
1
|
import { Plugin } from "../../substrate/plugin.mjs";
|
|
2
|
+
import { DevstackNetworkModeRegistry, NetworkConfig, NetworkMode } from "./network-config.mjs";
|
|
7
3
|
import { ImageRef } from "../../contracts/container-runtime.mjs";
|
|
8
|
-
import { ModeNamespace } from "../../api/mode-narrowed-factory.mjs";
|
|
9
4
|
import { ChainProbe, ChainProbeError, ChainProbeMode } from "../../contracts/chain-probe.mjs";
|
|
5
|
+
import { ModeNamespace } from "../../api/mode-narrowed-factory.mjs";
|
|
10
6
|
import { SuiProbeKey, SuiSdkShim } from "./chain-probe.mjs";
|
|
11
|
-
import { FaucetStrategy } from "../faucet/dispatcher.mjs";
|
|
12
7
|
import { ForkUnsupportedError, SuiCliError, SuiConfigError, SuiError, SuiPluginError } from "./errors.mjs";
|
|
13
|
-
import {
|
|
8
|
+
import { FaucetStrategy } from "../faucet/dispatcher.mjs";
|
|
14
9
|
import { SuiForkOptions, SuiLiveOptions, SuiLocalOptions, SuiLocalRpcOptions, SuiOptions, SuiPluginMode } from "./mode/spec.mjs";
|
|
15
10
|
import { ResolvedSuiNetwork } from "./network-resolver.mjs";
|
|
16
|
-
import {
|
|
11
|
+
import { ForkAdminSurface, SuiClient, WaitForTransactionsReady } from "./mode/shared.mjs";
|
|
12
|
+
import { SuiNetworkConfigEntry } from "./codegen.mjs";
|
|
13
|
+
import { ExecutedFailure, TransactionSignerScope } from "./exec/index.mjs";
|
|
14
|
+
import { Effect, Scope } from "effect";
|
|
17
15
|
//#region src/plugins/sui/index.d.ts
|
|
18
16
|
/** Local Sui shorthand. Network/env selection belongs to the CLI or
|
|
19
17
|
* `defineDevstackWith(...)`; plain `sui()` always means an in-stack
|
|
20
|
-
* local validator
|
|
21
|
-
|
|
18
|
+
* local validator (GraphQL/indexer/Postgres on by default via a
|
|
19
|
+
* sui-owned sidecar). */
|
|
20
|
+
declare const sui: <const O extends SuiOptions = {
|
|
21
|
+
mode: "local";
|
|
22
|
+
}>(opts?: O) => Plugin<"sui", {
|
|
22
23
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
23
24
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
24
25
|
sdk: SuiSdkShim;
|
|
@@ -31,21 +32,16 @@ declare const sui: (opts?: SuiOptions) => Plugin<"sui", {
|
|
|
31
32
|
readonly faucetUrl: string | null;
|
|
32
33
|
readonly graphqlUrl: string | null;
|
|
33
34
|
};
|
|
34
|
-
|
|
35
|
+
chainId: string;
|
|
35
36
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
36
37
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
37
38
|
fork: ForkAdminSurface | null;
|
|
38
39
|
buildImage: ImageRef | null;
|
|
39
|
-
}, readonly []
|
|
40
|
-
kind: "strategy-contributor";
|
|
41
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
42
|
-
strategy: FaucetStrategy;
|
|
43
|
-
autoMounted: true;
|
|
44
|
-
})[]]>;
|
|
40
|
+
}, readonly []>;
|
|
45
41
|
/** Mode-narrowed factory namespace.
|
|
46
42
|
*
|
|
47
43
|
* Usage:
|
|
48
|
-
* const network = { mode: 'local'
|
|
44
|
+
* const network = { mode: 'local' } as const;
|
|
49
45
|
* suiFor(network).local({...}) // OK
|
|
50
46
|
* suiFor(network).fork({...}) // type error: 'fork' not in 'local' branch
|
|
51
47
|
*
|
|
@@ -54,7 +50,7 @@ declare const sui: (opts?: SuiOptions) => Plugin<"sui", {
|
|
|
54
50
|
* `live`, `fork`. */
|
|
55
51
|
declare const suiFor: ModeNamespace<{
|
|
56
52
|
local: {
|
|
57
|
-
local:
|
|
53
|
+
local: <const O extends Omit<SuiLocalOptions, "mode">>(opts?: O) => Plugin<"sui", {
|
|
58
54
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
59
55
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
60
56
|
sdk: SuiSdkShim;
|
|
@@ -67,17 +63,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
67
63
|
readonly faucetUrl: string | null;
|
|
68
64
|
readonly graphqlUrl: string | null;
|
|
69
65
|
};
|
|
70
|
-
|
|
66
|
+
chainId: string;
|
|
71
67
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
72
68
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
73
69
|
fork: ForkAdminSurface | null;
|
|
74
70
|
buildImage: ImageRef | null;
|
|
75
|
-
}, readonly []
|
|
76
|
-
kind: "strategy-contributor";
|
|
77
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
78
|
-
strategy: FaucetStrategy;
|
|
79
|
-
autoMounted: true;
|
|
80
|
-
})[]]>;
|
|
71
|
+
}, readonly []>;
|
|
81
72
|
localRpc: (opts: Omit<SuiLocalRpcOptions, "mode">) => Plugin<"sui", {
|
|
82
73
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
83
74
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
@@ -91,17 +82,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
91
82
|
readonly faucetUrl: string | null;
|
|
92
83
|
readonly graphqlUrl: string | null;
|
|
93
84
|
};
|
|
94
|
-
|
|
85
|
+
chainId: string;
|
|
95
86
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
96
87
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
97
88
|
fork: ForkAdminSurface | null;
|
|
98
89
|
buildImage: ImageRef | null;
|
|
99
|
-
}, readonly []
|
|
100
|
-
kind: "strategy-contributor";
|
|
101
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
102
|
-
strategy: FaucetStrategy;
|
|
103
|
-
autoMounted: true;
|
|
104
|
-
})[]]>;
|
|
90
|
+
}, readonly []>;
|
|
105
91
|
};
|
|
106
92
|
live: {
|
|
107
93
|
testnet: (opts?: Omit<SuiLiveOptions, "mode" | "network">) => Plugin<"sui", {
|
|
@@ -117,17 +103,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
117
103
|
readonly faucetUrl: string | null;
|
|
118
104
|
readonly graphqlUrl: string | null;
|
|
119
105
|
};
|
|
120
|
-
|
|
106
|
+
chainId: string;
|
|
121
107
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
122
108
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
123
109
|
fork: ForkAdminSurface | null;
|
|
124
110
|
buildImage: ImageRef | null;
|
|
125
|
-
}, readonly []
|
|
126
|
-
kind: "strategy-contributor";
|
|
127
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
128
|
-
strategy: FaucetStrategy;
|
|
129
|
-
autoMounted: true;
|
|
130
|
-
})[]]>;
|
|
111
|
+
}, readonly []>;
|
|
131
112
|
mainnet: (opts?: Omit<SuiLiveOptions, "mode" | "network">) => Plugin<"sui", {
|
|
132
113
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
133
114
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
@@ -141,17 +122,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
141
122
|
readonly faucetUrl: string | null;
|
|
142
123
|
readonly graphqlUrl: string | null;
|
|
143
124
|
};
|
|
144
|
-
|
|
125
|
+
chainId: string;
|
|
145
126
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
146
127
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
147
128
|
fork: ForkAdminSurface | null;
|
|
148
129
|
buildImage: ImageRef | null;
|
|
149
|
-
}, readonly []
|
|
150
|
-
kind: "strategy-contributor";
|
|
151
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
152
|
-
strategy: FaucetStrategy;
|
|
153
|
-
autoMounted: true;
|
|
154
|
-
})[]]>;
|
|
130
|
+
}, readonly []>;
|
|
155
131
|
devnet: (opts?: Omit<SuiLiveOptions, "mode" | "network">) => Plugin<"sui", {
|
|
156
132
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
157
133
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
@@ -165,17 +141,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
165
141
|
readonly faucetUrl: string | null;
|
|
166
142
|
readonly graphqlUrl: string | null;
|
|
167
143
|
};
|
|
168
|
-
|
|
144
|
+
chainId: string;
|
|
169
145
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
170
146
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
171
147
|
fork: ForkAdminSurface | null;
|
|
172
148
|
buildImage: ImageRef | null;
|
|
173
|
-
}, readonly []
|
|
174
|
-
kind: "strategy-contributor";
|
|
175
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
176
|
-
strategy: FaucetStrategy;
|
|
177
|
-
autoMounted: true;
|
|
178
|
-
})[]]>;
|
|
149
|
+
}, readonly []>;
|
|
179
150
|
custom: (opts: Omit<SuiLiveOptions, "mode" | "network">) => Plugin<"sui", {
|
|
180
151
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
181
152
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
@@ -189,17 +160,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
189
160
|
readonly faucetUrl: string | null;
|
|
190
161
|
readonly graphqlUrl: string | null;
|
|
191
162
|
};
|
|
192
|
-
|
|
163
|
+
chainId: string;
|
|
193
164
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
194
165
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
195
166
|
fork: ForkAdminSurface | null;
|
|
196
167
|
buildImage: ImageRef | null;
|
|
197
|
-
}, readonly []
|
|
198
|
-
kind: "strategy-contributor";
|
|
199
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
200
|
-
strategy: FaucetStrategy;
|
|
201
|
-
autoMounted: true;
|
|
202
|
-
})[]]>;
|
|
168
|
+
}, readonly []>;
|
|
203
169
|
};
|
|
204
170
|
fork: {
|
|
205
171
|
mainnet: (opts?: Omit<SuiForkOptions, "mode" | "upstream">) => Plugin<"sui", {
|
|
@@ -215,17 +181,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
215
181
|
readonly faucetUrl: string | null;
|
|
216
182
|
readonly graphqlUrl: string | null;
|
|
217
183
|
};
|
|
218
|
-
|
|
184
|
+
chainId: string;
|
|
219
185
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
220
186
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
221
187
|
fork: ForkAdminSurface | null;
|
|
222
188
|
buildImage: ImageRef | null;
|
|
223
|
-
}, readonly []
|
|
224
|
-
kind: "strategy-contributor";
|
|
225
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
226
|
-
strategy: FaucetStrategy;
|
|
227
|
-
autoMounted: true;
|
|
228
|
-
})[]]>;
|
|
189
|
+
}, readonly []>;
|
|
229
190
|
testnet: (opts?: Omit<SuiForkOptions, "mode" | "upstream">) => Plugin<"sui", {
|
|
230
191
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
231
192
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
@@ -239,17 +200,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
239
200
|
readonly faucetUrl: string | null;
|
|
240
201
|
readonly graphqlUrl: string | null;
|
|
241
202
|
};
|
|
242
|
-
|
|
203
|
+
chainId: string;
|
|
243
204
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
244
205
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
245
206
|
fork: ForkAdminSurface | null;
|
|
246
207
|
buildImage: ImageRef | null;
|
|
247
|
-
}, readonly []
|
|
248
|
-
kind: "strategy-contributor";
|
|
249
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
250
|
-
strategy: FaucetStrategy;
|
|
251
|
-
autoMounted: true;
|
|
252
|
-
})[]]>;
|
|
208
|
+
}, readonly []>;
|
|
253
209
|
devnet: (opts?: Omit<SuiForkOptions, "mode" | "upstream">) => Plugin<"sui", {
|
|
254
210
|
mode: "local" | "live" | "fork" | "local-rpc";
|
|
255
211
|
fundingFaucetStrategy: FaucetStrategy | null;
|
|
@@ -263,17 +219,12 @@ declare const suiFor: ModeNamespace<{
|
|
|
263
219
|
readonly faucetUrl: string | null;
|
|
264
220
|
readonly graphqlUrl: string | null;
|
|
265
221
|
};
|
|
266
|
-
|
|
222
|
+
chainId: string;
|
|
267
223
|
waitForTransactionsReady: WaitForTransactionsReady;
|
|
268
224
|
chainProbe: ChainProbe<SuiProbeKey>;
|
|
269
225
|
fork: ForkAdminSurface | null;
|
|
270
226
|
buildImage: ImageRef | null;
|
|
271
|
-
}, readonly []
|
|
272
|
-
kind: "strategy-contributor";
|
|
273
|
-
capabilityKey: `faucet:request:${ChainId}`;
|
|
274
|
-
strategy: FaucetStrategy;
|
|
275
|
-
autoMounted: true;
|
|
276
|
-
})[]]>;
|
|
227
|
+
}, readonly []>;
|
|
277
228
|
};
|
|
278
229
|
}>;
|
|
279
230
|
//#endregion
|
|
@@ -1,19 +1,27 @@
|
|
|
1
|
-
import { definePlugin, resource } from "../../substrate/plugin.mjs";
|
|
1
|
+
import { definePlugin, resource, staticInputIdentity } from "../../substrate/plugin.mjs";
|
|
2
2
|
import "../../api/define-plugin.mjs";
|
|
3
3
|
import { IdentityContext, StackPathsService } from "../../substrate/runtime/paths.mjs";
|
|
4
4
|
import { ContainerRuntimeService } from "../../runtime/docker/service.mjs";
|
|
5
|
+
import { PluginContext, emitContributions } from "../../substrate/plugin-ctx.mjs";
|
|
5
6
|
import { LeaseBrokerService } from "../../substrate/runtime/lease-broker/service.mjs";
|
|
6
7
|
import "../../substrate/runtime/lease-broker/index.mjs";
|
|
7
8
|
import { PortBrokerService } from "../../substrate/runtime/port-broker/service.mjs";
|
|
8
9
|
import "../../substrate/runtime/port-broker/index.mjs";
|
|
9
10
|
import { chainProbeCapabilityKey } from "../../contracts/chain-probe.mjs";
|
|
11
|
+
import "./move/index.mjs";
|
|
10
12
|
import { makeSuiForkRoutables, makeSuiLocalRoutables } from "./routable.mjs";
|
|
11
|
-
import {
|
|
13
|
+
import { sanitizeAlias } from "../../substrate/runtime/managed-container.mjs";
|
|
14
|
+
import { resolveNetworkOptions } from "../../orchestrators/network-options.mjs";
|
|
12
15
|
import { defineModeNamespace } from "../../api/mode-narrowed-factory.mjs";
|
|
13
|
-
import {
|
|
16
|
+
import { credentialedUrl, withDatabase } from "../internal/postgres-sidecar/connection.mjs";
|
|
17
|
+
import { bootPostgresSidecar } from "../internal/postgres-sidecar/service.mjs";
|
|
18
|
+
import "../internal/postgres-sidecar/index.mjs";
|
|
19
|
+
import { makeCodegenable, makeStaticCodegen } from "./codegen.mjs";
|
|
20
|
+
import { suiPluginError } from "./errors.mjs";
|
|
21
|
+
import "./log-attrs.mjs";
|
|
22
|
+
import { SUI_INDEXER_DB_ROLE, resolveImage } from "./mode/local.mjs";
|
|
14
23
|
import { makeSnapshotable } from "./snapshot.mjs";
|
|
15
|
-
import
|
|
16
|
-
import "./spans.mjs";
|
|
24
|
+
import "./exec/index.mjs";
|
|
17
25
|
import "./fork-orchestration.mjs";
|
|
18
26
|
import { selectSufficientForkCoin } from "./fork-transaction.mjs";
|
|
19
27
|
import { FORK_FAUCET_WHALE_MIN_COIN_MIST, resolveForkWhale } from "./mode/fork.mjs";
|
|
@@ -23,11 +31,12 @@ import "../faucet/index.mjs";
|
|
|
23
31
|
import { suiLocalStrategy } from "./local-faucet-strategy.mjs";
|
|
24
32
|
import { suiForkFaucetStrategy } from "./fork-faucet-strategy.mjs";
|
|
25
33
|
import "./chain-build-container.mjs";
|
|
34
|
+
import "./exec/sign-and-dispatch.mjs";
|
|
35
|
+
import "./ledger/object-ref.mjs";
|
|
26
36
|
import { Effect } from "effect";
|
|
27
37
|
//#region src/plugins/sui/index.ts
|
|
28
38
|
/** The Sui plugin's resource identity. The id is `'sui'` (singular). */
|
|
29
39
|
const suiResource = resource("sui");
|
|
30
|
-
const suiErrorContributions = pluginErrorContributions(SUI_ERROR_TAGS);
|
|
31
40
|
/** Build the funds-ready faucet strategy for the resolved network, or
|
|
32
41
|
* `null` when the network has none. Local/live wrap the HTTP faucet;
|
|
33
42
|
* fork mode impersonates a whale (resolved + validated here). */
|
|
@@ -38,8 +47,8 @@ const resolveFundingFaucetStrategy = (opts, client, broker) => {
|
|
|
38
47
|
faucetUrl: client.fundingFaucetUrl,
|
|
39
48
|
serialization: {
|
|
40
49
|
broker,
|
|
41
|
-
key: `sui-faucet:${client.
|
|
42
|
-
owner: `sui-faucet:${client.
|
|
50
|
+
key: `sui-faucet:${client.chainId}`,
|
|
51
|
+
owner: `sui-faucet:${client.chainId}`
|
|
43
52
|
}
|
|
44
53
|
}));
|
|
45
54
|
};
|
|
@@ -60,88 +69,211 @@ const resolveForkFaucetStrategy = (opts, client, broker) => Effect.gen(function*
|
|
|
60
69
|
perRequestCapMist: resolved.perRequestCapMist,
|
|
61
70
|
serialization: {
|
|
62
71
|
broker,
|
|
63
|
-
key: `sui-fork-faucet:${client.
|
|
64
|
-
owner: `sui-fork-faucet:${client.
|
|
72
|
+
key: `sui-fork-faucet:${client.chainId}`,
|
|
73
|
+
owner: `sui-fork-faucet:${client.chainId}`
|
|
65
74
|
}
|
|
66
75
|
});
|
|
67
76
|
return yield* selectSufficientForkCoin(client.sdk.core, resolved.whale, FORK_FAUCET_WHALE_MIN_COIN_MIST).pipe(Effect.as(strategy), Effect.catchTag("SuiPluginError", (cause) => resolved.explicit ? Effect.fail(cause) : Effect.logWarning(`sui fork mode: default faucet whale ${resolved.whale} is unusable (${cause.message}); disabling the fork faucet. Set faucet.whale to override.`).pipe(Effect.as(null))));
|
|
68
77
|
});
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
capabilities: ({ value, runtime }) => makePluginCapabilities(opts, value, runtime),
|
|
89
|
-
errorContributions: suiErrorContributions
|
|
90
|
-
});
|
|
78
|
+
/** Default name for sui's GraphQL-indexer database. */
|
|
79
|
+
const DEFAULT_INDEXER_DATABASE = "sui_indexer";
|
|
80
|
+
/** In-network DNS alias siblings dial the indexer-db sidecar by. */
|
|
81
|
+
const SUI_INDEXER_DB_ALIAS = "sui-indexer-db";
|
|
82
|
+
const suiInputIdentity = (opts) => {
|
|
83
|
+
const { readyTimeout: _readyTimeout, ...authored } = opts;
|
|
84
|
+
if (authored.mode !== "local") return {
|
|
85
|
+
plugin: "sui",
|
|
86
|
+
...authored
|
|
87
|
+
};
|
|
88
|
+
return {
|
|
89
|
+
plugin: "sui",
|
|
90
|
+
...authored,
|
|
91
|
+
indexer: authored.indexer !== false,
|
|
92
|
+
indexerDb: authored.indexerDb === void 0 ? void 0 : {
|
|
93
|
+
...authored.indexerDb,
|
|
94
|
+
database: authored.indexerDb.database ?? DEFAULT_INDEXER_DATABASE
|
|
95
|
+
}
|
|
96
|
+
};
|
|
91
97
|
};
|
|
92
|
-
/**
|
|
93
|
-
*
|
|
94
|
-
*
|
|
98
|
+
/** Compose the indexer-db sidecar's stable `configHash` from validator
|
|
99
|
+
* inputs known before local mode starts. A validator image change recreates
|
|
100
|
+
* the validator, so the sidecar's mount-less PGDATA must reset with it.
|
|
95
101
|
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
const
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
102
|
+
* Validator data-layer resets that are not config values (absent validator
|
|
103
|
+
* or last exit `137`) are handled by `validatorNeedsIndexerReset`, which
|
|
104
|
+
* removes the sidecar before this hash is applied. */
|
|
105
|
+
const composeIndexerConfigHash = (imageRef) => ["indexer-db", `validator-img=${imageRef}`].join("|");
|
|
106
|
+
/** Append a database segment to a BYO DSN only when it has no path (so a
|
|
107
|
+
* caller-supplied `.../mydb` is respected). Rebuilds via the URL object
|
|
108
|
+
* so the db slots into `pathname` BEFORE `?search` — a naive string
|
|
109
|
+
* append on a `host:5432?sslmode=require` DSN (path-less but with a
|
|
110
|
+
* query) would wrongly yield `...?sslmode=require/sui_indexer`. The
|
|
111
|
+
* catch fallback (non-URL-parseable DSN) splits the query off first. */
|
|
112
|
+
const appendDatabaseIfMissing = (url, database) => {
|
|
113
|
+
try {
|
|
114
|
+
const parsed = new URL(url);
|
|
115
|
+
if (parsed.pathname !== "" && parsed.pathname !== "/") return url;
|
|
116
|
+
parsed.pathname = `/${database}`;
|
|
117
|
+
return parsed.toString();
|
|
118
|
+
} catch {
|
|
119
|
+
const queryAt = url.indexOf("?");
|
|
120
|
+
const base = queryAt === -1 ? url : url.slice(0, queryAt);
|
|
121
|
+
const query = queryAt === -1 ? "" : url.slice(queryAt);
|
|
122
|
+
const afterScheme = base.replace(/^postgres(ql)?:\/\//, "");
|
|
123
|
+
if (/\/[^/]+$/.test(afterScheme)) return url;
|
|
124
|
+
return `${base.replace(/\/$/, "")}/${encodeURIComponent(database)}${query}`;
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
/** Whether the Sui-owned indexer DB must be deleted before boot.
|
|
128
|
+
*
|
|
129
|
+
* The validator's chain identity lives in its writable layer. If the
|
|
130
|
+
* validator container is absent, the next boot creates a new layer and a
|
|
131
|
+
* new chain. If it last exited `137`, the runtime's `on-failure` policy
|
|
132
|
+
* also recreates it. Both cases make any existing indexer DB stale. */
|
|
133
|
+
const validatorNeedsIndexerReset = (runtime, identity) => runtime.inspectByLabels({
|
|
134
|
+
app: identity.app,
|
|
135
|
+
stack: identity.stack,
|
|
136
|
+
plugin: "sui",
|
|
137
|
+
role: "validator"
|
|
138
|
+
}).pipe(Effect.map((handles) => {
|
|
139
|
+
const validator = handles[0];
|
|
140
|
+
return validator === void 0 || validator.lastExitCode === 137;
|
|
141
|
+
}));
|
|
142
|
+
/** Provision the GraphQL-indexer DB wiring for local mode.
|
|
143
|
+
*
|
|
144
|
+
* Default: sui OWNS a postgres sidecar (labelled under sui) — boot it on
|
|
145
|
+
* a per-stack network and compose the DSN from its in-network alias (NOT
|
|
146
|
+
* the per-stack container DNS host, which isn't parallel-stack-portable).
|
|
147
|
+
* The sidecar resets on the same validator inputs that can make its rows
|
|
148
|
+
* stale: absent/exited-`137` validator state removes the sidecar before
|
|
149
|
+
* boot, and validator image identity is folded into its `configHash`.
|
|
150
|
+
*
|
|
151
|
+
* `validatorImage` is the SAME `ImageRef` the barrel hands `bootLocalMode`
|
|
152
|
+
* for the validator container, so the image the sidecar hashed and the image
|
|
153
|
+
* the validator runs cannot drift.
|
|
154
|
+
*
|
|
155
|
+
* BYO: when `indexerDb` is set, no sidecar — pass the caller's DSN +
|
|
156
|
+
* network straight through (appending the default db iff the DSN has no
|
|
157
|
+
* path). The caller owns that DB's lifecycle. */
|
|
158
|
+
const provisionLocalIndexer = (runtime, identity, opts, validatorImage) => {
|
|
159
|
+
const database = opts.indexerDb?.database ?? DEFAULT_INDEXER_DATABASE;
|
|
160
|
+
if (opts.indexerDb !== void 0) return Effect.succeed({
|
|
161
|
+
url: appendDatabaseIfMissing(opts.indexerDb.url, database),
|
|
162
|
+
network: opts.indexerDb.network
|
|
110
163
|
});
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
164
|
+
const network = sanitizeAlias(`devstack-${identity.app}-${identity.stack}-sui-indexer`);
|
|
165
|
+
return Effect.gen(function* () {
|
|
166
|
+
if (yield* validatorNeedsIndexerReset(runtime, identity)) yield* runtime.removeManagedContainers({
|
|
167
|
+
app: identity.app,
|
|
168
|
+
stack: identity.stack,
|
|
169
|
+
plugin: "sui",
|
|
170
|
+
role: SUI_INDEXER_DB_ROLE
|
|
171
|
+
});
|
|
172
|
+
const { handle } = yield* bootPostgresSidecar(runtime, identity, {
|
|
173
|
+
network,
|
|
174
|
+
alias: SUI_INDEXER_DB_ALIAS,
|
|
175
|
+
role: SUI_INDEXER_DB_ROLE,
|
|
176
|
+
database,
|
|
177
|
+
configHash: composeIndexerConfigHash(validatorImage.tag ?? validatorImage.digest)
|
|
178
|
+
});
|
|
179
|
+
return {
|
|
180
|
+
url: withDatabase(credentialedUrl({
|
|
181
|
+
user: handle.user,
|
|
182
|
+
password: handle.password,
|
|
183
|
+
host: handle.networkAlias,
|
|
184
|
+
port: handle.port
|
|
185
|
+
}), database),
|
|
186
|
+
network: handle.containerNetwork
|
|
187
|
+
};
|
|
188
|
+
}).pipe(Effect.mapError((cause) => suiPluginError("container-start", `sui local mode: failed to provision the GraphQL indexer postgres sidecar (${cause._tag})`, cause)));
|
|
189
|
+
};
|
|
190
|
+
/** Shared boot + inline contribution emission, parameterised by the
|
|
191
|
+
* resolved external-indexer wiring (`undefined` = no GraphQL, the
|
|
192
|
+
* zero-config / non-local case) and, for local mode, the validator image
|
|
193
|
+
* the barrel pre-resolved (so the sidecar's `configHash` and the validator
|
|
194
|
+
* container share one `ImageRef`; `undefined` on the no-sidecar paths,
|
|
195
|
+
* where `bootLocalMode` resolves it inline). */
|
|
196
|
+
const bootAndEmit = (opts, indexer, prebuiltImage) => Effect.gen(function* () {
|
|
197
|
+
const ctx = yield* PluginContext;
|
|
198
|
+
const runtime = yield* ContainerRuntimeService;
|
|
199
|
+
const identity = yield* IdentityContext;
|
|
200
|
+
const paths = yield* StackPathsService;
|
|
201
|
+
const portBroker = yield* PortBrokerService;
|
|
202
|
+
const fundingFaucetLeaseBroker = yield* LeaseBrokerService;
|
|
203
|
+
const { client } = yield* bootSuiService(runtime, identity, portBroker, paths, opts, indexer, prebuiltImage);
|
|
204
|
+
const fundingFaucetStrategy = yield* resolveFundingFaucetStrategy(opts, client, fundingFaucetLeaseBroker);
|
|
205
|
+
const value = {
|
|
206
|
+
...client,
|
|
207
|
+
mode: opts.mode,
|
|
208
|
+
fundingFaucetStrategy
|
|
116
209
|
};
|
|
117
|
-
const
|
|
210
|
+
const realChainId = value.chainId;
|
|
211
|
+
const faucetContribution = !resolveNetworkOptions(identity.network).faucet || value.fundingFaucetStrategy === null ? [] : [{
|
|
118
212
|
kind: "strategy-contributor",
|
|
119
|
-
capabilityKey: faucetCapabilityKey(
|
|
120
|
-
strategy:
|
|
213
|
+
capabilityKey: faucetCapabilityKey(realChainId),
|
|
214
|
+
strategy: value.fundingFaucetStrategy,
|
|
121
215
|
autoMounted: true
|
|
122
216
|
}];
|
|
123
217
|
const localRoutables = opts.mode === "local" ? makeSuiLocalRoutables({
|
|
124
|
-
containerName: `devstack-${
|
|
125
|
-
includeGraphql:
|
|
218
|
+
containerName: `devstack-${identity.app}-${identity.stack}-sui-validator`,
|
|
219
|
+
includeGraphql: indexer !== void 0
|
|
126
220
|
}) : [];
|
|
127
|
-
const forkRoutables = opts.mode === "fork" ? makeSuiForkRoutables({ containerName: `devstack-${
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
221
|
+
const forkRoutables = opts.mode === "fork" ? makeSuiForkRoutables({ containerName: `devstack-${identity.app}-${identity.stack}-sui-fork` }) : [];
|
|
222
|
+
emitContributions(ctx, [
|
|
223
|
+
makeSnapshotable(opts.mode, identity.app, identity.stack, realChainId, indexer !== void 0),
|
|
224
|
+
makeCodegenable({
|
|
225
|
+
mode: opts.mode,
|
|
226
|
+
chainId: realChainId,
|
|
227
|
+
rpc: value.rpcUrl,
|
|
228
|
+
source: "default",
|
|
229
|
+
...value.faucetUrl !== null ? { faucet: value.faucetUrl } : {},
|
|
230
|
+
...value.graphqlUrl !== null ? { graphql: value.graphqlUrl } : {}
|
|
231
|
+
}),
|
|
232
|
+
{
|
|
233
|
+
kind: "strategy-contributor",
|
|
234
|
+
capabilityKey: chainProbeCapabilityKey(realChainId),
|
|
235
|
+
strategy: value.chainProbe,
|
|
236
|
+
autoMounted: true
|
|
237
|
+
},
|
|
132
238
|
...faucetContribution,
|
|
133
239
|
...localRoutables,
|
|
134
240
|
...forkRoutables
|
|
135
|
-
];
|
|
136
|
-
|
|
241
|
+
]);
|
|
242
|
+
return value;
|
|
243
|
+
});
|
|
244
|
+
/** The single sui plugin builder. No sibling `dependsOn`: in local mode
|
|
245
|
+
* with the indexer on (the default), `start` provisions the GraphQL
|
|
246
|
+
* indexer DB itself — a sui-owned postgres sidecar — inside the boot
|
|
247
|
+
* scope BEFORE the boot-time validator (so the validator can join its
|
|
248
|
+
* network), then boots + emits. Resolution order:
|
|
249
|
+
* - `indexerDb` present → BYO DB (no sidecar)
|
|
250
|
+
* - `indexer === false` → opt out (RPC + faucet only, GraphQL off)
|
|
251
|
+
* - else (local default) → sui-owned sidecar
|
|
252
|
+
* Non-local modes never touch the indexer (GraphQL off). */
|
|
253
|
+
const buildSuiPlugin = (opts) => definePlugin({
|
|
254
|
+
id: suiResource.id,
|
|
255
|
+
role: "service",
|
|
256
|
+
section: "service",
|
|
257
|
+
inputIdentity: staticInputIdentity(suiInputIdentity(opts)),
|
|
258
|
+
staticCodegen: makeStaticCodegen(),
|
|
259
|
+
start: () => Effect.gen(function* () {
|
|
260
|
+
if (opts.mode !== "local" || opts.indexerDb === void 0 && opts.indexer === false) return yield* bootAndEmit(opts, void 0);
|
|
261
|
+
const runtime = yield* ContainerRuntimeService;
|
|
262
|
+
const identity = yield* IdentityContext;
|
|
263
|
+
const validatorImage = yield* resolveImage(runtime, identity, opts);
|
|
264
|
+
return yield* bootAndEmit(opts, yield* provisionLocalIndexer(runtime, identity, opts, validatorImage), validatorImage);
|
|
265
|
+
})
|
|
266
|
+
});
|
|
267
|
+
const buildPlugin = (opts) => buildSuiPlugin(opts);
|
|
137
268
|
/** Local Sui shorthand. Network/env selection belongs to the CLI or
|
|
138
269
|
* `defineDevstackWith(...)`; plain `sui()` always means an in-stack
|
|
139
|
-
* local validator
|
|
270
|
+
* local validator (GraphQL/indexer/Postgres on by default via a
|
|
271
|
+
* sui-owned sidecar). */
|
|
140
272
|
const sui = (opts = { mode: "local" }) => buildPlugin(opts);
|
|
141
273
|
/** Mode-narrowed factory namespace.
|
|
142
274
|
*
|
|
143
275
|
* Usage:
|
|
144
|
-
* const network = { mode: 'local'
|
|
276
|
+
* const network = { mode: 'local' } as const;
|
|
145
277
|
* suiFor(network).local({...}) // OK
|
|
146
278
|
* suiFor(network).fork({...}) // type error: 'fork' not in 'local' branch
|
|
147
279
|
*
|