Skip to content

Conversation

@montelaidev
Copy link
Contributor

@montelaidev montelaidev commented Nov 5, 2025

Description

This PR introduces a new address list component that displays aggregated account addresses by chain type. EVM addresses will now be grouped together.

Open in GitHub Codespaces

Changelog

CHANGELOG entry: Adds a hovered component when the address link is hovered over.

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/MUL-1226?atlOrigin=eyJpIjoiNGFiYzMyNTBlODg1NDI1NjhjZDRlNjhkOTI1NDk5YWEiLCJwIjoiaiJ9
Fixes:

Manual testing steps

  1. Open the wallet
  2. See the network address link
  3. Hover over the link and see and address list appear
  4. Click on view all to go to the full screen address page.

Screenshots/Recordings

Before

After

Screen.Recording.2025-11-11.at.19.31.01.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

Adds a hoverable multichain address list in the header that aggregates EVM networks with avatars, copy action, and a "View all" link, plus supporting components, i18n, styles, stories, and tests.

  • UI/Components:
    • MultichainHoveredAddressRowsList: New hover popover listing aggregated addresses per network group with priority ordering, copy support, and "View all" navigation.
    • MultichainAggregatedAddressListRow: Row showing grouped network avatars, derived group name (incl. Bitcoin SegWit), truncated address, and copy feedback.
    • MultichainAccountNetworkGroup: New reusable avatar group for networks (CAIP→hex conversion, priority sorting, limit display).
  • App Header Integration:
    • Replaces networks link/count with hoverable address list + network avatars; removes usage of networkAddress(es) strings.
  • i18n:
    • Adds multichainAddressViewAll, networkNameBitcoinSegwit; removes networkAddress/networkAddresses.
  • Styles:
    • Adds hover/row styling for multichain address list and header subtitle.
  • Types/Exports:
    • Exports CopyParams from multichain-address-row.
  • Stories/Tests:
    • Comprehensive Storybook stories and unit tests for new components and behaviors (hover, copy, sorting, navigation).

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

@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

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

metamaskbot commented Nov 5, 2025

✨ Files requiring CODEOWNER review ✨

🔑 @MetaMask/accounts-engineers (12 files, +2799 -1)
  • 📁 ui/
    • 📁 components/
      • 📁 multichain-accounts/
        • 📁 multichain-account-network-group/
          • 📄 index.ts +2 -0
          • 📄 multichain-account-network-group.tsx +162 -0
        • 📁 multichain-address-row/
          • 📄 multichain-address-row.tsx +1 -1
        • 📁 multichain-address-rows-hovered-list/
          • 📄 index.scss +4 -0
          • 📄 index.ts +2 -0
          • 📄 multichain-aggregated-list-row.stories.tsx +222 -0
          • 📄 multichain-aggregated-list-row.test.tsx +451 -0
          • 📄 multichain-aggregated-list-row.tsx +195 -0
          • 📄 multichain-hovered-address-rows-hovered-list.stories.tsx +499 -0
          • 📄 multichain-hovered-address-rows-hovered-list.test.tsx +915 -0
          • 📄 multichain-hovered-address-rows-hovered-list.tsx +345 -0
          • 📄 multichain-accounts.scss +1 -0

👨‍🔧 @MetaMask/core-extension-ux (2 files, +24 -40)
  • 📁 ui/
    • 📁 components/
      • 📁 multichain/
        • 📁 app-header/
          • 📄 app-header-unlocked-content.tsx +15 -40
          • 📄 index.scss +9 -0

@montelaidev montelaidev self-assigned this Nov 5, 2025
@montelaidev montelaidev marked this pull request as ready for review November 5, 2025 12:38
@montelaidev montelaidev requested review from a team as code owners November 5, 2025 12:38
@montelaidev montelaidev added the team-accounts-framework Accounts Framework team label Nov 5, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [a36d728]
UI Startup Metrics (1168 ± 113 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1168980172311312181386
load99082814589610491132
domContentLoaded98382214409510441126
domInteractive2313223261869
firstPaint674161148538710121130
backgroundConnect19717331724208250
firstReactRender2517124122542
getState20690122244
initialActions61366617
loadScripts794650125087838910
setupStore1063231117
numNetworkReqs1367620674
BrowserifyPower User HomeuiStartup20591791328341723793283
load1048903159022112781590
domContentLoaded1039894158621812721586
domInteractive281568195268
firstPaint56018014003689111400
backgroundConnect24022030921244309
firstReactRender44386164661
getState18516123119201231
initialActions73184818
loadScripts810676128520410371285
setupStore15103471434
numNetworkReqs1217425275251252
WebpackStandard HomeuiStartup84271412751018481119
load616559104189609881
domContentLoaded608552101785601863
domInteractive16125991436
firstPaint20360971188205598
backgroundConnect251173142565
firstReactRender301877103543
getState1162841217
initialActions3119349
loadScripts605546100683598853
setupStore1253441320
numNetworkReqs1367519870
WebpackPower User HomeuiStartup13011138180423215901804
load640558940115733940
domContentLoaded62054784499704844
domInteractive241276194476
firstPaint32189816217567816
backgroundConnect641824774143247
firstReactRender37354423844
getState14710416720159167
initialActions114114
loadScripts61654483395693833
setupStore96305830
numNetworkReqs1126822758169227
FirefoxBrowserifyStandard HomeuiStartup14741282200413115281749
load1249110414818513141402
domContentLoaded1249110414808513131402
domInteractive1193437249129220
firstPaint------
backgroundConnect4523216275096
firstReactRender27227272740
getState9417917717
initialActions51728414
loadScripts1223107814068112841371
setupStore156216221232
numNetworkReqs1266415758
BrowserifyPower User HomeuiStartup26112181402953030934029
load13791181172017715621720
domContentLoaded13781180172017715611720
domInteractive23687645197391645
firstPaint------
backgroundConnect13426534151185534
firstReactRender58467186371
getState1458428443154284
initialActions12281201181
loadScripts13431144168617914981686
setupStore4261815062181
numNetworkReqs1336931395212313
WebpackStandard HomeuiStartup15421379230514615581880
load1310118916999013261524
domContentLoaded1310118916999013251524
domInteractive903216227106146
firstPaint------
backgroundConnect4522132214989
firstReactRender28217272839
getState9312414741
initialActions51336325
loadScripts1282117016118113021459
setupStore177124201371
numNetworkReqs1367318767
WebpackPower User HomeuiStartup25412167300725127703007
load15181314186116417041861
domContentLoaded15181314186116417041861
domInteractive16144417104245417
firstPaint------
backgroundConnect993124669161246
firstReactRender57441121865112
getState1387326054170260
initialActions3022015914201
loadScripts14751283176815216581768
setupStore36893296693
numNetworkReqs1316031682219316
📊 Page Load Benchmark Results

Current Commit: a36d728 | Date: 11/5/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.08s (±132ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 764ms (±157ms) 🟢 | historical mean value: 731ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 93ms (±131ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.08s 132ms 1.03s 2.26s 1.27s 2.26s
domContentLoaded 764ms 157ms 716ms 2.22s 952ms 2.22s
firstPaint 93ms 131ms 68ms 1.40s 88ms 1.40s
firstContentfulPaint 93ms 131ms 68ms 1.40s 88ms 1.40s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 68 Bytes (0%)
  • ui: 8.92 KiB (0.12%)
  • common: 58 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [2da485d]
UI Startup Metrics (1273 ± 102 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12731103159910213281471
load108992312989111521264
domContentLoaded108291412819011451260
domInteractive221477151866
firstPaint56487129342810531182
backgroundConnect23822429710242257
firstReactRender27185072942
getState24870102940
initialActions61396712
loadScripts8516761050909151020
setupStore1162331218
numNetworkReqs1367219670
BrowserifyPower User HomeuiStartup20231755296436723612964
load1052888159121912731591
domContentLoaded1037882157121212311571
domInteractive281667184867
firstPaint80717216124279311612
backgroundConnect25022434829261348
firstReactRender42375244452
getState17013422618172226
initialActions51144514
loadScripts803655123719510041237
setupStore1492971529
numNetworkReqs1217225775243257
WebpackStandard HomeuiStartup816697102772828971
load59455378754594748
domContentLoaded58654276050589729
domInteractive15114471435
firstPaint18256796158198568
backgroundConnect251280142861
firstReactRender3117202203457
getState1052331215
initialActions40234513
loadScripts58353974948586718
setupStore1153131215
numNetworkReqs1367019869
WebpackPower User HomeuiStartup13651171181824917791818
load69258010591618741059
domContentLoaded669569998144831998
domInteractive34141513858151
firstPaint38510410023206091002
backgroundConnect48111834969183
firstReactRender41384834148
getState14910718021161180
initialActions214134
loadScripts665566987140819987
setupStore1462792627
numNetworkReqs1106722661198226
FirefoxBrowserifyStandard HomeuiStartup15051304207512815781721
load1274111415668913401434
domContentLoaded1274111415658913401433
domInteractive1293745564134291
firstPaint------
backgroundConnect46271602251100
firstReactRender27224952740
getState10422323719
initialActions6117617413
loadScripts1245109315268513101400
setupStore14768101335
numNetworkReqs1265914755
BrowserifyPower User HomeuiStartup24682195341429425913414
load13681181167616015861676
domContentLoaded13681181167616015861676
domInteractive22791627186459627
firstPaint------
backgroundConnect933222751131227
firstReactRender61441011366101
getState1297917428158174
initialActions15259193059
loadScripts13301154164516615691645
setupStore3961573841157
numNetworkReqs1427131171203311
WebpackStandard HomeuiStartup15861417229919116072160
load13461200184211013941564
domContentLoaded13461200184110913941563
domInteractive1043334944113176
firstPaint------
backgroundConnect49211552753120
firstReactRender27225852735
getState1049013849
initialActions41608313
loadScripts13141178176810113701511
setupStore174191261245
numNetworkReqs1367518766
WebpackPower User HomeuiStartup25862202311325928623113
load15691271191918017491919
domContentLoaded15691271191918017491919
domInteractive16073344101320344
firstPaint------
backgroundConnect793616439119164
firstReactRender634698167198
getState1386825845173258
initialActions9144121044
loadScripts15281244188417917121884
setupStore2771453233145
numNetworkReqs1326826173236261
📊 Page Load Benchmark Results

Current Commit: 2da485d | Date: 11/5/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±41ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 741ms (±38ms) 🟢 | historical mean value: 728ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±15ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 41ms 1.03s 1.38s 1.10s 1.38s
domContentLoaded 741ms 38ms 717ms 1.04s 773ms 1.04s
firstPaint 80ms 15ms 60ms 216ms 88ms 216ms
firstContentfulPaint 80ms 15ms 60ms 216ms 88ms 216ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: -779 Bytes (-0.02%)
  • ui: 9.1 KiB (0.12%)
  • common: 4.09 KiB (0.05%)

@metamaskbot
Copy link
Collaborator

Builds ready [2fccaef]
UI Startup Metrics (1264 ± 94 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1264109815589413191466
load107990513098911341247
domContentLoaded107389912988711281233
domInteractive221492151961
firstPaint68987129943310821207
backgroundConnect23822132213240263
firstReactRender2918146153045
getState2274692741
initialActions70799925
loadScripts8426671053878961009
setupStore1173641220
numNetworkReqs1367720676
BrowserifyPower User HomeuiStartup19651761249626723362496
load1010888134717012511347
domContentLoaded1000870134117212411341
domInteractive271470184470
firstPaint64524412543499181254
backgroundConnect24121927415256274
firstReactRender41375854458
getState17315321517186215
initialActions41133513
loadScripts773649111116410101111
setupStore1292741127
numNetworkReqs1217226470176264
WebpackStandard HomeuiStartup83570513991028421061
load608555113586601797
domContentLoaded599548111883594773
domInteractive1712105141439
firstPaint234641122224211730
backgroundConnect251276142859
firstReactRender29186183437
getState1162631317
initialActions40305414
loadScripts596546110681592762
setupStore1162841317
numNetworkReqs1367319870
WebpackPower User HomeuiStartup13511166192925415801929
load67656910341587601034
domContentLoaded66055710061497201006
domInteractive211347133247
firstPaint35373979295571979
backgroundConnect55112817163281
firstReactRender39364224042
getState14810617317156173
initialActions31143414
loadScripts655555995145709995
setupStore1162771227
numNetworkReqs1077022651165226
FirefoxBrowserifyStandard HomeuiStartup14751276208313115141745
load1247110115677912871393
domContentLoaded1247110115657912871392
domInteractive1213437954122244
firstPaint------
backgroundConnect46191772551126
firstReactRender26215042632
getState84617716
initialActions6119020412
loadScripts1220108215397512601359
setupStore146202201231
numNetworkReqs1267415759
BrowserifyPower User HomeuiStartup28752389393848632973938
load16191352237729819772377
domContentLoaded16191352237629819762376
domInteractive23594670196505670
firstPaint------
backgroundConnect13240489122248489
firstReactRender664897137697
getState1569232155199321
initialActions2921444639144
loadScripts15831324233929619462339
setupStore3661854558185
numNetworkReqs1327231479205314
WebpackStandard HomeuiStartup16421456209113916981976
load1392121517329814611582
domContentLoaded1392121517319814611582
domInteractive1003236949108193
firstPaint------
backgroundConnect51251232360112
firstReactRender30237283141
getState12420626841
initialActions618710425
loadScripts1359119716499314211549
setupStore177244271359
numNetworkReqs1366917765
WebpackPower User HomeuiStartup24362019301025026223010
load14871186169914516401699
domContentLoaded14871185169814516391698
domInteractive1416738284200382
firstPaint------
backgroundConnect822918946120189
firstReactRender55411011859101
getState1216720338172203
initialActions8144101144
loadScripts14461169166313415941663
setupStore3061173137117
numNetworkReqs1265627078196270
📊 Page Load Benchmark Results

Current Commit: 2fccaef | Date: 11/5/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±39ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±36ms) 🟢 | historical mean value: 728ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 79ms (±11ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 39ms 1.02s 1.34s 1.07s 1.34s
domContentLoaded 731ms 36ms 711ms 1.01s 749ms 1.01s
firstPaint 79ms 11ms 64ms 176ms 88ms 176ms
firstContentfulPaint 79ms 11ms 64ms 176ms 88ms 176ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: -779 Bytes (-0.02%)
  • ui: 9.12 KiB (0.13%)
  • common: 4.09 KiB (0.05%)

@owencraston owencraston added the DO-NOT-MERGE Pull requests that should not be merged label Nov 5, 2025
Copy link
Member

@gantunesr gantunesr left a comment

Choose a reason for hiding this comment

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

Looks good, just left a comment

Image Image

@owencraston owencraston removed the DO-NOT-MERGE Pull requests that should not be merged label Nov 5, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [4e35048]
UI Startup Metrics (1240 ± 92 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1240112215159212861433
load105889212948610991223
domContentLoaded104988812888810931218
domInteractive231577142164
firstPaint50390130540210111197
backgroundConnect23622433317238254
firstReactRender2819116123148
getState24771102847
initialActions001001
loadScripts821658105487866999
setupStore1162541220
numNetworkReqs1367619668
BrowserifyPower User HomeuiStartup19661725272329322342723
load1042899149517912371495
domContentLoaded1033893149117612261491
domInteractive301576205076
firstPaint59316913163769501316
backgroundConnect23921926413254264
firstReactRender43385144651
getState17915425828206258
initialActions001011
loadScripts805673123116910021231
setupStore1262761127
numNetworkReqs1617332598247325
WebpackStandard HomeuiStartup88672413471129061141
load642569111893640900
domContentLoaded634564108890634884
domInteractive181264111652
firstPaint212581091208210628
backgroundConnect281295163366
firstReactRender3318255243740
getState1375361519
initialActions001001
loadScripts631561107788631873
setupStore1364851421
numNetworkReqs1367519870
WebpackPower User HomeuiStartup12881134195823114131958
load66556410431528511043
domContentLoaded64855310171428111017
domInteractive29131083048108
firstPaint389119875287582875
backgroundConnect52102316247231
firstReactRender41394524145
getState1409118224151182
initialActions001011
loadScripts64455110061398011006
setupStore86173917
numNetworkReqs1097122254168222
FirefoxBrowserifyStandard HomeuiStartup14241264178612314961670
load1200108114589112691377
domContentLoaded1199108114579112691377
domInteractive1053328951104211
firstPaint------
backgroundConnect3925121144665
firstReactRender25214752637
getState74586712
initialActions001001
loadScripts1177106414128812481358
setupStore14780121329
numNetworkReqs1266215760
BrowserifyPower User HomeuiStartup24292106333029425873330
load13271134168616114691686
domContentLoaded13271134168616114691686
domInteractive17258545145335545
firstPaint------
backgroundConnect1133528487208284
firstReactRender71491091887109
getState1308820834138208
initialActions001011
loadScripts12911115165016014411650
setupStore23564213564
numNetworkReqs1366530973194309
WebpackStandard HomeuiStartup16371445204914216711969
load13831240171710814251659
domContentLoaded13831239171710814251659
domInteractive913134036106126
firstPaint------
backgroundConnect50241922854120
firstReactRender312382113070
getState84536916
initialActions001001
loadScripts1350121816309813771578
setupStore16775121640
numNetworkReqs1366817864
WebpackPower User HomeuiStartup23692060310431025593104
load13991191181316515401813
domContentLoaded13991190181216515401812
domInteractive1263844799191447
firstPaint------
backgroundConnect793126567156265
firstReactRender62451051467105
getState1168418331149183
initialActions101011
loadScripts13681172173215315071732
setupStore22859163159
numNetworkReqs1275931087234310
📊 Page Load Benchmark Results

Current Commit: 4e35048 | Date: 11/11/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±40ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 720ms (±37ms) 🟢 | historical mean value: 717ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±10ms) 🟢 | historical mean value: 76ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 40ms 1.01s 1.33s 1.10s 1.33s
domContentLoaded 720ms 37ms 700ms 1.00s 742ms 1.00s
firstPaint 77ms 10ms 60ms 160ms 84ms 160ms
firstContentfulPaint 77ms 10ms 60ms 160ms 84ms 160ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 2.29 KiB (0.05%)
  • ui: 12.68 KiB (0.17%)
  • common: 1.1 KiB (0.01%)

@metamaskbot
Copy link
Collaborator

Builds ready [a747b2d]
UI Startup Metrics (1215 ± 88 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1215106414748812871361
load104391212277911071179
domContentLoaded103590412227910991166
domInteractive211490141861
firstPaint63983121042310461142
backgroundConnect22921630310231243
firstReactRender24184542534
getState21979102537
initialActions002001
loadScripts81469197978880954
setupStore1072731118
numNetworkReqs1357419670
BrowserifyPower User HomeuiStartup19871790262625322452626
load1040913144717012321447
domContentLoaded1031909141216312231412
domInteractive291670195870
firstPaint6589114484719891448
backgroundConnect23722226511240265
firstReactRender43385344453
getState17515619912183199
initialActions001001
loadScripts80468411761609881176
setupStore13103971339
numNetworkReqs1407326483244264
WebpackStandard HomeuiStartup772651105383778996
load55251084869545737
domContentLoaded54550283366539723
domInteractive15113871434
firstPaint18154794170161579
backgroundConnect251268113151
firstReactRender28176493335
getState1163141216
initialActions001001
loadScripts54249982665537716
setupStore1152941321
numNetworkReqs1467720873
WebpackPower User HomeuiStartup12801142168818413501688
load651570985122727985
domContentLoaded62555987294689872
domInteractive211350123750
firstPaint41274876256580876
backgroundConnect561616956128169
firstReactRender41384424344
getState1407819028153190
initialActions001011
loadScripts62155786291679862
setupStore1262672426
numNetworkReqs1126922357167223
FirefoxBrowserifyStandard HomeuiStartup14521270183211915121691
load1232109714648913031393
domContentLoaded1231109614648913021393
domInteractive1043435156104265
firstPaint------
backgroundConnect46261882651117
firstReactRender24215942528
getState84657714
initialActions001001
loadScripts1204107914428512701373
setupStore1375581230
numNetworkReqs1267316761
BrowserifyPower User HomeuiStartup24632114322334226233223
load13571122191525216221915
domContentLoaded13571122191525216221915
domInteractive19173581163410581
firstPaint------
backgroundConnect11730451122187451
firstReactRender66481101572110
getState1187017130146171
initialActions105115
loadScripts13281100187924415871879
setupStore22675223375
numNetworkReqs1556731180230311
WebpackStandard HomeuiStartup15791392195213116011892
load1349121816549413721573
domContentLoaded1349121716549413721572
domInteractive943126233101155
firstPaint------
backgroundConnect45211352348113
firstReactRender302179132872
getState74454713
initialActions001001
loadScripts1319120015718313481499
setupStore16797161258
numNetworkReqs1366917764
WebpackPower User HomeuiStartup26092218367741927033677
load15211267196724018141967
domContentLoaded15211267196624018141966
domInteractive19737572189440572
firstPaint------
backgroundConnect763518249116182
firstReactRender67481241773124
getState1176918230139182
initialActions30369136
loadScripts14881247194323217711943
setupStore3481734265173
numNetworkReqs1356532689208326
📊 Page Load Benchmark Results

Current Commit: a747b2d | Date: 11/11/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 988ms (±49ms) 🟢 | historical mean value: 1.03s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 687ms (±70ms) 🟢 | historical mean value: 717ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±46ms) 🟢 | historical mean value: 76ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 988ms 49ms 958ms 1.39s 1.01s 1.39s
domContentLoaded 687ms 70ms 659ms 1.34s 704ms 1.34s
firstPaint 80ms 46ms 64ms 532ms 84ms 532ms
firstContentfulPaint 80ms 46ms 64ms 532ms 84ms 532ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 2.29 KiB (0.05%)
  • ui: 12.68 KiB (0.17%)
  • common: 1.1 KiB (0.01%)

@metamaskbot
Copy link
Collaborator

Builds ready [e8072b4]
UI Startup Metrics (1257 ± 92 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1257108315649213131405
load107994513218311241222
domContentLoaded107193613158211161218
domInteractive211469121856
firstPaint66884130544111021193
backgroundConnect23521929111240256
firstReactRender29195983445
getState2285292840
initialActions003001
loadScripts843714107382891993
setupStore1262341322
numNetworkReqs1367419671
BrowserifyPower User HomeuiStartup19641723302034022303020
load1038888159821312491598
domContentLoaded1029882159120912411591
domInteractive301483225383
firstPaint7389414003899341400
backgroundConnect23922029221238292
firstReactRender43385044750
getState17815225024186250
initialActions000000
loadScripts800668131419410151314
setupStore14103471234
numNetworkReqs1187325373230253
WebpackStandard HomeuiStartup8287071175908331047
load60556093277594800
domContentLoaded59855491874590788
domInteractive15114471435
firstPaint17558769154194573
backgroundConnect251279152863
firstReactRender301869103447
getState1163031318
initialActions001001
loadScripts59555290872587777
setupStore1264261328
numNetworkReqs1367519871
WebpackPower User HomeuiStartup13491154193326716091933
load661575943123762943
domContentLoaded645564899112741899
domInteractive231362163762
firstPaint33272902295585902
backgroundConnect581018667150186
firstReactRender41394424344
getState14710316920158169
initialActions001011
loadScripts641561888108730888
setupStore15657132657
numNetworkReqs1116922359168223
FirefoxBrowserifyStandard HomeuiStartup15401339226616315811847
load1292114516609713421459
domContentLoaded1292114416609713421459
domInteractive1033622238112205
firstPaint------
backgroundConnect52252493656150
firstReactRender27234942837
getState10420520822
initialActions001001
loadScripts1262112715598913181429
setupStore188234251541
numNetworkReqs1267017763
BrowserifyPower User HomeuiStartup25762184363144128843631
load14341196196626618071966
domContentLoaded14331195196626618061966
domInteractive20188558171445558
firstPaint------
backgroundConnect11933424115211424
firstReactRender73591121579112
getState1298919136183191
initialActions102112
loadScripts14021172193925917731939
setupStore2461463426146
numNetworkReqs1347032083208320
WebpackStandard HomeuiStartup16701480235720316812294
load14061238177810914521613
domContentLoaded14061238177710914521612
domInteractive932535338108148
firstPaint------
backgroundConnect56252914456131
firstReactRender322281123372
getState12424432726
initialActions001001
loadScripts1374121516929814281541
setupStore206227341650
numNetworkReqs1366717765
WebpackPower User HomeuiStartup25372195329532026553295
load15501323195119217421951
domContentLoaded15501323195019217421950
domInteractive20638661191353661
firstPaint------
backgroundConnect862926859122268
firstReactRender62441191766119
getState1168819829115198
initialActions101011
loadScripts15191295191319117141913
setupStore3061313449131
numNetworkReqs1345929481220294
📊 Page Load Benchmark Results

Current Commit: e8072b4 | Date: 11/11/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±96ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 737ms (±93ms) 🟢 | historical mean value: 718ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 85ms (±72ms) 🟢 | historical mean value: 76ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 96ms 1.02s 1.96s 1.07s 1.96s
domContentLoaded 737ms 93ms 707ms 1.63s 753ms 1.63s
firstPaint 85ms 72ms 64ms 800ms 84ms 800ms
firstContentfulPaint 85ms 72ms 64ms 800ms 84ms 800ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 2.29 KiB (0.05%)
  • ui: 13.37 KiB (0.18%)
  • common: 986 Bytes (0.01%)

'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp': 3,
// Bitcoin mainnet
'bip122:000000000019d6689c085ae165831e93': 4,
};
Copy link

Choose a reason for hiding this comment

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

Bug: Priority Mismatch: Inconsistent Network Display Order

The chainPriority values in MultichainAccountNetworkGroup don't match the PRIORITY_CHAIN_IDS Map in MultichainHoveredAddressRowsList. Bitcoin has priority 4 here but priority 1 in the parent, and Linea has priority 2 here but isn't in the parent's priority list at all. This causes inconsistent ordering where the parent component sorts items one way but the child component displays networks in a different order.

Fix in Cursor Fix in Web

@metamaskbot
Copy link
Collaborator

Builds ready [1f56716]
UI Startup Metrics (1254 ± 97 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1254110616059712991446
load108695514128911371260
domContentLoaded107894514068911301247
domInteractive2415107192177
firstPaint61479142243510711206
backgroundConnect23822228911241256
firstReactRender28195383146
getState23867112644
initialActions001001
loadScripts8487221167879031014
setupStore1172231219
numNetworkReqs1367619670
BrowserifyPower User HomeuiStartup16661469233125718502331
load1008894135516912321355
domContentLoaded999887131316412261313
domInteractive361591297991
firstPaint78618013673829381367
backgroundConnect23921827416252274
firstReactRender44404834648
getState1719820026197200
initialActions001011
loadScripts77466310751559911075
setupStore1392761527
numNetworkReqs1207325374242253
WebpackStandard HomeuiStartup7906641164888061000
load57151594479563787
domContentLoaded56250492174558772
domInteractive16124691444
firstPaint22551925221190775
backgroundConnect261270142865
firstReactRender28174273436
getState1154341319
initialActions001001
loadScripts56050191473556764
setupStore1264351418
numNetworkReqs1467720872
WebpackPower User HomeuiStartup1080881164027315101640
load658569927118711927
domContentLoaded643559889110694889
domInteractive301379277379
firstPaint28073818215335818
backgroundConnect50101855891185
firstReactRender43365344553
getState1388716127154161
initialActions002112
loadScripts639557879107683879
setupStore2061142626114
numNetworkReqs1107021951163219
FirefoxBrowserifyStandard HomeuiStartup14701293187012515181754
load1252111314939612871477
domContentLoaded1251111214939612871477
domInteractive1103535756112252
firstPaint------
backgroundConnect4126115154876
firstReactRender27215072747
getState1172631118
initialActions001001
loadScripts1227109514629312661442
setupStore146197201232
numNetworkReqs1267016760
BrowserifyPower User HomeuiStartup23171863379562831133795
load13931193186324717091863
domContentLoaded13931193186324717091863
domInteractive23092891235440891
firstPaint------
backgroundConnect12531434125249434
firstReactRender655387107587
getState1329221934152219
initialActions30358135
loadScripts13531171181924016831819
setupStore3961915257191
numNetworkReqs1376932997217329
WebpackStandard HomeuiStartup16751392213914917302023
load14231199180711614791643
domContentLoaded14221198180711614781643
domInteractive1003237944114181
firstPaint------
backgroundConnect51292022656120
firstReactRender352490153483
getState1275461218
initialActions001001
loadScripts13911178171611014521608
setupStore167136161338
numNetworkReqs1366917765
WebpackPower User HomeuiStartup22121906295034124792950
load15161278188320617351883
domContentLoaded15151278188220617351882
domInteractive18841563166288563
firstPaint------
backgroundConnect80312516294251
firstReactRender68511201873120
getState1299129949138299
initialActions106116
loadScripts14851257185920116581859
setupStore3051393444139
numNetworkReqs1346832289207322
📊 Page Load Benchmark Results

Current Commit: 1f56716 | Date: 11/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±36ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 727ms (±34ms) 🟢 | historical mean value: 728ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±9ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 36ms 1.02s 1.32s 1.06s 1.32s
domContentLoaded 727ms 34ms 702ms 987ms 737ms 987ms
firstPaint 77ms 9ms 60ms 152ms 84ms 152ms
firstContentfulPaint 77ms 9ms 60ms 152ms 84ms 152ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 5.41 KiB (0.12%)
  • ui: 46.91 KiB (0.64%)
  • common: 4.89 KiB (0.06%)

import { MultichainAggregatedAddressListRow } from './multichain-aggregated-list-row';

// Priority networks that should appear first (using CAIP chain IDs)
const PRIORITY_CHAIN_IDS = new Map<CaipChainId, number>([
Copy link
Member

@gantunesr gantunesr Nov 12, 2025

Choose a reason for hiding this comment

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

we should use the same priority list as the address list for consistency. For the address list, we can append Linea to the end

['bip122:000000000019d6689c085ae165831e93' as CaipChainId, 1], // Bitcoin mainnet
['solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp' as CaipChainId, 2], // Solana mainnet
['tron:0x2b6653dc' as CaipChainId, 3], // Tron mainnet
]);
Copy link

Choose a reason for hiding this comment

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

Bug: Network Order Inconsistency: Priority List Discrepancy

The PRIORITY_CHAIN_IDS map is missing Linea mainnet (eip155:59144) which exists in the original address list component. This causes inconsistent network ordering between the hovered list and the full address list, as mentioned in the PR discussion about using the same priority list for consistency.

Fix in Cursor Fix in Web

setCopyIcon(IconName.Copy);
timeoutRef.current = null; // Clear the reference after timeout resolves
setAddressCopied(false);
}, 1000);
Copy link

Choose a reason for hiding this comment

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

Bug: Stale Data Causes Display Inconsistency

The timeout callback captures truncatedAddress in its closure, which can become stale if the address prop changes while the timeout is pending. When the timeout fires after 1 second, it sets displayText to the old truncated address instead of the current one, causing the wrong address to be displayed after the copy feedback animation completes.

Fix in Cursor Fix in Web

@metamaskbot
Copy link
Collaborator

Builds ready [34b0287]
UI Startup Metrics (1221 ± 86 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1221106414668612711399
load105792712868410951252
domContentLoaded105092212788410891239
domInteractive221377151864
firstPaint64588129341210461178
backgroundConnect23321926710237256
firstReactRender25174562641
getState218100102334
initialActions001001
loadScripts8246991062828721005
setupStore1063241117
numNetworkReqs1367419669
BrowserifyPower User HomeuiStartup16401455244627318802446
load1040895160821812911608
domContentLoaded1033890160221812851602
domInteractive37151093688109
firstPaint58116813864099361386
backgroundConnect23422125810238258
firstReactRender43386364263
getState17815725723184257
initialActions001011
loadScripts807659136021410691360
setupStore1493981439
numNetworkReqs1207025562166255
WebpackStandard HomeuiStartup83871612591008351125
load620568104094608887
domContentLoaded613563102090603871
domInteractive1812115141451
firstPaint211591023214202699
backgroundConnect261274133058
firstReactRender30186893538
getState1162631316
initialActions001001
loadScripts610561100988601860
setupStore1363351426
numNetworkReqs1367219870
WebpackPower User HomeuiStartup1159967196331313041963
load75062613352119061335
domContentLoaded73361213102068781310
domInteractive451418754109187
firstPaint48710013143878821314
backgroundConnect38111393152139
firstReactRender47435334853
getState15210017225169172
initialActions001011
loadScripts72860712982028671298
setupStore1072951029
numNetworkReqs1077020652168206
FirefoxBrowserifyStandard HomeuiStartup14481279194112415071703
load1222109715849212601419
domContentLoaded1222109715849212591419
domInteractive1063437059102226
firstPaint------
backgroundConnect4227113154973
firstReactRender26215162646
getState1072131117
initialActions001001
loadScripts1197107915669012331394
setupStore1275061227
numNetworkReqs1266115856
BrowserifyPower User HomeuiStartup21511802291732124772917
load13811152171418415771714
domContentLoaded13811152171318415771713
domInteractive19166571173261571
firstPaint------
backgroundConnect893232376142323
firstReactRender67501081372108
getState1358219837172198
initialActions20328132
loadScripts13421130168718215141687
setupStore21570202970
numNetworkReqs1356932976214329
WebpackStandard HomeuiStartup15521393203314215701918
load13291171173310913511588
domContentLoaded13291171173210913511587
domInteractive923234340103167
firstPaint------
backgroundConnect44211762647111
firstReactRender312277113172
getState1175161018
initialActions002001
loadScripts13021156171310013281535
setupStore14670131248
numNetworkReqs1366817765
WebpackPower User HomeuiStartup22621837346448426193464
load15321217209724418032097
domContentLoaded15321216209624418032096
domInteractive19665750214190750
firstPaint------
backgroundConnect80283477793347
firstReactRender65451201973120
getState1418827549178275
initialActions105115
loadScripts15011192202923317582029
setupStore3861985661198
numNetworkReqs1346431386207313
📊 Page Load Benchmark Results

Current Commit: 34b0287 | Date: 11/12/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±42ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 723ms (±38ms) 🟢 | historical mean value: 728ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±11ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 42ms 1.01s 1.32s 1.05s 1.32s
domContentLoaded 723ms 38ms 698ms 993ms 740ms 993ms
firstPaint 76ms 11ms 60ms 168ms 84ms 168ms
firstContentfulPaint 76ms 11ms 60ms 168ms 84ms 168ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 5.41 KiB (0.12%)
  • ui: 46.82 KiB (0.64%)
  • common: 4.95 KiB (0.06%)

@montelaidev montelaidev added this pull request to the merge queue Nov 13, 2025
Merged via the queue into main with commit dcecb08 Nov 13, 2025
171 of 173 checks passed
@montelaidev montelaidev deleted the fix/mul-1226 branch November 13, 2025 00:28
@github-actions github-actions bot locked and limited conversation to collaborators Nov 13, 2025
@metamaskbot metamaskbot added the release-13.10.0 Issue or pull request that will be included in release 13.10.0 label Nov 13, 2025
@Tlees-MMI Tlees-MMI removed the DO-NOT-MERGE Pull requests that should not be merged label Nov 14, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-13.10.0 Issue or pull request that will be included in release 13.10.0 size-XL team-accounts-framework Accounts Framework team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants