Skip to content

Conversation

@montelaidev
Copy link
Contributor

@montelaidev montelaidev commented Sep 29, 2025

Description

This PR adds back the connection indicators to the account avatar

Open in GitHub Codespaces

Changelog

CHANGELOG entry: Re-add connection indicator to bip44 account cell

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/MUL-1087?atlOrigin=eyJpIjoiZWZlY2YxNTE3MjA1NDIwODlkOGYwMjdlOTBhNzU0MzUiLCJwIjoiaiJ9

https://consensyssoftware.atlassian.net/browse/TMCU-161

Manual testing steps

  1. Open MM and DaPP
  2. Connect multiple accounts
  3. Go back to Account List
  4. Notice the green dots on connection status.

Screenshots/Recordings

Selected connected account
Screenshot 2025-10-28 at 10 43 33

Selected not connected account
Screenshot 2025-10-28 at 10 43 44

Unconnected dapp
Screenshot 2025-10-27 at 11 19 23

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.

Note

Restores and wires connection indicators on multichain account avatars using current tab permissions, with list/page integration and comprehensive tests/stories.

  • Multichain Accounts UI:
    • MultichainAccountCell: Replaces PreferredAvatar with ConnectedStatus; adds optional connectionStatus prop (STATUS_CONNECTED | STATUS_CONNECTED_TO_ANOTHER_ACCOUNT) to control badge; maintains selection/privacy behavior.
    • MultichainAccountList: Adds showConnectionStatus prop; derives permitted addresses from getAllPermittedAccountsForCurrentTab, maps to connected account groups via getAccountGroupsByAddress, and passes computed connectionStatus to each MultichainAccountCell.
    • AccountList page: Enables showConnectionStatus when there are permitted accounts for the active tab.
  • Connected Status Logic:
    • ConnectedStatus: Updated to support state2 via getIsMultichainAccountsState2Enabled and getAccountGroupsByAddress; determines connected/active vs connected-to-another and sets badge/tooltip accordingly.
  • Tests & Stories:
    • Adds/updates tests for badge presence, color/state, tooltips in multichain-account-cell and multichain-account-list; updates snapshots; injects activeTab in stories/tests; minor fixture updates (e.g., send.test, confirmation util).

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

@montelaidev montelaidev requested review from a team as code owners September 29, 2025 13:31
@github-actions
Copy link
Contributor

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

cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

metamaskbot commented Sep 30, 2025

✨ Files requiring CODEOWNER review ✨

🔑 @MetaMask/accounts-engineers (11 files, +476 -108)
  • 📁 ui/
    • 📁 components/
      • 📁 multichain-accounts/
        • 📁 multichain-account-cell/
          • 📄 multichain-account-cell.test.tsx +118 -0
          • 📄 multichain-account-cell.tsx +14 -2
        • 📁 multichain-account-list/
          • 📄 multichain-account-list.stories.tsx +5 -0
          • 📄 multichain-account-list.test.tsx +114 -0
          • 📄 multichain-account-list.tsx +62 -1
        • 📁 permissions/
          • 📁 multichain-edit-accounts-page/
            • 📄 multichain-edit-accounts-page.stories.tsx +8 -0
            • 📄 multichain-edit-accounts-page.test.tsx +5 -0
    • 📁 pages/
      • 📁 multichain-accounts/
        • 📁 account-list/
          • 📄 account-list.stories.tsx +5 -0
          • 📄 account-list.test.tsx +1 -0
          • 📄 account-list.tsx +3 -0
        • 📁 multichain-accounts-connect-page/
          • 📁 __snapshots__/
            • 📄 multichain-accounts-connect-page.test.tsx.snap +141 -105

@MetaMask/confirmations (2 files, +10 -0)
  • 📁 ui/
    • 📁 components/
      • 📁 multichain/
        • 📁 pages/
          • 📁 send/
            • 📄 send.test.js +4 -0
    • 📁 pages/
      • 📁 confirmations/
        • 📁 confirmation/
          • 📁 stories/
            • 📄 util.js +6 -0

👨‍🔧 @MetaMask/core-extension-ux (2 files, +28 -4)
  • 📁 ui/
    • 📁 components/
      • 📁 multichain/
        • 📁 connected-status/
          • 📄 connected-status.tsx +24 -4
        • 📁 pages/
          • 📁 send/
            • 📄 send.test.js +4 -0

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 5e68fbd | Date: 9/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.07s (±74ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 756ms (±83ms) 🟢 | historical mean value: 739ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 91ms (±127ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.07s 74ms 1.03s 1.40s 1.29s 1.40s
domContentLoaded 756ms 83ms 720ms 1.29s 951ms 1.29s
firstPaint 91ms 127ms 64ms 1.36s 92ms 1.36s
firstContentfulPaint 91ms 127ms 64ms 1.36s 92ms 1.36s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [5e68fbd]
UI Startup Metrics (1246 ± 67 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1246112114286712951360
load107495512216511251191
domContentLoaded106294012096911181188
domInteractive18144461738
firstPaint66377121443110801171
backgroundConnect26023940423261283
firstReactRender2816116142752
getState14587111529
initialActions50446612
loadScripts81469297167863927
setupStore962331016
WebpackHomeuiStartup20851567271226922572507
load16681249205621018131956
domContentLoaded16611246204620918041949
domInteractive181280141550
firstPaint1676540667201311
backgroundConnect3612297453263
firstReactRender1083835988102329
getState255304551661
initialActions10228132617
loadScripts16571244203520818011939
setupStore186262331626
FirefoxBrowserifyHomeuiStartup14101234184811114581605
load1218107513977412681353
domContentLoaded1218107413977412681352
domInteractive1033433850112225
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect291895133358
firstReactRender28246362935
getState9318121728
initialActions41193510
loadScripts1195106013757412471335
setupStore135119181051
WebpackHomeuiStartup16231418216015217291874
load13831195180913714761627
domContentLoaded13831193180913714761626
domInteractive1144142968107298
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect32228183744
firstReactRender39328474146
getState63172710
initialActions318146
loadScripts13601170178513814521605
setupStore115147141123
Benchmark value 1246 exceeds gate value 1234 for chrome browserify home mean uiStartup
Benchmark value 1074 exceeds gate value 1070 for chrome browserify home mean load
Benchmark value 1062 exceeds gate value 1061 for chrome browserify home mean domContentLoaded
Benchmark value 260 exceeds gate value 10 for chrome browserify home mean backgroundConnect
Benchmark value 28 exceeds gate value 23 for chrome browserify home mean firstReactRender
Benchmark value 5 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 1192 exceeds gate value 1190 for chrome browserify home p95 load
Benchmark value 1189 exceeds gate value 1180 for chrome browserify home p95 domContentLoaded
Benchmark value 283 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 52 exceeds gate value 45 for chrome browserify home p95 firstReactRender
Benchmark value 12 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 10 exceeds gate value 7 for chrome webpack home mean initialActions
Benchmark value 2507 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 17 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 1410 exceeds gate value 1405 for firefox browserify home mean uiStartup
Benchmark value 30 exceeds gate value 25 for firefox browserify home mean backgroundConnect
Benchmark value 29 exceeds gate value 25 for firefox browserify home mean firstReactRender
Benchmark value 5 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 13 exceeds gate value 9 for firefox browserify home mean setupStore
Benchmark value 225 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 28 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 10 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 51 exceeds gate value 27 for firefox browserify home p95 setupStore
Benchmark value 1624 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1384 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1383 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 114 exceeds gate value 100 for firefox webpack home mean domInteractive
Benchmark value 32 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 40 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 4 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1361 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 298 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 6 exceeds gate value 2 for firefox webpack home p95 initialActions
Sum of mean exceeds: 343ms | Sum of p95 exceeds: 568.8ms
Sum of all benchmark exceeds: 911.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.69 KiB (0.03%)
  • common: 10 Bytes (0%)

@montelaidev montelaidev requested a review from a team as a code owner October 3, 2025 11:15
cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 2500cbf | Date: 10/3/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±70ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 738ms (±68ms) 🟢 | historical mean value: 740ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±12ms) 🟢 | historical mean value: 80ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 70ms 1.02s 1.33s 1.26s 1.33s
domContentLoaded 738ms 68ms 706ms 1.01s 934ms 1.01s
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 [2500cbf]
UI Startup Metrics (1246 ± 80 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1246109115578012871386
load108296213447011221207
domContentLoaded107595513377011151196
domInteractive191372111743
firstPaint72895134343010931205
backgroundConnect2552412968258270
firstReactRender24176982443
getState1254671524
initialActions40506512
loadScripts827708107869869946
setupStore105335921
WebpackHomeuiStartup19971460253728922032482
load15901160196521117161918
domContentLoaded15821156192820917121904
domInteractive171279131446
firstPaint1646556772183316
backgroundConnect291578113352
firstReactRender109373449798328
getState3843178114282
initialActions52304515
loadScripts15781154192620817101895
setupStore2353025312156
FirefoxBrowserifyHomeuiStartup14791290183710715601665
load1274110916028713431412
domContentLoaded1274110916018713431412
domInteractive1133635261117277
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3321133153753
firstReactRender29254433135
getState83659713
initialActions41626410
loadScripts1249109215778813181387
setupStore106618928
WebpackHomeuiStartup15721379187513316611826
load13401149161412114261564
domContentLoaded13391149161312114261563
domInteractive1073534461113308
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect30204373641
firstReactRender38326344044
getState63223611
initialActions2012236
loadScripts13171133159512214061544
setupStore95495921
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 1.7 KiB (0.03%)
  • common: 10 Bytes (0%)

cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 06240a3 | Date: 10/27/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±46ms) 🟡 | historical mean value: 1.06s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 725ms (±38ms) 🟢 | historical mean value: 741ms ⬇️ (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.04s 46ms 1.01s 1.32s 1.10s 1.32s
domContentLoaded 725ms 38ms 696ms 985ms 768ms 985ms
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 [06240a3]
UI Startup Metrics (1273 ± 89 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1273112714758913481425
load109395513048711521244
domContentLoaded108795112948611411237
domInteractive201486121953
firstPaint65176130245210891226
backgroundConnect2322192567235246
firstReactRender27194663141
getState1994272331
initialActions61305718
loadScripts8627231069869121018
setupStore1062131015
BrowserifyPower User HomeuiStartup20791682368456926003684
load1086866193633615231936
domContentLoaded1076860190833315191908
domInteractive271464185464
firstPaint63920819354618951935
backgroundConnect275177884180401884
firstReactRender26223132931
getState16111719924174199
initialActions527267
loadScripts872682152228412741522
setupStore107244924
WebpackStandard HomeuiStartup8737401170828991060
load65059596875652882
domContentLoaded64258096274645867
domInteractive16114371438
firstPaint19260932188197644
backgroundConnect24124972935
firstReactRender3016170193447
getState1254251418
initialActions3017358
loadScripts63957895072643855
setupStore1052231215
WebpackPower User HomeuiStartup17561479261035919372610
load77063413222079741322
domContentLoaded73061711701649231170
domInteractive201355122555
firstPaint47813711743466881174
backgroundConnect11721450135261450
firstReactRender26214862648
getState1494517130164171
initialActions30225422
loadScripts72661511601619101160
setupStore1162661526
FirefoxBrowserifyStandard HomeuiStartup14871274186911115531691
load1268111014688513251411
domContentLoaded1268111014688513241410
domInteractive1223633455126284
firstPaint------
backgroundConnect402395144772
firstReactRender25215152638
getState74243914
initialActions40516312
loadScripts1243109114408312961386
setupStore146184181236
BrowserifyPower User HomeuiStartup29052260389160535693891
load14401195188819715551888
domContentLoaded14401194188819715551888
domInteractive1394522252199222
firstPaint------
backgroundConnect3033011703636981170
firstReactRender443079125379
getState1527326446185264
initialActions8144101244
loadScripts13681172159813114891598
setupStore3652135042213
WebpackStandard HomeuiStartup15871387220813816441858
load13581180179310714141566
domContentLoaded13581180179310714141566
domInteractive1102939970115355
firstPaint------
backgroundConnect51241932863113
firstReactRender292278102842
getState84646713
initialActions516911324
loadScripts13251162176010313701524
setupStore166105171358
WebpackPower User HomeuiStartup29472466383148133383831
load16961353212825019952128
domContentLoaded16961353212825019952128
domInteractive1264822051170220
firstPaint------
backgroundConnect20255849237275849
firstReactRender42325574855
getState1497324247193242
initialActions932771327
loadScripts16371320202622618942026
setupStore31780163480
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 254 Bytes (0.01%)
  • ui: 3.59 KiB (0.05%)
  • common: 942 Bytes (0.01%)

@PatrykLucka PatrykLucka added the team-accounts-framework Accounts Framework team label Oct 27, 2025
cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: e72e6b1 | Date: 10/27/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±37ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 718ms (±35ms) 🟢 | historical mean value: 738ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±14ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 37ms 1.01s 1.30s 1.06s 1.30s
domContentLoaded 718ms 35ms 701ms 970ms 740ms 970ms
firstPaint 75ms 14ms 56ms 196ms 84ms 196ms
firstContentfulPaint 75ms 14ms 56ms 196ms 84ms 196ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [e72e6b1]
UI Startup Metrics (1319 ± 89 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1319115815318913871487
load112197113428511711286
domContentLoaded111496613328411651277
domInteractive211581112048
firstPaint73176134446711491265
backgroundConnect24022535814242253
firstReactRender3320139173748
getState2195392640
initialActions60285719
loadScripts8817311100849271050
setupStore1273751224
BrowserifyPower User HomeuiStartup21731791333144726113331
load1187940190133416201901
domContentLoaded1177933185932916121859
domInteractive321599255599
firstPaint916180190845110331908
backgroundConnect26722542549289425
firstReactRender26233232632
getState20117330539207305
initialActions51143614
loadScripts921705147429112961474
setupStore1282641226
WebpackStandard HomeuiStartup8807391205768961039
load664593100180665862
domContentLoaded65658698079658850
domInteractive16124671537
firstPaint193591017194179631
backgroundConnect24125482940
firstReactRender27175593338
getState1162041418
initialActions40304514
loadScripts65358396977655837
setupStore1052031216
WebpackPower User HomeuiStartup17601288257438022582574
load74461910621559171062
domContentLoaded701607944114817944
domInteractive211340103640
firstPaint489127947285644947
backgroundConnect11420382132276382
firstReactRender25224142641
getState17213323928190239
initialActions915216652
loadScripts696605931110806931
setupStore20580222780
FirefoxBrowserifyStandard HomeuiStartup1418126117489614831612
load1211108413906912601329
domContentLoaded1211108313896812591329
domInteractive1113427936123195
firstPaint------
backgroundConnect3823120154471
firstReactRender25206062543
getState74283812
initialActions411851837
loadScripts1187106413206612351300
setupStore138181171220
BrowserifyPower User HomeuiStartup27682339350132131073501
load14621284165310715691653
domContentLoaded14611284165310715691653
domInteractive1544328463202284
firstPaint------
backgroundConnect20546461140349461
firstReactRender392987144287
getState1499224940193249
initialActions2811854743185
loadScripts14131256161710815131617
setupStore3461102852110
WebpackStandard HomeuiStartup18101413270618018882138
load15541238218213716341787
domContentLoaded15541237218113716331787
domInteractive13631569106124450
firstPaint------
backgroundConnect60263404162131
firstReactRender3423105173186
getState852441015
initialActions619015339
loadScripts15141215207513015991728
setupStore167198221530
WebpackPower User HomeuiStartup30532520408247334884082
load17411474215521319162155
domContentLoaded17411474215421319162154
domInteractive1723938989220389
firstPaint------
backgroundConnect20545724210427724
firstReactRender43316395163
getState1477127852188278
initialActions71287928
loadScripts16771414201118518112011
setupStore2891132735113
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 610 Bytes (0.01%)
  • ui: 3.62 KiB (0.05%)
  • common: 942 Bytes (0.01%)

OGPoyraz
OGPoyraz previously approved these changes Oct 27, 2025
Copy link
Member

@OGPoyraz OGPoyraz left a comment

Choose a reason for hiding this comment

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

Confirmation changes LGTM

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: c17d907 | Date: 10/28/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±38ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 726ms (±35ms) 🟢 | historical mean value: 727ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±10ms) 🟢 | historical mean value: 80ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 38ms 1.01s 1.31s 1.08s 1.31s
domContentLoaded 726ms 35ms 699ms 988ms 758ms 988ms
firstPaint 78ms 10ms 60ms 160ms 88ms 160ms
firstContentfulPaint 78ms 10ms 60ms 160ms 88ms 160ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [c17d907]
UI Startup Metrics (1284 ± 91 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1284112015789113281442
load110196514058911521254
domContentLoaded109392013979011471247
domInteractive19145981844
firstPaint634102128544811021238
backgroundConnect23422035014236249
firstReactRender2918125133347
getState19773102137
initialActions50265615
loadScripts8666921180919161022
setupStore1063241118
BrowserifyPower User HomeuiStartup23061912368462530563684
load1158940172730616281727
domContentLoaded1144936171529716161715
domInteractive301575225575
firstPaint694107172057710041720
backgroundConnect27022256481275564
firstReactRender27234962749
getState20515824117210241
initialActions1439625796
loadScripts902712138127013541381
setupStore1192641226
WebpackStandard HomeuiStartup8717421240828931007
load647594106575654779
domContentLoaded638587105574645769
domInteractive16126091442
firstPaint225581058230208731
backgroundConnect24124272938
firstReactRender28175493342
getState1262341519
initialActions3020357
loadScripts635585104572643759
setupStore1153241215
WebpackPower User HomeuiStartup17891497249034922082490
load71161410991378151099
domContentLoaded68360410071157761007
domInteractive201243102643
firstPaint505123907256696907
backgroundConnect871929993141299
firstReactRender26234242642
getState19113523319195233
initialActions2712816819281
loadScripts679601996112766996
setupStore24697254397
FirefoxBrowserifyStandard HomeuiStartup14891263189511015501680
load1270109215018613231430
domContentLoaded1269109215008613221430
domInteractive1193632845129208
firstPaint------
backgroundConnect4024143164665
firstReactRender26216272547
getState8411412713
initialActions3167736
loadScripts1244107614728212931379
setupStore1164041214
BrowserifyPower User HomeuiStartup29302364441372532654413
load14361262180715215761807
domContentLoaded14351261180615215761806
domInteractive1709033971232339
firstPaint------
backgroundConnect15831680179226680
firstReactRender38305584555
getState1739724536185245
initialActions3012085748208
loadScripts13921236175314415081753
setupStore4752377257237
WebpackStandard HomeuiStartup15921389196012116371878
load1365117516439914221545
domContentLoaded1364117516439914211544
domInteractive1123243481111375
firstPaint------
backgroundConnect4320124174974
firstReactRender292277112867
getState10416919913
initialActions417110311
loadScripts1339115816219813941519
setupStore14679111449
WebpackPower User HomeuiStartup29062387384746033933847
load15911301194618117341946
domContentLoaded15901300194518117331945
domInteractive1606729666205296
firstPaint------
backgroundConnect17435679177168679
firstReactRender453165105065
getState17613027036192270
initialActions8140101240
loadScripts15331279181416016881814
setupStore24579194179
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: -1.45 KiB (-0.03%)
  • ui: 6.38 KiB (0.09%)
  • common: 5.4 KiB (0.06%)

Copy link
Contributor

@vinnyhoward vinnyhoward left a comment

Choose a reason for hiding this comment

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

Other than the Cursor bot remarks the PR looks good. Could we look into the issues flagged?

<PreferredAvatar address={seedAddressIcon} />
<ConnectedStatus
address={seedAddressIcon}
isActive={connectionStatus === STATUS_CONNECTED}
Copy link
Member

Choose a reason for hiding this comment

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

Logic for active account is it should be connected and is the most recent one. I mean if more than one account is connected. How ill we get the active state?

Copy link
Contributor

Choose a reason for hiding this comment

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

I think that logic is handled in multichain-account-list, for each account cell, like this:
`const isConnectedAccount = connectedAccountGroups.find(
(accountGroup) => accountGroup.id === groupId,
);

  let connectedStatus:
    | typeof STATUS_CONNECTED
    | typeof STATUS_CONNECTED_TO_ANOTHER_ACCOUNT
    | undefined;
  if (showConnectionStatus) {
    if (isConnectedAccount) {
      if (selectedAccountGroupsSet.has(groupId as AccountGroupId)) {
        connectedStatus = STATUS_CONNECTED;
      } else {
        connectedStatus = STATUS_CONNECTED_TO_ANOTHER_ACCOUNT;
      }
    }
  }`

Unless I misunderstood what you're asking

Copy link
Member

@NidhiKJha NidhiKJha left a comment

Choose a reason for hiding this comment

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

LGTM! Left a small comment. Once addressed, will review it again

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 127bdf6 | Date: 10/29/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±40ms) 🟡 | historical mean value: 1.06s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 728ms (±37ms) 🟢 | historical mean value: 744ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±14ms) 🟢 | historical mean value: 83ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 40ms 1.01s 1.35s 1.06s 1.35s
domContentLoaded 728ms 37ms 700ms 1.02s 746ms 1.02s
firstPaint 77ms 14ms 60ms 204ms 88ms 204ms
firstContentfulPaint 77ms 14ms 60ms 204ms 88ms 204ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [127bdf6]
UI Startup Metrics (1266 ± 77 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1266111814437713201399
load108595112807411301211
domContentLoaded107994912747311211204
domInteractive20145392043
firstPaint65677123944810991207
backgroundConnect2342212527237247
firstReactRender27185273142
getState1884062131
initialActions71679621
loadScripts852723104373894979
setupStore1053231018
BrowserifyPower User HomeuiStartup21621813309343327863093
load1182972179232016781792
domContentLoaded1170963176531016511765
domInteractive301669206169
firstPaint83985179854710251798
backgroundConnect27023251973278519
firstReactRender27224043040
getState17916322318192223
initialActions61297629
loadScripts927731149029013701490
setupStore1593991539
WebpackStandard HomeuiStartup8697391203848861092
load651596101680651896
domContentLoaded64359198377644887
domInteractive15114971437
firstPaint195621021205190649
backgroundConnect25135483044
firstReactRender2917147143336
getState1253641418
initialActions41828410
loadScripts64058897075641875
setupStore1052431216
WebpackPower User HomeuiStartup16521265233029817012330
load75060311641928661164
domContentLoaded71259010421518381042
domInteractive19134092640
firstPaint43910610113056381011
backgroundConnect11421479145158479
firstReactRender25213742637
getState1518624732159247
initialActions703912439
loadScripts70758810321478221032
setupStore17657132757
FirefoxBrowserifyStandard HomeuiStartup1415127717058514641567
load1214109913736612561336
domContentLoaded1214109913736612561336
domInteractive1093629344120212
firstPaint------
backgroundConnect3925146174467
firstReactRender26205372546
getState74334816
initialActions319136
loadScripts1189107813446412351306
setupStore1163541218
BrowserifyPower User HomeuiStartup28202350413448330904134
load14551269177515615741775
domContentLoaded14551268177515715741775
domInteractive1725747298231472
firstPaint------
backgroundConnect27047891265328891
firstReactRender462890174790
getState1308225943154259
initialActions1028921989
loadScripts13781226164912214441649
setupStore30776214776
WebpackStandard HomeuiStartup15901411227513316301858
load13651216192311014101566
domContentLoaded13641216192211014101566
domInteractive1143042268110314
firstPaint------
backgroundConnect50242403051110
firstReactRender27227872836
getState94129131013
initialActions5119720311
loadScripts13351197183710413881535
setupStore1357481321
WebpackPower User HomeuiStartup27062309315427329363154
load15701331185617417961856
domContentLoaded15691330185617417961856
domInteractive1707735783224357
firstPaint------
backgroundConnect1415132783197327
firstReactRender463288134988
getState1478326453180264
initialActions1411072515107
loadScripts15281296182316817431823
setupStore28875224975
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: -20.43 KiB (-0.44%)
  • ui: 28.62 KiB (0.41%)
  • common: 31.84 KiB (0.37%)

@PatrykLucka PatrykLucka requested a review from NidhiKJha October 29, 2025 14:37
@PatrykLucka PatrykLucka enabled auto-merge October 30, 2025 18:57
@PatrykLucka PatrykLucka added this pull request to the merge queue Oct 31, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 31, 2025
@PatrykLucka PatrykLucka added this pull request to the merge queue Oct 31, 2025
Merged via the queue into main with commit 790cc12 Oct 31, 2025
329 of 331 checks passed
@PatrykLucka PatrykLucka deleted the fix/mul-1087 branch October 31, 2025 13:58
@github-actions github-actions bot locked and limited conversation to collaborators Oct 31, 2025
@metamaskbot metamaskbot added the release-13.9.0 Issue or pull request that will be included in release 13.9.0 label Oct 31, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants