Skip to content

Conversation

@montelaidev
Copy link
Contributor

@montelaidev montelaidev commented Mar 27, 2025

Description

This PR adds performances tracing to adding eth accounts to multiple srps, importing srp, and revealing srps.

Open in GitHub Codespaces

Related issues

Fixes:

Manual testing steps

  1. Open sentry and go to the traces in the dev environment.
  2. Import a new srp and see that a new trace has been added.
  3. Create a new account and see that a new trace has been added.
  4. Reveal a srp and see that a new trace has been added.

Screenshots/Recordings

Before

After

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

@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.

@montelaidev montelaidev force-pushed the feat/multi-srp-performance-tracing branch from 2912110 to eb7422f Compare March 27, 2025 13:59
@metamaskbot
Copy link
Collaborator

Builds ready [eb7422f]
Page Load Metrics (3632 ± 1200 ms)
PlatformPageMetricMin (ms)Max (ms)Average (ms)StandardDeviation (ms)MarginOfError (ms)
ChromeHomefirstPaint178113525322724141159
domContentLoaded163612799286023171113
load189514041363225001200
domInteractive27100094209100
backgroundConnect1291959774473227
firstReactRender382871486230
getState42847333210101
initialActions01000
loadScripts115411198204021141015
setupStore1958920313866
uiStartup343518741792842292031
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 0 Bytes (0.00%)
  • ui: 396 Bytes (0.00%)
  • common: 79 Bytes (0.00%)

@montelaidev montelaidev added the team-accounts-framework Accounts Framework team label Mar 28, 2025
@montelaidev montelaidev marked this pull request as ready for review April 2, 2025 13:52
@montelaidev montelaidev requested a review from a team as a code owner April 2, 2025 13:52
@metamaskbot
Copy link
Collaborator

metamaskbot commented Apr 2, 2025

✨ Files requiring CODEOWNER review ✨

🖥️ @MetaMask/wallet-ux (1 files, +10 -4)
  • 📁 ui/
    • 📁 components/
      • 📁 multichain/
        • 📁 create-eth-account/
          • 📄 create-eth-account.js +10 -4

@metamaskbot
Copy link
Collaborator

Builds ready [d5ad618]
UI Startup Metrics (1192 ± 58 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1192107313265812311303
load1036929117453958993
domContentLoaded1031926116553955989
domInteractive16133941627
firstPaint7381311174398259985
backgroundConnect96424910
firstReactRender19156862031
getState12434868
initialActions001001
loadScripts81671695251852913
setupStore8525378
WebpackHomeuiStartup21211686262921822572472
load16411310207017317441982
domContentLoaded16321307200516617411972
domInteractive171267121453
firstPaint183663416023371
backgroundConnect3115281293065
firstReactRender213613531188397
getState9419389
initialActions314134
loadScripts16231304197916217301944
setupStore27726553208
FirefoxBrowserifyHomeuiStartup13811187182915114331779
load12431057167514212941627
domContentLoaded12431057167514212931627
domInteractive10237167248896
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect22164452331
firstReactRender22193532426
getState6313279
initialActions002001
loadScripts12221040165314112771601
setupStore6434467
WebpackHomeuiStartup15211338200115715701920
load13121145177914613471666
domContentLoaded13121145177814613471665
domInteractive9138178258896
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect25184852635
firstReactRender35284753744
getState9456789
initialActions002111
loadScripts12891122175514513241640
setupStore7529389
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 0 Bytes (0%)
  • ui: 316 Bytes (0%)
  • common: 79 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [85092a8]
UI Startup Metrics (1189 ± 69 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1189107013966912431298
load1033905116464929990
domContentLoaded1028894116064927990
domInteractive15133041526
firstPaint8021331164377256992
backgroundConnect10613213910
firstReactRender18133531825
getState10433667
initialActions001001
loadScripts81568394965859925
setupStore7519278
WebpackHomeuiStartup20741675258721721902510
load16111301200116617201934
domContentLoaded16041297197216317141911
domInteractive171259111451
firstPaint187803305323180
backgroundConnect271482152970
firstReactRender180533621148594
getState9427489
initialActions314134
loadScripts15961294194616017021885
setupStore31730065219
FirefoxBrowserifyHomeuiStartup13721182200916913981816
load12321043186516312631666
domContentLoaded12321042186516312631666
domInteractive9735187279098
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2517145142639
firstReactRender23194942330
getState7438478
initialActions001001
loadScripts12091026183115712401623
setupStore6418268
WebpackHomeuiStartup15541382207615016071964
load13391179184114113711710
domContentLoaded13381179184114113711710
domInteractive10247176229398
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect25185062743
firstReactRender35285963847
getState9432789
initialActions102111
loadScripts13161158181614013491683
setupStore8530589
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 0 Bytes (0%)
  • ui: 316 Bytes (0%)
  • common: 79 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [c6c0224]
UI Startup Metrics (1192 ± 61 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1192106313516112361303
load103592512066010751133
domContentLoaded102992011926010681129
domInteractive17145751627
firstPaint697142120441410521132
backgroundConnect74192710
firstReactRender22155172138
getState1353071927
initialActions001001
loadScripts79569894858839899
setupStore85183816
WebpackHomeuiStartup22171830268619023622516
load17221411212515518391988
domContentLoaded17151407211515318301982
domInteractive171271111449
firstPaint1846553571226324
backgroundConnect309333352976
firstReactRender20557381125343367
getState203304431541
initialActions318146
loadScripts17101406209115118271981
setupStore227233292339
FirefoxBrowserifyHomeuiStartup13901219167210114511625
load12371056151510513111463
domContentLoaded12361056151510513101462
domInteractive1133735044123176
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2113108112035
firstReactRender24205462434
getState74232810
initialActions001001
loadScripts12181042149810612931443
setupStore842092068
WebpackHomeuiStartup14801279189811415711679
load12721114158010013541448
domContentLoaded12721114158010013531448
domInteractive83511522191135
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect231496112342
firstReactRender35287463744
getState94477929
initialActions102111
loadScripts1251109915649813381426
setupStore85325827
Benchmark value 2218 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 1722 exceeds gate value 1711 for chrome webpack home mean load
Benchmark value 1716 exceeds gate value 1704 for chrome webpack home mean domContentLoaded
Benchmark value 1711 exceeds gate value 1699 for chrome webpack home mean loadScripts
Benchmark value 2517 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 1981 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 113 exceeds gate value 110 for firefox browserify home mean domInteractive
Sum of mean exceeds: 64ms | Sum of p95 exceeds: 74ms
Sum of all benchmark exceeds: 138ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 0 Bytes (0%)
  • ui: 489 Bytes (0.01%)
  • common: 79 Bytes (0%)

darkwing
darkwing previously approved these changes Apr 28, 2025
@montelaidev montelaidev enabled auto-merge April 29, 2025 07:11
@metamaskbot
Copy link
Collaborator

Builds ready [d30c7f8]
UI Startup Metrics (1206 ± 70 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1206108214897012451325
load104193413066210831129
domContentLoaded103392013006210731118
domInteractive16134551628
firstPaint78085130840010601121
backgroundConnect84305823
firstReactRender21155272236
getState1564081931
initialActions001000
loadScripts794684102860835889
setupStore85223913
WebpackHomeuiStartup21411750270523423182519
load16621358204318017901989
domContentLoaded16551354202917917841984
domInteractive161262111353
firstPaint172661601153192272
backgroundConnect23116882739
firstReactRender15044363108279331
getState164342341330
initialActions317134
loadScripts16521352201817717811980
setupStore3863127620300
FirefoxBrowserifyHomeuiStartup13821189184512614351716
load1214106014999812881395
domContentLoaded1214106014999812881395
domInteractive943716725106141
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect211397112239
firstReactRender25206062433
getState13522431928
initialActions001001
loadScripts1195104714839712701370
setupStore12428133736
WebpackHomeuiStartup16831446232118717762083
load14551233203017415601857
domContentLoaded14551233203017415601857
domInteractive83421622188131
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect261696132558
firstReactRender45305644750
getState135205221029
initialActions103111
loadScripts14331216199117215391830
setupStore96304914
cc: @HowardBraham
Benchmark value 23 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 38 exceeds gate value 32 for chrome webpack home mean setupStore
Benchmark value 2519 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 1980 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 300 exceeds gate value 65 for chrome webpack home p95 setupStore
Benchmark value 14 exceeds gate value 11 for firefox browserify home mean getState
Benchmark value 12 exceeds gate value 9 for firefox browserify home mean setupStore
Benchmark value 1716 exceeds gate value 1660 for firefox browserify home p95 uiStartup
Benchmark value 28 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 36 exceeds gate value 27 for firefox browserify home p95 setupStore
Benchmark value 1683 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1456 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1455 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 45 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 1433 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 2083 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1857 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1857 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 58 exceeds gate value 49 for firefox webpack home p95 backgroundConnect
Benchmark value 1830 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Sum of mean exceeds: 311ms | Sum of p95 exceeds: 1135ms
Sum of all benchmark exceeds: 1446ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 0 Bytes (0%)
  • ui: 505 Bytes (0.01%)
  • common: 79 Bytes (0%)

@montelaidev montelaidev requested a review from ccharly May 30, 2025 11:33
@metamaskbot
Copy link
Collaborator

Builds ready [d8405c8]
UI Startup Metrics (1229 ± 75 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1229107315087512761374
load106094612596410951174
domContentLoaded105293712546610851168
domInteractive16133341728
firstPaint69380125742510731156
backgroundConnect94497927
firstReactRender21164652130
getState1564792131
initialActions001001
loadScripts80868999765841928
setupStore85182811
WebpackHomeuiStartup21251718256521422762501
load16461333194015117491893
domContentLoaded16401329193015017451882
domInteractive15125991343
firstPaint1546831351175251
backgroundConnect241061102749
firstReactRender13943413103178333
getState204330531438
initialActions512682635
loadScripts16361323191914917441871
setupStore3563117020296
FirefoxBrowserifyHomeuiStartup13531176184213114171605
load11951032153811312671433
domContentLoaded11951032153811312671432
domInteractive993522230105172
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2313242252146
firstReactRender23205952329
getState10416218814
initialActions001001
loadScripts11761021150711112481408
setupStore8413214612
WebpackHomeuiStartup15621354208617016431975
load13481162176514314291667
domContentLoaded13481162176414314291666
domInteractive77602182183109
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2415228222336
firstReactRender41296454349
getState11424324929
initialActions002111
loadScripts13271145174813914131642
setupStore11518321814
Benchmark value 16 exceeds gate value 15 for chrome browserify home mean getState
Benchmark value 1375 exceeds gate value 1365 for chrome browserify home p95 uiStartup
Benchmark value 27 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 35 exceeds gate value 32 for chrome webpack home mean setupStore
Benchmark value 2502 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 296 exceeds gate value 65 for chrome webpack home p95 setupStore
Benchmark value 42 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 1975 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1667 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1666 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 1642 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Sum of mean exceeds: 8ms | Sum of p95 exceeds: 363ms
Sum of all benchmark exceeds: 371ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 0 Bytes (0%)
  • ui: 505 Bytes (0.01%)
  • common: 79 Bytes (0%)

Copy link
Contributor

@ccharly ccharly left a comment

Choose a reason for hiding this comment

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

As discussed internally, after thinking of this, always ending a trace might not be the best option for errors, but given that we don't have a way to abort the trace, I think that's ok for the moment.

We should have a very low-rate of error for those flows anyway.

@montelaidev montelaidev added this pull request to the merge queue Jun 4, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jun 4, 2025
@montelaidev montelaidev added this pull request to the merge queue Jun 5, 2025
Merged via the queue into main with commit 6298c39 Jun 5, 2025
272 of 274 checks passed
@montelaidev montelaidev deleted the feat/multi-srp-performance-tracing branch June 5, 2025 13:41
@github-actions github-actions bot locked and limited conversation to collaborators Jun 5, 2025
@metamaskbot metamaskbot added the release-12.21.0 Issue or pull request that will be included in release 12.21.0 label Jun 5, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants