Skip to content

fix: cp-7.80.0 metamask pay failures due to incorrect token balance#30877

Merged
matthewwalsh0 merged 2 commits into
mainfrom
chore/bump-transaction-pay-controller-23.0.0
Jun 2, 2026
Merged

fix: cp-7.80.0 metamask pay failures due to incorrect token balance#30877
matthewwalsh0 merged 2 commits into
mainfrom
chore/bump-transaction-pay-controller-23.0.0

Conversation

@matthewwalsh0

@matthewwalsh0 matthewwalsh0 commented Jun 1, 2026

Copy link
Copy Markdown
Member

Description

Bumps @metamask/transaction-pay-controller to ^23.0.0. The breaking change in this release requires the NetworkController:getNetworkConfigurationByChainId action to be delegated on the TransactionPayControllerMessenger and TransactionControllerInitMessenger.

Changelog

CHANGELOG entry: null

Related issues

Fixes: #30798

Manual testing steps

Covered by existing Pay E2E flows — no new behaviour introduced.

Screenshots/Recordings

Pre-merge author checklist

Performance checks (if applicable)

  • I've tested on Android
    • Ideally on a mid-range device; emulator is acceptable
  • I've tested with a power user scenario
    • Use these power-user SRPs to import wallets with many accounts and tokens
  • I've instrumented key operations with Sentry traces for production performance metrics

For performance guidelines and tooling, see the Performance Guide.

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Low Risk
Narrow dependency bump plus messenger wiring with no new app business logic; Pay E2E is expected to cover regressions.

Overview
Upgrades @metamask/transaction-pay-controller from 22.8.0 to 23.0.0 (lockfile included) so MetaMask Pay picks up the fix for incorrect token balance behavior described in the release.

The mobile app wires the new v23 messenger requirement by delegating NetworkController:getNetworkConfigurationByChainId on the Transaction Pay controller messenger (runtime and init) and on TransactionControllerInit messenger, so Pay and transaction init paths can read per-chain network configuration at runtime.

No application logic beyond messenger delegation and the dependency bump; behavior change lives in the upgraded package.

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

@matthewwalsh0 matthewwalsh0 force-pushed the chore/bump-transaction-pay-controller-23.0.0 branch from 41fc51a to cb5157b Compare June 1, 2026 16:15
@matthewwalsh0 matthewwalsh0 added the team-confirmations Push issues to confirmations team label Jun 1, 2026
@matthewwalsh0 matthewwalsh0 force-pushed the chore/bump-transaction-pay-controller-23.0.0 branch from cb5157b to d0cc584 Compare June 1, 2026 16:22
@github-actions github-actions Bot added the size-S label Jun 1, 2026
@socket-security

socket-security Bot commented Jun 1, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatednpm/​@​metamask/​transaction-pay-controller@​22.8.0 ⏵ 23.0.09710081 +198 +1100

View full report

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.68%. Comparing base (13349a0) to head (d0cc584).
⚠️ Report is 15 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #30877      +/-   ##
==========================================
+ Coverage   82.66%   82.68%   +0.02%     
==========================================
  Files        5551     5560       +9     
  Lines      142775   142975     +200     
  Branches    32957    33017      +60     
==========================================
+ Hits       118026   118224     +198     
+ Misses      16890    16879      -11     
- Partials     7859     7872      +13     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions github-actions Bot added size-XS and removed size-S labels Jun 1, 2026
@matthewwalsh0 matthewwalsh0 changed the title chore: bump @metamask/transaction-pay-controller to ^23.0.0 fix: cp-7.80.0 metamask pay failures due to incorrect token balance Jun 2, 2026
The 23.0.0 breaking change requires clients to allow the
NetworkController:getNetworkConfigurationByChainId action on the
TransactionPayControllerMessenger so live token balance queries can
prefer the chain's Infura endpoint.

Added to both TransactionPayControllerMessenger and
TransactionControllerInitMessenger (the latter is cast as
TransactionPayControllerMessenger inside the publish hook).

Fixes #30798
@matthewwalsh0 matthewwalsh0 force-pushed the chore/bump-transaction-pay-controller-23.0.0 branch from a3686bf to 1f7dbbe Compare June 2, 2026 09:31
@github-actions

github-actions Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: SmokeAccounts, SmokeConfirmations, SmokeIdentity, SmokeNetworkAbstractions, SmokeNetworkExpansion, SmokeSwap, SmokeStake, SmokeWalletPlatform, SmokeMoney, SmokePerps, SmokeMultiChainAPI, SmokePredictions, SmokeSeedlessOnboarding, SmokeBrowser, SmokeSnaps
  • Selected Performance tags: @PerformanceAccountList, @PerformanceOnboarding, @PerformanceLogin, @PerformanceSwaps, @PerformanceLaunch, @PerformanceAssetLoading, @PerformancePredict, @PerformancePreps
  • Risk Level: high
  • AI Confidence: 100%
click to see 🤖 AI reasoning details

E2E Test Selection:
Hard rule (controller-version-update): @MetaMask controller package version updated in package.json: @metamask/transaction-pay-controller. Running all tests.

Performance Test Selection:
Hard rule (controller-version-update): @MetaMask controller package version updated in package.json: @metamask/transaction-pay-controller. Running all tests.

View GitHub Actions results

@matthewwalsh0 matthewwalsh0 marked this pull request as ready for review June 2, 2026 12:20
@matthewwalsh0 matthewwalsh0 requested a review from a team as a code owner June 2, 2026 12:20
@github-actions github-actions Bot added the risk:high AI analysis: high risk label Jun 2, 2026
@matthewwalsh0 matthewwalsh0 added this pull request to the merge queue Jun 2, 2026
Merged via the queue into main with commit f764558 Jun 2, 2026
493 of 501 checks passed
@matthewwalsh0 matthewwalsh0 deleted the chore/bump-transaction-pay-controller-23.0.0 branch June 2, 2026 12:58
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 2, 2026
@metamaskbotv2 metamaskbotv2 Bot added the release-7.81.0 Issue or pull request that will be included in release 7.81.0 label Jun 2, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-7.81.0 Issue or pull request that will be included in release 7.81.0 risk:high AI analysis: high risk size-XS team-confirmations Push issues to confirmations team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: mUSD failure due to incorrect onchain nonce

3 participants