Skip to content

release(runway): cherry-pick fix(perps): update perps controller 3.1.1#41914

Merged
chloeYue merged 4 commits into
release/13.28.0from
cherry-pick-13-28-0-97ee416
Apr 20, 2026
Merged

release(runway): cherry-pick fix(perps): update perps controller 3.1.1#41914
chloeYue merged 4 commits into
release/13.28.0from
cherry-pick-13-28-0-97ee416

Conversation

@runway-github

@runway-github runway-github Bot commented Apr 18, 2026

Copy link
Copy Markdown
Contributor

Description

This PR is the base branch for the perps controller update and
decimal-logic work in
TAT-2699.

It upgrades the extension to @metamask/perps-controller@3.1.1, keeps
the decimal/calculation logic changes, and includes the required
extension integration support for that controller update
(StorageService wiring, Jest support, and LavaMoat updates). A few
perps UI files still appear here only where the retained hunks are
logic-owned rather than presentation-only.

The UI-facing display/formatting parity changes were split out into
stacked PR
#41853.

Changelog

CHANGELOG entry: null

Related issues

Fixes:
TAT-2699

Related:

Manual testing steps

  1. Open a perps market such as BTC or ETH in extension.
  2. Verify order-entry calculations use the updated decimal logic for
    size, margin, liquidation, and fees.
  3. Verify the perps controller initializes correctly and the relevant
    perps screens still load.
  4. Run the extension perps validation recipe:
    temp/agentic/recipes/teams/perps/recipes/pr-41558-decimal-formatting.json.

Screenshots/Recordings

Before

N/A for this split PR. UI-facing screenshot evidence lives in stacked PR
#41853.

After

N/A for this split PR. UI-facing screenshot evidence lives in stacked PR
#41853.

Pre-merge author checklist

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

Medium Risk
Medium risk because it upgrades a core dependency and changes perps
infrastructure wiring (formatting, Sentry breadcrumbs, and persistent
cache via StorageService), which can affect order-entry calculations and
cached market data behavior.

Overview
Upgrades @metamask/perps-controller to 3.1.1 and updates perps
infrastructure to use the package-provided
formatPerpsFiat/formatPercentage and expose
PRICE_RANGES_UNIVERSAL, aligning formatting behavior with the
controller.

Adds a diskCache implementation to createPerpsInfrastructure
backed by StorageService (with an in-memory read-through cache) and
wires the required StorageService:getItem/setItem/removeItem actions
through the perps messenger/init path.

Extends tracing to forward addBreadcrumb calls to Sentry, adds
perpsCalculateLiquidationPrice to the background API wiring/tests, and
updates LavaMoat policies to allow Intl.NumberFormat for the perps
controller.

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


Co-authored-by: MetaMask Bot metamaskbot@users.noreply.github.com 97ee416

This PR is the base branch for the perps controller update and
decimal-logic work in
[TAT-2699](https://consensyssoftware.atlassian.net/browse/TAT-2699).

It upgrades the extension to `@metamask/perps-controller@3.1.1`, keeps
the decimal/calculation logic changes, and includes the required
extension integration support for that controller update
(`StorageService` wiring, Jest support, and LavaMoat updates). A few
perps UI files still appear here only where the retained hunks are
logic-owned rather than presentation-only.

The UI-facing display/formatting parity changes were split out into
stacked PR
[#41853](#41853).

CHANGELOG entry: null

Fixes:
[TAT-2699](https://consensyssoftware.atlassian.net/browse/TAT-2699)

Related:
- [TAT-2870](https://consensyssoftware.atlassian.net/browse/TAT-2870)
- MetaMask/core#8473
- MetaMask/metamask-mobile#28871
- MetaMask/metamask-mobile#28892
- Stacked UI/display follow-up: #41853

1. Open a perps market such as BTC or ETH in extension.
2. Verify order-entry calculations use the updated decimal logic for
size, margin, liquidation, and fees.
3. Verify the perps controller initializes correctly and the relevant
perps screens still load.
4. Run the extension perps validation recipe:
`temp/agentic/recipes/teams/perps/recipes/pr-41558-decimal-formatting.json`.

N/A for this split PR. UI-facing screenshot evidence lives in stacked PR

N/A for this split PR. UI-facing screenshot evidence lives in stacked PR

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

- [ ] 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.

[TAT-2699]:
https://consensyssoftware.atlassian.net/browse/TAT-2699?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[TAT-2699]:
https://consensyssoftware.atlassian.net/browse/TAT-2699?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[TAT-2870]:
https://consensyssoftware.atlassian.net/browse/TAT-2870?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Medium Risk**
> Medium risk because it upgrades a core dependency and changes perps
infrastructure wiring (formatting, Sentry breadcrumbs, and persistent
cache via StorageService), which can affect order-entry calculations and
cached market data behavior.
>
> **Overview**
> Upgrades `@metamask/perps-controller` to `3.1.1` and updates perps
infrastructure to use the package-provided
`formatPerpsFiat`/`formatPercentage` and expose
`PRICE_RANGES_UNIVERSAL`, aligning formatting behavior with the
controller.
>
> Adds a `diskCache` implementation to `createPerpsInfrastructure`
backed by `StorageService` (with an in-memory read-through cache) and
wires the required `StorageService:getItem/setItem/removeItem` actions
through the perps messenger/init path.
>
> Extends tracing to forward `addBreadcrumb` calls to Sentry, adds
`perpsCalculateLiquidationPrice` to the background API wiring/tests, and
updates LavaMoat policies to allow `Intl.NumberFormat` for the perps
controller.
>
> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit
428562d. Bugbot is set up for automated
code reviews on this repo. Configure
[here](https://www.cursor.com/dashboard/bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: MetaMask Bot <metamaskbot@users.noreply.github.com>
@runway-github runway-github Bot requested review from a team as code owners April 18, 2026 02:32
@github-actions

Copy link
Copy Markdown
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@metamaskbot metamaskbot added the team-bots Bot team (for MetaMask Bot, Runway Bot, etc.) label Apr 18, 2026
@metamaskbotv2

metamaskbotv2 Bot commented Apr 18, 2026

Copy link
Copy Markdown
Contributor
Builds ready [f9c4824]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 12 warn · 🔴 0 fail)

Baseline (latest main): 71bd826 | Date: 10/14/58243 | Pipeline: 24595357780 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-browserify
loadNewAccount🟡 [Show logs]
confirmTx🟡 [Show logs]
bridgeUserActions🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • bridgeUserActions/bridge_load_asset_picker: -50%
  • bridgeUserActions/total: -16%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 2.6s
  • 🟡 confirmTx/FCP: p75 2.6s
  • 🟡 bridgeUserActions/FCP: p75 2.7s
Startup Benchmarks · Samples: 100
Benchmarkchrome-browserifychrome-webpackfirefox-browserifyfirefox-webpack
startupStandardHome🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]
startupPowerUserHome🟡 [Show logs]🟡 [Show logs]🟡 [Show logs] · 🟡 loadScripts🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -21%
  • startupStandardHome/initialActions: -33%
  • startupStandardHome/loadScripts: -12%
  • startupStandardHome/setupStore: +14%
  • startupStandardHome/numNetworkReqs: -16%
  • startupPowerUserHome/uiStartup: -21%
  • startupPowerUserHome/domInteractive: -13%
  • startupPowerUserHome/backgroundConnect: +102%
  • startupPowerUserHome/numNetworkReqs: -50%
  • startupStandardHome/uiStartup: -18%
  • startupStandardHome/load: -13%
  • startupStandardHome/domContentLoaded: -13%
  • startupStandardHome/backgroundConnect: -35%
  • startupStandardHome/firstReactRender: -23%
  • startupStandardHome/loadScripts: -13%
  • startupStandardHome/setupStore: -13%
  • startupStandardHome/numNetworkReqs: -44%
  • startupPowerUserHome/uiStartup: -26%
  • startupPowerUserHome/domInteractive: -17%
  • startupPowerUserHome/numNetworkReqs: +48%
  • startupStandardHome/uiStartup: -11%
  • startupStandardHome/domInteractive: -55%
  • startupStandardHome/initialActions: +33%
  • startupStandardHome/numNetworkReqs: -34%
  • startupPowerUserHome/uiStartup: -35%
  • startupPowerUserHome/backgroundConnect: -31%
  • startupStandardHome/uiStartup: -18%
  • startupStandardHome/load: -11%
  • startupStandardHome/domContentLoaded: -11%
  • startupStandardHome/domInteractive: -55%
  • startupStandardHome/initialActions: -43%
  • startupStandardHome/loadScripts: -11%
  • startupStandardHome/setupStore: -60%
  • startupStandardHome/numNetworkReqs: -32%
  • startupPowerUserHome/uiStartup: -29%
  • startupPowerUserHome/backgroundConnect: -22%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🔴 startupPowerUserHome/INP: p75 760ms
  • 🔴 startupPowerUserHome/INP: p75 664ms
  • 🟡 startupPowerUserHome/LCP: p75 3.5s
  • 🟡 startupPowerUserHome/INP: p75 288ms
  • 🟡 startupPowerUserHome/LCP: p75 3.6s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
assetDetails🟡 [Show logs]
solanaAssetDetails🟡 [Show logs]
importSrpHome🟡 [Show logs]
sendTransactions🟡 [Show logs]
swap🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/srpButtonToSrpForm: -85%
  • onboardingImportWallet/metricsToWalletReadyScreen: -32%
  • onboardingImportWallet/doneButtonToHomeScreen: -79%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: +27%
  • onboardingImportWallet/total: -44%
  • onboardingNewWallet/srpButtonToPwForm: -78%
  • onboardingNewWallet/skipBackupToMetricsScreen: -67%
  • onboardingNewWallet/doneButtonToAssetList: -19%
  • onboardingNewWallet/total: -22%
  • assetDetails/assetClickToPriceChart: -36%
  • assetDetails/total: -36%
  • solanaAssetDetails/assetClickToPriceChart: -72%
  • solanaAssetDetails/total: -72%
  • importSrpHome/openAccountMenuAfterLogin: -74%
  • importSrpHome/homeAfterImportWithNewWallet: -71%
  • importSrpHome/total: -60%
  • sendTransactions/selectTokenToSendFormLoaded: -35%
  • sendTransactions/reviewTransactionToConfirmationPage: +35%
  • sendTransactions/total: +33%
  • swap/openSwapPageFromHome: -97%
  • swap/fetchAndDisplaySwapQuotes: +31%
  • swap/total: +11%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/INP: p75 232ms
  • 🟡 assetDetails/FCP: p75 2.6s
  • 🟡 solanaAssetDetails/FCP: p75 2.5s
  • 🟡 importSrpHome/INP: p75 208ms
  • 🟡 importSrpHome/FCP: p75 2.6s
  • 🟡 sendTransactions/INP: p75 216ms
  • 🟡 sendTransactions/FCP: p75 2.6s
  • 🟡 swap/FCP: p75 2.6s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-browserify
dappPageLoad🟢 [Show logs]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 6.01 MiB (100%)
  • ui: 8.3 MiB (100%)
  • common: 13.14 MiB (100%)

@metamaskbotv2

metamaskbotv2 Bot commented Apr 18, 2026

Copy link
Copy Markdown
Contributor
Builds ready [f9c4824]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 12 warn · 🔴 0 fail)

Baseline (latest main): 71bd826 | Date: 10/14/58243 | Pipeline: 24595357780 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-browserify
loadNewAccount🟡 [Show logs]
confirmTx🟡 [Show logs]
bridgeUserActions🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • bridgeUserActions/bridge_load_asset_picker: -50%
  • bridgeUserActions/total: -16%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 2.6s
  • 🟡 confirmTx/FCP: p75 2.6s
  • 🟡 bridgeUserActions/FCP: p75 2.7s
Startup Benchmarks · Samples: 100
Benchmarkchrome-browserifychrome-webpackfirefox-browserifyfirefox-webpack
startupStandardHome🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]
startupPowerUserHome🟡 [Show logs]🟡 [Show logs]🟡 [Show logs] · 🟡 loadScripts🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -21%
  • startupStandardHome/initialActions: -33%
  • startupStandardHome/loadScripts: -12%
  • startupStandardHome/setupStore: +14%
  • startupStandardHome/numNetworkReqs: -16%
  • startupPowerUserHome/uiStartup: -21%
  • startupPowerUserHome/domInteractive: -13%
  • startupPowerUserHome/backgroundConnect: +102%
  • startupPowerUserHome/numNetworkReqs: -50%
  • startupStandardHome/uiStartup: -18%
  • startupStandardHome/load: -13%
  • startupStandardHome/domContentLoaded: -13%
  • startupStandardHome/backgroundConnect: -35%
  • startupStandardHome/firstReactRender: -23%
  • startupStandardHome/loadScripts: -13%
  • startupStandardHome/setupStore: -13%
  • startupStandardHome/numNetworkReqs: -44%
  • startupPowerUserHome/uiStartup: -26%
  • startupPowerUserHome/domInteractive: -17%
  • startupPowerUserHome/numNetworkReqs: +48%
  • startupStandardHome/uiStartup: -11%
  • startupStandardHome/domInteractive: -55%
  • startupStandardHome/initialActions: +33%
  • startupStandardHome/numNetworkReqs: -34%
  • startupPowerUserHome/uiStartup: -35%
  • startupPowerUserHome/backgroundConnect: -31%
  • startupStandardHome/uiStartup: -18%
  • startupStandardHome/load: -11%
  • startupStandardHome/domContentLoaded: -11%
  • startupStandardHome/domInteractive: -55%
  • startupStandardHome/initialActions: -43%
  • startupStandardHome/loadScripts: -11%
  • startupStandardHome/setupStore: -60%
  • startupStandardHome/numNetworkReqs: -32%
  • startupPowerUserHome/uiStartup: -29%
  • startupPowerUserHome/backgroundConnect: -22%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🔴 startupPowerUserHome/INP: p75 760ms
  • 🔴 startupPowerUserHome/INP: p75 664ms
  • 🟡 startupPowerUserHome/LCP: p75 3.5s
  • 🟡 startupPowerUserHome/INP: p75 288ms
  • 🟡 startupPowerUserHome/LCP: p75 3.6s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
assetDetails🟡 [Show logs]
solanaAssetDetails🟡 [Show logs]
importSrpHome🟡 [Show logs]
sendTransactions🟡 [Show logs]
swap🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/srpButtonToSrpForm: -85%
  • onboardingImportWallet/metricsToWalletReadyScreen: -32%
  • onboardingImportWallet/doneButtonToHomeScreen: -79%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: +27%
  • onboardingImportWallet/total: -44%
  • onboardingNewWallet/srpButtonToPwForm: -78%
  • onboardingNewWallet/skipBackupToMetricsScreen: -67%
  • onboardingNewWallet/doneButtonToAssetList: -19%
  • onboardingNewWallet/total: -22%
  • assetDetails/assetClickToPriceChart: -36%
  • assetDetails/total: -36%
  • solanaAssetDetails/assetClickToPriceChart: -72%
  • solanaAssetDetails/total: -72%
  • importSrpHome/openAccountMenuAfterLogin: -74%
  • importSrpHome/homeAfterImportWithNewWallet: -71%
  • importSrpHome/total: -60%
  • sendTransactions/selectTokenToSendFormLoaded: -35%
  • sendTransactions/reviewTransactionToConfirmationPage: +35%
  • sendTransactions/total: +33%
  • swap/openSwapPageFromHome: -97%
  • swap/fetchAndDisplaySwapQuotes: +31%
  • swap/total: +11%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/INP: p75 232ms
  • 🟡 assetDetails/FCP: p75 2.6s
  • 🟡 solanaAssetDetails/FCP: p75 2.5s
  • 🟡 importSrpHome/INP: p75 208ms
  • 🟡 importSrpHome/FCP: p75 2.6s
  • 🟡 sendTransactions/INP: p75 216ms
  • 🟡 sendTransactions/FCP: p75 2.6s
  • 🟡 swap/FCP: p75 2.6s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-browserify
dappPageLoad🟢 [Show logs]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 6.01 MiB (100%)
  • ui: 8.3 MiB (100%)
  • common: 13.14 MiB (100%)

Cherry-pick conflict resolution left yarn.lock resolving perps-controller
to 3.0.0 instead of 3.1.1, and the subsequent dedupe commit removed the
Intl.NumberFormat LavaMoat policy lines. Pin resolution to 3.1.1 and
restore the policy entries to match the original PR #41558.
@socket-security

socket-security Bot commented Apr 20, 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
Updated@​metamask/​perps-controller@​3.0.0 ⏵ 3.1.169 -110083 +196 +1100

View full report

@metamaskbotv2

metamaskbotv2 Bot commented Apr 20, 2026

Copy link
Copy Markdown
Contributor
Builds ready [9dec142] [reused from 4e9a5a6]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 8 warn · 🔴 0 fail)

Baseline (latest main): 71bd826 | Date: 10/14/58243 | Pipeline: 24658404659 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-browserify
loadNewAccount🟡 [Show logs]
confirmTx🟡 [Show logs]
bridgeUserActions🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: -20%
  • loadNewAccount/total: -20%
  • bridgeUserActions/bridge_load_asset_picker: -60%
  • bridgeUserActions/total: -13%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 2.6s
  • 🟡 confirmTx/FCP: p75 2.6s
  • 🟡 bridgeUserActions/FCP: p75 2.6s
Startup Benchmarks · Samples: 100

⚠️ Missing data: chrome/browserify/startupPowerUserHome, chrome/webpack/startupPowerUserHome, firefox/browserify/startupPowerUserHome, firefox/webpack/startupPowerUserHome

Benchmarkchrome-browserifychrome-webpackfirefox-browserifyfirefox-webpack
startupStandardHome🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -20%
  • startupStandardHome/domInteractive: +17%
  • startupStandardHome/initialActions: -33%
  • startupStandardHome/loadScripts: -11%
  • startupStandardHome/setupStore: +21%
  • startupStandardHome/numNetworkReqs: -16%
  • startupStandardHome/uiStartup: -35%
  • startupStandardHome/load: -31%
  • startupStandardHome/domContentLoaded: -31%
  • startupStandardHome/domInteractive: -27%
  • startupStandardHome/backgroundConnect: -46%
  • startupStandardHome/firstReactRender: -41%
  • startupStandardHome/loadScripts: -31%
  • startupStandardHome/setupStore: -27%
  • startupStandardHome/numNetworkReqs: -44%
  • startupStandardHome/domInteractive: +15%
  • startupStandardHome/backgroundConnect: +13%
  • startupStandardHome/initialActions: +33%
  • startupStandardHome/numNetworkReqs: -29%
  • startupStandardHome/domInteractive: -31%
  • startupStandardHome/initialActions: +14%
  • startupStandardHome/setupStore: -60%
  • startupStandardHome/numNetworkReqs: -29%
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
assetDetails🟡 [Show logs]
solanaAssetDetails🟡 [Show logs]
importSrpHome🟡 [Show logs]
sendTransactions🟡 [Show logs]
swap🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/srpButtonToSrpForm: -88%
  • onboardingImportWallet/confirmSrpToPwForm: -26%
  • onboardingImportWallet/pwFormToMetricsScreen: -25%
  • onboardingImportWallet/metricsToWalletReadyScreen: +23%
  • onboardingImportWallet/doneButtonToHomeScreen: -81%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: +25%
  • onboardingImportWallet/total: -49%
  • onboardingNewWallet/srpButtonToPwForm: -79%
  • onboardingNewWallet/skipBackupToMetricsScreen: -65%
  • onboardingNewWallet/doneButtonToAssetList: -33%
  • onboardingNewWallet/total: -33%
  • assetDetails/assetClickToPriceChart: -36%
  • assetDetails/total: -36%
  • solanaAssetDetails/assetClickToPriceChart: -72%
  • solanaAssetDetails/total: -72%
  • importSrpHome/openAccountMenuAfterLogin: -77%
  • importSrpHome/homeAfterImportWithNewWallet: -70%
  • importSrpHome/total: -61%
  • sendTransactions/openSendPageFromHome: -25%
  • sendTransactions/selectTokenToSendFormLoaded: -33%
  • sendTransactions/reviewTransactionToConfirmationPage: +35%
  • sendTransactions/total: +32%
  • swap/openSwapPageFromHome: -97%
  • swap/fetchAndDisplaySwapQuotes: +31%
  • swap/total: +11%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/INP: p75 216ms
  • 🟡 assetDetails/FCP: p75 2.5s
  • 🟡 solanaAssetDetails/FCP: p75 2.6s
  • 🟡 importSrpHome/INP: p75 208ms
  • 🟡 importSrpHome/FCP: p75 2.6s
  • 🟡 sendTransactions/FCP: p75 2.6s
  • 🟡 swap/FCP: p75 2.5s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-browserify
dappPageLoad🟢 [Show logs]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 6.01 MiB (100%)
  • ui: 8.3 MiB (100%)
  • common: 13.15 MiB (100%)

@sonarqubecloud

Copy link
Copy Markdown

@chloeYue chloeYue left a comment

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.

LGTM

@chloeYue chloeYue merged commit e70967b into release/13.28.0 Apr 20, 2026
176 checks passed
@chloeYue chloeYue deleted the cherry-pick-13-28-0-97ee416 branch April 20, 2026 11:03
@github-actions github-actions Bot locked and limited conversation to collaborators Apr 20, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

team-bots Bot team (for MetaMask Bot, Runway Bot, etc.)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants