Skip to content

chore!: Expose confirmations-owned controller/service methods through messenger#8183

Merged
cryptodev-2s merged 13 commits intomainfrom
chore/expose-confirmations-controller-methods-through-messenger
Mar 17, 2026
Merged

chore!: Expose confirmations-owned controller/service methods through messenger#8183
cryptodev-2s merged 13 commits intomainfrom
chore/expose-confirmations-controller-methods-through-messenger

Conversation

@cryptodev-2s
Copy link
Contributor

@cryptodev-2s cryptodev-2s commented Mar 11, 2026

Explanation

Confirmations-team controllers currently register messenger action handlers manually, with hand-written action types. The rest of the codebase (Assets, Notifications, Earn) has already migrated to the MESSENGER_EXPOSED_METHODS + registerMethodActionHandlers pattern with auto-generated action types.

This PR migrates all 10 confirmations-owned controllers to that same pattern:

  • ApprovalController — 6 method renames (clearclearRequests, hashasRequest, acceptacceptRequest, rejectrejectRequest, successshowSuccess, errorshowError), new addRequest() public method, 16 exposed methods
  • TransactionController — 28 exposed methods, new getGasFeeTokens() public wrapper, action type names standardized with Action suffix
  • TransactionPayController — 5 exposed methods, new getDelegationTransaction() and getStrategy() public wrappers
  • GasFeeController — 6 newly exposed methods
  • SignatureController — 10 newly exposed methods
  • AddressBookController — 4 exposed methods (1 new: clear)
  • LoggingController — 2 exposed methods (1 new: clear)
  • EnsController — 6 newly exposed methods
  • NameController — 2 newly exposed methods
  • UserOperationController — 3 newly exposed methods

Downstream consumers (PermissionController, NftController, TokensController, NftDetectionController, TransactionControllerIntegration tests) are updated to use the renamed methods and types.

Clients PRs

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

Medium Risk
Wide-ranging refactor across multiple controllers that changes public method/type names (notably in ApprovalController) and updates downstream consumers; risk is mainly integration breakage from renamed APIs and newly exposed messenger methods.

Overview
Migrates confirmations-owned controllers to the MESSENGER_EXPOSED_METHODS + registerMethodActionHandlers pattern, adding auto-generated *-method-action-types.ts files and exporting the new action types.

Introduces breaking ApprovalController API renames (acceptacceptRequest, rejectrejectRequest, hashasRequest, clearclearRequests, successshowSuccess, errorshowError) and adds a public addRequest() wrapper; similarly promotes previously-internal/handler-only methods to public wrappers in TransactionController (getGasFeeTokens) and TransactionPayController (getDelegationTransaction, getStrategy).

Updates dependent controllers/tests (e.g. PermissionController, Assets controllers, transaction integration tests) to use the renamed methods and new action-type imports, and wires up new messenger-exposed methods for AddressBookController, EnsController, GasFeeController, LoggingController, NameController, SignatureController, and TransactionController. Adds tsx and per-package generate-method-action-types scripts, plus changelog entries reflecting the new/breaking APIs.

Written by Cursor Bugbot for commit 33534a4. This will update automatically on new commits. Configure here.

… messenger

Migrate 10 confirmations-team controllers to the MESSENGER_EXPOSED_METHODS
+ registerMethodActionHandlers pattern with auto-generated action types.

BREAKING CHANGE: ApprovalController methods renamed: clear→clearRequests,
has→hasRequest, accept→acceptRequest, reject→rejectRequest, success→showSuccess,
error→showError. TransactionController action types standardized with Action suffix.
@cryptodev-2s cryptodev-2s requested review from a team as code owners March 11, 2026 15:55
@cryptodev-2s cryptodev-2s self-assigned this Mar 11, 2026
Replace AddApprovalRequest, AcceptApprovalRequest, HasApprovalRequest,
RejectApprovalRequest aliases with their full generated names across all
consumer packages. Add CHANGELOG entries for permission-controller and
assets-controllers.
@cryptodev-2s
Copy link
Contributor Author

@metamaskbot publish-previews

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "5.0.1-preview-aae9a022a",
  "@metamask-previews/accounts-controller": "37.0.0-preview-aae9a022a",
  "@metamask-previews/address-book-controller": "7.0.1-preview-aae9a022a",
  "@metamask-previews/ai-controllers": "0.2.0-preview-aae9a022a",
  "@metamask-previews/analytics-controller": "1.0.0-preview-aae9a022a",
  "@metamask-previews/analytics-data-regulation-controller": "0.0.0-preview-aae9a022a",
  "@metamask-previews/announcement-controller": "8.0.0-preview-aae9a022a",
  "@metamask-previews/app-metadata-controller": "2.0.0-preview-aae9a022a",
  "@metamask-previews/approval-controller": "8.0.0-preview-aae9a022a",
  "@metamask-previews/assets-controller": "2.3.0-preview-aae9a022a",
  "@metamask-previews/assets-controllers": "100.2.1-preview-aae9a022a",
  "@metamask-previews/base-controller": "9.0.0-preview-aae9a022a",
  "@metamask-previews/base-data-service": "0.0.0-preview-aae9a022a",
  "@metamask-previews/bridge-controller": "69.1.0-preview-aae9a022a",
  "@metamask-previews/bridge-status-controller": "68.1.0-preview-aae9a022a",
  "@metamask-previews/build-utils": "3.0.4-preview-aae9a022a",
  "@metamask-previews/chain-agnostic-permission": "1.4.0-preview-aae9a022a",
  "@metamask-previews/claims-controller": "0.4.3-preview-aae9a022a",
  "@metamask-previews/client-controller": "1.0.0-preview-aae9a022a",
  "@metamask-previews/compliance-controller": "1.0.1-preview-aae9a022a",
  "@metamask-previews/composable-controller": "12.0.0-preview-aae9a022a",
  "@metamask-previews/config-registry-controller": "0.1.1-preview-aae9a022a",
  "@metamask-previews/connectivity-controller": "0.1.0-preview-aae9a022a",
  "@metamask-previews/controller-utils": "11.19.0-preview-aae9a022a",
  "@metamask-previews/core-backend": "6.1.1-preview-aae9a022a",
  "@metamask-previews/delegation-controller": "2.0.2-preview-aae9a022a",
  "@metamask-previews/earn-controller": "11.1.2-preview-aae9a022a",
  "@metamask-previews/eip-5792-middleware": "3.0.0-preview-aae9a022a",
  "@metamask-previews/eip-7702-internal-rpc-middleware": "0.1.0-preview-aae9a022a",
  "@metamask-previews/eip1193-permission-middleware": "1.0.3-preview-aae9a022a",
  "@metamask-previews/ens-controller": "19.0.3-preview-aae9a022a",
  "@metamask-previews/error-reporting-service": "3.0.1-preview-aae9a022a",
  "@metamask-previews/eth-block-tracker": "15.0.1-preview-aae9a022a",
  "@metamask-previews/eth-json-rpc-middleware": "23.1.0-preview-aae9a022a",
  "@metamask-previews/eth-json-rpc-provider": "6.0.0-preview-aae9a022a",
  "@metamask-previews/foundryup": "1.0.1-preview-aae9a022a",
  "@metamask-previews/gas-fee-controller": "26.0.3-preview-aae9a022a",
  "@metamask-previews/gator-permissions-controller": "2.1.0-preview-aae9a022a",
  "@metamask-previews/geolocation-controller": "0.1.1-preview-aae9a022a",
  "@metamask-previews/json-rpc-engine": "10.2.3-preview-aae9a022a",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.8-preview-aae9a022a",
  "@metamask-previews/keyring-controller": "25.1.0-preview-aae9a022a",
  "@metamask-previews/logging-controller": "7.0.1-preview-aae9a022a",
  "@metamask-previews/message-manager": "14.1.0-preview-aae9a022a",
  "@metamask-previews/messenger": "0.3.0-preview-aae9a022a",
  "@metamask-previews/multichain-account-service": "7.1.0-preview-aae9a022a",
  "@metamask-previews/multichain-api-middleware": "1.2.7-preview-aae9a022a",
  "@metamask-previews/multichain-network-controller": "3.0.5-preview-aae9a022a",
  "@metamask-previews/multichain-transactions-controller": "7.0.2-preview-aae9a022a",
  "@metamask-previews/name-controller": "9.0.0-preview-aae9a022a",
  "@metamask-previews/network-controller": "30.0.0-preview-aae9a022a",
  "@metamask-previews/network-enablement-controller": "4.2.0-preview-aae9a022a",
  "@metamask-previews/notification-services-controller": "22.1.0-preview-aae9a022a",
  "@metamask-previews/permission-controller": "12.2.0-preview-aae9a022a",
  "@metamask-previews/permission-log-controller": "5.0.0-preview-aae9a022a",
  "@metamask-previews/perps-controller": "1.0.1-preview-aae9a022a",
  "@metamask-previews/phishing-controller": "16.3.0-preview-aae9a022a",
  "@metamask-previews/polling-controller": "16.0.3-preview-aae9a022a",
  "@metamask-previews/preferences-controller": "23.0.0-preview-aae9a022a",
  "@metamask-previews/profile-metrics-controller": "3.0.3-preview-aae9a022a",
  "@metamask-previews/profile-sync-controller": "28.0.0-preview-aae9a022a",
  "@metamask-previews/ramps-controller": "12.0.0-preview-aae9a022a",
  "@metamask-previews/rate-limit-controller": "7.0.0-preview-aae9a022a",
  "@metamask-previews/remote-feature-flag-controller": "4.1.0-preview-aae9a022a",
  "@metamask-previews/sample-controllers": "4.0.3-preview-aae9a022a",
  "@metamask-previews/seedless-onboarding-controller": "8.1.0-preview-aae9a022a",
  "@metamask-previews/selected-network-controller": "26.0.3-preview-aae9a022a",
  "@metamask-previews/shield-controller": "5.0.1-preview-aae9a022a",
  "@metamask-previews/signature-controller": "39.0.5-preview-aae9a022a",
  "@metamask-previews/storage-service": "1.0.0-preview-aae9a022a",
  "@metamask-previews/subscription-controller": "6.0.1-preview-aae9a022a",
  "@metamask-previews/transaction-controller": "62.21.0-preview-aae9a022a",
  "@metamask-previews/transaction-pay-controller": "16.4.1-preview-aae9a022a",
  "@metamask-previews/user-operation-controller": "41.0.3-preview-aae9a022a"
}


// === MESSENGER ===

const MESSENGER_EXPOSED_METHODS = [
Copy link
Member

Choose a reason for hiding this comment

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

Could these not be auto-generated also since it correlates to any public methods?

We could store these constants in the action-types file also?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Actually, the action-types file is auto-generated from this constant and shouldn’t be updated manually. This constant is what triggers the action types generation.

Copy link
Member

Choose a reason for hiding this comment

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

Exactly, but this constant surely just maps to every public method, so could we skip a step?

Copy link
Contributor

Choose a reason for hiding this comment

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

@matthewwalsh0 we can have public methods that are available but not exposed through the messenger, that's why we can't auto-generate this array.

Copy link
Member

@matthewwalsh0 matthewwalsh0 Mar 16, 2026

Choose a reason for hiding this comment

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

Why would we want that though? Is the intent of this PR not to assume all our public methods should be in the messenger? Is the end goal not to exclusively interact with our controllers via messenger actions in the clients and other controllers?

Copy link
Contributor

Choose a reason for hiding this comment

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

@matthewwalsh0 Yes, that is true. In the end we do want to use the messenger to facilitate communication between controllers and services in the platform, and even between the background/engine layer and UI layer in the clients. So at this stage we should be exposing all public methods through the messenger and we should be making any methods that are not accessed in the background/engine or UI layers private (or removing them if they are dead code).

We just don't have a way to automatically expose all public methods through the messenger because when we added this MESSENGER_EXPOSED_METHODS constant and the accompanying script, we weren't at the stage where we were ready to make the change we are making now, we just wanted to make it easier for teams to do what they were already doing at the time. I guess we could do that now, but we didn't want to change the workflow. Once we are finished going through all controllers and exposing methods through the messenger, we can follow your suggestion and reduce the boilerplate around the messenger even further.

Copy link
Contributor

Choose a reason for hiding this comment

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

I'm wondering if renaming the methods here isn't a stretch of the OG task 🤔

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I did this because when reading the action type it was meaning what it does. and thats why I asked the team if they are okay with the change. both are breaking the same way either renaming the type or the methods.

Copy link
Contributor

Choose a reason for hiding this comment

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

Renaming the type is breaking but didn't introduce any needed changes in the clients, most of the time we only use them in other controllers. Renaming the method requires the client to update all the usage occurrences of these methods.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

That might be true for this specific controller, but it’s not true in general, it depends on the controller and how it’s being used. We’ve generally been leaning toward using the Messenger, and the work I’m doing in this PR is specifically to make clients consume these directly via the Messenger.

Ultimately, it comes down to which version is clearer in the UI. I’m not particularly in favor of either option, I raised the question with the team on Slack to avoid renaming later and having to introduce a breaking change. I will let them decide.

Copy link
Contributor

Choose a reason for hiding this comment

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

@cryptodev-2s I would suggest not renaming the methods themselves, but merely exposing them through the messenger. We should certainly let the team decide whether they want to do that but regardless I would agree that kind of change seems out of scope for this ticket.

Copy link
Contributor

Choose a reason for hiding this comment

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

@cryptodev-2s Oh, but I see, the names of the messenger actions currently don't match the names of the methods. Hmm 🤔 I will still recommend an approach that does not force us or the team to make many changes to the clients. So maybe we should favor the names of the methods and name the actions after that.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@mcmire clients PRs are already ready as shared in the description

@cryptodev-2s
Copy link
Contributor Author

@metamaskbot publish-previews

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "5.0.1-preview-cd2daacf2",
  "@metamask-previews/accounts-controller": "37.0.0-preview-cd2daacf2",
  "@metamask-previews/address-book-controller": "7.0.1-preview-cd2daacf2",
  "@metamask-previews/ai-controllers": "0.2.0-preview-cd2daacf2",
  "@metamask-previews/analytics-controller": "1.0.0-preview-cd2daacf2",
  "@metamask-previews/analytics-data-regulation-controller": "0.0.0-preview-cd2daacf2",
  "@metamask-previews/announcement-controller": "8.0.0-preview-cd2daacf2",
  "@metamask-previews/app-metadata-controller": "2.0.0-preview-cd2daacf2",
  "@metamask-previews/approval-controller": "8.0.0-preview-cd2daacf2",
  "@metamask-previews/assets-controller": "2.3.0-preview-cd2daacf2",
  "@metamask-previews/assets-controllers": "100.2.1-preview-cd2daacf2",
  "@metamask-previews/base-controller": "9.0.0-preview-cd2daacf2",
  "@metamask-previews/base-data-service": "0.0.0-preview-cd2daacf2",
  "@metamask-previews/bridge-controller": "69.1.0-preview-cd2daacf2",
  "@metamask-previews/bridge-status-controller": "68.1.0-preview-cd2daacf2",
  "@metamask-previews/build-utils": "3.0.4-preview-cd2daacf2",
  "@metamask-previews/chain-agnostic-permission": "1.4.0-preview-cd2daacf2",
  "@metamask-previews/claims-controller": "0.4.3-preview-cd2daacf2",
  "@metamask-previews/client-controller": "1.0.0-preview-cd2daacf2",
  "@metamask-previews/compliance-controller": "1.0.1-preview-cd2daacf2",
  "@metamask-previews/composable-controller": "12.0.0-preview-cd2daacf2",
  "@metamask-previews/config-registry-controller": "0.1.1-preview-cd2daacf2",
  "@metamask-previews/connectivity-controller": "0.1.0-preview-cd2daacf2",
  "@metamask-previews/controller-utils": "11.19.0-preview-cd2daacf2",
  "@metamask-previews/core-backend": "6.1.1-preview-cd2daacf2",
  "@metamask-previews/delegation-controller": "2.0.2-preview-cd2daacf2",
  "@metamask-previews/earn-controller": "11.1.2-preview-cd2daacf2",
  "@metamask-previews/eip-5792-middleware": "3.0.0-preview-cd2daacf2",
  "@metamask-previews/eip-7702-internal-rpc-middleware": "0.1.0-preview-cd2daacf2",
  "@metamask-previews/eip1193-permission-middleware": "1.0.3-preview-cd2daacf2",
  "@metamask-previews/ens-controller": "19.0.3-preview-cd2daacf2",
  "@metamask-previews/error-reporting-service": "3.0.1-preview-cd2daacf2",
  "@metamask-previews/eth-block-tracker": "15.0.1-preview-cd2daacf2",
  "@metamask-previews/eth-json-rpc-middleware": "23.1.0-preview-cd2daacf2",
  "@metamask-previews/eth-json-rpc-provider": "6.0.0-preview-cd2daacf2",
  "@metamask-previews/foundryup": "1.0.1-preview-cd2daacf2",
  "@metamask-previews/gas-fee-controller": "26.0.3-preview-cd2daacf2",
  "@metamask-previews/gator-permissions-controller": "2.1.0-preview-cd2daacf2",
  "@metamask-previews/geolocation-controller": "0.1.1-preview-cd2daacf2",
  "@metamask-previews/json-rpc-engine": "10.2.3-preview-cd2daacf2",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.8-preview-cd2daacf2",
  "@metamask-previews/keyring-controller": "25.1.0-preview-cd2daacf2",
  "@metamask-previews/logging-controller": "7.0.1-preview-cd2daacf2",
  "@metamask-previews/message-manager": "14.1.0-preview-cd2daacf2",
  "@metamask-previews/messenger": "0.3.0-preview-cd2daacf2",
  "@metamask-previews/multichain-account-service": "7.1.0-preview-cd2daacf2",
  "@metamask-previews/multichain-api-middleware": "1.2.7-preview-cd2daacf2",
  "@metamask-previews/multichain-network-controller": "3.0.5-preview-cd2daacf2",
  "@metamask-previews/multichain-transactions-controller": "7.0.2-preview-cd2daacf2",
  "@metamask-previews/name-controller": "9.0.0-preview-cd2daacf2",
  "@metamask-previews/network-controller": "30.0.0-preview-cd2daacf2",
  "@metamask-previews/network-enablement-controller": "4.2.0-preview-cd2daacf2",
  "@metamask-previews/notification-services-controller": "22.1.0-preview-cd2daacf2",
  "@metamask-previews/permission-controller": "12.2.0-preview-cd2daacf2",
  "@metamask-previews/permission-log-controller": "5.0.0-preview-cd2daacf2",
  "@metamask-previews/perps-controller": "1.0.1-preview-cd2daacf2",
  "@metamask-previews/phishing-controller": "16.3.0-preview-cd2daacf2",
  "@metamask-previews/polling-controller": "16.0.3-preview-cd2daacf2",
  "@metamask-previews/preferences-controller": "23.0.0-preview-cd2daacf2",
  "@metamask-previews/profile-metrics-controller": "3.0.3-preview-cd2daacf2",
  "@metamask-previews/profile-sync-controller": "28.0.0-preview-cd2daacf2",
  "@metamask-previews/ramps-controller": "12.0.0-preview-cd2daacf2",
  "@metamask-previews/rate-limit-controller": "7.0.0-preview-cd2daacf2",
  "@metamask-previews/remote-feature-flag-controller": "4.1.0-preview-cd2daacf2",
  "@metamask-previews/sample-controllers": "4.0.3-preview-cd2daacf2",
  "@metamask-previews/seedless-onboarding-controller": "8.1.0-preview-cd2daacf2",
  "@metamask-previews/selected-network-controller": "26.0.3-preview-cd2daacf2",
  "@metamask-previews/shield-controller": "5.0.1-preview-cd2daacf2",
  "@metamask-previews/signature-controller": "39.0.5-preview-cd2daacf2",
  "@metamask-previews/storage-service": "1.0.0-preview-cd2daacf2",
  "@metamask-previews/subscription-controller": "6.0.1-preview-cd2daacf2",
  "@metamask-previews/transaction-controller": "62.21.0-preview-cd2daacf2",
  "@metamask-previews/transaction-pay-controller": "16.4.1-preview-cd2daacf2",
  "@metamask-previews/user-operation-controller": "41.0.3-preview-cd2daacf2"
}

@cryptodev-2s
Copy link
Contributor Author

@metamaskbot publish-previews

@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "5.0.1-preview-ab77ad36e",
  "@metamask-previews/accounts-controller": "37.0.0-preview-ab77ad36e",
  "@metamask-previews/address-book-controller": "7.0.1-preview-ab77ad36e",
  "@metamask-previews/ai-controllers": "0.3.0-preview-ab77ad36e",
  "@metamask-previews/analytics-controller": "1.0.0-preview-ab77ad36e",
  "@metamask-previews/analytics-data-regulation-controller": "0.0.0-preview-ab77ad36e",
  "@metamask-previews/announcement-controller": "8.0.0-preview-ab77ad36e",
  "@metamask-previews/app-metadata-controller": "2.0.0-preview-ab77ad36e",
  "@metamask-previews/approval-controller": "8.0.0-preview-ab77ad36e",
  "@metamask-previews/assets-controller": "2.3.0-preview-ab77ad36e",
  "@metamask-previews/assets-controllers": "100.2.1-preview-ab77ad36e",
  "@metamask-previews/base-controller": "9.0.0-preview-ab77ad36e",
  "@metamask-previews/base-data-service": "0.0.0-preview-ab77ad36e",
  "@metamask-previews/bridge-controller": "69.1.0-preview-ab77ad36e",
  "@metamask-previews/bridge-status-controller": "68.1.0-preview-ab77ad36e",
  "@metamask-previews/build-utils": "3.0.4-preview-ab77ad36e",
  "@metamask-previews/chain-agnostic-permission": "1.4.0-preview-ab77ad36e",
  "@metamask-previews/claims-controller": "0.4.3-preview-ab77ad36e",
  "@metamask-previews/client-controller": "1.0.0-preview-ab77ad36e",
  "@metamask-previews/compliance-controller": "1.0.1-preview-ab77ad36e",
  "@metamask-previews/composable-controller": "12.0.0-preview-ab77ad36e",
  "@metamask-previews/config-registry-controller": "0.1.1-preview-ab77ad36e",
  "@metamask-previews/connectivity-controller": "0.1.0-preview-ab77ad36e",
  "@metamask-previews/controller-utils": "11.19.0-preview-ab77ad36e",
  "@metamask-previews/core-backend": "6.1.1-preview-ab77ad36e",
  "@metamask-previews/delegation-controller": "2.0.2-preview-ab77ad36e",
  "@metamask-previews/earn-controller": "11.1.2-preview-ab77ad36e",
  "@metamask-previews/eip-5792-middleware": "3.0.0-preview-ab77ad36e",
  "@metamask-previews/eip-7702-internal-rpc-middleware": "0.1.0-preview-ab77ad36e",
  "@metamask-previews/eip1193-permission-middleware": "1.0.3-preview-ab77ad36e",
  "@metamask-previews/ens-controller": "19.0.3-preview-ab77ad36e",
  "@metamask-previews/error-reporting-service": "3.0.1-preview-ab77ad36e",
  "@metamask-previews/eth-block-tracker": "15.0.1-preview-ab77ad36e",
  "@metamask-previews/eth-json-rpc-middleware": "23.1.0-preview-ab77ad36e",
  "@metamask-previews/eth-json-rpc-provider": "6.0.0-preview-ab77ad36e",
  "@metamask-previews/foundryup": "1.0.1-preview-ab77ad36e",
  "@metamask-previews/gas-fee-controller": "26.0.3-preview-ab77ad36e",
  "@metamask-previews/gator-permissions-controller": "2.1.0-preview-ab77ad36e",
  "@metamask-previews/geolocation-controller": "0.1.1-preview-ab77ad36e",
  "@metamask-previews/json-rpc-engine": "10.2.3-preview-ab77ad36e",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.8-preview-ab77ad36e",
  "@metamask-previews/keyring-controller": "25.1.0-preview-ab77ad36e",
  "@metamask-previews/logging-controller": "7.0.1-preview-ab77ad36e",
  "@metamask-previews/message-manager": "14.1.0-preview-ab77ad36e",
  "@metamask-previews/messenger": "0.3.0-preview-ab77ad36e",
  "@metamask-previews/multichain-account-service": "7.1.0-preview-ab77ad36e",
  "@metamask-previews/multichain-api-middleware": "1.2.7-preview-ab77ad36e",
  "@metamask-previews/multichain-network-controller": "3.0.5-preview-ab77ad36e",
  "@metamask-previews/multichain-transactions-controller": "7.0.2-preview-ab77ad36e",
  "@metamask-previews/name-controller": "9.0.0-preview-ab77ad36e",
  "@metamask-previews/network-controller": "30.0.0-preview-ab77ad36e",
  "@metamask-previews/network-enablement-controller": "4.2.0-preview-ab77ad36e",
  "@metamask-previews/notification-services-controller": "23.0.0-preview-ab77ad36e",
  "@metamask-previews/permission-controller": "12.2.0-preview-ab77ad36e",
  "@metamask-previews/permission-log-controller": "5.0.0-preview-ab77ad36e",
  "@metamask-previews/perps-controller": "1.0.1-preview-ab77ad36e",
  "@metamask-previews/phishing-controller": "16.3.0-preview-ab77ad36e",
  "@metamask-previews/polling-controller": "16.0.3-preview-ab77ad36e",
  "@metamask-previews/preferences-controller": "23.0.0-preview-ab77ad36e",
  "@metamask-previews/profile-metrics-controller": "3.0.3-preview-ab77ad36e",
  "@metamask-previews/profile-sync-controller": "28.0.0-preview-ab77ad36e",
  "@metamask-previews/ramps-controller": "12.0.0-preview-ab77ad36e",
  "@metamask-previews/rate-limit-controller": "7.0.0-preview-ab77ad36e",
  "@metamask-previews/remote-feature-flag-controller": "4.1.0-preview-ab77ad36e",
  "@metamask-previews/sample-controllers": "4.0.3-preview-ab77ad36e",
  "@metamask-previews/seedless-onboarding-controller": "8.1.0-preview-ab77ad36e",
  "@metamask-previews/selected-network-controller": "26.0.3-preview-ab77ad36e",
  "@metamask-previews/shield-controller": "5.0.1-preview-ab77ad36e",
  "@metamask-previews/signature-controller": "39.0.5-preview-ab77ad36e",
  "@metamask-previews/storage-service": "1.0.0-preview-ab77ad36e",
  "@metamask-previews/subscription-controller": "6.0.1-preview-ab77ad36e",
  "@metamask-previews/transaction-controller": "62.21.0-preview-ab77ad36e",
  "@metamask-previews/transaction-pay-controller": "16.5.0-preview-ab77ad36e",
  "@metamask-previews/user-operation-controller": "41.0.3-preview-ab77ad36e"
}

@cryptodev-2s cryptodev-2s marked this pull request as ready for review March 16, 2026 13:42
matthewwalsh0
matthewwalsh0 previously approved these changes Mar 16, 2026
@mcmire
Copy link
Contributor

mcmire commented Mar 16, 2026

Changelog check is failing :(

@cryptodev-2s cryptodev-2s enabled auto-merge March 17, 2026 09:15
@cryptodev-2s
Copy link
Contributor Author

@metamaskbot publish-previews

GuillaumeRx
GuillaumeRx previously approved these changes Mar 17, 2026
@github-actions
Copy link
Contributor

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/account-tree-controller": "5.0.1-preview-6cb7e4bcf",
  "@metamask-previews/accounts-controller": "37.0.0-preview-6cb7e4bcf",
  "@metamask-previews/address-book-controller": "7.0.1-preview-6cb7e4bcf",
  "@metamask-previews/ai-controllers": "0.3.0-preview-6cb7e4bcf",
  "@metamask-previews/analytics-controller": "1.0.0-preview-6cb7e4bcf",
  "@metamask-previews/analytics-data-regulation-controller": "0.0.0-preview-6cb7e4bcf",
  "@metamask-previews/announcement-controller": "8.0.0-preview-6cb7e4bcf",
  "@metamask-previews/app-metadata-controller": "2.0.0-preview-6cb7e4bcf",
  "@metamask-previews/approval-controller": "8.0.0-preview-6cb7e4bcf",
  "@metamask-previews/assets-controller": "2.3.0-preview-6cb7e4bcf",
  "@metamask-previews/assets-controllers": "100.2.1-preview-6cb7e4bcf",
  "@metamask-previews/base-controller": "9.0.0-preview-6cb7e4bcf",
  "@metamask-previews/base-data-service": "0.0.0-preview-6cb7e4bcf",
  "@metamask-previews/bridge-controller": "69.1.0-preview-6cb7e4bcf",
  "@metamask-previews/bridge-status-controller": "68.1.0-preview-6cb7e4bcf",
  "@metamask-previews/build-utils": "3.0.4-preview-6cb7e4bcf",
  "@metamask-previews/chain-agnostic-permission": "1.4.0-preview-6cb7e4bcf",
  "@metamask-previews/claims-controller": "0.4.3-preview-6cb7e4bcf",
  "@metamask-previews/client-controller": "1.0.0-preview-6cb7e4bcf",
  "@metamask-previews/compliance-controller": "1.0.1-preview-6cb7e4bcf",
  "@metamask-previews/composable-controller": "12.0.0-preview-6cb7e4bcf",
  "@metamask-previews/config-registry-controller": "0.1.1-preview-6cb7e4bcf",
  "@metamask-previews/connectivity-controller": "0.1.0-preview-6cb7e4bcf",
  "@metamask-previews/controller-utils": "11.19.0-preview-6cb7e4bcf",
  "@metamask-previews/core-backend": "6.1.1-preview-6cb7e4bcf",
  "@metamask-previews/delegation-controller": "2.0.2-preview-6cb7e4bcf",
  "@metamask-previews/earn-controller": "11.1.2-preview-6cb7e4bcf",
  "@metamask-previews/eip-5792-middleware": "3.0.0-preview-6cb7e4bcf",
  "@metamask-previews/eip-7702-internal-rpc-middleware": "0.1.0-preview-6cb7e4bcf",
  "@metamask-previews/eip1193-permission-middleware": "1.0.3-preview-6cb7e4bcf",
  "@metamask-previews/ens-controller": "19.0.3-preview-6cb7e4bcf",
  "@metamask-previews/error-reporting-service": "3.0.1-preview-6cb7e4bcf",
  "@metamask-previews/eth-block-tracker": "15.0.1-preview-6cb7e4bcf",
  "@metamask-previews/eth-json-rpc-middleware": "23.1.0-preview-6cb7e4bcf",
  "@metamask-previews/eth-json-rpc-provider": "6.0.0-preview-6cb7e4bcf",
  "@metamask-previews/foundryup": "1.0.1-preview-6cb7e4bcf",
  "@metamask-previews/gas-fee-controller": "26.0.3-preview-6cb7e4bcf",
  "@metamask-previews/gator-permissions-controller": "2.1.0-preview-6cb7e4bcf",
  "@metamask-previews/geolocation-controller": "0.1.1-preview-6cb7e4bcf",
  "@metamask-previews/json-rpc-engine": "10.2.3-preview-6cb7e4bcf",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.8-preview-6cb7e4bcf",
  "@metamask-previews/keyring-controller": "25.1.0-preview-6cb7e4bcf",
  "@metamask-previews/logging-controller": "7.0.1-preview-6cb7e4bcf",
  "@metamask-previews/message-manager": "14.1.0-preview-6cb7e4bcf",
  "@metamask-previews/messenger": "0.3.0-preview-6cb7e4bcf",
  "@metamask-previews/multichain-account-service": "7.1.0-preview-6cb7e4bcf",
  "@metamask-previews/multichain-api-middleware": "1.2.7-preview-6cb7e4bcf",
  "@metamask-previews/multichain-network-controller": "3.0.5-preview-6cb7e4bcf",
  "@metamask-previews/multichain-transactions-controller": "7.0.2-preview-6cb7e4bcf",
  "@metamask-previews/name-controller": "9.0.0-preview-6cb7e4bcf",
  "@metamask-previews/network-controller": "30.0.0-preview-6cb7e4bcf",
  "@metamask-previews/network-enablement-controller": "4.2.0-preview-6cb7e4bcf",
  "@metamask-previews/notification-services-controller": "23.0.0-preview-6cb7e4bcf",
  "@metamask-previews/permission-controller": "12.2.0-preview-6cb7e4bcf",
  "@metamask-previews/permission-log-controller": "5.0.0-preview-6cb7e4bcf",
  "@metamask-previews/perps-controller": "1.1.0-preview-6cb7e4bcf",
  "@metamask-previews/phishing-controller": "16.3.0-preview-6cb7e4bcf",
  "@metamask-previews/polling-controller": "16.0.3-preview-6cb7e4bcf",
  "@metamask-previews/preferences-controller": "23.0.0-preview-6cb7e4bcf",
  "@metamask-previews/profile-metrics-controller": "3.0.4-preview-6cb7e4bcf",
  "@metamask-previews/profile-sync-controller": "28.0.0-preview-6cb7e4bcf",
  "@metamask-previews/ramps-controller": "12.0.0-preview-6cb7e4bcf",
  "@metamask-previews/rate-limit-controller": "7.0.0-preview-6cb7e4bcf",
  "@metamask-previews/remote-feature-flag-controller": "4.1.0-preview-6cb7e4bcf",
  "@metamask-previews/sample-controllers": "4.0.3-preview-6cb7e4bcf",
  "@metamask-previews/seedless-onboarding-controller": "8.1.0-preview-6cb7e4bcf",
  "@metamask-previews/selected-network-controller": "26.0.3-preview-6cb7e4bcf",
  "@metamask-previews/shield-controller": "5.0.1-preview-6cb7e4bcf",
  "@metamask-previews/signature-controller": "39.0.5-preview-6cb7e4bcf",
  "@metamask-previews/storage-service": "1.0.0-preview-6cb7e4bcf",
  "@metamask-previews/subscription-controller": "6.0.1-preview-6cb7e4bcf",
  "@metamask-previews/transaction-controller": "62.21.0-preview-6cb7e4bcf",
  "@metamask-previews/transaction-pay-controller": "16.5.0-preview-6cb7e4bcf",
  "@metamask-previews/user-operation-controller": "41.0.3-preview-6cb7e4bcf"
}

Copy link
Member

@matthewwalsh0 matthewwalsh0 left a comment

Choose a reason for hiding this comment

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

Apologies, just releasing, then will re-approve.

Copy link
Member

@ffmcgee725 ffmcgee725 left a comment

Choose a reason for hiding this comment

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

LGTM in regards to @MetaMask/wallet-integrations owned files!

@cryptodev-2s cryptodev-2s added this pull request to the merge queue Mar 17, 2026
Merged via the queue into main with commit 6329bc8 Mar 17, 2026
321 of 322 checks passed
@cryptodev-2s cryptodev-2s deleted the chore/expose-confirmations-controller-methods-through-messenger branch March 17, 2026 11:34
@cryptodev-2s
Copy link
Contributor Author

@metamaskbot publish-previews

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.

7 participants