Skip to content

Feat: subscription delegation - #10130

Open
tuna1207 wants to merge 30 commits into
mainfrom
feat/subscription-delegation
Open

Feat: subscription delegation#10130
tuna1207 wants to merge 30 commits into
mainfrom
feat/subscription-delegation

Conversation

@tuna1207

@tuna1207 tuna1207 commented Sep 7, 2026

Copy link
Copy Markdown
Member

Explanation

Money Account Plus crypto subscribe needs a cash-subscription delegation (periodic ERC-20 transfer caveats), not the Shield-style ERC-20 approval path. That workflow was split across clients and backend services with no single Core orchestrator.

This PR adds a stateless SubscriptionDelegationService that owns setup end-to-end and returns a delegationHash for SubscriptionController.startSubscriptionWithCrypto. The controller does not depend on this service; clients call SubscriptionDelegationService:prepareDelegation first, then start the subscription with the hash.

prepareDelegation flow

  1. Resolve chain from moneyAccountVaultConfig (remote feature flags), the delegate from pricing delegateAddress, and Delegation Framework v1.3.0 enforcers from @metamask/delegation-deployments.
  2. Optionally gate on Money Account convertible mUSD via checkBalance (unitAmount × minBillingCyclesForBalance).
  3. Size periodic caveats from authoritative pricing (unitAmount / unitDecimals / token decimals). Offset period-transfer startDate by trialPeriodDays only when the trial is selected.
  4. Reuse a stored Authenticated User Storage delegation when the semantic fingerprint matches; otherwise sign, persist, and return the hash.
  5. Return { delegationHash, disposition: 'created' | 'reused' }.

Caveats currently include ValueLte(0) and ERC20TokenPeriodTransfer.

Only MONEY_ACCOUNT_PLUS is supported; Shield continues to use ERC-20 approval.

Alpha testing note

This PR does not change @metamask/chomp-api-service (avoids CHOMP-team CODEOWNERS for alpha). CASH_SUBSCRIPTION_DELEGATION_TYPE ('cash-subscription') is defined locally in subscription-controller for AUS metadata.

Alpha hosts must pass skipChompInteractions: true on prepareDelegation so CHOMP verify/intent registration is skipped. AUS persist and local hash computation still run.

Production CHOMP intent support for 'cash-subscription' will land in a follow-up that updates @metamask/chomp-api-service. Until then, the default CHOMP-enabled path (skipChompInteractions unset/false) is dormant and unsupported.

Package split

Package Change
@metamask/subscription-controller New SubscriptionDelegationService, helpers (amount, caveats, fingerprint), messenger actions prepareDelegation / checkMoneyAccountBalance, local CASH_SUBSCRIPTION_DELEGATION_TYPE, and skipChompInteractions for alpha.
@metamask/wallet Wire the service into default initialization and delegate AUS, CHOMP (dormant), DelegationController:signDelegation, Money Account balance, pricing, and RemoteFeatureFlagController:getState.

Hosts must register AuthenticatedUserStorageService, ChompApiService, DelegationController, MoneyAccountBalanceService, and SubscriptionController on the root messenger before calling prepareDelegation. RemoteFeatureFlagController is already initialized by the default wallet factory. For alpha, still register ChompApiService for messenger typing even though it is not called when skipChompInteractions: true.

References

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed
  • I've introduced breaking changes in this PR and have prepared draft pull requests for clients and consumer packages to resolve them

Note

High Risk
Orchestrates signed delegations, balance gating, and persisted permissions for subscription billing; incorrect caveat/pricing or reuse logic could authorize wrong periodic transfers or block subscribe flows.

Overview
Adds SubscriptionDelegationService so Money Account Plus crypto subscribe can obtain a cash-subscription delegation hash before SubscriptionController.startSubscriptionWithCrypto. The controller stays independent; callers use SubscriptionDelegationService:prepareDelegation first.

prepareDelegation resolves chain (vault feature flags), pricing/delegate/token, builds ValueLte(0) + ERC20TokenPeriodTransfer caveats (trial-aware startDate), reuses matching Authenticated User Storage delegations when the semantic fingerprint aligns, otherwise signs via DelegationController, persists to AUS, and optionally verifies/registers CHOMP intents. Returns { delegationHash, disposition: 'created' | 'reused' }. checkMoneyAccountBalance (and optional checkBalance on prepare) gates on mUSD vs unitAmount × minBillingCyclesForBalance. Alpha hosts should pass skipChompInteractions: true until CHOMP accepts 'cash-subscription' intent metadata; exports CASH_SUBSCRIPTION_DELEGATION_TYPE locally. Shield remains ERC-20 approval only.

@metamask/wallet registers the service in default initialization and delegates AUS, CHOMP, delegation signing, Money Account balance, pricing, and remote feature flags. Package adds delegation/Money Account dependencies, public exports and error enums, Jest Web Crypto test env for delegation salts, and broad unit tests.

Reviewed by Cursor Bugbot for commit 708b52d. Bugbot is set up for automated code reviews on this repo. Configure here.

Comment thread packages/chomp-api-service/CHANGELOG.md Outdated

### Changed

- Accept `'subscription-payment'` as a CHOMP intent / delegation metadata type alongside `'cash-deposit'` and `'cash-withdrawal'`. ([#10130](https://github.com/MetaMask/core/pull/10130))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

const ChompIntentTypeStruct = enums([
'cash-deposit',
'cash-withdrawal',
'subscription-payment',

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rename pls

Comment thread packages/chomp-api-service/src/types.ts Outdated
export type ChompIntentType =
| 'cash-deposit'
| 'cash-withdrawal'
| 'subscription-payment';

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above.
Note that when we support premium vault, we may need add more intent and delegations: cash-deposit-premium, cash-withdrawal-premium

InvalidDecimals = 'Subscription delegation decimals must be a non-negative integer',
LossyAmountScale = 'Subscription delegation amount cannot be scaled to token decimals without remainder',
UnsupportedRecurringInterval = 'Unsupported subscription recurring interval',
UnsupportedProduct = 'Subscription delegation is only supported for Money Account Plus',

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will we show this error message to end users? We may use MM Orange? Is it possible to have translations instead?

/**
* Storage / CHOMP metadata type for subscription-payment delegations.
*/
export const SUBSCRIPTION_PAYMENT_DELEGATION_TYPE = 'subscription-payment';

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

may need to rename to cash-subscription

@tuna1207
tuna1207 marked this pull request as ready for review September 10, 2026 09:37
@tuna1207
tuna1207 requested review from a team as code owners September 10, 2026 09:37
@socket-security

socket-security Bot commented Sep 10, 2026

Copy link
Copy Markdown

No dependency changes detected. Learn more about Socket for GitHub.

👍 No dependency changes detected in pull request

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

@tuna1207

Copy link
Copy Markdown
Member Author

@metamaskbot publish-previews

@github-actions

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@10.0.0-preview-c89c65ec1
@metamask-previews/accounts-controller@40.0.0-preview-c89c65ec1
@metamask-previews/address-book-controller@8.0.0-preview-c89c65ec1
@metamask-previews/ai-controllers@2.0.0-preview-c89c65ec1
@metamask-previews/analytics-controller@3.0.0-preview-c89c65ec1
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-c89c65ec1
@metamask-previews/announcement-controller@9.0.0-preview-c89c65ec1
@metamask-previews/app-metadata-controller@3.0.0-preview-c89c65ec1
@metamask-previews/approval-controller@10.0.0-preview-c89c65ec1
@metamask-previews/assets-controller@16.0.0-preview-c89c65ec1
@metamask-previews/assets-controllers@112.0.0-preview-c89c65ec1
@metamask-previews/authenticated-user-storage@4.0.0-preview-c89c65ec1
@metamask-previews/base-controller@10.0.0-preview-c89c65ec1
@metamask-previews/base-data-service@2.0.0-preview-c89c65ec1
@metamask-previews/bitcoin-regtest-up@2.0.0-preview-c89c65ec1
@metamask-previews/bridge-controller@81.0.0-preview-c89c65ec1
@metamask-previews/bridge-status-controller@76.0.0-preview-c89c65ec1
@metamask-previews/build-utils@4.0.0-preview-c89c65ec1
@metamask-previews/chain-agnostic-permission@2.0.0-preview-c89c65ec1
@metamask-previews/chomp-api-service@5.0.0-preview-c89c65ec1
@metamask-previews/claims-controller@1.0.0-preview-c89c65ec1
@metamask-previews/client-controller@2.0.0-preview-c89c65ec1
@metamask-previews/client-utils@3.0.0-preview-c89c65ec1
@metamask-previews/compliance-controller@3.0.0-preview-c89c65ec1
@metamask-previews/composable-controller@13.0.0-preview-c89c65ec1
@metamask-previews/config-registry-controller@4.0.0-preview-c89c65ec1
@metamask-previews/connectivity-controller@1.0.0-preview-c89c65ec1
@metamask-previews/controller-utils@13.0.0-preview-c89c65ec1
@metamask-previews/core-backend@10.0.0-preview-c89c65ec1
@metamask-previews/cryptography@0.0.0-preview-c89c65ec1
@metamask-previews/delegation-controller@4.0.0-preview-c89c65ec1
@metamask-previews/earn-controller@13.0.0-preview-c89c65ec1
@metamask-previews/eip-5792-middleware@4.0.0-preview-c89c65ec1
@metamask-previews/eip-7702-internal-rpc-middleware@1.0.0-preview-c89c65ec1
@metamask-previews/eip1193-permission-middleware@3.0.0-preview-c89c65ec1
@metamask-previews/eth-block-tracker@16.0.0-preview-c89c65ec1
@metamask-previews/eth-json-rpc-middleware@25.0.0-preview-c89c65ec1
@metamask-previews/eth-json-rpc-provider@7.0.0-preview-c89c65ec1
@metamask-previews/foundryup@2.0.0-preview-c89c65ec1
@metamask-previews/gas-fee-controller@27.0.0-preview-c89c65ec1
@metamask-previews/gator-permissions-controller@6.0.0-preview-c89c65ec1
@metamask-previews/geolocation-controller@2.0.0-preview-c89c65ec1
@metamask-previews/java-tron-up@2.0.0-preview-c89c65ec1
@metamask-previews/json-rpc-engine@11.0.0-preview-c89c65ec1
@metamask-previews/json-rpc-middleware-stream@9.0.0-preview-c89c65ec1
@metamask-previews/keyring-controller@28.0.0-preview-c89c65ec1
@metamask-previews/kyc-controller@0.2.0-preview-c89c65ec1
@metamask-previews/local-node-utils@2.0.0-preview-c89c65ec1
@metamask-previews/logging-controller@10.0.0-preview-c89c65ec1
@metamask-previews/message-manager@15.0.0-preview-c89c65ec1
@metamask-previews/messenger@3.0.0-preview-c89c65ec1
@metamask-previews/messenger-cli@1.0.0-preview-c89c65ec1
@metamask-previews/money-account-api-data-service@1.0.0-preview-c89c65ec1
@metamask-previews/money-account-balance-service@3.0.0-preview-c89c65ec1
@metamask-previews/money-account-controller@2.0.0-preview-c89c65ec1
@metamask-previews/money-account-upgrade-controller@5.0.0-preview-c89c65ec1
@metamask-previews/money-account-utils@2.0.0-preview-c89c65ec1
@metamask-previews/multichain-account-service@14.0.0-preview-c89c65ec1
@metamask-previews/multichain-api-middleware@5.0.0-preview-c89c65ec1
@metamask-previews/multichain-network-controller@4.0.0-preview-c89c65ec1
@metamask-previews/multichain-transactions-controller@8.0.0-preview-c89c65ec1
@metamask-previews/name-controller@10.0.0-preview-c89c65ec1
@metamask-previews/network-connection-banner-controller@1.0.0-preview-c89c65ec1
@metamask-previews/network-controller@37.0.0-preview-c89c65ec1
@metamask-previews/network-enablement-controller@7.0.0-preview-c89c65ec1
@metamask-previews/notification-services-controller@28.0.0-preview-c89c65ec1
@metamask-previews/passkey-controller@4.0.0-preview-c89c65ec1
@metamask-previews/permission-controller@14.0.0-preview-c89c65ec1
@metamask-previews/permission-log-controller@6.0.0-preview-c89c65ec1
@metamask-previews/perps-controller@17.0.0-preview-c89c65ec1
@metamask-previews/phishing-controller@18.0.0-preview-c89c65ec1
@metamask-previews/platform-api-docs@0.2.0-preview-c89c65ec1
@metamask-previews/polling-controller@17.0.0-preview-c89c65ec1
@metamask-previews/preferences-controller@24.0.0-preview-c89c65ec1
@metamask-previews/profile-metrics-controller@5.0.0-preview-c89c65ec1
@metamask-previews/profile-sync-controller@31.0.0-preview-c89c65ec1
@metamask-previews/ramps-controller@21.0.0-preview-c89c65ec1
@metamask-previews/rate-limit-controller@8.0.0-preview-c89c65ec1
@metamask-previews/react-data-query@2.0.0-preview-c89c65ec1
@metamask-previews/remote-feature-flag-controller@7.0.0-preview-c89c65ec1
@metamask-previews/sample-controllers@6.0.0-preview-c89c65ec1
@metamask-previews/seedless-onboarding-controller@11.0.0-preview-c89c65ec1
@metamask-previews/selected-network-controller@27.0.0-preview-c89c65ec1
@metamask-previews/sentinel-api-service@2.0.0-preview-c89c65ec1
@metamask-previews/shield-controller@7.0.0-preview-c89c65ec1
@metamask-previews/signature-controller@40.0.0-preview-c89c65ec1
@metamask-previews/smart-transactions-controller@27.0.0-preview-c89c65ec1
@metamask-previews/snap-account-service@3.0.0-preview-c89c65ec1
@metamask-previews/social-controllers@3.0.0-preview-c89c65ec1
@metamask-previews/solana-test-validator-up@2.0.0-preview-c89c65ec1
@metamask-previews/stellar-quickstart-up@0.0.0-preview-c89c65ec1
@metamask-previews/storage-service@2.0.0-preview-c89c65ec1
@metamask-previews/subscription-controller@9.0.0-preview-c89c65ec1
@metamask-previews/transaction-controller@70.0.0-preview-c89c65ec1
@metamask-previews/transaction-pay-controller@28.0.0-preview-c89c65ec1
@metamask-previews/user-operation-controller@42.0.0-preview-c89c65ec1
@metamask-previews/wallet@13.0.0-preview-c89c65ec1
@metamask-previews/wallet-cli@0.0.0-preview-c89c65ec1

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 24e683a. Configure here.

@tuna1207

Copy link
Copy Markdown
Member Author

@metamaskbot publish-previews

@github-actions

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@10.0.1-preview-cfb927be0
@metamask-previews/accounts-controller@40.0.0-preview-cfb927be0
@metamask-previews/address-book-controller@8.0.0-preview-cfb927be0
@metamask-previews/ai-controllers@2.0.0-preview-cfb927be0
@metamask-previews/analytics-controller@3.0.0-preview-cfb927be0
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-cfb927be0
@metamask-previews/announcement-controller@9.0.0-preview-cfb927be0
@metamask-previews/app-metadata-controller@3.0.0-preview-cfb927be0
@metamask-previews/approval-controller@10.0.0-preview-cfb927be0
@metamask-previews/assets-controller@16.0.0-preview-cfb927be0
@metamask-previews/assets-controllers@112.0.1-preview-cfb927be0
@metamask-previews/authenticated-user-storage@4.0.0-preview-cfb927be0
@metamask-previews/base-controller@10.0.0-preview-cfb927be0
@metamask-previews/base-data-service@2.0.0-preview-cfb927be0
@metamask-previews/bitcoin-regtest-up@2.0.0-preview-cfb927be0
@metamask-previews/bridge-controller@81.1.0-preview-cfb927be0
@metamask-previews/bridge-status-controller@76.1.0-preview-cfb927be0
@metamask-previews/build-utils@4.0.0-preview-cfb927be0
@metamask-previews/chain-agnostic-permission@2.0.0-preview-cfb927be0
@metamask-previews/chomp-api-service@5.0.0-preview-cfb927be0
@metamask-previews/claims-controller@1.0.1-preview-cfb927be0
@metamask-previews/client-controller@2.0.0-preview-cfb927be0
@metamask-previews/client-utils@3.0.0-preview-cfb927be0
@metamask-previews/compliance-controller@3.0.0-preview-cfb927be0
@metamask-previews/composable-controller@13.0.0-preview-cfb927be0
@metamask-previews/config-registry-controller@4.0.0-preview-cfb927be0
@metamask-previews/connectivity-controller@1.0.0-preview-cfb927be0
@metamask-previews/controller-utils@13.0.0-preview-cfb927be0
@metamask-previews/core-backend@10.0.1-preview-cfb927be0
@metamask-previews/cryptography@0.0.0-preview-cfb927be0
@metamask-previews/delegation-controller@4.0.0-preview-cfb927be0
@metamask-previews/earn-controller@13.0.0-preview-cfb927be0
@metamask-previews/eip-5792-middleware@4.0.0-preview-cfb927be0
@metamask-previews/eip-7702-internal-rpc-middleware@1.0.0-preview-cfb927be0
@metamask-previews/eip1193-permission-middleware@3.0.0-preview-cfb927be0
@metamask-previews/eth-block-tracker@16.0.0-preview-cfb927be0
@metamask-previews/eth-json-rpc-middleware@25.0.0-preview-cfb927be0
@metamask-previews/eth-json-rpc-provider@7.0.0-preview-cfb927be0
@metamask-previews/foundryup@2.0.0-preview-cfb927be0
@metamask-previews/gas-fee-controller@27.0.0-preview-cfb927be0
@metamask-previews/gator-permissions-controller@6.0.0-preview-cfb927be0
@metamask-previews/geolocation-controller@2.0.0-preview-cfb927be0
@metamask-previews/java-tron-up@2.0.0-preview-cfb927be0
@metamask-previews/json-rpc-engine@11.0.0-preview-cfb927be0
@metamask-previews/json-rpc-middleware-stream@9.0.0-preview-cfb927be0
@metamask-previews/keyring-controller@28.0.0-preview-cfb927be0
@metamask-previews/kyc-controller@0.2.0-preview-cfb927be0
@metamask-previews/local-node-utils@2.0.0-preview-cfb927be0
@metamask-previews/logging-controller@10.0.0-preview-cfb927be0
@metamask-previews/message-manager@15.0.0-preview-cfb927be0
@metamask-previews/messenger@3.0.0-preview-cfb927be0
@metamask-previews/messenger-cli@1.0.0-preview-cfb927be0
@metamask-previews/money-account-api-data-service@1.0.0-preview-cfb927be0
@metamask-previews/money-account-balance-service@3.0.0-preview-cfb927be0
@metamask-previews/money-account-controller@2.0.0-preview-cfb927be0
@metamask-previews/money-account-upgrade-controller@5.0.0-preview-cfb927be0
@metamask-previews/money-account-utils@2.0.0-preview-cfb927be0
@metamask-previews/multichain-account-service@14.0.0-preview-cfb927be0
@metamask-previews/multichain-api-middleware@5.0.0-preview-cfb927be0
@metamask-previews/multichain-network-controller@4.0.0-preview-cfb927be0
@metamask-previews/multichain-transactions-controller@8.0.0-preview-cfb927be0
@metamask-previews/name-controller@10.0.0-preview-cfb927be0
@metamask-previews/network-connection-banner-controller@1.0.0-preview-cfb927be0
@metamask-previews/network-controller@37.0.0-preview-cfb927be0
@metamask-previews/network-enablement-controller@7.0.0-preview-cfb927be0
@metamask-previews/notification-services-controller@28.0.1-preview-cfb927be0
@metamask-previews/passkey-controller@4.0.0-preview-cfb927be0
@metamask-previews/permission-controller@14.0.0-preview-cfb927be0
@metamask-previews/permission-log-controller@6.0.0-preview-cfb927be0
@metamask-previews/perps-controller@17.0.0-preview-cfb927be0
@metamask-previews/phishing-controller@18.0.0-preview-cfb927be0
@metamask-previews/platform-api-docs@0.2.0-preview-cfb927be0
@metamask-previews/polling-controller@17.0.0-preview-cfb927be0
@metamask-previews/preferences-controller@24.0.0-preview-cfb927be0
@metamask-previews/profile-metrics-controller@5.1.0-preview-cfb927be0
@metamask-previews/profile-sync-controller@32.0.0-preview-cfb927be0
@metamask-previews/ramps-controller@22.0.0-preview-cfb927be0
@metamask-previews/rate-limit-controller@8.0.0-preview-cfb927be0
@metamask-previews/react-data-query@2.0.0-preview-cfb927be0
@metamask-previews/remote-feature-flag-controller@7.0.0-preview-cfb927be0
@metamask-previews/sample-controllers@6.0.0-preview-cfb927be0
@metamask-previews/seedless-onboarding-controller@11.0.0-preview-cfb927be0
@metamask-previews/selected-network-controller@27.0.0-preview-cfb927be0
@metamask-previews/sentinel-api-service@2.0.0-preview-cfb927be0
@metamask-previews/shield-controller@7.0.1-preview-cfb927be0
@metamask-previews/signature-controller@40.0.0-preview-cfb927be0
@metamask-previews/smart-transactions-controller@27.0.1-preview-cfb927be0
@metamask-previews/snap-account-service@3.0.0-preview-cfb927be0
@metamask-previews/social-controllers@3.0.1-preview-cfb927be0
@metamask-previews/solana-test-validator-up@2.0.0-preview-cfb927be0
@metamask-previews/stellar-quickstart-up@0.0.0-preview-cfb927be0
@metamask-previews/storage-service@2.0.0-preview-cfb927be0
@metamask-previews/subscription-controller@9.0.1-preview-cfb927be0
@metamask-previews/transaction-controller@70.0.0-preview-cfb927be0
@metamask-previews/transaction-pay-controller@28.0.1-preview-cfb927be0
@metamask-previews/user-operation-controller@42.0.0-preview-cfb927be0
@metamask-previews/wallet@13.0.0-preview-cfb927be0
@metamask-previews/wallet-cli@0.0.0-preview-cfb927be0

@tuna1207

Copy link
Copy Markdown
Member Author

@metamaskbot publish-previews

@github-actions

Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@10.0.1-preview-e8a256c39
@metamask-previews/accounts-controller@40.0.0-preview-e8a256c39
@metamask-previews/address-book-controller@8.0.0-preview-e8a256c39
@metamask-previews/ai-controllers@2.0.0-preview-e8a256c39
@metamask-previews/analytics-controller@3.0.0-preview-e8a256c39
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-e8a256c39
@metamask-previews/announcement-controller@9.0.0-preview-e8a256c39
@metamask-previews/app-metadata-controller@3.0.0-preview-e8a256c39
@metamask-previews/approval-controller@10.0.0-preview-e8a256c39
@metamask-previews/assets-controller@16.0.0-preview-e8a256c39
@metamask-previews/assets-controllers@112.0.1-preview-e8a256c39
@metamask-previews/authenticated-user-storage@4.0.0-preview-e8a256c39
@metamask-previews/base-controller@10.0.0-preview-e8a256c39
@metamask-previews/base-data-service@2.0.0-preview-e8a256c39
@metamask-previews/bitcoin-regtest-up@2.0.0-preview-e8a256c39
@metamask-previews/bridge-controller@81.1.0-preview-e8a256c39
@metamask-previews/bridge-status-controller@76.1.0-preview-e8a256c39
@metamask-previews/build-utils@4.0.0-preview-e8a256c39
@metamask-previews/chain-agnostic-permission@2.0.0-preview-e8a256c39
@metamask-previews/chomp-api-service@5.0.0-preview-e8a256c39
@metamask-previews/claims-controller@1.0.1-preview-e8a256c39
@metamask-previews/client-controller@2.0.0-preview-e8a256c39
@metamask-previews/client-utils@3.0.0-preview-e8a256c39
@metamask-previews/compliance-controller@3.0.0-preview-e8a256c39
@metamask-previews/composable-controller@13.0.0-preview-e8a256c39
@metamask-previews/config-registry-controller@4.0.0-preview-e8a256c39
@metamask-previews/connectivity-controller@1.0.0-preview-e8a256c39
@metamask-previews/controller-utils@13.0.0-preview-e8a256c39
@metamask-previews/core-backend@10.0.1-preview-e8a256c39
@metamask-previews/cryptography@0.0.0-preview-e8a256c39
@metamask-previews/delegation-controller@4.0.0-preview-e8a256c39
@metamask-previews/earn-controller@13.0.0-preview-e8a256c39
@metamask-previews/eip-5792-middleware@4.0.0-preview-e8a256c39
@metamask-previews/eip-7702-internal-rpc-middleware@1.0.0-preview-e8a256c39
@metamask-previews/eip1193-permission-middleware@3.0.0-preview-e8a256c39
@metamask-previews/eth-block-tracker@16.0.0-preview-e8a256c39
@metamask-previews/eth-json-rpc-middleware@25.0.0-preview-e8a256c39
@metamask-previews/eth-json-rpc-provider@7.0.0-preview-e8a256c39
@metamask-previews/foundryup@2.0.0-preview-e8a256c39
@metamask-previews/gas-fee-controller@27.0.0-preview-e8a256c39
@metamask-previews/gator-permissions-controller@6.0.0-preview-e8a256c39
@metamask-previews/geolocation-controller@2.0.0-preview-e8a256c39
@metamask-previews/java-tron-up@2.0.0-preview-e8a256c39
@metamask-previews/json-rpc-engine@11.0.0-preview-e8a256c39
@metamask-previews/json-rpc-middleware-stream@9.0.0-preview-e8a256c39
@metamask-previews/keyring-controller@28.0.0-preview-e8a256c39
@metamask-previews/kyc-controller@0.2.0-preview-e8a256c39
@metamask-previews/local-node-utils@2.0.0-preview-e8a256c39
@metamask-previews/logging-controller@10.0.0-preview-e8a256c39
@metamask-previews/message-manager@15.0.0-preview-e8a256c39
@metamask-previews/messenger@3.0.0-preview-e8a256c39
@metamask-previews/messenger-cli@1.0.0-preview-e8a256c39
@metamask-previews/money-account-api-data-service@1.0.0-preview-e8a256c39
@metamask-previews/money-account-balance-service@3.0.0-preview-e8a256c39
@metamask-previews/money-account-controller@2.0.0-preview-e8a256c39
@metamask-previews/money-account-upgrade-controller@5.0.0-preview-e8a256c39
@metamask-previews/money-account-utils@2.0.0-preview-e8a256c39
@metamask-previews/multichain-account-service@14.0.0-preview-e8a256c39
@metamask-previews/multichain-api-middleware@5.0.0-preview-e8a256c39
@metamask-previews/multichain-network-controller@4.0.0-preview-e8a256c39
@metamask-previews/multichain-transactions-controller@8.0.0-preview-e8a256c39
@metamask-previews/name-controller@10.0.0-preview-e8a256c39
@metamask-previews/network-connection-banner-controller@1.0.0-preview-e8a256c39
@metamask-previews/network-controller@37.0.0-preview-e8a256c39
@metamask-previews/network-enablement-controller@7.0.0-preview-e8a256c39
@metamask-previews/notification-services-controller@28.0.1-preview-e8a256c39
@metamask-previews/passkey-controller@4.0.0-preview-e8a256c39
@metamask-previews/permission-controller@14.0.0-preview-e8a256c39
@metamask-previews/permission-log-controller@6.0.0-preview-e8a256c39
@metamask-previews/perps-controller@17.0.0-preview-e8a256c39
@metamask-previews/phishing-controller@18.0.0-preview-e8a256c39
@metamask-previews/platform-api-docs@0.2.0-preview-e8a256c39
@metamask-previews/polling-controller@17.0.0-preview-e8a256c39
@metamask-previews/preferences-controller@24.0.0-preview-e8a256c39
@metamask-previews/profile-metrics-controller@5.1.0-preview-e8a256c39
@metamask-previews/profile-sync-controller@32.1.0-preview-e8a256c39
@metamask-previews/ramps-controller@22.0.0-preview-e8a256c39
@metamask-previews/rate-limit-controller@8.0.0-preview-e8a256c39
@metamask-previews/react-data-query@2.0.0-preview-e8a256c39
@metamask-previews/remote-feature-flag-controller@7.0.0-preview-e8a256c39
@metamask-previews/sample-controllers@6.0.0-preview-e8a256c39
@metamask-previews/seedless-onboarding-controller@11.0.0-preview-e8a256c39
@metamask-previews/selected-network-controller@27.0.0-preview-e8a256c39
@metamask-previews/sentinel-api-service@2.0.0-preview-e8a256c39
@metamask-previews/shield-controller@7.0.1-preview-e8a256c39
@metamask-previews/signature-controller@40.0.0-preview-e8a256c39
@metamask-previews/smart-transactions-controller@27.0.1-preview-e8a256c39
@metamask-previews/snap-account-service@3.0.0-preview-e8a256c39
@metamask-previews/social-controllers@3.0.1-preview-e8a256c39
@metamask-previews/solana-test-validator-up@2.0.0-preview-e8a256c39
@metamask-previews/stellar-quickstart-up@0.0.0-preview-e8a256c39
@metamask-previews/storage-service@2.0.0-preview-e8a256c39
@metamask-previews/subscription-controller@9.0.1-preview-e8a256c39
@metamask-previews/transaction-controller@70.0.0-preview-e8a256c39
@metamask-previews/transaction-pay-controller@28.0.1-preview-e8a256c39
@metamask-previews/user-operation-controller@42.0.0-preview-e8a256c39
@metamask-previews/wallet@13.0.0-preview-e8a256c39
@metamask-previews/wallet-cli@0.0.0-preview-e8a256c39

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants