Skip to content

Conversation

@NidhiKJha
Copy link
Member

@NidhiKJha NidhiKJha commented Nov 21, 2025

This PR is to add the updated privacy notice banner on homepage

Feature Flow Diagram

┌─────────────────────────────────────────────────────────────────────┐
│                        USER TYPE DETECTION                          │
└─────────────────────────────────────────────────────────────────────┘
                                  │
                 ┌────────────────┴────────────────┐
                 │                                  │
                 ▼                                  ▼
        ┌─────────────────┐              ┌──────────────────┐
        │   NEW USER      │              │  EXISTING USER   │
        │  (Onboarding)   │              │ (Already setup)  │
        └────────┬────────┘              └────────┬─────────┘
                 │                                 │
                 │                                 │
        ┌────────▼─────────┐              ┌───────▼──────────┐
        │  Check LD Flag   │              │   Check State    │
        │ (extensionUxPna25)    │              │ newUserFeature   │
        │                  │              │  Acknowledged?   │
        └────────┬─────────┘              └───────┬──────────┘
                 │                                 │
         ┌───────┴────────┐                       ▼
         │                │                  = null or false
         ▼                ▼               (State didn't exist
    LD = true      LD = false              when they onboarded)
         │                │                       │
         │                │                       │
         ▼                ▼               ┌───────▼──────────┐
 ┌───────────┐    ┌───────────┐         │   Check LD Flag  │
 │Set state  │    │ State      │         │    (Feature X)   │
 │to TRUE    │    │ remains    │         └────────┬─────────┘
 │           │    │  null      │                  │
 │(auto-     │    │            │          ┌───────┴────────┐
 │acknowledged)│   │(Feature   │          │                │
 └─────┬─────┘    │ disabled)  │          ▼                ▼
       │          └─────┬─────┘      LD = true        LD = false
       │                │                 │                │
       ▼                ▼                 │                │
 ┌──────────────────────────────┐        ▼                ▼
 │ Continue with onboarding     │  ┌──────────┐    ┌──────────┐
 │ (User experiences feature    │  │ SHOW     │    │  DON'T   │
 │      naturally)              │  │ BANNER   │    │  SHOW    │
 └──────────────────────────────┘  │          │    │ BANNER   │
                                    │"Hey! New │    │          │
                                    │ Feature" │    │(Feature  │
                                    └────┬─────┘    │ not      │
                                         │          │ enabled) │
                                         │          └──────────┘
                                         ▼
                              ┌──────────────────┐
                              │  User Clicks     │
                              │  Banner/Button   │
                              └────────┬─────────┘
                                       │
                                       ▼
                              ┌──────────────────┐
                              │  Set state to    │
                              │     TRUE         │
                              │                  │
                              │ (Changed from    │
                              │  null/false      │
                              │  to true)        │
                              └────────┬─────────┘
                                       │
                                       ▼
                              ┌──────────────────┐
                              │ Banner disappears│
                              │  (permanently)   │
                              │                  │
                              │ User now has     │
                              │ acknowledged the │
                              │ new feature      │
                              └──────────────────┘


┌─────────────────────────────────────────────────────────────────────┐
│                         STATE VALUES                                │
├─────────────────────────────────────────────────────────────────────┤
│  TRUE  = User has acknowledged the feature                          │
│          - NEW users: Set during onboarding (if LD flag ON)         │
│          - EXISTING users: Set after clicking banner                │
│                                                                      │
│  FALSE = User hasn't acknowledged yet (or feature was OFF)          │
│          - EXISTING users: Start with FALSE (not null)              │
│          - NEW users: If LD flag is OFF during onboarding           │
│                                                                      │
│└─────────────────────────────────────────────────────────────────────┘

Changelog

CHANGELOG entry: Introduces metametrics banner

Related issues

Fixes: issue

Manual testing steps

  1. If user onboarded (existing user), opted for metametrics, LD flag on -> Banner should show
  2. If user onboarded (existing user), not opted for metametrics, LD flag on -> Banner shouldn't show
  3. New user and LD flag on -> Banner shouldn't show
  4. LD flag off -> Banner shouldn't show

Screenshots/Recordings

Before

After

Screenshot 2025-11-26 at 5 27 21 PM

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

Adds a feature-flagged MetaMetrics privacy banner (PNA25) with persisted pna25Acknowledged state, onboarding/use-metrics integration, and supporting env/config/i18n updates.

  • UI:
    • Toast: New Pna25Banner in ui/components/app/toast-master/toast-master.js with selector selectShowPna25Banner and action to acknowledge (setPna25Acknowledged).
    • Selectors/Utils: Add selectShowPna25Banner in toast-master/selectors.ts; wire setPna25Acknowledged in toast-master/utils.ts.
    • Hooks: useEnableMetametrics auto-acknowledges when extensionUxPna25 enabled and pna25Acknowledged === false.
    • Onboarding: metametrics.js and welcome.js set pna25Acknowledged for new/social users when EXTENSION_UX_PNA25 is enabled; updated checkbox copy toggle.
  • State/Controllers:
    • Add pna25Acknowledged to AppStateController state, defaults, metadata, setter setPna25Acknowledged, and background API exposure via metamask-controller.js.
    • Include in Sentry safe-state: app/scripts/constants/sentry-state.ts.
    • Types: add to shared/types/background.ts; selector getPna25Acknowledged.
  • Build/Env:
    • New env flag EXTENSION_UX_PNA25: true across builds.yml and default envs.
  • i18n/Links:
    • New messages pna25BannerTitle, onboardingMetametricCheckboxDescriptionOneUpdated in app/_locales/en*/messages.json.
    • Add METAMETRICS_SETTINGS_LINK in shared/lib/ui-utils.js.
  • Tests/Fixtures:
    • Update e2e fixtures and state-snapshot schemas to include pna25Acknowledged and related ordering tweaks.
  • Plumbing:
    • UI actions: new setPna25Acknowledged in ui/store/actions.ts and background wiring.

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

@NidhiKJha NidhiKJha added the DO-NOT-MERGE Pull requests that should not be merged label Nov 21, 2025
@NidhiKJha NidhiKJha marked this pull request as draft November 21, 2025 10:58
@metamaskbot metamaskbot added the team-core-extension-ux Core Extension UX team label Nov 21, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [3feccf9]
UI Startup Metrics (1168 ± 107 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1168990149810712291357
load99884313129910641148
domContentLoaded99283913069810581141
domInteractive211379141762
firstPaint63087118839310231121
backgroundConnect1901752158196206
firstReactRender27186483144
getState301476113453
initialActions106113
loadScripts809661112097875954
setupStore1072331116
numNetworkReqs1257821577
BrowserifyPower User HomeuiStartup18731565259823620772338
load100288314981479981432
domContentLoaded98887714731469781414
domInteractive35162274427158
firstPaint5489315073859311369
backgroundConnect22320525511228249
firstReactRender8055140128797
getState17612233549200298
initialActions105112
loadScripts78167512681457721207
setupStore191055102435
numNetworkReqs88641962996164
WebpackStandard HomeuiStartup8427411096758701004
load63057083562634798
domContentLoaded62556682662630793
domInteractive251596182273
firstPaint23479831153224628
backgroundConnect1363791633
firstReactRender31217073441
getState311462103846
initialActions104112
loadScripts62256481460628784
setupStore1273041418
numNetworkReqs1257720573
WebpackPower User HomeuiStartup14461209257924215581917
load67758314041326961023
domContentLoaded66657513961306771000
domInteractive37171693536136
firstPaint291901021198331699
backgroundConnect1584361927
firstReactRender795096108494
getState15712329031166231
initialActions102011
loadScripts6635731385128675990
setupStore231070153453
numNetworkReqs1436329352183281
FirefoxBrowserifyStandard HomeuiStartup12931106160711413851521
load108794013008611471242
domContentLoaded108593513008711471242
domInteractive64322374384155
firstPaint------
backgroundConnect4123189244583
firstReactRender23184852336
getState146161191035
initialActions102122
loadScripts106292512778311201219
setupStore1158191128
numNetworkReqs1156515654
BrowserifyPower User HomeuiStartup26871906363734228373504
load1161921158618012241516
domContentLoaded1160921158618112181516
domInteractive12933534123142455
firstPaint------
backgroundConnect19020861224228796
firstReactRender87501491997126
getState22579868215198821
initialActions2120227
loadScripts1131905154817611971482
setupStore1008776157104554
numNetworkReqs90602124481201
WebpackStandard HomeuiStartup14421252186813314911775
load1225107714779712881438
domContentLoaded1225107714779712871438
domInteractive63271803783137
firstPaint------
backgroundConnect3919192244286
firstReactRender282082103064
getState145163201146
initialActions103122
loadScripts1200105414539112641390
setupStore126110151022
numNetworkReqs1256817663
WebpackPower User HomeuiStartup28591998372434230313566
load14081139198519815821762
domContentLoaded14081139198519815811762
domInteractive13031754132141468
firstPaint------
backgroundConnect15731726169176590
firstReactRender85391502197128
getState30183905290437882
initialActions317237
loadScripts13701089194619815311734
setupStore85677914173329
numNetworkReqs91582184483201
📊 Page Load Benchmark Results

Current Commit: 3feccf9 | Date: 11/21/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 981ms (±38ms) 🟢 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 683ms (±60ms) 🟢 | historical mean value: 727ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±39ms) 🟢 | historical mean value: 79ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 981ms 38ms 953ms 1.28s 1.01s 1.28s
domContentLoaded 683ms 60ms 659ms 1.23s 707ms 1.23s
firstPaint 78ms 39ms 64ms 460ms 84ms 460ms
firstContentfulPaint 78ms 39ms 64ms 460ms 84ms 460ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 494 Bytes (0.01%)
  • ui: 41.19 KiB (0.59%)
  • common: 391 Bytes (0%)

@metamaskbot
Copy link
Collaborator

metamaskbot commented Nov 24, 2025

✨ Files requiring CODEOWNER review ✨

🕵️ @MetaMask/extension-privacy-reviewers (1 files, +1 -0)
  • 📁 test/
    • 📁 e2e/
      • 📁 tests/
        • 📁 settings/
          • 📄 state-logs.json +1 -0

🧪 @MetaMask/qa (1 files, +1 -0)
  • 📁 test/
    • 📁 e2e/
      • 📁 tests/
        • 📁 settings/
          • 📄 state-logs.json +1 -0

🔐 @MetaMask/web3auth (2 files, +23 -2)
  • 📁 ui/
    • 📁 pages/
      • 📁 onboarding-flow/
        • 📁 metametrics/
          • 📄 metametrics.js +18 -2
        • 📁 welcome/
          • 📄 welcome.js +5 -0

@NidhiKJha NidhiKJha marked this pull request as ready for review November 24, 2025 12:24
@NidhiKJha NidhiKJha requested a review from a team as a code owner November 24, 2025 12:24
@metamaskbot metamaskbot added the INVALID-PR-TEMPLATE PR's body doesn't match template label Nov 24, 2025
@NidhiKJha NidhiKJha removed the DO-NOT-MERGE Pull requests that should not be merged label Nov 24, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [d270e72]
UI Startup Metrics (1340 ± 126 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup13401114177712614131576
load1126921154311812101347
domContentLoaded1119912153811712011335
domInteractive30161362824114
firstPaint641113137443910981239
backgroundConnect23420128216243268
firstReactRender332077113855
getState3918124164666
initialActions105114
loadScripts89368212941139611100
setupStore1374961524
numNetworkReqs1257720572
BrowserifyPower User HomeuiStartup18471612262019619652235
load98887017681719661429
domContentLoaded97486117611719471412
domInteractive38172474628170
firstPaint60310216193949351364
backgroundConnect21820025810224235
firstReactRender80421371886121
getState16712923325184216
initialActions103112
loadScripts77166115301687441195
setupStore191059102341
numNetworkReqs1406530357180291
WebpackStandard HomeuiStartup809691102977836996
load63456089674659810
domContentLoaded62955788973654802
domInteractive2715113232292
firstPaint22395791166211673
backgroundConnect952141018
firstReactRender27195873239
getState261467113444
initialActions104112
loadScripts62655588671652792
setupStore1164661222
numNetworkReqs1257720573
WebpackPower User HomeuiStartup14791280228916215841736
load69760814561366781052
domContentLoaded68760114451376671047
domInteractive40192254231160
firstPaint265981483206250663
backgroundConnect1482531720
firstReactRender86481281493106
getState15612920115165181
initialActions104112
loadScripts68459914351356651038
setupStore24958153655
numNetworkReqs1456832656189288
FirefoxBrowserifyStandard HomeuiStartup12441080158211513021512
load103589412537210891170
domContentLoaded103489412537210851170
domInteractive58301452981121
firstPaint------
backgroundConnect3722175214074
firstReactRender23184762338
getState1067091019
initialActions103122
loadScripts101388112367010541147
setupStore106365919
numNetworkReqs1156414651
BrowserifyPower User HomeuiStartup24412042292622926282837
load1125982166314511261517
domContentLoaded1124982166314511261517
domInteractive12234526110111438
firstPaint------
backgroundConnect972840062113245
firstReactRender87421552498140
getState30067864227459778
initialActions207126
loadScripts1092963163714210891490
setupStore1246755165102656
numNetworkReqs92632134378203
WebpackStandard HomeuiStartup14961308184211215371746
load1274109815339213241480
domContentLoaded1274109815339213241480
domInteractive74282104088141
firstPaint------
backgroundConnect4419226274791
firstReactRender28216773040
getState116121121221
initialActions102122
loadScripts1247108415058613011426
setupStore13484141056
numNetworkReqs1156815653
WebpackPower User HomeuiStartup26692198329827328223199
load13691172193817813781816
domContentLoaded13681172193817813781815
domInteractive11432518115103454
firstPaint------
backgroundConnect1182655794132271
firstReactRender88412342797122
getState28335874233426801
initialActions3152537
loadScripts13181128187116513311767
setupStore108767814592508
numNetworkReqs92621984180190
📊 Page Load Benchmark Results

Current Commit: d270e72 | Date: 11/24/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±163ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 736ms (±161ms) 🟢 | historical mean value: 722ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 90ms (±143ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 163ms 1.01s 2.65s 1.07s 2.65s
domContentLoaded 736ms 161ms 703ms 2.32s 751ms 2.32s
firstPaint 90ms 143ms 60ms 1.51s 84ms 1.51s
firstContentfulPaint 90ms 143ms 60ms 1.51s 84ms 1.51s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 1.24 KiB (0.03%)
  • ui: 45.38 KiB (0.65%)
  • common: 647 Bytes (0.01%)

@ameliejyc
Copy link
Contributor

Figma has BodySm text size whereas we're using medium, should we update?

image

@ameliejyc
Copy link
Contributor

Should this PR include the metric for toast being displayed or is that a follow-up? From ticket: "Log an event for the notice having been displayed"

@metamaskbot
Copy link
Collaborator

Builds ready [3ff5436]
UI Startup Metrics (1233 ± 101 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12331045170510112751440
load104387114928910751206
domContentLoaded103786614808810691196
domInteractive27141342621106
firstPaint52891148639910151143
backgroundConnect21619426212225237
firstReactRender301961103250
getState351681124259
initialActions108112
loadScripts828661125986861996
setupStore1263041319
numNetworkReqs1257720573
BrowserifyPower User HomeuiStartup19281541276827820112583
load98186915071319711353
domContentLoaded96786414971329561346
domInteractive34171773030117
firstPaint5507915363819251289
backgroundConnect21919626712228240
firstReactRender86441351996120
getState16112423628180216
initialActions107112
loadScripts76467312691327501145
setupStore221073132944
numNetworkReqs103642795699270
WebpackStandard HomeuiStartup8287101338948561017
load639566100483682814
domContentLoaded63456099782678808
domInteractive2714110232199
firstPaint22669855163209688
backgroundConnect1053251019
firstReactRender2920202183238
getState281391133848
initialActions106113
loadScripts63155797380676806
setupStore1163141217
numNetworkReqs1257720572
WebpackPower User HomeuiStartup16561217227421518211975
load666583101194669941
domContentLoaded655577100394654936
domInteractive37181643037113
firstPaint277981012185287638
backgroundConnect1684571736
firstReactRender85441531896105
getState14612320216154186
initialActions103112
loadScripts65257599492652927
setupStore20953122349
numNetworkReqs1527040575196359
FirefoxBrowserifyStandard HomeuiStartup11961035171814512481579
load99988812368410601172
domContentLoaded99788412288510601172
domInteractive57322543482110
firstPaint------
backgroundConnect42212263140105
firstReactRender21174452133
getState12519226821
initialActions103112
loadScripts97187411827310241096
setupStore13520227824
numNetworkReqs1256517663
BrowserifyPower User HomeuiStartup24681886333628126473016
load1110949176915010911454
domContentLoaded1108945176815010911454
domInteractive11333543103113410
firstPaint------
backgroundConnect1003249170114205
firstReactRender85421712295125
getState28458824214432717
initialActions217126
loadScripts1071920171014210521419
setupStore10013748121100380
numNetworkReqs1016327657113244
WebpackStandard HomeuiStartup14241262176810614671663
load1206105615238712741350
domContentLoaded1206105615238712741350
domInteractive54261583175124
firstPaint------
backgroundConnect4017159204377
firstReactRender27196992940
getState136134181143
initialActions102112
loadScripts1182104015008512501314
setupStore13581131346
numNetworkReqs1156615659
WebpackPower User HomeuiStartup28222263381332630873472
load13911202197617513951776
domContentLoaded13911202197617513951776
domInteractive1093448210099391
firstPaint------
backgroundConnect1163053878139230
firstReactRender89452122398130
getState27958944229415746
initialActions4066738
loadScripts13501153194717113511743
setupStore1087673147104537
numNetworkReqs101632555979239
📊 Page Load Benchmark Results

Current Commit: 3ff5436 | Date: 11/25/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±38ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 718ms (±36ms) 🟢 | historical mean value: 726ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±12ms) 🟢 | historical mean value: 80ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 38ms 1.00s 1.31s 1.05s 1.31s
domContentLoaded 718ms 36ms 695ms 989ms 731ms 989ms
firstPaint 75ms 12ms 60ms 184ms 84ms 184ms
firstContentfulPaint 75ms 12ms 60ms 184ms 84ms 184ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 1.35 KiB (0.03%)
  • ui: 54.82 KiB (0.78%)
  • common: 758 Bytes (0.01%)

@metamaskbot
Copy link
Collaborator

Builds ready [8e6603e]
UI Startup Metrics (1202 ± 89 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1202101014058912501381
load102484912057810611184
domContentLoaded101784711977710551174
domInteractive2515102222091
firstPaint54092118639910111139
backgroundConnect21019324110214235
firstReactRender26184562840
getState301583113253
initialActions104111
loadScripts81465199377854969
setupStore1062321115
numNetworkReqs1257720572
BrowserifyPower User HomeuiStartup19261582340429920192564
load99687217491459901372
domContentLoaded98186517431439691343
domInteractive33171622930121
firstPaint56510114864039561351
backgroundConnect22520128315232255
firstReactRender88421442198132
getState16412724427179220
initialActions105113
loadScripts77566715311437601147
setupStore2094792539
numNetworkReqs101662795497269
WebpackStandard HomeuiStartup808697109882830983
load63256089177669799
domContentLoaded62855588576666795
domInteractive2615118232191
firstPaint21180796144197580
backgroundConnect95294917
firstReactRender26195673138
getState261375113444
initialActions104112
loadScripts62555387675664793
setupStore1062741217
numNetworkReqs1257720572
WebpackPower User HomeuiStartup16761237208621218182053
load6685881001100659955
domContentLoaded659582993100649949
domInteractive35181512831119
firstPaint242108722149244629
backgroundConnect16775111647
firstReactRender85441521794105
getState14912426819155182
initialActions103112
loadScripts65658098498647940
setupStore211057142450
numNetworkReqs1577041477194387
FirefoxBrowserifyStandard HomeuiStartup12281074172012412821486
load102591214058510801164
domContentLoaded102491214058610791163
domInteractive54301362882113
firstPaint------
backgroundConnect3722107183780
firstReactRender22176162233
getState1069010921
initialActions103112
loadScripts100289713818010551133
setupStore13511317945
numNetworkReqs1156816657
BrowserifyPower User HomeuiStartup24681960315726626882918
load1111939161614111391446
domContentLoaded1110939161514111391446
domInteractive1163151192118344
firstPaint------
backgroundConnect983352786107276
firstReactRender84421902395123
getState28135941235432839
initialActions3123327
loadScripts1069919154112311081354
setupStore1316746175131623
numNetworkReqs1026428156117253
WebpackStandard HomeuiStartup14321255189211914871682
load1217106614269112921388
domContentLoaded1217106614269112911388
domInteractive49261603068105
firstPaint------
backgroundConnect4021128214295
firstReactRender25196362736
getState136145201243
initialActions102012
loadScripts1192105314048412571343
setupStore125107121033
numNetworkReqs1156916662
WebpackPower User HomeuiStartup27332161372629929483235
load13621140192719514011785
domContentLoaded13611139192719514011785
domInteractive99294979496360
firstPaint------
backgroundConnect1093146179117275
firstReactRender85431912394126
getState28072848245433808
initialActions307237
loadScripts13201107188418913351748
setupStore118678417881605
numNetworkReqs100602585792249
📊 Page Load Benchmark Results

Current Commit: 8e6603e | Date: 11/25/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±41ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 722ms (±37ms) 🟢 | historical mean value: 721ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±10ms) 🟢 | historical mean value: 81ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 41ms 1.01s 1.32s 1.06s 1.32s
domContentLoaded 722ms 37ms 697ms 984ms 731ms 984ms
firstPaint 77ms 10ms 64ms 168ms 84ms 168ms
firstContentfulPaint 77ms 10ms 64ms 168ms 84ms 168ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 1.35 KiB (0.03%)
  • ui: 55.53 KiB (0.79%)
  • common: 1 KiB (0.01%)

ameliejyc
ameliejyc previously approved these changes Nov 27, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [ca876f7]
UI Startup Metrics (1271 ± 122 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12711060164512213541481
load102586413199710881204
domContentLoaded101885813109610791194
domInteractive261595182275
firstPaint59486134841910151215
backgroundConnect21519526113222241
firstReactRender382371114160
getState62171803069129
initialActions105113
loadScripts810660109893869991
setupStore1364661525
numNetworkReqs41281483431144
BrowserifyPower User HomeuiStartup20911669281524822302642
load1019882149914510001418
domContentLoaded100487714821459881408
domInteractive37172003433136
firstPaint53511715083989501365
backgroundConnect259204728113228552
firstReactRender5842103116384
getState19813075593208252
initialActions301972012
loadScripts79967112771457811207
setupStore2094882439
numNetworkReqs1626539369200337
WebpackStandard HomeuiStartup8407241215908601061
load62355883671642809
domContentLoaded61955483271639804
domInteractive2515101212184
firstPaint21283582124215574
backgroundConnect962951025
firstReactRender3621124183983
getState51171682661101
initialActions106112
loadScripts61655282369637795
setupStore1564681639
numNetworkReqs41291463330140
WebpackPower User HomeuiStartup17111275225425419422199
load689602104096694978
domContentLoaded678594103497683966
domInteractive38181883733148
firstPaint28592976186299682
backgroundConnect100964018526605
firstReactRender6446119127188
getState19013370190186222
initialActions104112
loadScripts675592102695681957
setupStore21957122451
numNetworkReqs1656540178212384
FirefoxBrowserifyStandard HomeuiStartup14151171252817514931687
load1087941215913711361252
domContentLoaded1087941215813711361252
domInteractive62341363093112
firstPaint------
backgroundConnect65272504379169
firstReactRender29195693450
getState22789122343
initialActions205123
loadScripts1058926212413011091200
setupStore2511127182564
numNetworkReqs40281262733119
BrowserifyPower User HomeuiStartup25982030453939027703519
load11651006161014711651555
domContentLoaded11641006160914711641555
domInteractive12336519102116424
firstPaint------
backgroundConnect1142944475121297
firstReactRender6136236236297
getState25873856186254752
initialActions203122
loadScripts1132986158314211331529
setupStore20110771212238697
numNetworkReqs100513136180240
WebpackStandard HomeuiStartup16481378214115517601958
load1273112414819113411455
domContentLoaded1273112314819113411454
domInteractive61241423288127
firstPaint------
backgroundConnect71291963797156
firstReactRender312095103347
getState2991833025121
initialActions205123
loadScripts1243110714558913071415
setupStore3091943520109
numNetworkReqs40281262538119
WebpackPower User HomeuiStartup28662208458459029724204
load14071170248929113702130
domContentLoaded14061170248829113692130
domInteractive11532525113107477
firstPaint------
backgroundConnect133241115145132371
firstReactRender6042164186397
getState27075802212378756
initialActions4174937
loadScripts13521154236323013381897
setupStore17271022219190703
numNetworkReqs100602485980239
📊 Page Load Benchmark Results

Current Commit: ca876f7 | Date: 11/27/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±39ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 716ms (±36ms) 🟢 | historical mean value: 725ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±10ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 39ms 1.01s 1.32s 1.06s 1.32s
domContentLoaded 716ms 36ms 697ms 990ms 741ms 990ms
firstPaint 76ms 10ms 64ms 164ms 88ms 164ms
firstContentfulPaint 76ms 10ms 64ms 164ms 88ms 164ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 286 Bytes (0.01%)
  • ui: 1.58 KiB (0.02%)
  • common: 705 Bytes (0.01%)

@metamaskbot
Copy link
Collaborator

Builds ready [7a157ea]
UI Startup Metrics (1231 ± 114 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12311052166611413141430
load1034882141510010801225
domContentLoaded102787914089910661219
domInteractive2714119212286
firstPaint49915013003899981193
backgroundConnect21519828714222235
firstReactRender30196393450
getState3715127204185
initialActions104112
loadScripts8196701189968551006
setupStore1365981329
numNetworkReqs1257720572
BrowserifyPower User HomeuiStartup20671726282224322402563
load1009889153913310001369
domContentLoaded99588415291329841359
domInteractive35171282435109
firstPaint5059315593969501312
backgroundConnect257198710107231562
firstReactRender6039118156694
getState18414166054191238
initialActions103112
loadScripts78967013261337711158
setupStore2085582238
numNetworkReqs1567138969194324
WebpackStandard HomeuiStartup8436851071939041015
load65556590983680832
domContentLoaded65156090383676826
domInteractive2816160242391
firstPaint23996910186205731
backgroundConnect1066771126
firstReactRender27207273137
getState2613147163346
initialActions102111
loadScripts64855889581674817
setupStore1062841216
numNetworkReqs1257720572
WebpackPower User HomeuiStartup17281330257126919992186
load6906001268104693926
domContentLoaded6805921261105680922
domInteractive39182363535126
firstPaint311881011201379673
backgroundConnect111961919965583
firstReactRender6245102116889
getState18414274981181214
initialActions104112
loadScripts6775911251104678913
setupStore231055122553
numNetworkReqs1686540675208329
FirefoxBrowserifyStandard HomeuiStartup13271094183317114291699
load1087932145610811601278
domContentLoaded1086932145610811601277
domInteractive60322183482124
firstPaint------
backgroundConnect44221703143132
firstReactRender24185062437
getState147214251028
initialActions103122
loadScripts1061915142410111331251
setupStore12672111132
numNetworkReqs1256617664
BrowserifyPower User HomeuiStartup25841913456255526234081
load1184935258127211961554
domContentLoaded1184934258127211961554
domInteractive11332549105105410
firstPaint------
backgroundConnect136251127190114435
firstReactRender5636108145989
getState268541003224342800
initialActions2131323
loadScripts1120919202717411521478
setupStore1688766218157690
numNetworkReqs1006124451118238
WebpackStandard HomeuiStartup15401296221717816441866
load12701080159811713481501
domContentLoaded12701080159811713471500
domInteractive62262523783128
firstPaint------
backgroundConnect53221943455136
firstReactRender27204952937
getState176289311545
initialActions103122
loadScripts12411064148010713151447
setupStore155192211250
numNetworkReqs1256617763
WebpackPower User HomeuiStartup29502195556577831714616
load14031122285335814512615
domContentLoaded14031122285335814502615
domInteractive1123256911693466
firstPaint------
backgroundConnect137261924222125295
firstReactRender68373814464125
getState347601821301500896
initialActions217123
loadScripts13551097275430914102244
setupStore14061016209110682
numNetworkReqs996125352112247
📊 Page Load Benchmark Results

Current Commit: 7a157ea | Date: 11/28/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 984ms (±45ms) 🟢 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 682ms (±42ms) 🟢 | historical mean value: 722ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±13ms) 🟢 | historical mean value: 79ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 984ms 45ms 956ms 1.35s 1.02s 1.35s
domContentLoaded 682ms 42ms 661ms 1.01s 703ms 1.01s
firstPaint 76ms 13ms 60ms 192ms 84ms 192ms
firstContentfulPaint 76ms 13ms 60ms 192ms 84ms 192ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 1.93 KiB (0.04%)
  • ui: -53.94 KiB (-0.69%)
  • common: 3.39 KiB (0.04%)

n3ps
n3ps previously approved these changes Nov 28, 2025
@NidhiKJha NidhiKJha enabled auto-merge November 28, 2025 11:26
@metamaskbot
Copy link
Collaborator

Builds ready [bf7d334]
UI Startup Metrics (1231 ± 108 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12311006148910813131408
load103286112579410941194
domContentLoaded102585812489210881184
domInteractive2615109202186
firstPaint5078412353989991141
backgroundConnect21419025412217240
firstReactRender311981113847
getState3615147204159
initialActions105114
loadScripts818657103789883983
setupStore1163351222
numNetworkReqs1257821573
BrowserifyPower User HomeuiStartup21321797290223421732661
load1079954157513710861440
domContentLoaded1062939155013610681428
domInteractive38181522737125
firstPaint662105157144810411440
backgroundConnect26421176799243547
firstReactRender6443180186898
getState19715527325214242
initialActions105112
loadScripts84369913321368451218
setupStore221164102645
numNetworkReqs102632714999245
WebpackStandard HomeuiStartup8417191062798781031
load65058185467668814
domContentLoaded64557684666660809
domInteractive28161382423101
firstPaint22491823149206642
backgroundConnect1063161127
firstReactRender2921114113340
getState251363103244
initialActions106112
loadScripts64257483765658799
setupStore1162541318
numNetworkReqs1257721576
WebpackPower User HomeuiStartup16031261225826618842083
load64555894688655903
domContentLoaded63655393789645898
domInteractive33171302731116
firstPaint295107947188328655
backgroundConnect77762317018544
firstReactRender61458796681
getState18714064668186229
initialActions104112
loadScripts63355192987643891
setupStore1894991944
numNetworkReqs1686444386215422
FirefoxBrowserifyStandard HomeuiStartup12631073159011613321502
load104690413087710971201
domContentLoaded104690413087710961201
domInteractive57311282780111
firstPaint------
backgroundConnect40221302639114
firstReactRender24184972445
getState1069891017
initialActions103122
loadScripts102288712467010711170
setupStore1166791030
numNetworkReqs1256617664
BrowserifyPower User HomeuiStartup27131942463163028834386
load1253950272435712562548
domContentLoaded1252950272335712562547
domInteractive12634564114121484
firstPaint------
backgroundConnect142241651193125472
firstReactRender5939127176494
getState26386779180300698
initialActions208123
loadScripts1193931247829211521714
setupStore1238762171117649
numNetworkReqs102593226478247
WebpackStandard HomeuiStartup15531320212416316271873
load12701088156410213521458
domContentLoaded12701088156410213511458
domInteractive65262223588118
firstPaint------
backgroundConnect53202133449140
firstReactRender292282113060
getState197196291478
initialActions103122
loadScripts1243106315469813061413
setupStore156150181435
numNetworkReqs1156815763
WebpackPower User HomeuiStartup30062002550182833034815
load14921146300246916192765
domContentLoaded14911146300146916172764
domInteractive12931109217196478
firstPaint------
backgroundConnect1682214242661231176
firstReactRender68381972769130
getState315801296268478822
initialActions3186824
loadScripts14021104298036514952476
setupStore1315759179123623
numNetworkReqs99622455876234
📊 Page Load Benchmark Results

Current Commit: bf7d334 | Date: 11/28/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±64ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±61ms) 🟢 | historical mean value: 723ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±15ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 64ms 1.00s 1.33s 1.27s 1.33s
domContentLoaded 731ms 61ms 694ms 1.00s 935ms 1.00s
firstPaint 77ms 15ms 56ms 216ms 92ms 216ms
firstContentfulPaint 77ms 15ms 56ms 216ms 92ms 216ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 286 Bytes (0.01%)
  • ui: 1.58 KiB (0.02%)
  • common: 684 Bytes (0.01%)

@NidhiKJha NidhiKJha requested review from Gudahtt, lwin-kyaw and seaona and removed request for Gudahtt, lwin-kyaw and seaona November 28, 2025 12:39
Copy link
Member

@seaona seaona left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QA changes LGTM

@NidhiKJha NidhiKJha added this pull request to the merge queue Nov 28, 2025
Merged via the queue into main with commit ead303c Nov 28, 2025
176 checks passed
@NidhiKJha NidhiKJha deleted the CEUX-713-pna-25 branch November 28, 2025 13:54
@github-actions github-actions bot locked and limited conversation to collaborators Nov 28, 2025
@metamaskbot metamaskbot added the release-13.13.0 Issue or pull request that will be included in release 13.13.0 label Nov 28, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

INVALID-PR-TEMPLATE PR's body doesn't match template pna25 2025 release-13.13.0 Issue or pull request that will be included in release 13.13.0 size-L team-core-extension-ux Core Extension UX team

Projects

None yet

Development

Successfully merging this pull request may close these issues.