Skip to content

Conversation

@mikesposito
Copy link
Member

@mikesposito mikesposito commented Oct 9, 2025

Description

WIP - migrating all extension controllers to new @metamask/messenger package.

Open in GitHub Codespaces

Changelog

CHANGELOG entry:

Related issues

Fixes: #31843

Manual testing steps

  1. Go to this page...

Screenshots/Recordings

Before

After

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.

@socket-security
Copy link

socket-security bot commented Oct 21, 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/​snaps-utils@​11.6.0 ⏵ 9.4.0981007693100
Updatedpify@​5.0.0 ⏵ 2.3.010010010078100
Updatedreselect@​5.1.1 ⏵ 4.1.810010010084100
Updatedcommander@​13.1.0 ⏵ 4.1.1100 +110010087100
Updated@​toruslabs/​eccrypto@​6.1.0 ⏵ 4.0.010010010089100

View full report

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 7440b16 | Date: 10/21/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±75ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 741ms (±73ms) 🟢 | historical mean value: 739ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±12ms) 🟢 | historical mean value: 79ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 75ms 1.02s 1.35s 1.33s 1.35s
domContentLoaded 741ms 73ms 701ms 1.01s 1.00s 1.01s
firstPaint 77ms 12ms 60ms 180ms 88ms 180ms
firstContentfulPaint 77ms 12ms 60ms 180ms 88ms 180ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [7440b16]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 8.67 KiB (0.19%)
  • ui: -5 Bytes (0%)
  • common: 1.83 KiB (0.02%)

@socket-security
Copy link

socket-security bot commented Oct 23, 2025

Caution

MetaMask internal reviewing guidelines:

  • Do not ignore-all
  • Each alert has instructions on how to review if you don't know what it means. If lost, ask your Security Liaison or the supply-chain group
  • Copy-paste ignore lines for specific packages or a group of one kind with a note on what research you did to deem it safe.
    @SocketSecurity ignore npm/PACKAGE@VERSION
Action Severity Alert  (click "▶" to expand/collapse)
Block Medium
[email protected] has Shell access.

Module: child_process

Location: Package overview

From: package.jsonnpm/[email protected]

ℹ Read more on: This package | This alert | What is shell access?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at [email protected].

Suggestion: Packages should avoid accessing the shell which can reduce portability, and make it easier for malicious shell access to be introduced.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/[email protected]. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

@metamaskbot
Copy link
Collaborator

metamaskbot commented Oct 23, 2025

✨ Files requiring CODEOWNER review ✨

@MetaMask/confirmations (11 files, +30 -22)
  • 📁 app/
    • 📁 scripts/
      • 📁 controller-init/
        • 📁 confirmations/
          • 📄 address-book-controller-init.test.ts +2 -2
          • 📄 approval-controller-init.test.ts +2 -2
          • 📄 decrypt-message-controller-init.test.ts +2 -2
          • 📄 decrypt-message-manager-init.test.ts +2 -2
          • 📄 encryption-public-key-controller-init.test.ts +2 -2
          • 📄 encryption-public-key-message-manager-init.test.ts +2 -2
          • 📄 ens-controller-init.test.ts +2 -2
          • 📄 gas-fee-controller-init.test.ts +2 -2
          • 📄 name-controller-init.test.ts +2 -2
          • 📄 ppom-controller-init.test.ts +10 -2
          • 📄 signature-controller-init.test.ts +2 -2

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: a8e5611 | Date: 10/23/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.09s (±244ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 772ms (±269ms) 🟢 | historical mean value: 738ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 102ms (±248ms) 🟢 | historical mean value: 81ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.09s 244ms 1.03s 3.42s 1.30s 3.42s
domContentLoaded 772ms 269ms 712ms 3.37s 970ms 3.37s
firstPaint 102ms 248ms 60ms 2.57s 92ms 2.57s
firstContentfulPaint 102ms 248ms 60ms 2.57s 92ms 2.57s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [a8e5611]
Bundle size diffs [🚀 Bundle size reduced!]
  • background: 14.99 KiB (0.33%)
  • ui: 492.4 KiB (7.52%)
  • common: -58.55 KiB (-0.67%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 21d0646 | Date: 10/23/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: 731ms (±70ms) 🟢 | historical mean value: 739ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±11ms) 🟢 | historical mean value: 79ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 72ms 1.01s 1.32s 1.26s 1.32s
domContentLoaded 731ms 70ms 697ms 1.00s 941ms 1.00s
firstPaint 76ms 11ms 60ms 164ms 92ms 164ms
firstContentfulPaint 76ms 11ms 60ms 164ms 92ms 164ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [21d0646]
Bundle size diffs [🚀 Bundle size reduced!]
  • background: 14.4 KiB (0.31%)
  • ui: 494.49 KiB (7.55%)
  • common: -58.39 KiB (-0.67%)

@mikesposito mikesposito force-pushed the mikesposito/messenger branch from e8ff207 to 7563aae Compare October 23, 2025 16:44
@mikesposito
Copy link
Member Author

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

Policies updated.
👀 Please review the diff for suspicious new powers.

🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 4009462 | Date: 10/24/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±76ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 740ms (±72ms) 🟢 | historical mean value: 731ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±12ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 76ms 1.01s 1.36s 1.32s 1.36s
domContentLoaded 740ms 72ms 703ms 1.02s 987ms 1.02s
firstPaint 78ms 12ms 60ms 184ms 88ms 184ms
firstContentfulPaint 78ms 12ms 60ms 184ms 88ms 184ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [4009462]
UI Startup Metrics (1319 ± 74 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1319119115307413721455
load112395313387211671234
domContentLoaded111494513347211601228
domInteractive221495132248
firstPaint61194132544511191207
backgroundConnect24122441922243261
firstReactRender3319157173549
getState21890102639
initialActions817310918
loadScripts882722110472929993
setupStore1173641219
BrowserifyPower User HomeuiStartup23161859359260032063592
load1177935190833416561908
domContentLoaded1167929188433116381884
domInteractive34151132757113
firstPaint958191192949010411929
backgroundConnect286226686116278686
firstReactRender22202722227
getState21218728927232289
initialActions1931864415186
loadScripts912705140127913731401
setupStore1392861428
WebpackStandard HomeuiStartup8537361140678681014
load63859594260646770
domContentLoaded63158892559640763
domInteractive15114571440
firstPaint20958928212180767
backgroundConnect24114772935
firstReactRender2817180173236
getState1162331417
initialActions3115246
loadScripts62758691457638752
setupStore1052231214
WebpackPower User HomeuiStartup16851302248634516962486
load71061411131338181113
domContentLoaded68760210561237831056
domInteractive211350123450
firstPaint4829310613237921061
backgroundConnect991832496141324
firstReactRender23203132331
getState1684219334178193
initialActions814815348
loadScripts68360010451197721045
setupStore17649132649
FirefoxBrowserifyStandard HomeuiStartup14401228184112615031716
load1226104216349912791387
domContentLoaded1225104216349912791387
domInteractive1223437263129303
firstPaint------
backgroundConnect4025125164673
firstReactRender24214242534
getState74203812
initialActions4114414310
loadScripts1202102216069812611368
setupStore197205331258
BrowserifyPower User HomeuiStartup29102407350438233873504
load14671232180817115721808
domContentLoaded14661231180817115721808
domInteractive17744425114254425
firstPaint------
backgroundConnect25037782239330782
firstReactRender462989144589
getState1487821743203217
initialActions10256131156
loadScripts13961190163312115061633
setupStore33671195371
WebpackStandard HomeuiStartup16101445220615316122011
load13731216180310613971635
domContentLoaded13721216180310613971635
domInteractive1113354172111285
firstPaint------
backgroundConnect4720179255093
firstReactRender292376112867
getState9588101021
initialActions7119024314
loadScripts13441198176810113721613
setupStore156213231339
WebpackPower User HomeuiStartup29352461358634632213586
load16641359193116117711931
domContentLoaded16641359193116117701931
domInteractive1374031983196319
firstPaint------
backgroundConnect17836475142302475
firstReactRender46291021949102
getState1718439169185391
initialActions611541015
loadScripts16131332184614017401846
setupStore3271213143121
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 128.33 KiB (2.79%)
  • ui: 686 Bytes (0.01%)
  • common: -57.7 KiB (-0.66%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: ddfbcd7 | Date: 10/24/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±71ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±69ms) 🟢 | historical mean value: 728ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±10ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 71ms 1.01s 1.32s 1.26s 1.32s
domContentLoaded 731ms 69ms 696ms 1.01s 935ms 1.01s
firstPaint 75ms 10ms 60ms 164ms 84ms 164ms
firstContentfulPaint 75ms 10ms 60ms 164ms 84ms 164ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [ddfbcd7]
UI Startup Metrics (1283 ± 82 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1283112414488213501415
load110396012858311691255
domContentLoaded109795512778211621244
domInteractive19146391843
firstPaint63491128644511101253
backgroundConnect2292092628232243
firstReactRender26185362940
getState188106112033
initialActions60718619
loadScripts8757321055839431024
setupStore1052131116
BrowserifyPower User HomeuiStartup22551792424971128044249
load1114865171930715501719
domContentLoaded1105859169230515421692
domInteractive301684214984
firstPaint908192171045310651710
backgroundConnect31518212642653341264
firstReactRender23194052440
getState20517226524225265
initialActions10258131058
loadScripts886683139126512441391
setupStore1771393110139
WebpackStandard HomeuiStartup8447231167788531021
load63258695569640798
domContentLoaded62558194568634791
domInteractive15114971335
firstPaint19056921197179751
backgroundConnect21115172433
firstReactRender26175683142
getState1152841317
initialActions3014248
loadScripts62257993466632779
setupStore1062331114
WebpackPower User HomeuiStartup17481456239029918392390
load725607985146950985
domContentLoaded692594955121781955
domInteractive201244103144
firstPaint39987992328787992
backgroundConnect10420337110204337
firstReactRender22192722227
getState1794625741194257
initialActions51247724
loadScripts687592944118771944
setupStore16679181479
FirefoxBrowserifyStandard HomeuiStartup15151268206114415831831
load1280109915269313421435
domContentLoaded1280109915269313421435
domInteractive1213637452126230
firstPaint------
backgroundConnect4322149224894
firstReactRender25214842633
getState10419820916
initialActions41406412
loadScripts1254108214949013131415
setupStore196278341447
BrowserifyPower User HomeuiStartup29032377371945733573719
load14471272181613915771816
domContentLoaded14471272181613915761816
domInteractive1618324154227241
firstPaint------
backgroundConnect27440817253355817
firstReactRender422794164594
getState1548631255177312
initialActions2322065013206
loadScripts13781214154210415161542
setupStore37793265993
WebpackStandard HomeuiStartup16581450203413017101925
load1415126117249514681613
domContentLoaded1415126117249514671612
domInteractive1153542667121223
firstPaint------
backgroundConnect50251162154102
firstReactRender292280102939
getState10470121049
initialActions8122529317
loadScripts1383124416439014321587
setupStore15675131453
WebpackPower User HomeuiStartup29832328404544632824045
load16021352197119918021971
domContentLoaded16011352197019918021970
domInteractive1293924868203248
firstPaint------
backgroundConnect2373610932992281093
firstReactRender41295164851
getState1739323447223234
initialActions2532165022216
loadScripts15491281187418717451874
setupStore4361954352195
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 128.59 KiB (2.79%)
  • ui: 1.34 KiB (0.02%)
  • common: -57.7 KiB (-0.66%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: cd5f040 | Date: 10/24/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±74ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 743ms (±86ms) 🟢 | historical mean value: 727ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±43ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 74ms 1.02s 1.34s 1.28s 1.34s
domContentLoaded 743ms 86ms 703ms 1.29s 955ms 1.29s
firstPaint 80ms 43ms 56ms 504ms 88ms 504ms
firstContentfulPaint 80ms 43ms 56ms 504ms 88ms 504ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [cd5f040]
UI Startup Metrics (1285 ± 82 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1285112215358213321412
load109996313187611451217
domContentLoaded109295813147611401212
domInteractive201467101945
firstPaint62583125843911051199
backgroundConnect23321833213235249
firstReactRender27184673043
getState217104132250
initialActions60415615
loadScripts867736108076915989
setupStore1063341117
BrowserifyPower User HomeuiStartup23661910414660628634146
load1179963173429416501734
domContentLoaded1170956172729116331727
domInteractive281674184674
firstPaint56817016524999791652
backgroundConnect31722410471993181047
firstReactRender26243022730
getState21415935343225353
initialActions1326717967
loadScripts914739138524512851385
setupStore1292961129
WebpackStandard HomeuiStartup856732151592874986
load648587133596648804
domContentLoaded640582131195642796
domInteractive16115791442
firstPaint196581338209190606
backgroundConnect23125592542
firstReactRender26165183236
getState1152341418
initialActions3018357
loadScripts637580129993639792
setupStore1062531216
WebpackPower User HomeuiStartup18041524244432021802444
load73062811021517811102
domContentLoaded69761110031187491003
domInteractive19123782237
firstPaint4226410073146361007
backgroundConnect1032332894185328
firstReactRender25222922529
getState18114821815191218
initialActions8132112032
loadScripts692609988114738988
setupStore25677256177
FirefoxBrowserifyStandard HomeuiStartup14841315184510115251707
load1261112015327913021413
domContentLoaded1261111915317913021413
domInteractive1213747361126214
firstPaint------
backgroundConnect4226116174881
firstReactRender26218472638
getState84537718
initialActions3118237
loadScripts1235110415097712701384
setupStore156208201329
BrowserifyPower User HomeuiStartup27512301356038231573560
load14171218178213815141782
domContentLoaded14171218178113815131781
domInteractive1465931071189310
firstPaint------
backgroundConnect20832582176312582
firstReactRender42295984759
getState1593128560199285
initialActions8244101044
loadScripts13561118164413114591644
setupStore3161012647101
WebpackStandard HomeuiStartup15791373213013216011866
load13571183166810214111545
domContentLoaded13561183166810214101544
domInteractive1092744777105366
firstPaint------
backgroundConnect4224143164770
firstReactRender28227192857
getState104163171037
initialActions417510313
loadScripts13301162163710113791514
setupStore156189211246
WebpackPower User HomeuiStartup31952630394045537273940
load18091481218224620672182
domContentLoaded18081481218224620672182
domInteractive1654439689222396
firstPaint------
backgroundConnect26361853280669853
firstReactRender45316195361
getState1837627357225273
initialActions1022891828
loadScripts17211423197320119161973
setupStore421184257584
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 128.59 KiB (2.79%)
  • ui: 1.66 KiB (0.02%)
  • common: -57.7 KiB (-0.66%)

@mikesposito
Copy link
Member Author

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

Policies updated.
👀 Please review the diff for suspicious new powers.

🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 0d1c328 | Date: 10/24/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.09s (±76ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 765ms (±74ms) 🟢 | historical mean value: 729ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±11ms) 🟢 | historical mean value: 79ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.09s 76ms 1.03s 1.38s 1.32s 1.38s
domContentLoaded 765ms 74ms 716ms 1.04s 986ms 1.04s
firstPaint 80ms 11ms 60ms 172ms 92ms 172ms
firstContentfulPaint 80ms 11ms 60ms 172ms 92ms 172ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [0d1c328]
UI Startup Metrics (1330 ± 103 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup13301160170210313981484
load113999315229912251288
domContentLoaded1132946151310012191279
domInteractive211585112150
firstPaint62273152247311241267
backgroundConnect23822532411241251
firstReactRender3018104103544
getState21991112341
initialActions51366622
loadScripts90171712791009861057
setupStore1173041116
BrowserifyPower User HomeuiStartup23041908367056429633670
load1183949194834617011948
domContentLoaded1174942192334216901923
domInteractive31151182852118
firstPaint817195193958710941939
backgroundConnect26822151174259511
firstReactRender27233632736
getState20012533046214330
initialActions2211013717101
loadScripts934716161831914141618
setupStore1492861828
WebpackStandard HomeuiStartup8457231199808571058
load63558498076640846
domContentLoaded62857997276635838
domInteractive15116371433
firstPaint19860978191197601
backgroundConnect22124362833
firstReactRender26173873233
getState1262841419
initialActions319247
loadScripts62557796073632828
setupStore1052531214
WebpackPower User HomeuiStartup16941313247036822172470
load67457011111507331111
domContentLoaded64955710241347061024
domInteractive201340103340
firstPaint4916311023157091102
backgroundConnect11720393121265393
firstReactRender24213532535
getState1615119830169198
initialActions12164201964
loadScripts64555510171316981017
setupStore3062055325205
FirefoxBrowserifyStandard HomeuiStartup15911355208112516461931
load1342116117499314021491
domContentLoaded1341116117499314011491
domInteractive1213838046136209
firstPaint------
backgroundConnect52271852856127
firstReactRender28226482850
getState11518222920
initialActions4120349
loadScripts1310114317248913651461
setupStore1464971528
BrowserifyPower User HomeuiStartup28112306395045929733950
load14301229197021615081970
domContentLoaded14301229197021615081970
domInteractive1454032275201322
firstPaint------
backgroundConnect2393910452914331045
firstReactRender412971104671
getState1739228543208285
initialActions10146131346
loadScripts13521207168813614221688
setupStore3471162856116
WebpackStandard HomeuiStartup16951522212413117402004
load14481294181110114891624
domContentLoaded14471294181110114891624
domInteractive1243542686122390
firstPaint------
backgroundConnect4925194235589
firstReactRender29238083038
getState9480101014
initialActions7118721416
loadScripts1417126917789814471592
setupStore1373551420
WebpackPower User HomeuiStartup29512511411041231944110
load16751436203218418792032
domContentLoaded16751435203218418792032
domInteractive1657838090207380
firstPaint------
backgroundConnect16236520138312520
firstReactRender433168105068
getState16010123643194236
initialActions913691136
loadScripts16311412196517618181965
setupStore3771293436129
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 130.34 KiB (2.83%)
  • ui: 2.9 KiB (0.04%)
  • common: -55.97 KiB (-0.64%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 1105374 | Date: 10/24/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: 733ms (±70ms) 🟢 | historical mean value: 733ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±14ms) 🟢 | historical mean value: 79ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 72ms 1.00s 1.33s 1.25s 1.33s
domContentLoaded 733ms 70ms 692ms 1.01s 928ms 1.01s
firstPaint 77ms 14ms 56ms 204ms 84ms 204ms
firstContentfulPaint 77ms 14ms 56ms 204ms 84ms 204ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [1105374]
UI Startup Metrics (1211 ± 117 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12111027191011712691352
load1034869170911210831185
domContentLoaded1027864169911210771178
domInteractive201369101850
firstPaint72769124341310711187
backgroundConnect1851732056189197
firstReactRender28176283243
getState19779102137
initialActions61276822
loadScripts8496861523112898998
setupStore1163141220
BrowserifyPower User HomeuiStartup22141429319249125113192
load1147955194731911301947
domContentLoaded1135949190931211241909
domInteractive301677194677
firstPaint950176194451610581944
backgroundConnect24822635032260350
firstReactRender26233532835
getState1967225038222250
initialActions9421291310381291
loadScripts89972116382949001638
setupStore1783092830
WebpackStandard HomeuiStartup8637401206778851043
load648596100172653767
domContentLoaded64159099172647759
domInteractive16115691441
firstPaint20160994196200637
backgroundConnect24124872935
firstReactRender271790103338
getState1254051519
initialActions40314413
loadScripts63758797970645748
setupStore1053641215
WebpackPower User HomeuiStartup17401360250634017472506
load73963111691679191169
domContentLoaded70261910021277961002
domInteractive221353133853
firstPaint4826210053417991005
backgroundConnect10620397131205397
firstReactRender27225272652
getState1703723240180232
initialActions41215621
loadScripts697615991123785991
setupStore14739102239
FirefoxBrowserifyStandard HomeuiStartup1411126118489514591606
load1201107813516112421309
domContentLoaded1201107813506112421309
domInteractive1023621136113198
firstPaint------
backgroundConnect4024209244684
firstReactRender24196572444
getState9423623813
initialActions3111235
loadScripts1177106113265812151279
setupStore136172171317
BrowserifyPower User HomeuiStartup28502440336832531913368
load14461228182414515091824
domContentLoaded14461227182314515081823
domInteractive1514336379201363
firstPaint------
backgroundConnect18865642176170642
firstReactRender39305174651
getState1617629159209291
initialActions1006918769
loadScripts13991193179014114511790
setupStore3661513745151
WebpackStandard HomeuiStartup16311424241616916572060
load1385121817889614351537
domContentLoaded1385121817889614351536
domInteractive1213244686116377
firstPaint------
backgroundConnect4624146205387
firstReactRender29227382941
getState11410716919
initialActions8117922337
loadScripts1356117717649514051506
setupStore166214241358
WebpackPower User HomeuiStartup28422352368839733463688
load16501327226227118472262
domContentLoaded16491327226227118462262
domInteractive1473841387202413
firstPaint------
backgroundConnect17348674178286674
firstReactRender44301041849104
getState1608825648206256
initialActions14192231292
loadScripts15771293199721617141997
setupStore2551543623154
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 130.34 KiB (2.83%)
  • ui: 4.2 KiB (0.06%)
  • common: -55.42 KiB (-0.64%)

* origin/main: (46 commits)
  feat: refresh add/update rpc page (#36640)
  test: add e2e tests for swap and bridge SSE endpoint (#37037)
  refactor: migrated `ui/components/app/assets` to react-router-dom-v5-compat (#37157)
  feat(ramps): fixes btc buy button deeplink bug (#37146)
  fix: BTC activity is not shown on asset details (#37170)
  Merge origin/main into stable-sync
  fix: missing solana and bitcoin icon entries (#37065)
  fix: prevent phishing redirect when still on google.com (#37029)
  feat: added chain ID and display backend errors properly (#37174)
  fix: normalize basePath trailing slash in getRelativeLocationForNestedRoutes (#37161)
  fix: Use account group address in `SnapUIAvatar` when applicable (#37173)
  fix: Add `@metamask-previews/*` to NPM age gate exceptions (#37181)
  feat: enhance AppHeaderUnlockedContent with network address copy icon (#37112)
  feat: confirm screen fix styles (#37159)
  feat: Display dynamic gas station fee (#36961)
  chore: Bump Yarn to `4.10.3` and configure NPM age gate (#37119)
  fix: in redesigned send add filtering by chainId in address book contacts (#36941)
  fix: missing `await` on the onboarding flow (#37164)
  fix: fix manual refresh (#37130)
  release: Bump main version to 13.8.0 (#37167)
  ...
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: da9e2db | Date: 10/24/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±72ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 741ms (±70ms) 🟢 | historical mean value: 737ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±10ms) 🟢 | historical mean value: 79ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 72ms 1.02s 1.33s 1.29s 1.33s
domContentLoaded 741ms 70ms 703ms 1.02s 970ms 1.02s
firstPaint 78ms 10ms 64ms 160ms 84ms 160ms
firstContentfulPaint 78ms 10ms 64ms 160ms 84ms 160ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [da9e2db]
UI Startup Metrics (1266 ± 92 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1266112515809213181480
load108495514148911331265
domContentLoaded107794914068811211252
domInteractive20134972143
firstPaint60779130544210911198
backgroundConnect2302162557234245
firstReactRender27184663239
getState20897132334
initialActions61668616
loadScripts8547261191888941027
setupStore961721014
BrowserifyPower User HomeuiStartup23661955352558230923525
load1226979214037917052140
domContentLoaded1215972210837216752108
domInteractive301670185370
firstPaint977166214655810512146
backgroundConnect283228636103294636
firstReactRender27243222932
getState21015629933220299
initialActions824611846
loadScripts966738175134113821751
setupStore1893692836
WebpackStandard HomeuiStartup8667331193888741113
load656592100487652907
domContentLoaded64858599287646897
domInteractive16125181438
firstPaint19963914185197607
backgroundConnect23114972835
firstReactRender26176183234
getState1272441417
initialActions3015348
loadScripts64558397985643886
setupStore951531113
WebpackPower User HomeuiStartup18701368260639724792606
load78764415172319811517
domContentLoaded75363013671989061367
domInteractive231351133651
firstPaint51911413773979851377
backgroundConnect13545456141337456
firstReactRender27233942739
getState18111220619186206
initialActions813311533
loadScripts74862713541958961354
setupStore14637102637
FirefoxBrowserifyStandard HomeuiStartup1416126617828814681568
load1212107913826812581334
domContentLoaded1212107913826812581334
domInteractive1083731243113201
firstPaint------
backgroundConnect4024110174384
firstReactRender25205872443
getState8411711715
initialActions316135
loadScripts1186105813536612351303
setupStore1162531319
BrowserifyPower User HomeuiStartup29282511366640332503666
load15051312199117316061991
domContentLoaded15041312199017316061990
domInteractive1889242692236426
firstPaint------
backgroundConnect26848821232385821
firstReactRender453169105069
getState1548725642190256
initialActions914310943
loadScripts14281181167614515581676
setupStore4181363853136
WebpackStandard HomeuiStartup16141403236313716461869
load13801205179310914361612
domContentLoaded13801204179310914361612
domInteractive1143144276112389
firstPaint------
backgroundConnect4622151205082
firstReactRender29228392939
getState94669915
initialActions7120323317
loadScripts13521183176910614081568
setupStore1273651320
WebpackPower User HomeuiStartup28282373370039931233700
load15621364198419117601984
domContentLoaded15611364198319117601983
domInteractive1335433868176338
firstPaint------
backgroundConnect20738651199292651
firstReactRender442869115069
getState1516935669175356
initialActions73164916
loadScripts14901297183415716581834
setupStore29999234199
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 130.32 KiB (2.83%)
  • ui: 31 Bytes (0%)
  • common: -56.4 KiB (-0.65%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace RestrictedMessenger with delegated Messenger

3 participants