fix: max mUSD conversion displays wrong value#29175
Conversation
… executeEnabled flag to gaslessEnabled
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning MetaMask internal reviewing guidelines:
|
- Remove now-duplicate MANTLE entry in customNetworks.tsx (provided by TC 64.3.0 CHAIN_IDS) - Add yarn resolutions mapping transaction-controller ^63.0.0 and ^63.3.1 to ^64.2.0 so gator-permissions-controller 3.0.0 uses the unified root type - Dedupe lockfile
🔍 Smart E2E Test Selection⏭️ Smart E2E selection skipped - PR targets a release branch (release/*) All E2E tests pre-selected. |
|
|
✅ E2E Fixture Validation — Schema is up to date |



Description
Fixes the max mUSD conversion showing an inflated receive amount. Relay previously charged a fee and reimbursed it on the destination side; they have since stopped charging the fee, so our compensating adjustment now over-reports the received value.
Bumps
@metamask/transaction-pay-controllerfrom^19.1.1to^19.2.1, which stops double-counting the subsidised fee in Relay quote target amounts, and patches the installed package to rename the Relay gasless feature flag fromexecuteEnabledtogaslessEnabledso older, known-broken versions cannot be re-enabled by the flag (which predates per-version gating).Changelog
CHANGELOG entry: Fixed max mUSD conversion displaying an inflated receive amount.
Related issues
Fixes: #29173
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist
Note
Medium Risk
Updates core transaction/pay controller dependencies and applies a patch that changes which remote feature flag enables Relay gasless execution, which could affect pay/quote flows if flag configuration or dependency behavior differs from expectations.
Overview
Fixes an inflated “max” conversion receive amount by bumping
@metamask/transaction-pay-controllerto^19.2.1(and aligning related controller versions viayarn.lock/resolutions).Adds a patch to
@metamask/transaction-pay-controllerthat switches the Relay enablement check fromconfirmations_pay.payStrategies.relay.executeEnabledto...relay.gaslessEnabled, preventing older broken builds from being re-enabled by the previous flag name.Separately removes the locally-defined
MANTLEentry fromNETWORK_CHAIN_IDincustomNetworks.tsx(relying onCHAIN_IDSfor it instead).Reviewed by Cursor Bugbot for commit 67e50b9. Bugbot is set up for automated code reviews on this repo. Configure here.