Skip to content

feat(network-controller): force RPC failover via remote flag#9175

Open
cryptodev-2s wants to merge 34 commits into
mainfrom
feat/force-rpc-failover
Open

feat(network-controller): force RPC failover via remote flag#9175
cryptodev-2s wants to merge 34 commits into
mainfrom
feat/force-rpc-failover

Conversation

@cryptodev-2s

@cryptodev-2s cryptodev-2s commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Explanation

RPC failover is now controlled by a single remote feature flag, corePlatformRpcFailoverMode, a string with three values:

  • disabled: failover URLs are ignored. Traffic stays on the primary endpoint (Infura only).
  • enabled: traffic diverts to the configured failover URLs when the primary endpoint is unavailable. This is the existing automatic failover behavior.
  • forced: Infura endpoints that have failover URLs route all traffic (including block tracker polling) to those failover URLs, bypassing Infura entirely. Infura endpoints without failover URLs stay on Infura, and custom endpoints are unaffected.

The value defaults to disabled when the flag is absent or unrecognized. forced is the emergency kill switch: if the automatic failover logic itself ever misbehaves, it deterministically takes Infura out of the path.

BREAKING: the controller no longer reads walletFrameworkRpcFailoverEnabled (the enabled mode replaces it), and the imperative NetworkController.enableRpcFailover / disableRpcFailover methods and their messenger actions are removed. Failover is driven entirely by the remote flag. Internally the controller tracks a single RpcFailoverMode applied through one RemoteFeatureFlagController:stateChange subscription.

Note: corePlatformRpcFailoverMode is a server side contract, delivered camelCase by the ClientConfigAPI. The old walletFrameworkRpcFailoverEnabled flag stays in LaunchDarkly for already shipped clients.

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
Breaking API and flag contract changes affect all wallet RPC traffic paths; forced can shift production Infura load to failovers cluster-wide when the flag is set.

Overview
BREAKING: RPC failover is controlled only by the remote string flag corePlatformRpcFailoverMode (disabled | enabled | forced), replacing walletFrameworkRpcFailoverEnabled and removing NetworkController.enableRpcFailover / disableRpcFailover and their messenger actions.

enabled keeps the existing behavior (Infura primary, divert to failoverRpcUrls when unavailable). forced is new: for Infura hosts with failover URLs, the RPC chain uses only those failovers (including block polling), skipping Infura; custom primaries are unchanged. NetworkController tracks RpcFailoverMode, applies flag changes via #updateRpcFailover on clients with failovers, and passes isRpcFailoverForced into network client creation. getAvailableEndpoints centralizes endpoint ordering; auto-managed clients gain enableForcedRpcFailover / disableForcedRpcFailover for internal rebuilds.

Changelog, exports, and tests (including forced routing integration tests) are updated accordingly.

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

@cryptodev-2s cryptodev-2s requested review from a team as code owners June 17, 2026 17:07
@cryptodev-2s cryptodev-2s self-assigned this Jun 17, 2026
@cryptodev-2s cryptodev-2s marked this pull request as draft June 17, 2026 19:36
Thread isRpcFailoverForced through createNetworkClient, createRpcServiceChain,
and createAutoManagedNetworkClient. When the force flag is on for an Infura
endpoint that has failover URLs, the endpoint chain is built from failovers
only, bypassing Infura entirely.
… param

Add a disableRpcFailoverForced reconstruction test mirroring the sibling, and
add the missing isRpcFailoverForced JSDoc tags.
…e-enabled flag

Subscribe to RemoteFeatureFlagController state changes and read the forced
failover flag on init, reconstructing affected network clients. Add public
enableRpcFailoverForced/disableRpcFailoverForced methods and their messenger
action types. Update existing tests for the new createAutoManagedNetworkClient
argument and the new auto-managed client methods.
Export NetworkControllerEnableRpcFailoverForcedAction and
NetworkControllerDisableRpcFailoverForcedAction, and update the init JSDoc to
mention both failover flags.
…form prefix

Rename the remote flag key from wallet-framework-rpc-failover-force-enabled to
core-platform-rpc-failover-force-enabled to match the team's new name.
@cryptodev-2s cryptodev-2s force-pushed the feat/force-rpc-failover branch from a049dda to 0bd5566 Compare June 18, 2026 07:53
@cryptodev-2s cryptodev-2s marked this pull request as ready for review June 18, 2026 08:04
@cryptodev-2s

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@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@7.5.2-preview-0bd5566
@metamask-previews/accounts-controller@39.0.1-preview-0bd5566
@metamask-previews/address-book-controller@7.1.2-preview-0bd5566
@metamask-previews/ai-controllers@0.7.0-preview-0bd5566
@metamask-previews/analytics-controller@1.1.1-preview-0bd5566
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-0bd5566
@metamask-previews/announcement-controller@8.1.0-preview-0bd5566
@metamask-previews/app-metadata-controller@2.0.1-preview-0bd5566
@metamask-previews/approval-controller@9.0.2-preview-0bd5566
@metamask-previews/assets-controller@9.0.1-preview-0bd5566
@metamask-previews/assets-controllers@109.1.0-preview-0bd5566
@metamask-previews/authenticated-user-storage@2.0.0-preview-0bd5566
@metamask-previews/base-controller@9.1.0-preview-0bd5566
@metamask-previews/base-data-service@0.1.3-preview-0bd5566
@metamask-previews/bridge-controller@75.1.1-preview-0bd5566
@metamask-previews/bridge-status-controller@72.1.0-preview-0bd5566
@metamask-previews/build-utils@3.0.4-preview-0bd5566
@metamask-previews/chain-agnostic-permission@1.6.2-preview-0bd5566
@metamask-previews/chomp-api-service@3.1.0-preview-0bd5566
@metamask-previews/claims-controller@0.5.3-preview-0bd5566
@metamask-previews/client-controller@1.0.1-preview-0bd5566
@metamask-previews/compliance-controller@2.1.0-preview-0bd5566
@metamask-previews/composable-controller@12.0.1-preview-0bd5566
@metamask-previews/config-registry-controller@0.4.1-preview-0bd5566
@metamask-previews/connectivity-controller@0.2.0-preview-0bd5566
@metamask-previews/controller-utils@12.2.0-preview-0bd5566
@metamask-previews/core-backend@6.3.3-preview-0bd5566
@metamask-previews/delegation-controller@3.0.2-preview-0bd5566
@metamask-previews/earn-controller@12.2.0-preview-0bd5566
@metamask-previews/eip-5792-middleware@3.0.4-preview-0bd5566
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-0bd5566
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-0bd5566
@metamask-previews/ens-controller@19.1.3-preview-0bd5566
@metamask-previews/eth-block-tracker@15.0.1-preview-0bd5566
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-0bd5566
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-0bd5566
@metamask-previews/foundryup@1.0.1-preview-0bd5566
@metamask-previews/gas-fee-controller@26.2.2-preview-0bd5566
@metamask-previews/gator-permissions-controller@4.2.0-preview-0bd5566
@metamask-previews/geolocation-controller@0.1.3-preview-0bd5566
@metamask-previews/json-rpc-engine@10.5.0-preview-0bd5566
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-0bd5566
@metamask-previews/keyring-controller@27.1.0-preview-0bd5566
@metamask-previews/logging-controller@8.0.2-preview-0bd5566
@metamask-previews/message-manager@14.1.2-preview-0bd5566
@metamask-previews/messenger@1.2.0-preview-0bd5566
@metamask-previews/messenger-cli@0.2.0-preview-0bd5566
@metamask-previews/money-account-balance-service@2.1.0-preview-0bd5566
@metamask-previews/money-account-controller@0.3.3-preview-0bd5566
@metamask-previews/money-account-upgrade-controller@2.0.5-preview-0bd5566
@metamask-previews/multichain-account-service@10.0.3-preview-0bd5566
@metamask-previews/multichain-api-middleware@3.1.4-preview-0bd5566
@metamask-previews/multichain-network-controller@3.1.3-preview-0bd5566
@metamask-previews/multichain-transactions-controller@7.1.1-preview-0bd5566
@metamask-previews/name-controller@9.1.2-preview-0bd5566
@metamask-previews/network-controller@32.0.0-preview-0bd5566
@metamask-previews/network-enablement-controller@5.3.0-preview-0bd5566
@metamask-previews/notification-services-controller@24.1.3-preview-0bd5566
@metamask-previews/passkey-controller@2.0.1-preview-0bd5566
@metamask-previews/permission-controller@13.1.1-preview-0bd5566
@metamask-previews/permission-log-controller@5.1.0-preview-0bd5566
@metamask-previews/perps-controller@8.1.0-preview-0bd5566
@metamask-previews/phishing-controller@17.2.0-preview-0bd5566
@metamask-previews/polling-controller@16.0.6-preview-0bd5566
@metamask-previews/preferences-controller@23.1.0-preview-0bd5566
@metamask-previews/profile-metrics-controller@3.2.0-preview-0bd5566
@metamask-previews/profile-sync-controller@28.2.0-preview-0bd5566
@metamask-previews/ramps-controller@14.2.0-preview-0bd5566
@metamask-previews/rate-limit-controller@7.0.1-preview-0bd5566
@metamask-previews/react-data-query@0.2.1-preview-0bd5566
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-0bd5566
@metamask-previews/sample-controllers@5.0.1-preview-0bd5566
@metamask-previews/seedless-onboarding-controller@10.0.2-preview-0bd5566
@metamask-previews/selected-network-controller@26.1.3-preview-0bd5566
@metamask-previews/shield-controller@5.1.2-preview-0bd5566
@metamask-previews/signature-controller@39.2.5-preview-0bd5566
@metamask-previews/smart-transactions-controller@24.2.1-preview-0bd5566
@metamask-previews/snap-account-service@0.3.1-preview-0bd5566
@metamask-previews/social-controllers@2.3.1-preview-0bd5566
@metamask-previews/storage-service@1.0.2-preview-0bd5566
@metamask-previews/subscription-controller@6.2.0-preview-0bd5566
@metamask-previews/transaction-controller@68.0.1-preview-0bd5566
@metamask-previews/transaction-pay-controller@23.9.0-preview-0bd5566
@metamask-previews/user-operation-controller@41.2.4-preview-0bd5566
@metamask-previews/wallet@3.0.0-preview-0bd5566
@metamask-previews/wallet-cli@0.0.0-preview-0bd5566

@cryptodev-2s cryptodev-2s force-pushed the feat/force-rpc-failover branch from 54126df to 0bd5566 Compare June 18, 2026 10:44
Resolve create-network-client.ts by keeping main's URL-based isInfura (#9125)
plus the forced-failover branch. Resolve NetworkController.test.ts by dropping
the stale megaeth-testnet expectation that main replaced with megaeth-testnet-v2.
@cryptodev-2s

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@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@7.5.2-preview-87604839b
@metamask-previews/accounts-controller@39.0.1-preview-87604839b
@metamask-previews/address-book-controller@7.1.2-preview-87604839b
@metamask-previews/ai-controllers@0.7.0-preview-87604839b
@metamask-previews/analytics-controller@1.1.1-preview-87604839b
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-87604839b
@metamask-previews/announcement-controller@8.1.0-preview-87604839b
@metamask-previews/app-metadata-controller@2.0.1-preview-87604839b
@metamask-previews/approval-controller@9.0.2-preview-87604839b
@metamask-previews/assets-controller@9.0.1-preview-87604839b
@metamask-previews/assets-controllers@109.1.0-preview-87604839b
@metamask-previews/authenticated-user-storage@2.0.0-preview-87604839b
@metamask-previews/base-controller@9.1.0-preview-87604839b
@metamask-previews/base-data-service@0.1.3-preview-87604839b
@metamask-previews/bridge-controller@75.1.1-preview-87604839b
@metamask-previews/bridge-status-controller@72.1.0-preview-87604839b
@metamask-previews/build-utils@3.0.4-preview-87604839b
@metamask-previews/chain-agnostic-permission@1.6.2-preview-87604839b
@metamask-previews/chomp-api-service@3.1.0-preview-87604839b
@metamask-previews/claims-controller@0.5.3-preview-87604839b
@metamask-previews/client-controller@1.0.1-preview-87604839b
@metamask-previews/compliance-controller@2.1.0-preview-87604839b
@metamask-previews/composable-controller@12.0.1-preview-87604839b
@metamask-previews/config-registry-controller@0.4.1-preview-87604839b
@metamask-previews/connectivity-controller@0.2.0-preview-87604839b
@metamask-previews/controller-utils@12.2.0-preview-87604839b
@metamask-previews/core-backend@6.3.3-preview-87604839b
@metamask-previews/delegation-controller@3.0.2-preview-87604839b
@metamask-previews/earn-controller@12.2.0-preview-87604839b
@metamask-previews/eip-5792-middleware@3.0.4-preview-87604839b
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-87604839b
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-87604839b
@metamask-previews/ens-controller@19.1.3-preview-87604839b
@metamask-previews/eth-block-tracker@15.0.1-preview-87604839b
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-87604839b
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-87604839b
@metamask-previews/foundryup@1.0.1-preview-87604839b
@metamask-previews/gas-fee-controller@26.2.2-preview-87604839b
@metamask-previews/gator-permissions-controller@4.2.0-preview-87604839b
@metamask-previews/geolocation-controller@0.1.3-preview-87604839b
@metamask-previews/json-rpc-engine@10.5.0-preview-87604839b
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-87604839b
@metamask-previews/keyring-controller@27.1.0-preview-87604839b
@metamask-previews/logging-controller@8.0.2-preview-87604839b
@metamask-previews/message-manager@14.1.2-preview-87604839b
@metamask-previews/messenger@1.2.0-preview-87604839b
@metamask-previews/messenger-cli@0.2.0-preview-87604839b
@metamask-previews/money-account-balance-service@2.1.0-preview-87604839b
@metamask-previews/money-account-controller@0.3.3-preview-87604839b
@metamask-previews/money-account-upgrade-controller@2.0.5-preview-87604839b
@metamask-previews/multichain-account-service@10.0.3-preview-87604839b
@metamask-previews/multichain-api-middleware@3.1.4-preview-87604839b
@metamask-previews/multichain-network-controller@3.1.3-preview-87604839b
@metamask-previews/multichain-transactions-controller@7.1.1-preview-87604839b
@metamask-previews/name-controller@9.1.2-preview-87604839b
@metamask-previews/network-controller@32.0.0-preview-87604839b
@metamask-previews/network-enablement-controller@5.3.0-preview-87604839b
@metamask-previews/notification-services-controller@24.1.3-preview-87604839b
@metamask-previews/passkey-controller@2.0.1-preview-87604839b
@metamask-previews/permission-controller@13.1.1-preview-87604839b
@metamask-previews/permission-log-controller@5.1.0-preview-87604839b
@metamask-previews/perps-controller@8.1.0-preview-87604839b
@metamask-previews/phishing-controller@17.2.0-preview-87604839b
@metamask-previews/polling-controller@16.0.6-preview-87604839b
@metamask-previews/preferences-controller@23.1.0-preview-87604839b
@metamask-previews/profile-metrics-controller@3.2.0-preview-87604839b
@metamask-previews/profile-sync-controller@28.2.0-preview-87604839b
@metamask-previews/ramps-controller@14.2.0-preview-87604839b
@metamask-previews/rate-limit-controller@7.0.1-preview-87604839b
@metamask-previews/react-data-query@0.2.1-preview-87604839b
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-87604839b
@metamask-previews/sample-controllers@5.0.1-preview-87604839b
@metamask-previews/seedless-onboarding-controller@10.0.2-preview-87604839b
@metamask-previews/selected-network-controller@26.1.3-preview-87604839b
@metamask-previews/shield-controller@5.1.2-preview-87604839b
@metamask-previews/signature-controller@39.2.5-preview-87604839b
@metamask-previews/smart-transactions-controller@24.2.2-preview-87604839b
@metamask-previews/snap-account-service@0.3.1-preview-87604839b
@metamask-previews/social-controllers@2.3.1-preview-87604839b
@metamask-previews/storage-service@1.0.2-preview-87604839b
@metamask-previews/subscription-controller@6.2.0-preview-87604839b
@metamask-previews/transaction-controller@68.0.1-preview-87604839b
@metamask-previews/transaction-pay-controller@23.10.0-preview-87604839b
@metamask-previews/user-operation-controller@41.2.4-preview-87604839b
@metamask-previews/wallet@3.0.0-preview-87604839b
@metamask-previews/wallet-cli@0.0.0-preview-87604839b

@cryptodev-2s

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@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@7.5.2-preview-eca6f2051
@metamask-previews/accounts-controller@39.0.1-preview-eca6f2051
@metamask-previews/address-book-controller@7.1.2-preview-eca6f2051
@metamask-previews/ai-controllers@0.7.0-preview-eca6f2051
@metamask-previews/analytics-controller@1.1.1-preview-eca6f2051
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-eca6f2051
@metamask-previews/announcement-controller@8.1.0-preview-eca6f2051
@metamask-previews/app-metadata-controller@2.0.1-preview-eca6f2051
@metamask-previews/approval-controller@9.0.2-preview-eca6f2051
@metamask-previews/assets-controller@9.0.1-preview-eca6f2051
@metamask-previews/assets-controllers@109.2.0-preview-eca6f2051
@metamask-previews/authenticated-user-storage@2.0.0-preview-eca6f2051
@metamask-previews/base-controller@9.1.0-preview-eca6f2051
@metamask-previews/base-data-service@0.1.3-preview-eca6f2051
@metamask-previews/bridge-controller@75.1.1-preview-eca6f2051
@metamask-previews/bridge-status-controller@72.1.0-preview-eca6f2051
@metamask-previews/build-utils@3.0.4-preview-eca6f2051
@metamask-previews/chain-agnostic-permission@1.6.2-preview-eca6f2051
@metamask-previews/chomp-api-service@3.1.0-preview-eca6f2051
@metamask-previews/claims-controller@0.5.3-preview-eca6f2051
@metamask-previews/client-controller@1.0.1-preview-eca6f2051
@metamask-previews/compliance-controller@2.1.0-preview-eca6f2051
@metamask-previews/composable-controller@12.0.1-preview-eca6f2051
@metamask-previews/config-registry-controller@0.4.1-preview-eca6f2051
@metamask-previews/connectivity-controller@0.2.0-preview-eca6f2051
@metamask-previews/controller-utils@12.2.0-preview-eca6f2051
@metamask-previews/core-backend@6.3.3-preview-eca6f2051
@metamask-previews/delegation-controller@3.0.2-preview-eca6f2051
@metamask-previews/earn-controller@12.2.0-preview-eca6f2051
@metamask-previews/eip-5792-middleware@3.0.4-preview-eca6f2051
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-eca6f2051
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-eca6f2051
@metamask-previews/ens-controller@19.1.3-preview-eca6f2051
@metamask-previews/eth-block-tracker@15.0.1-preview-eca6f2051
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-eca6f2051
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-eca6f2051
@metamask-previews/foundryup@1.0.1-preview-eca6f2051
@metamask-previews/gas-fee-controller@26.2.2-preview-eca6f2051
@metamask-previews/gator-permissions-controller@4.2.0-preview-eca6f2051
@metamask-previews/geolocation-controller@0.1.3-preview-eca6f2051
@metamask-previews/json-rpc-engine@10.5.0-preview-eca6f2051
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-eca6f2051
@metamask-previews/keyring-controller@27.1.0-preview-eca6f2051
@metamask-previews/logging-controller@8.0.2-preview-eca6f2051
@metamask-previews/message-manager@14.1.2-preview-eca6f2051
@metamask-previews/messenger@1.2.0-preview-eca6f2051
@metamask-previews/messenger-cli@0.2.0-preview-eca6f2051
@metamask-previews/money-account-balance-service@2.1.0-preview-eca6f2051
@metamask-previews/money-account-controller@0.3.3-preview-eca6f2051
@metamask-previews/money-account-upgrade-controller@2.0.5-preview-eca6f2051
@metamask-previews/multichain-account-service@10.0.3-preview-eca6f2051
@metamask-previews/multichain-api-middleware@3.1.4-preview-eca6f2051
@metamask-previews/multichain-network-controller@3.1.3-preview-eca6f2051
@metamask-previews/multichain-transactions-controller@7.1.1-preview-eca6f2051
@metamask-previews/name-controller@9.1.2-preview-eca6f2051
@metamask-previews/network-controller@32.0.0-preview-eca6f2051
@metamask-previews/network-enablement-controller@5.3.0-preview-eca6f2051
@metamask-previews/notification-services-controller@24.1.3-preview-eca6f2051
@metamask-previews/passkey-controller@2.0.1-preview-eca6f2051
@metamask-previews/permission-controller@13.1.1-preview-eca6f2051
@metamask-previews/permission-log-controller@5.1.0-preview-eca6f2051
@metamask-previews/perps-controller@8.2.0-preview-eca6f2051
@metamask-previews/phishing-controller@17.2.0-preview-eca6f2051
@metamask-previews/polling-controller@16.0.6-preview-eca6f2051
@metamask-previews/preferences-controller@23.1.0-preview-eca6f2051
@metamask-previews/profile-metrics-controller@3.2.0-preview-eca6f2051
@metamask-previews/profile-sync-controller@28.2.0-preview-eca6f2051
@metamask-previews/ramps-controller@14.3.0-preview-eca6f2051
@metamask-previews/rate-limit-controller@7.0.1-preview-eca6f2051
@metamask-previews/react-data-query@0.2.1-preview-eca6f2051
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-eca6f2051
@metamask-previews/sample-controllers@5.0.1-preview-eca6f2051
@metamask-previews/seedless-onboarding-controller@10.0.2-preview-eca6f2051
@metamask-previews/selected-network-controller@26.1.3-preview-eca6f2051
@metamask-previews/shield-controller@5.1.2-preview-eca6f2051
@metamask-previews/signature-controller@39.2.5-preview-eca6f2051
@metamask-previews/smart-transactions-controller@24.2.2-preview-eca6f2051
@metamask-previews/snap-account-service@0.3.1-preview-eca6f2051
@metamask-previews/social-controllers@2.3.1-preview-eca6f2051
@metamask-previews/storage-service@1.0.2-preview-eca6f2051
@metamask-previews/subscription-controller@6.2.0-preview-eca6f2051
@metamask-previews/transaction-controller@68.1.0-preview-eca6f2051
@metamask-previews/transaction-pay-controller@23.13.0-preview-eca6f2051
@metamask-previews/user-operation-controller@41.2.4-preview-eca6f2051
@metamask-previews/wallet@3.0.0-preview-eca6f2051
@metamask-previews/wallet-cli@0.0.0-preview-eca6f2051

@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@7.5.3-preview-2b5ec3770
@metamask-previews/accounts-controller@39.0.3-preview-2b5ec3770
@metamask-previews/address-book-controller@7.1.2-preview-2b5ec3770
@metamask-previews/ai-controllers@0.7.0-preview-2b5ec3770
@metamask-previews/analytics-controller@1.1.1-preview-2b5ec3770
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-2b5ec3770
@metamask-previews/announcement-controller@8.1.0-preview-2b5ec3770
@metamask-previews/app-metadata-controller@2.0.1-preview-2b5ec3770
@metamask-previews/approval-controller@9.0.2-preview-2b5ec3770
@metamask-previews/assets-controller@9.0.2-preview-2b5ec3770
@metamask-previews/assets-controllers@109.2.2-preview-2b5ec3770
@metamask-previews/authenticated-user-storage@2.1.0-preview-2b5ec3770
@metamask-previews/base-controller@9.1.0-preview-2b5ec3770
@metamask-previews/base-data-service@0.1.3-preview-2b5ec3770
@metamask-previews/bitcoin-regtest-up@0.0.0-preview-2b5ec3770
@metamask-previews/bridge-controller@76.0.0-preview-2b5ec3770
@metamask-previews/bridge-status-controller@72.2.0-preview-2b5ec3770
@metamask-previews/build-utils@3.0.4-preview-2b5ec3770
@metamask-previews/chain-agnostic-permission@1.6.2-preview-2b5ec3770
@metamask-previews/chomp-api-service@3.1.0-preview-2b5ec3770
@metamask-previews/claims-controller@0.5.3-preview-2b5ec3770
@metamask-previews/client-controller@1.0.1-preview-2b5ec3770
@metamask-previews/compliance-controller@2.1.0-preview-2b5ec3770
@metamask-previews/composable-controller@12.0.1-preview-2b5ec3770
@metamask-previews/config-registry-controller@0.4.1-preview-2b5ec3770
@metamask-previews/connectivity-controller@0.2.0-preview-2b5ec3770
@metamask-previews/controller-utils@12.3.0-preview-2b5ec3770
@metamask-previews/core-backend@6.3.3-preview-2b5ec3770
@metamask-previews/delegation-controller@3.0.2-preview-2b5ec3770
@metamask-previews/earn-controller@12.2.1-preview-2b5ec3770
@metamask-previews/eip-5792-middleware@3.0.4-preview-2b5ec3770
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-2b5ec3770
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-2b5ec3770
@metamask-previews/ens-controller@19.1.4-preview-2b5ec3770
@metamask-previews/eth-block-tracker@15.0.1-preview-2b5ec3770
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-2b5ec3770
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-2b5ec3770
@metamask-previews/foundryup@1.0.1-preview-2b5ec3770
@metamask-previews/gas-fee-controller@26.2.3-preview-2b5ec3770
@metamask-previews/gator-permissions-controller@4.2.1-preview-2b5ec3770
@metamask-previews/geolocation-controller@0.1.3-preview-2b5ec3770
@metamask-previews/java-tron-up@0.0.0-preview-2b5ec3770
@metamask-previews/json-rpc-engine@10.5.0-preview-2b5ec3770
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-2b5ec3770
@metamask-previews/keyring-controller@27.1.0-preview-2b5ec3770
@metamask-previews/local-node-utils@0.0.0-preview-2b5ec3770
@metamask-previews/logging-controller@8.0.2-preview-2b5ec3770
@metamask-previews/message-manager@14.1.2-preview-2b5ec3770
@metamask-previews/messenger@1.2.0-preview-2b5ec3770
@metamask-previews/messenger-cli@0.2.0-preview-2b5ec3770
@metamask-previews/money-account-balance-service@2.1.1-preview-2b5ec3770
@metamask-previews/money-account-controller@0.3.3-preview-2b5ec3770
@metamask-previews/money-account-upgrade-controller@2.1.0-preview-2b5ec3770
@metamask-previews/multichain-account-service@11.0.0-preview-2b5ec3770
@metamask-previews/multichain-api-middleware@3.1.5-preview-2b5ec3770
@metamask-previews/multichain-network-controller@3.1.4-preview-2b5ec3770
@metamask-previews/multichain-transactions-controller@7.1.1-preview-2b5ec3770
@metamask-previews/name-controller@9.1.2-preview-2b5ec3770
@metamask-previews/network-controller@33.0.0-preview-2b5ec3770
@metamask-previews/network-enablement-controller@5.4.0-preview-2b5ec3770
@metamask-previews/notification-services-controller@24.2.0-preview-2b5ec3770
@metamask-previews/passkey-controller@2.0.1-preview-2b5ec3770
@metamask-previews/permission-controller@13.1.1-preview-2b5ec3770
@metamask-previews/permission-log-controller@5.1.0-preview-2b5ec3770
@metamask-previews/perps-controller@8.3.0-preview-2b5ec3770
@metamask-previews/phishing-controller@17.2.0-preview-2b5ec3770
@metamask-previews/polling-controller@16.0.7-preview-2b5ec3770
@metamask-previews/preferences-controller@23.1.0-preview-2b5ec3770
@metamask-previews/profile-metrics-controller@4.0.0-preview-2b5ec3770
@metamask-previews/profile-sync-controller@28.2.0-preview-2b5ec3770
@metamask-previews/ramps-controller@14.3.0-preview-2b5ec3770
@metamask-previews/rate-limit-controller@7.0.1-preview-2b5ec3770
@metamask-previews/react-data-query@0.2.1-preview-2b5ec3770
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-2b5ec3770
@metamask-previews/sample-controllers@5.0.2-preview-2b5ec3770
@metamask-previews/seedless-onboarding-controller@10.0.2-preview-2b5ec3770
@metamask-previews/selected-network-controller@26.1.4-preview-2b5ec3770
@metamask-previews/shield-controller@5.1.2-preview-2b5ec3770
@metamask-previews/signature-controller@39.2.6-preview-2b5ec3770
@metamask-previews/smart-transactions-controller@24.2.3-preview-2b5ec3770
@metamask-previews/snap-account-service@1.0.0-preview-2b5ec3770
@metamask-previews/social-controllers@2.3.1-preview-2b5ec3770
@metamask-previews/solana-test-validator-up@0.0.0-preview-2b5ec3770
@metamask-previews/storage-service@1.0.2-preview-2b5ec3770
@metamask-previews/subscription-controller@6.2.0-preview-2b5ec3770
@metamask-previews/transaction-controller@68.1.1-preview-2b5ec3770
@metamask-previews/transaction-pay-controller@23.14.0-preview-2b5ec3770
@metamask-previews/user-operation-controller@41.2.5-preview-2b5ec3770
@metamask-previews/wallet@4.0.0-preview-2b5ec3770
@metamask-previews/wallet-cli@0.0.0-preview-2b5ec3770

@cryptodev-2s

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@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@7.5.3-preview-3e8f1945e
@metamask-previews/accounts-controller@39.0.3-preview-3e8f1945e
@metamask-previews/address-book-controller@7.1.2-preview-3e8f1945e
@metamask-previews/ai-controllers@0.7.0-preview-3e8f1945e
@metamask-previews/analytics-controller@1.1.1-preview-3e8f1945e
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-3e8f1945e
@metamask-previews/announcement-controller@8.1.0-preview-3e8f1945e
@metamask-previews/app-metadata-controller@2.0.1-preview-3e8f1945e
@metamask-previews/approval-controller@9.0.2-preview-3e8f1945e
@metamask-previews/assets-controller@9.1.0-preview-3e8f1945e
@metamask-previews/assets-controllers@109.2.2-preview-3e8f1945e
@metamask-previews/authenticated-user-storage@2.1.0-preview-3e8f1945e
@metamask-previews/base-controller@9.1.0-preview-3e8f1945e
@metamask-previews/base-data-service@0.1.3-preview-3e8f1945e
@metamask-previews/bitcoin-regtest-up@0.0.0-preview-3e8f1945e
@metamask-previews/bridge-controller@76.1.0-preview-3e8f1945e
@metamask-previews/bridge-status-controller@72.3.0-preview-3e8f1945e
@metamask-previews/build-utils@3.0.4-preview-3e8f1945e
@metamask-previews/chain-agnostic-permission@1.6.2-preview-3e8f1945e
@metamask-previews/chomp-api-service@3.1.0-preview-3e8f1945e
@metamask-previews/claims-controller@0.5.3-preview-3e8f1945e
@metamask-previews/client-controller@1.0.1-preview-3e8f1945e
@metamask-previews/compliance-controller@2.1.0-preview-3e8f1945e
@metamask-previews/composable-controller@12.0.1-preview-3e8f1945e
@metamask-previews/config-registry-controller@0.4.1-preview-3e8f1945e
@metamask-previews/connectivity-controller@0.2.0-preview-3e8f1945e
@metamask-previews/controller-utils@12.3.0-preview-3e8f1945e
@metamask-previews/core-backend@6.3.3-preview-3e8f1945e
@metamask-previews/delegation-controller@3.0.2-preview-3e8f1945e
@metamask-previews/earn-controller@12.2.1-preview-3e8f1945e
@metamask-previews/eip-5792-middleware@3.0.4-preview-3e8f1945e
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-3e8f1945e
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-3e8f1945e
@metamask-previews/ens-controller@19.1.4-preview-3e8f1945e
@metamask-previews/eth-block-tracker@15.0.1-preview-3e8f1945e
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-3e8f1945e
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-3e8f1945e
@metamask-previews/foundryup@1.0.1-preview-3e8f1945e
@metamask-previews/gas-fee-controller@26.2.3-preview-3e8f1945e
@metamask-previews/gator-permissions-controller@4.2.1-preview-3e8f1945e
@metamask-previews/geolocation-controller@0.1.3-preview-3e8f1945e
@metamask-previews/java-tron-up@0.0.0-preview-3e8f1945e
@metamask-previews/json-rpc-engine@10.5.0-preview-3e8f1945e
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-3e8f1945e
@metamask-previews/keyring-controller@27.1.0-preview-3e8f1945e
@metamask-previews/local-node-utils@0.0.0-preview-3e8f1945e
@metamask-previews/logging-controller@8.0.2-preview-3e8f1945e
@metamask-previews/message-manager@14.1.2-preview-3e8f1945e
@metamask-previews/messenger@1.2.0-preview-3e8f1945e
@metamask-previews/messenger-cli@0.2.0-preview-3e8f1945e
@metamask-previews/money-account-balance-service@2.1.1-preview-3e8f1945e
@metamask-previews/money-account-controller@0.3.3-preview-3e8f1945e
@metamask-previews/money-account-upgrade-controller@2.1.0-preview-3e8f1945e
@metamask-previews/multichain-account-service@11.0.0-preview-3e8f1945e
@metamask-previews/multichain-api-middleware@3.1.5-preview-3e8f1945e
@metamask-previews/multichain-network-controller@3.1.4-preview-3e8f1945e
@metamask-previews/multichain-transactions-controller@7.1.1-preview-3e8f1945e
@metamask-previews/name-controller@9.1.2-preview-3e8f1945e
@metamask-previews/network-controller@33.0.0-preview-3e8f1945e
@metamask-previews/network-enablement-controller@5.4.0-preview-3e8f1945e
@metamask-previews/notification-services-controller@24.2.0-preview-3e8f1945e
@metamask-previews/passkey-controller@2.0.1-preview-3e8f1945e
@metamask-previews/permission-controller@13.1.1-preview-3e8f1945e
@metamask-previews/permission-log-controller@5.1.0-preview-3e8f1945e
@metamask-previews/perps-controller@9.0.0-preview-3e8f1945e
@metamask-previews/phishing-controller@17.2.0-preview-3e8f1945e
@metamask-previews/polling-controller@16.0.7-preview-3e8f1945e
@metamask-previews/preferences-controller@23.1.0-preview-3e8f1945e
@metamask-previews/profile-metrics-controller@4.0.0-preview-3e8f1945e
@metamask-previews/profile-sync-controller@28.2.0-preview-3e8f1945e
@metamask-previews/ramps-controller@14.3.0-preview-3e8f1945e
@metamask-previews/rate-limit-controller@7.0.1-preview-3e8f1945e
@metamask-previews/react-data-query@0.2.1-preview-3e8f1945e
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-3e8f1945e
@metamask-previews/sample-controllers@5.0.2-preview-3e8f1945e
@metamask-previews/seedless-onboarding-controller@10.0.2-preview-3e8f1945e
@metamask-previews/selected-network-controller@26.1.4-preview-3e8f1945e
@metamask-previews/shield-controller@5.1.2-preview-3e8f1945e
@metamask-previews/signature-controller@39.2.6-preview-3e8f1945e
@metamask-previews/smart-transactions-controller@24.2.3-preview-3e8f1945e
@metamask-previews/snap-account-service@1.0.0-preview-3e8f1945e
@metamask-previews/social-controllers@2.3.1-preview-3e8f1945e
@metamask-previews/solana-test-validator-up@0.0.0-preview-3e8f1945e
@metamask-previews/storage-service@1.0.2-preview-3e8f1945e
@metamask-previews/subscription-controller@6.2.0-preview-3e8f1945e
@metamask-previews/transaction-controller@68.1.1-preview-3e8f1945e
@metamask-previews/transaction-pay-controller@23.14.0-preview-3e8f1945e
@metamask-previews/user-operation-controller@41.2.5-preview-3e8f1945e
@metamask-previews/wallet@4.0.0-preview-3e8f1945e
@metamask-previews/wallet-cli@0.0.0-preview-3e8f1945e

Comment thread packages/network-controller/src/NetworkController.ts Outdated
* @param newIsRpcFailoverForced - Whether or not to force RPC failover.
*/
#updateRpcFailoverForced(newIsRpcFailoverForced: boolean): void {
if (this.#isRpcFailoverForced === newIsRpcFailoverForced) {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

If RPC failover is disabled generally, should this still work?

Comment on lines +1618 to +1689
this.#updateRpcFailoverEnabled(getIsRpcFailoverEnabled(state));
this.#updateRpcFailoverForced(getIsRpcFailoverForced(state));

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I wonder if we can combine these two 🤔

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Pulled the duplicated registry walk into a shared #forEachNetworkClientWithFailover helper, so the two methods are now just their guard plus the per client action.

I stopped short of fully merging them into one pass. A true single rebuild per client would mean reworking the AutoManagedNetworkClient enable/disable methods (they each eagerly destroy and rebuild) and the public enableRpcFailover/disableRpcFailover path, which is the shipped isRpcFailoverEnabled feature. Felt out of scope here, happy to do it as a follow up if you want.

Comment thread packages/network-controller/src/selectors.test.ts Outdated
Comment thread packages/network-controller/src/create-network-client.ts Outdated
Comment thread packages/network-controller/src/NetworkController.ts Outdated
Comment thread packages/network-controller/src/create-auto-managed-network-client.ts Outdated
Drop the NetworkController enableRpcFailoverForced/disableRpcFailoverForced
methods, their messenger actions, and exports. Forced failover is driven
entirely by the remote feature flag; nothing calls these imperatively.
…loverMode

Replace the boolean walletFrameworkRpcFailoverEnabled and the forced flag with a
single corePlatformRpcFailoverMode flag (disabled/enabled/forced). The selectors
derive both isRpcFailoverEnabled and isRpcFailoverForced from it, defaulting to
disabled. NetworkController no longer reads walletFrameworkRpcFailoverEnabled.
Comment on lines +1276 to +1278
#isRpcFailoverEnabled = false;

#isRpcFailoverForced = false;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Instead of having two booleans, let's bring the state directly into the controller. Then we can simplify to one RemoteFeatureFlagController:stateChange subscription too

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Done in e690b24. The controller now tracks a single #rpcFailoverMode field with one RemoteFeatureFlagController:stateChange subscription via getRpcFailoverMode, and the createAutoManagedNetworkClient call sites derive the enabled/forced booleans from the mode.

});

this.#isRpcFailoverEnabled = newIsRpcFailoverEnabled;
}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Since we are making a breaking change we can remove enableRpcFailover and disableRpcFailover on NetworkController

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Yes I am planning to do this in a follow up PR

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Finally made part of this pr to close #9175 (comment)

cryptodev-2s and others added 3 commits June 24, 2026 17:31
…controller

Replace the two #isRpcFailover* booleans and their two RemoteFeatureFlagController
subscriptions with a single #rpcFailoverMode field, one subscription via
getRpcFailoverMode, and one #updateRpcFailover method. The createAutoManagedNetworkClient
call sites derive the enabled/forced booleans from the mode inline.

@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 e690b24. Configure here.

Comment thread packages/network-controller/src/NetworkController.ts Outdated
…lover

Remove the imperative enableRpcFailover/disableRpcFailover methods, their
messenger actions, and exported types. RPC failover is driven entirely by the
corePlatformRpcFailoverMode remote feature flag.
@cryptodev-2s

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@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@7.5.3-preview-0f314298c
@metamask-previews/accounts-controller@39.0.3-preview-0f314298c
@metamask-previews/address-book-controller@7.1.2-preview-0f314298c
@metamask-previews/ai-controllers@0.7.0-preview-0f314298c
@metamask-previews/analytics-controller@1.1.1-preview-0f314298c
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-0f314298c
@metamask-previews/announcement-controller@8.1.0-preview-0f314298c
@metamask-previews/app-metadata-controller@2.0.1-preview-0f314298c
@metamask-previews/approval-controller@9.0.2-preview-0f314298c
@metamask-previews/assets-controller@9.1.0-preview-0f314298c
@metamask-previews/assets-controllers@109.2.2-preview-0f314298c
@metamask-previews/authenticated-user-storage@2.1.0-preview-0f314298c
@metamask-previews/base-controller@9.1.0-preview-0f314298c
@metamask-previews/base-data-service@0.1.3-preview-0f314298c
@metamask-previews/bitcoin-regtest-up@0.0.0-preview-0f314298c
@metamask-previews/bridge-controller@76.1.0-preview-0f314298c
@metamask-previews/bridge-status-controller@72.3.0-preview-0f314298c
@metamask-previews/build-utils@3.0.4-preview-0f314298c
@metamask-previews/chain-agnostic-permission@1.6.2-preview-0f314298c
@metamask-previews/chomp-api-service@3.1.0-preview-0f314298c
@metamask-previews/claims-controller@0.5.3-preview-0f314298c
@metamask-previews/client-controller@1.0.1-preview-0f314298c
@metamask-previews/compliance-controller@2.1.0-preview-0f314298c
@metamask-previews/composable-controller@12.0.1-preview-0f314298c
@metamask-previews/config-registry-controller@0.4.1-preview-0f314298c
@metamask-previews/connectivity-controller@0.2.0-preview-0f314298c
@metamask-previews/controller-utils@12.3.0-preview-0f314298c
@metamask-previews/core-backend@6.3.3-preview-0f314298c
@metamask-previews/delegation-controller@3.0.2-preview-0f314298c
@metamask-previews/earn-controller@12.2.1-preview-0f314298c
@metamask-previews/eip-5792-middleware@3.0.4-preview-0f314298c
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-0f314298c
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-0f314298c
@metamask-previews/ens-controller@19.1.4-preview-0f314298c
@metamask-previews/eth-block-tracker@15.0.1-preview-0f314298c
@metamask-previews/eth-json-rpc-middleware@23.1.3-preview-0f314298c
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-0f314298c
@metamask-previews/foundryup@1.0.1-preview-0f314298c
@metamask-previews/gas-fee-controller@26.2.3-preview-0f314298c
@metamask-previews/gator-permissions-controller@4.2.1-preview-0f314298c
@metamask-previews/geolocation-controller@0.1.3-preview-0f314298c
@metamask-previews/java-tron-up@0.0.0-preview-0f314298c
@metamask-previews/json-rpc-engine@10.5.0-preview-0f314298c
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-0f314298c
@metamask-previews/keyring-controller@27.1.0-preview-0f314298c
@metamask-previews/local-node-utils@0.0.0-preview-0f314298c
@metamask-previews/logging-controller@8.0.2-preview-0f314298c
@metamask-previews/message-manager@14.1.2-preview-0f314298c
@metamask-previews/messenger@1.2.0-preview-0f314298c
@metamask-previews/messenger-cli@0.2.0-preview-0f314298c
@metamask-previews/money-account-balance-service@2.1.1-preview-0f314298c
@metamask-previews/money-account-controller@0.3.3-preview-0f314298c
@metamask-previews/money-account-upgrade-controller@2.1.0-preview-0f314298c
@metamask-previews/multichain-account-service@11.0.0-preview-0f314298c
@metamask-previews/multichain-api-middleware@3.1.5-preview-0f314298c
@metamask-previews/multichain-network-controller@3.1.4-preview-0f314298c
@metamask-previews/multichain-transactions-controller@7.1.1-preview-0f314298c
@metamask-previews/name-controller@9.1.2-preview-0f314298c
@metamask-previews/network-controller@33.0.0-preview-0f314298c
@metamask-previews/network-enablement-controller@5.4.0-preview-0f314298c
@metamask-previews/notification-services-controller@24.2.0-preview-0f314298c
@metamask-previews/passkey-controller@2.0.1-preview-0f314298c
@metamask-previews/permission-controller@13.1.1-preview-0f314298c
@metamask-previews/permission-log-controller@5.1.0-preview-0f314298c
@metamask-previews/perps-controller@9.0.0-preview-0f314298c
@metamask-previews/phishing-controller@17.2.0-preview-0f314298c
@metamask-previews/polling-controller@16.0.7-preview-0f314298c
@metamask-previews/preferences-controller@23.1.0-preview-0f314298c
@metamask-previews/profile-metrics-controller@4.0.0-preview-0f314298c
@metamask-previews/profile-sync-controller@28.2.0-preview-0f314298c
@metamask-previews/ramps-controller@14.3.0-preview-0f314298c
@metamask-previews/rate-limit-controller@7.0.1-preview-0f314298c
@metamask-previews/react-data-query@0.2.1-preview-0f314298c
@metamask-previews/remote-feature-flag-controller@4.2.2-preview-0f314298c
@metamask-previews/sample-controllers@5.0.2-preview-0f314298c
@metamask-previews/seedless-onboarding-controller@10.0.2-preview-0f314298c
@metamask-previews/selected-network-controller@26.1.4-preview-0f314298c
@metamask-previews/shield-controller@5.1.2-preview-0f314298c
@metamask-previews/signature-controller@39.2.6-preview-0f314298c
@metamask-previews/smart-transactions-controller@24.2.3-preview-0f314298c
@metamask-previews/snap-account-service@1.0.0-preview-0f314298c
@metamask-previews/social-controllers@2.3.1-preview-0f314298c
@metamask-previews/solana-test-validator-up@0.0.0-preview-0f314298c
@metamask-previews/storage-service@1.0.2-preview-0f314298c
@metamask-previews/subscription-controller@6.2.0-preview-0f314298c
@metamask-previews/transaction-controller@68.2.0-preview-0f314298c
@metamask-previews/transaction-pay-controller@23.15.0-preview-0f314298c
@metamask-previews/user-operation-controller@41.2.5-preview-0f314298c
@metamask-previews/wallet@4.0.0-preview-0f314298c
@metamask-previews/wallet-cli@0.0.0-preview-0f314298c

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants