Skip to content

Conversation

@sahar-fehri
Copy link
Contributor

@sahar-fehri sahar-fehri commented Oct 20, 2025

Description

PR to introduce fetching exchangeRates from price api and fallback to crypto compare.

Do not merge until this goes in MetaMask/core#6863

Open in GitHub Codespaces

Changelog

CHANGELOG entry: null

Related issues

Fixes:

Manual testing steps

  1. Go to this page...

Screenshots/Recordings

Before

Screen.Recording.2025-10-22.at.14.35.00.mov

After

Screen.Recording.2025-10-22.at.14.31.27.mov

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

Integrates Codefi price API into CurrencyRateController and includes multichain asset state in balance calculations; wires allIgnoredAssets across state/Sentry and bumps key deps.

  • Rates/Controller Init:
    • Inject CodefiTokenPricesServiceV2 into CurrencyRateController via tokenPricesService; update init and tests/mocks.
  • Selectors/Balances:
    • Add getAllIgnoredAssets and include { accountsAssets, assetsMetadata, allIgnoredAssets } in balance and balance-change selectors (selectBalanceForAllWallets, etc.).
  • State/Telemetry:
    • Add metamask.allIgnoredAssets to app state, Sentry background/UI masks, mock states, and snapshots.
  • Dependencies:
    • Bump @metamask/assets-controllers to ^85.0.0 and @metamask/controller-utils to ^11.15.0; remove yarn patch for controller-utils and lockfile updates.
  • Misc:
    • Update storybook test data and integration/e2e fixtures to include allIgnoredAssets.

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

@github-actions
Copy link
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
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 5ed1d3d | Date: 10/20/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±69ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±68ms) 🟢 | historical mean value: 733ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±12ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 69ms 1.00s 1.30s 1.25s 1.30s
domContentLoaded 731ms 68ms 697ms 994ms 944ms 994ms
firstPaint 77ms 12ms 60ms 172ms 88ms 172ms
firstContentfulPaint 77ms 12ms 60ms 172ms 88ms 172ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [5ed1d3d]
UI Startup Metrics (1252 ± 82 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1252110915808212881425
load107897313607411081245
domContentLoaded107296813367311031239
domInteractive18134261737
firstPaint57394135543210601173
backgroundConnect2522392887255263
firstReactRender26194962938
getState17578111945
initialActions61547722
loadScripts826722107871861994
setupStore1163351221
WebpackHomeuiStartup833725106663847976
load62958189363637825
domContentLoaded62157487762631806
domInteractive15114581437
firstPaint19256842180194598
backgroundConnect21104872334
firstReactRender27176283234
getState942331114
initialActions308246
loadScripts61957286660629795
setupStore1051831214
FirefoxBrowserifyHomeuiStartup14111214193011414651608
load1194104413457112521320
domContentLoaded1194104413457112521320
domInteractive1103431657108255
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3320128133748
firstReactRender26216682638
getState84405815
initialActions7118624414
loadScripts1173102613097012361293
setupStore156211241148
WebpackHomeuiStartup16101436241813716491862
load1381122417288314291521
domContentLoaded1380122317278314281520
domInteractive1113137063109340
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect4022150184470
firstReactRender28227762937
getState114114151021
initialActions41939412
loadScripts1354120516928214021489
setupStore156194261055
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 110 Bytes (0%)
  • ui: 9.07 KiB (0.14%)
  • common: 3.56 KiB (0.04%)

@github-actions github-actions bot added size-S and removed size-XS labels Oct 20, 2025
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: aaef5d0 | Date: 10/20/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±73ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 746ms (±70ms) 🟢 | historical mean value: 733ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±12ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 73ms 1.02s 1.35s 1.30s 1.35s
domContentLoaded 746ms 70ms 710ms 1.03s 960ms 1.03s
firstPaint 80ms 12ms 60ms 176ms 96ms 176ms
firstContentfulPaint 80ms 12ms 60ms 176ms 96ms 176ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [aaef5d0]
UI Startup Metrics (1251 ± 60 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1251112114086012941345
load107696912225411101150
domContentLoaded107096412195411041145
domInteractive1913123131738
firstPaint684152121642610961148
backgroundConnect2522372757257265
firstReactRender26197772737
getState15576111933
initialActions51325714
loadScripts82371498353856900
setupStore1063441121
WebpackHomeuiStartup838718110562860948
load62957892960638751
domContentLoaded62257292059633742
domInteractive15114781437
firstPaint18255928171195615
backgroundConnect20114972532
firstReactRender28177893240
getState942431114
initialActions3012246
loadScripts61957090957631731
setupStore1052931214
FirefoxBrowserifyHomeuiStartup14281263196511014911614
load1212107713547312751336
domContentLoaded1211107613537312751336
domInteractive1133332253121250
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3419110173786
firstReactRender25215152636
getState94628817
initialActions511992038
loadScripts1187105913387112471313
setupStore12560111046
WebpackHomeuiStartup15851406216511916311811
load1370119517209014291526
domContentLoaded1369119517199014291525
domInteractive1103139072109356
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3720119154268
firstReactRender292176102843
getState84455913
initialActions8114421354
loadScripts1345118016888813991501
setupStore12559101136
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 110 Bytes (0%)
  • ui: 9.07 KiB (0.14%)
  • common: 3.56 KiB (0.04%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 7ed57a5 | Date: 10/22/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±72ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 735ms (±69ms) 🟢 | historical mean value: 739ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±11ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 72ms 1.01s 1.32s 1.27s 1.32s
domContentLoaded 735ms 69ms 697ms 1.00s 943ms 1.00s
firstPaint 75ms 11ms 56ms 160ms 88ms 160ms
firstContentfulPaint 75ms 11ms 56ms 160ms 88ms 160ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [7ed57a5]
UI Startup Metrics (1234 ± 88 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1234107214868812871402
load105691912678211031189
domContentLoaded105091312618110981182
domInteractive19135681741
firstPaint59187126843010811168
backgroundConnect2071982245209217
firstReactRender26185362741
getState19894112231
initialActions51798511
loadScripts848709104481897988
setupStore963031011
BrowserifyPower User HomeuiStartup20231268293044221262930
load1119959151019512641510
domContentLoaded1108955149919212371499
domInteractive331570205670
firstPaint732186150743310231507
backgroundConnect23321328921250289
firstReactRender26194063040
getState1804827470224274
initialActions934710847
loadScripts88674312671779931267
setupStore1573161931
WebpackStandard HomeuiStartup8787581106728981071
load65160091664659807
domContentLoaded64359290863650791
domInteractive16125081544
firstPaint21258895207193728
backgroundConnect25125082843
firstReactRender291798123337
getState1251931417
initialActions3113257
loadScripts64059089661648779
setupStore1052431216
WebpackPower User HomeuiStartup15421223208825017482088
load69160610111237591011
domContentLoaded670591985116707985
domInteractive241375193075
firstPaint387106868269648868
backgroundConnect662119064157190
firstReactRender21192312123
getState16912718314175183
initialActions501951019
loadScripts666589971112696971
setupStore1262671626
FirefoxBrowserifyStandard HomeuiStartup1389123116758614391526
load1188105613526412391300
domContentLoaded1188105613526412391299
domInteractive1063727741119199
firstPaint------
backgroundConnect3624116144163
firstReactRender23194652437
getState63183812
initialActions3116235
loadScripts1164103713296412131272
setupStore1159391214
BrowserifyPower User HomeuiStartup26672202378142630923781
load13731180171116115171711
domContentLoaded13731180171116115171711
domInteractive1615633181201331
firstPaint------
backgroundConnect15635529187423529
firstReactRender382566104366
getState1608122648205226
initialActions151170409170
loadScripts13321153159514214511595
setupStore24586243986
WebpackStandard HomeuiStartup16301444213612916801871
load1397122017939714461584
domContentLoaded1397122017929714461583
domInteractive1123438661116283
firstPaint------
backgroundConnect4222132184875
firstReactRender322376123267
getState11515321919
initialActions41394311
loadScripts1371120317649414201545
setupStore156134181238
WebpackPower User HomeuiStartup27652351412745130264127
load15561345205621816862056
domContentLoaded15561344205621816862056
domInteractive15943381111314381
firstPaint------
backgroundConnect14330547155325547
firstReactRender42271282447128
getState1688835068194350
initialActions2111664210166
loadScripts15151311196120116581961
setupStore2651082836108
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 110 Bytes (0%)
  • ui: 0 Bytes (0%)
  • common: 2.73 KiB (0.03%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 4516fb4 | Date: 10/22/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.02s (±216ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 719ms (±241ms) 🟢 | historical mean value: 738ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 97ms (±217ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.02s 216ms 958ms 3.06s 1.23s 3.06s
domContentLoaded 719ms 241ms 661ms 3.02s 918ms 3.02s
firstPaint 97ms 217ms 64ms 2.25s 84ms 2.25s
firstContentfulPaint 97ms 217ms 64ms 2.25s 84ms 2.25s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [4516fb4]
UI Startup Metrics (1299 ± 99 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1299111815369913711449
load111796313149411931276
domContentLoaded111095713069411861269
domInteractive20145282146
firstPaint67474131946711421255
backgroundConnect2192082517223232
firstReactRender26184852938
getState1755081935
initialActions61517725
loadScripts8977431091949741057
setupStore1163041120
BrowserifyPower User HomeuiStartup21561832295642528162956
load1058905142519713541425
domContentLoaded1050898142019513441420
domInteractive301598244998
firstPaint63210414224539841422
backgroundConnect22220527619242276
firstReactRender22193232332
getState19815224323212243
initialActions917918579
loadScripts835696116617911031166
setupStore1182651126
WebpackStandard HomeuiStartup850740117567865968
load64659499371658802
domContentLoaded63758798070652792
domInteractive161159101448
firstPaint18756836177198617
backgroundConnect22125472538
firstReactRender27174673235
getState932031114
initialActions309246
loadScripts63458596968650780
setupStore1052031214
WebpackPower User HomeuiStartup16721229224532219902245
load72561910551388141055
domContentLoaded70560910131287771013
domInteractive32121924340192
firstPaint4546310163287561016
backgroundConnect941930479162304
firstReactRender21202512225
getState18013635848182358
initialActions1712024811202
loadScripts70060710011257661001
setupStore1463182431
FirefoxBrowserifyStandard HomeuiStartup14721283191711515161685
load1255111114527613091398
domContentLoaded1255111114517613091398
domInteractive1183530744127221
firstPaint------
backgroundConnect3622128173871
firstReactRender26214552638
getState1048112826
initialActions6120320414
loadScripts1230109414337512881371
setupStore146212231036
BrowserifyPower User HomeuiStartup26102188308330529433083
load14281144195421916511954
domContentLoaded14281143195321916511953
domInteractive17047513120256513
firstPaint------
backgroundConnect16229635204440635
firstReactRender38261021840102
getState1569824343170243
initialActions12191221191
loadScripts13861124192020715241920
setupStore21579213979
WebpackStandard HomeuiStartup16731523236114816902073
load1441128318389814881634
domContentLoaded1440128318389814881633
domInteractive1193444573118293
firstPaint------
backgroundConnect49251452949125
firstReactRender29237683236
getState114127131220
initialActions42253510
loadScripts1407126517478814521600
setupStore166243301252
WebpackPower User HomeuiStartup27812478330925729853309
load15841373199915316621999
domContentLoaded15831373199915316621999
domInteractive1614535790250357
firstPaint------
backgroundConnect11930602144172602
firstReactRender42295384953
getState1649725443210254
initialActions1621533615153
loadScripts15441350192614016271926
setupStore4261685084168
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 110 Bytes (0%)
  • ui: 0 Bytes (0%)
  • common: 2.73 KiB (0.03%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 0928c64 | Date: 10/22/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±72ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 726ms (±68ms) 🟢 | historical mean value: 739ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±14ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 72ms 1000ms 1.35s 1.26s 1.35s
domContentLoaded 726ms 68ms 691ms 1.03s 923ms 1.03s
firstPaint 75ms 14ms 56ms 188ms 88ms 188ms
firstContentfulPaint 75ms 14ms 56ms 188ms 88ms 188ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [0928c64]
UI Startup Metrics (1279 ± 102 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12791099163210213381490
load1098953143910011551300
domContentLoaded1091946143410011491290
domInteractive20145791848
firstPaint72690138944811311287
backgroundConnect21820533914220226
firstReactRender2718116112743
getState1553971932
initialActions51447610
loadScripts8807371225999401083
setupStore1163151124
BrowserifyPower User HomeuiStartup24981917361363032713613
load1142938162022413841620
domContentLoaded1130932159822313741598
domInteractive291565175065
firstPaint64617415534449751553
backgroundConnect38921514583952521458
firstReactRender23203332533
getState21719030631230306
initialActions80268517095685
loadScripts903721128820011491288
setupStore1272861328
WebpackStandard HomeuiStartup8006821064728201003
load59354389470600832
domContentLoaded58553588769590814
domInteractive15114571333
firstPaint19951893205181615
backgroundConnect23124772733
firstReactRender2816246233142
getState942641114
initialActions3011246
loadScripts58253387668588803
setupStore1052631114
WebpackPower User HomeuiStartup16861163217932319772179
load71261110031087941003
domContentLoaded68859895299770952
domInteractive251349144149
firstPaint46768955315772955
backgroundConnect15412324123318324
firstReactRender31181793823179
getState1782639968189399
initialActions1401192813119
loadScripts68359693896758938
setupStore2061563515156
FirefoxBrowserifyStandard HomeuiStartup14781296187110815501659
load1253111214257813211392
domContentLoaded1253111214237813211391
domInteractive1193330355131248
firstPaint------
backgroundConnect3622134154071
firstReactRender26217972639
getState114235231015
initialActions718513438
loadScripts1229108814037813001370
setupStore136184191135
BrowserifyPower User HomeuiStartup26552247343035528623430
load14021226171614715691716
domContentLoaded14021226171514715691715
domInteractive1618631966224319
firstPaint------
backgroundConnect13926520144187520
firstReactRender382785144185
getState1517530957183309
initialActions13173201173
loadScripts13671209165813915141658
setupStore2852124923212
WebpackStandard HomeuiStartup15831346216214416091881
load13631194171110113991572
domContentLoaded13631193171010113991571
domInteractive1123139274112361
firstPaint------
backgroundConnect3921148214286
firstReactRender28227392839
getState104121131114
initialActions617010329
loadScripts1336117816229313721533
setupStore13593131148
WebpackPower User HomeuiStartup25812356290616627112906
load15531273188517217201885
domContentLoaded15521272188517317201885
domInteractive16253398112311398
firstPaint------
backgroundConnect752621952111219
firstReactRender36265084450
getState1599224345204243
initialActions1811263026126
loadScripts15171253178216216771782
setupStore3951163365116
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 110 Bytes (0%)
  • ui: 0 Bytes (0%)
  • common: 2.73 KiB (0.03%)

sahar-fehri added a commit to MetaMask/core that referenced this pull request Oct 28, 2025
…er (#6863)

## Explanation


PR to update the `CurrencyRatesController` so it uses the Price API for
exchange rates, with CryptoCompare as a fallback.

## References

* Related to extension:
MetaMask/metamask-extension#36986
* Related to mobile:
MetaMask/metamask-mobile#21523



## Checklist

- [x] I've updated the test suite for new or updated code as appropriate
- [x] I've updated documentation (JSDoc, Markdown, etc.) for new or
updated code as appropriate
- [x] I've communicated my changes to consumers by [updating changelogs
for packages I've
changed](https://github.com/MetaMask/core/tree/main/docs/contributing.md#updating-changelogs),
highlighting breaking changes as necessary
- [x] I've prepared draft pull requests for clients and consumer
packages to resolve any breaking changes

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> CurrencyRateController now uses the Price API (with CryptoCompare
fallback) via a new required tokenPricesService, and
CodefiTokenPricesServiceV2 adds fetchExchangeRates.
> 
> - **Controllers**:
> - **CurrencyRateController**: Fetches exchange rates from Price API
via `tokenPricesService.fetchExchangeRates`, with fallback to
CryptoCompare; updates polling and state mapping; requires new
constructor arg `tokenPricesService` (BREAKING).
> - **Token Prices Service**:
> - **Abstract API**: Adds `ExchangeRate`/`ExchangeRatesByCurrency`
types and new `fetchExchangeRates(args)`.
> - **CodefiTokenPricesServiceV2**: Implements `fetchExchangeRates`
using `/v1/exchange-rates`, supports optional USD rate merging,
retries/circuit-breaker hooks, and filtering.
> - **Tests**:
> - Update `CurrencyRateController.test.ts` to assert Price API path,
fallback behavior, USD inclusion, and polling; adjust mocks across
related tests to include `fetchExchangeRates`.
> - **Docs/Meta**:
>   - Update `CHANGELOG.md` with breaking change and new functionality.
>   - Minor lint threshold updates.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
d22e0af. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
@bergarces bergarces marked this pull request as ready for review October 30, 2025 09:31
@socket-security
Copy link

socket-security bot commented Oct 30, 2025

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

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​metamask/​controller-utils@​11.14.1 ⏵ 11.15.099 +110077 +196 +3100
Updated@​metamask/​assets-controllers@​84.0.0 ⏵ 85.0.098 +110091 +198100

View full report

cursor[bot]

This comment was marked as outdated.

@github-actions github-actions bot removed the size-S label Oct 30, 2025
salimtb
salimtb previously approved these changes Oct 30, 2025
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 2ab1ee7 | Date: 10/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±73ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 736ms (±68ms) 🟢 | historical mean value: 734ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±12ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 73ms 1.01s 1.32s 1.27s 1.32s
domContentLoaded 736ms 68ms 698ms 1.00s 947ms 1.00s
firstPaint 76ms 12ms 60ms 172ms 88ms 172ms
firstContentfulPaint 76ms 12ms 60ms 172ms 88ms 172ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [2ab1ee7]
UI Startup Metrics (1261 ± 98 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1261110016699813111428
load108694714629411331247
domContentLoaded108094114549311281242
domInteractive201483111748
firstPaint60287130643810871228
backgroundConnect2272162588232241
firstReactRender27194873042
getState1978192233
initialActions50375512
loadScripts8597191219939121025
setupStore1063941115
numNetworkReqs96338632
WebpackStandard HomeuiStartup8487331100728651025
load63658688965644845
domContentLoaded62958187664637836
domInteractive15115171434
firstPaint18758839183173617
backgroundConnect22115482542
firstReactRender27176393235
getState1263641419
initialActions31163411
loadScripts62557886462635824
setupStore1052431215
numNetworkReqs96338832
FirefoxBrowserifyStandard HomeuiStartup1424126717909514761594
load1216107815766912511328
domContentLoaded1216107815766912511328
domInteractive1073727240119193
firstPaint------
backgroundConnect3925137174281
firstReactRender24204852539
getState74737714
initialActions318135
loadScripts1191106115556712271284
setupStore147215211315
numNetworkReqs96337732
WebpackStandard HomeuiStartup16181406208513016821857
load13841223173110214291595
domContentLoaded13841223173110214291594
domInteractive1123140174109355
firstPaint------
backgroundConnect4521235255178
firstReactRender302277112871
getState84395814
initialActions516110317
loadScripts13581206169910014021530
setupStore14673101238
numNetworkReqs106348832

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 3ad4311 | Date: 10/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±51ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 721ms (±48ms) 🟢 | historical mean value: 735ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±11ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 51ms 1.01s 1.30s 1.07s 1.30s
domContentLoaded 721ms 48ms 697ms 984ms 746ms 984ms
firstPaint 75ms 11ms 56ms 168ms 84ms 168ms
firstContentfulPaint 75ms 11ms 56ms 168ms 84ms 168ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [3ad4311]
UI Startup Metrics (1244 ± 74 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1244111114607412911364
load106894912626911121190
domContentLoaded106294412596811031184
domInteractive20145891845
firstPaint64389127943210931190
backgroundConnect2282172556232239
firstReactRender26184662842
getState19888102335
initialActions50486613
loadScripts840725102967880958
setupStore972021015
numNetworkReqs96327631
BrowserifyPower User HomeuiStartup21371667388569730633885
load1089869191633714791916
domContentLoaded1082862190533514731905
domInteractive261467184667
firstPaint79816619125399351912
backgroundConnect259181781154294781
firstReactRender25223832538
getState17311127634183276
initialActions1427321873
loadScripts878683156529312201565
setupStore1272961129
numNetworkReqs365208698193680698
WebpackStandard HomeuiStartup9067581240879261125
load681606100186684908
domContentLoaded67359997884678900
domInteractive171160101545
firstPaint19759963198190644
backgroundConnect251470102949
firstReactRender28175183437
getState1362641619
initialActions30274410
loadScripts66959796682676897
setupStore1154041417
numNetworkReqs96378633
WebpackPower User HomeuiStartup17181436233633321552336
load74661511261839801126
domContentLoaded70560010321498421032
domInteractive18123682836
firstPaint50810010523518451052
backgroundConnect14622459166362459
firstReactRender25223542535
getState15013718210152182
initialActions7031101031
loadScripts70159810211468321021
setupStore17636112836
numNetworkReqs356214569129543569
FirefoxBrowserifyStandard HomeuiStartup1440128318449315041582
load1231110714567212811359
domContentLoaded1231110614567212811359
domInteractive1173439148134211
firstPaint------
backgroundConnect4223151234488
firstReactRender26215972642
getState9421521714
initialActions511841836
loadScripts1205108414337212541328
setupStore1173741219
numNetworkReqs96337728
BrowserifyPower User HomeuiStartup27822398369036829363690
load14491323188713214941887
domContentLoaded14491323188613214941886
domInteractive16811526651235266
firstPaint------
backgroundConnect24944760208298760
firstReactRender38285694556
getState1319219026144190
initialActions14162171562
loadScripts1376127615988414361598
setupStore3891032457103
numNetworkReqs30017650890325508
WebpackStandard HomeuiStartup15831395222213416321881
load13611170169910014231564
domContentLoaded13611170169910014221564
domInteractive1073241865113259
firstPaint------
backgroundConnect4424223284874
firstReactRender302269122968
getState9484111017
initialActions40669310
loadScripts1335114116279514021525
setupStore157194251231
numNetworkReqs106388733
WebpackPower User HomeuiStartup28192213413065836784130
load15181230212628118422126
domContentLoaded15181230212628118412126
domInteractive1438636480172364
firstPaint------
backgroundConnect20829756268567756
firstReactRender39315374653
getState1479022735178227
initialActions10168161268
loadScripts14711203196724417371967
setupStore4781865278186
numNetworkReqs303143641158480641
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 120 Bytes (0%)
  • ui: 251 Bytes (0%)
  • common: 1.97 KiB (0.02%)

@bergarces bergarces added this pull request to the merge queue Oct 30, 2025
Merged via the queue into main with commit 67fcea3 Oct 30, 2025
333 of 337 checks passed
@bergarces bergarces deleted the chore/use-price-api-in-currencyRateController branch October 30, 2025 12:36
@github-actions github-actions bot locked and limited conversation to collaborators Oct 30, 2025
@metamaskbot metamaskbot added the release-13.8.0 Issue or pull request that will be included in release 13.8.0 label Oct 30, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-13.8.0 Issue or pull request that will be included in release 13.8.0 size-M team-assets

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants