Skip to content

Conversation

@chloeYue
Copy link
Contributor

@chloeYue chloeYue commented Nov 3, 2025

Description

Fix these 2 flaky tests:

  • Multichain API Calling wallet_invokeMethod on the same dapp across three different connected chains Write operations: calling eth_sendTransaction on each connected scope should have less balance due to gas after transaction is sent

  • Multichain API Calling wallet_invokeMethod on the same dapp across three different connected chains Write operations: calling eth_sendTransaction on each connected scope should match chosen addresses in each chain to the selected address per scope in extension window

The 2 flaky tests share same reason of flakiness: as we invoke all methods the same time, so the confirmation screen order is not always the same when we run test, so the displayed order of account and network can be different

Screen.Recording.2025-11-03.at.14.40.17.mov

The test was flaky because it assumed a fixed order of confirmation screens. The new logic no longer depends on a strict order. Instead, it:

  • Iterates through each confirmation screen dynamically.
  • Collects the displayed account name and/or network name for each confirmation.
  • Verifies that all expected combinations appear, regardless of order.

Open in GitHub Codespaces

Changelog

CHANGELOG entry: null

Related issues

Manual testing steps

Tests should pass and be robust

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.

Note

Makes multichain wallet_invokeMethod e2e tests order-agnostic, enhances confirmation page object APIs, and adds a data-testid to the network name used by tests.

  • E2E (Multichain wallet_invokeMethod):
    • Refactor write-ops tests to be order-agnostic: dynamically iterate confirmations, collect account/network, and assert all expected combinations; validate unique/expected networks across dialogs.
    • Add SCOPE_TO_NETWORK_NAME map; update balance checks to verify post-gas changes per network.
  • Page Object (TransactionConfirmation):
    • Add selectors for header account and network name (confirmation__details-network-name).
    • New helpers: getNetworkName, getSenderAccountName, checkNetworkIsNotDisplayed, checkHeaderAccountNameIsDisplayed; rename checkIsSenderAccountDisplayedcheckSenderAccountIsDisplayed.
  • Metrics Test:
    • Switch to checkHeaderAccountNameIsDisplayed('Account 1') before advanced details.
  • UI (Confirm Info Network Row):
    • Add data-testid="confirmation__details-network-name" to network name; update related snapshots.

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

@chloeYue chloeYue requested a review from a team November 3, 2025 15:47
@chloeYue chloeYue self-assigned this Nov 3, 2025
@chloeYue chloeYue requested review from a team as code owners November 3, 2025 15:47
@chloeYue chloeYue added e2e-test End to end test for the MetaMask extension flaky tests team-qa QA team no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed labels Nov 3, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Nov 3, 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 3, 2025

✨ Files requiring CODEOWNER review ✨

@MetaMask/confirmations (6 files, +10 -1)
  • 📁 ui/
    • 📁 pages/
      • 📁 confirmations/
        • 📁 components/
          • 📁 confirm/
            • 📁 info/
              • 📁 __snapshots__/
                • 📄 info.test.tsx.snap +1 -0
              • 📁 native-transfer/
                • 📁 __snapshots__/
                  • 📄 native-transfer.test.tsx.snap +1 -0
              • 📁 nft-token-transfer/
                • 📁 __snapshots__/
                  • 📄 nft-token-transfer.test.tsx.snap +1 -0
              • 📁 shared/
                • 📁 network-row/
                  • 📄 network-row.tsx +5 -1
              • 📁 token-transfer/
                • 📁 __snapshots__/
                  • 📄 token-details-section.test.tsx.snap +1 -0
                  • 📄 token-transfer.test.tsx.snap +1 -0

🧪 @MetaMask/qa (1 files, +74 -18)
  • 📁 test/
    • 📁 e2e/
      • 📁 page-objects/
        • 📁 pages/
          • 📁 confirmations/
            • 📁 redesign/
              • 📄 transaction-confirmation.ts +74 -18

👨‍🔧 @MetaMask/wallet-integrations (1 files, +107 -44)
  • 📁 test/
    • 📁 e2e/
      • 📁 flask/
        • 📁 multichain-api/
          • 📁 evm/
            • 📄 wallet_invokeMethod.spec.ts +107 -44

@github-actions github-actions bot added the size-M label Nov 3, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [19b489d]
UI Startup Metrics (1301 ± 99 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1301112316029913731457
load111596613298911921266
domContentLoaded110896013158811851256
domInteractive221492141960
firstPaint62678129044110941222
backgroundConnect2342202799238250
firstReactRender31185793847
getState21768102444
initialActions71517820
loadScripts8827361082879561030
setupStore1163151322
numNetworkReqs1367619672
BrowserifyPower User HomeuiStartup21411850296039126362960
load1126948160623214151606
domContentLoaded1116942159922914051599
domInteractive34171233058123
firstPaint698169154247310121542
backgroundConnect25022927714263277
firstReactRender28253122931
getState18416021619203216
initialActions538158
loadScripts881726135422111711354
setupStore1191411214
numNetworkReqs15710232189302321
WebpackStandard HomeuiStartup8637281238998761170
load64258697185642903
domContentLoaded63458195182636888
domInteractive16115181436
firstPaint20661954195194612
backgroundConnect271292172874
firstReactRender29175683438
getState1271931516
initialActions3117348
loadScripts63157994079634877
setupStore1062031218
numNetworkReqs1367519870
WebpackPower User HomeuiStartup14071199190825317501908
load72662210201479011020
domContentLoaded702611928121876928
domInteractive261382204382
firstPaint31176931252629931
backgroundConnect721227888172278
firstReactRender27233222932
getState15310817918165179
initialActions41154615
loadScripts698609917117863917
setupStore1263071730
numNetworkReqs1509727866196278
FirefoxBrowserifyStandard HomeuiStartup14831257200214615611759
load1250108914909813321429
domContentLoaded1250108914909813321429
domInteractive1133532653121236
firstPaint------
backgroundConnect4724267325171
firstReactRender26215242636
getState11418420825
initialActions41324413
loadScripts1222107314569313041388
setupStore176226301234
numNetworkReqs1266816761
BrowserifyPower User HomeuiStartup25672187344237630383442
load14161193182220215571822
domContentLoaded14161192182220215561822
domInteractive20768662174348662
firstPaint------
backgroundConnect12339443117175443
firstReactRender42325574855
getState15010029647161296
initialActions2121524211152
loadScripts13781149177019615221770
setupStore22563152963
numNetworkReqs1406833484231334
WebpackStandard HomeuiStartup16261431231217716592182
load13851214176011014201659
domContentLoaded13851214176011014191659
domInteractive1023127840118179
firstPaint------
backgroundConnect52232083552152
firstReactRender3523152223076
getState84406717
initialActions6120220316
loadScripts13551197165310013921611
setupStore157230301229
numNetworkReqs1367017768
WebpackPower User HomeuiStartup25782158394046527563940
load14941217192521317131925
domContentLoaded14941217192521317121925
domInteractive16867436130310436
firstPaint------
backgroundConnect11631379100199379
firstReactRender42305595255
getState15010820938194209
initialActions61399639
loadScripts14491198188020616201880
setupStore3391493846149
numNetworkReqs1346133590211335
📊 Page Load Benchmark Results

Current Commit: 19b489d | Date: 11/3/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.02s (±41ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 716ms (±63ms) 🟢 | historical mean value: 725ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 79ms (±42ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.02s 41ms 1.00s 1.32s 1.04s 1.32s
domContentLoaded 716ms 63ms 694ms 1.28s 728ms 1.28s
firstPaint 79ms 42ms 60ms 496ms 84ms 496ms
firstContentfulPaint 79ms 42ms 60ms 496ms 84ms 496ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 68 Bytes (0%)
  • ui: 51 Bytes (0%)
  • common: 10 Bytes (0%)

@chloeYue chloeYue changed the title test: fix test test: Fix flask multichain api wallet_invokeMethod e2e tests Nov 3, 2025
@metamaskbot metamaskbot added INVALID-PR-TEMPLATE PR's body doesn't match template and removed INVALID-PR-TEMPLATE PR's body doesn't match template labels Nov 3, 2025
);
await confirmation.checkNetworkIsDisplayed('Localhost 8546');
await confirmation.clickFooterConfirmButtonAndAndWaitForWindowToClose();
await confirmation.checkNetworkIsNotDisplayed(currentNetwork);
Copy link
Contributor Author

Choose a reason for hiding this comment

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

in each iteration, we check that the network is different from the previous confirmation screen to ensure that we’ve switched to a new confirmation screen

@metamaskbot
Copy link
Collaborator

Builds ready [5a007d3]
UI Startup Metrics (1261 ± 96 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1261110414839613121442
load107994912968511361210
domContentLoaded107494512878411301204
domInteractive211478131852
firstPaint63079129344510941205
backgroundConnect2272152446230237
firstReactRender30205383746
getState2085482436
initialActions817212826
loadScripts852727106483911979
setupStore1162841118
numNetworkReqs1367620674
BrowserifyPower User HomeuiStartup20741827303539923673035
load1089935150622014021506
domContentLoaded1077927149321713961493
domInteractive301595244595
firstPaint6168814974789891497
backgroundConnect24021828618255286
firstReactRender26243322633
getState18315922119201221
initialActions528268
loadScripts851704126920911641269
setupStore1292751127
numNetworkReqs1569930980230309
WebpackStandard HomeuiStartup101084513879210491168
load745660105992825908
domContentLoaded735650104489817893
domInteractive1912106141750
firstPaint206641050222196836
backgroundConnect3215112193485
firstReactRender31214694143
getState168160151722
initialActions51264512
loadScripts731647103388814886
setupStore1372241621
numNetworkReqs1367619868
WebpackPower User HomeuiStartup14181210213330216732133
load70360510361327741036
domContentLoaded683595989118733989
domInteractive271282233982
firstPaint4446110083317361008
backgroundConnect741229895208298
firstReactRender27253222832
getState15011217618160176
initialActions715815458
loadScripts679593978114722978
setupStore1462782327
numNetworkReqs1469527869199278
FirefoxBrowserifyStandard HomeuiStartup15231354209112515861775
load1290114414718713531457
domContentLoaded1289114414718613531457
domInteractive1173633648124230
firstPaint------
backgroundConnect47261262054100
firstReactRender26224022729
getState94709817
initialActions51526414
loadScripts1260112514428213301424
setupStore1387591331
numNetworkReqs1366616761
BrowserifyPower User HomeuiStartup26252221363146532593631
load14561236194124517481941
domContentLoaded14551236194124517481941
domInteractive207103586161303586
firstPaint------
backgroundConnect13737555140216555
firstReactRender39295484754
getState1309618323148183
initialActions11169171969
loadScripts14071204183722317061837
setupStore4652917439291
numNetworkReqs1406833298228332
WebpackStandard HomeuiStartup16041389229518016052103
load13651182171610213971603
domContentLoaded13641181171610213961603
domInteractive1033047753112164
firstPaint------
backgroundConnect46251712549108
firstReactRender332379153174
getState10415220732
initialActions616811327
loadScripts1336116516849313741529
setupStore197222311180
numNetworkReqs1367518768
WebpackPower User HomeuiStartup24472125306027826663060
load14701222178719216861787
domContentLoaded14691222178619216851786
domInteractive16755411121322411
firstPaint------
backgroundConnect892726468132264
firstReactRender433197164997
getState1359221238173212
initialActions12274182074
loadScripts14401206174118716491741
setupStore3061113342111
numNetworkReqs1326131978206319
📊 Page Load Benchmark Results

Current Commit: 5a007d3 | Date: 11/3/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±43ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 736ms (±41ms) 🟢 | historical mean value: 726ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 79ms (±13ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 43ms 1.03s 1.38s 1.10s 1.38s
domContentLoaded 736ms 41ms 710ms 1.04s 755ms 1.04s
firstPaint 79ms 13ms 60ms 192ms 92ms 192ms
firstContentfulPaint 79ms 13ms 60ms 192ms 92ms 192ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 68 Bytes (0%)
  • ui: 51 Bytes (0%)
  • common: 10 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [9052dff]
UI Startup Metrics (1261 ± 91 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1261110816199113081441
load108294713708011271221
domContentLoaded107694213617911171214
domInteractive201461111853
firstPaint56474126841010701154
backgroundConnect2272142646230238
firstReactRender30195783445
getState2296392540
initialActions60304715
loadScripts854725113379896990
setupStore1172741221
numNetworkReqs1367419672
BrowserifyPower User HomeuiStartup21371894292432624042924
load11411009153919313801539
domContentLoaded1129999151418913541514
domInteractive331779205579
firstPaint513110154644410221546
backgroundConnect25423529515267295
firstReactRender29263523035
getState18916523720203237
initialActions63102710
loadScripts891767127618511201276
setupStore12102841328
numNetworkReqs15210030481266304
WebpackStandard HomeuiStartup8637361263878721067
load64159299073647840
domContentLoaded63358696770640820
domInteractive16127391439
firstPaint18558812155196605
backgroundConnect271397162969
firstReactRender28176883336
getState1262731417
initialActions3021347
loadScripts63058495668638809
setupStore1162941217
numNetworkReqs1367619872
WebpackPower User HomeuiStartup13391190197723514881977
load68060989096775890
domContentLoaded66059885681745856
domInteractive221352154252
firstPaint22569821219230821
backgroundConnect651124579144245
firstReactRender27243522735
getState1449416322160163
initialActions31327232
loadScripts65559684677734846
setupStore1162361423
numNetworkReqs1479927867200278
FirefoxBrowserifyStandard HomeuiStartup15351288200414316241813
load12941113168310813571520
domContentLoaded12941112168210813571519
domInteractive1243648864132235
firstPaint------
backgroundConnect53264144457108
firstReactRender27214952839
getState9419619816
initialActions52334413
loadScripts1261109616079713221474
setupStore15595141436
numNetworkReqs1266716758
BrowserifyPower User HomeuiStartup25012117382941326753829
load13661143170918214981709
domContentLoaded13661143170918214981709
domInteractive20875585163374585
firstPaint------
backgroundConnect12130429107208429
firstReactRender392984134084
getState1339120833168208
initialActions2902756911275
loadScripts13261125167217214611672
setupStore25683235283
numNetworkReqs1417033581232335
WebpackStandard HomeuiStartup15861414206713316261878
load13531222168710413971583
domContentLoaded13531222168610413961583
domInteractive983127634113158
firstPaint------
backgroundConnect51191712754112
firstReactRender3323142182973
getState74294913
initialActions51679326
loadScripts1320117116479813701544
setupStore147128151332
numNetworkReqs1367317866
WebpackPower User HomeuiStartup25572122406545127304065
load15471221214028018522140
domContentLoaded15471221214028018522140
domInteractive20160553175370553
firstPaint------
backgroundConnect843128270143282
firstReactRender483197165597
getState1357924339144243
initialActions14181241081
loadScripts15121204203226418132032
setupStore2861222948122
numNetworkReqs1335632177200321
📊 Page Load Benchmark Results

Current Commit: 9052dff | Date: 11/3/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: 726ms (±40ms) 🟢 | historical mean value: 726ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±14ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 42ms 1.02s 1.37s 1.08s 1.37s
domContentLoaded 726ms 40ms 704ms 1.04s 761ms 1.04s
firstPaint 76ms 14ms 60ms 200ms 84ms 200ms
firstContentfulPaint 76ms 14ms 60ms 200ms 84ms 200ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 68 Bytes (0%)
  • ui: 51 Bytes (0%)
  • common: 10 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [5578eef]
UI Startup Metrics (1255 ± 100 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup12551097159410013291425
load107592314269611521230
domContentLoaded106991614179511451223
domInteractive211480122051
firstPaint68781131943110931228
backgroundConnect2272152496230239
firstReactRender301897103547
getState2076692133
initialActions71477726
loadScripts8486901180949191009
setupStore1062741124
numNetworkReqs1367520673
BrowserifyPower User HomeuiStartup20861786351045924103510
load1100918172123713961721
domContentLoaded1087910164722313501647
domInteractive291670185470
firstPaint79110117294819761729
backgroundConnect25222137843273378
firstReactRender26252812728
getState18615826832199268
initialActions427257
loadScripts861701137921211141379
setupStore1192841028
numNetworkReqs1519131387287313
WebpackStandard HomeuiStartup8877371217919001137
load66057799484665934
domContentLoaded65157097381657918
domInteractive171267101443
firstPaint21857947209203758
backgroundConnect281381142967
firstReactRender29184683538
getState1262031517
initialActions4117358
loadScripts64856895978655905
setupStore1162541316
numNetworkReqs1367619870
WebpackPower User HomeuiStartup13771190183324616951833
load72560911631728831163
domContentLoaded70959811071618411107
domInteractive251377214077
firstPaint3877811103346471110
backgroundConnect61112666594266
firstReactRender26242812628
getState14810916519159165
initialActions30103810
loadScripts70459610911578301091
setupStore1263181531
numNetworkReqs1439527265202272
FirefoxBrowserifyStandard HomeuiStartup14281215190612815031670
load1213105214428712921364
domContentLoaded1213105214428712921364
domInteractive1153536957122257
firstPaint------
backgroundConnect4123130184975
firstReactRender25215352638
getState74435813
initialActions41647312
loadScripts1188103514158512671331
setupStore147215211132
numNetworkReqs1266716761
BrowserifyPower User HomeuiStartup26572260380845827223808
load14391236191220416391912
domContentLoaded14391235191220416391912
domInteractive23670653193456653
firstPaint------
backgroundConnect15635605170348605
firstReactRender443380115080
getState1299121731139217
initialActions1015114851
loadScripts14051213183319315981833
setupStore31697274797
numNetworkReqs1346533286202332
WebpackStandard HomeuiStartup15901372215514916371936
load13601202182812413721644
domContentLoaded13591202182812413721643
domInteractive993332139111170
firstPaint------
backgroundConnect48251672750116
firstReactRender292171122869
getState84496914
initialActions7118219424
loadScripts13291183172911213431611
setupStore14771111342
numNetworkReqs1367218867
WebpackPower User HomeuiStartup26002209334238430393342
load15081263191721416661917
domContentLoaded15081263191721316651917
domInteractive16871546136192546
firstPaint------
backgroundConnect1053128790206287
firstReactRender443059115659
getState1279019926142199
initialActions812161321
loadScripts14751245187520216431875
setupStore47111384475138
numNetworkReqs1346332790216327
📊 Page Load Benchmark Results

Current Commit: 5578eef | Date: 11/3/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±46ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 730ms (±60ms) 🟢 | historical mean value: 727ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 89ms (±126ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 46ms 1.01s 1.42s 1.07s 1.42s
domContentLoaded 730ms 60ms 696ms 1.27s 742ms 1.27s
firstPaint 89ms 126ms 60ms 1.34s 84ms 1.34s
firstContentfulPaint 89ms 126ms 60ms 1.34s 84ms 1.34s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 68 Bytes (0%)
  • ui: 51 Bytes (0%)
  • common: 10 Bytes (0%)

jvbriones
jvbriones previously approved these changes Nov 4, 2025
* @param account - The sender account to check.
*/
async checkIsSenderAccountDisplayed(account: string): Promise<boolean> {
async checkSenderAccountIsDisplayed(account: string): Promise<void> {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

the original method was called without asserting the return value in code base, making it effectively do nothing. I updated the implementation to prevent false positives.

@metamaskbot
Copy link
Collaborator

Builds ready [a246399]
UI Startup Metrics (1244 ± 88 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1244109214548812911423
load106594512808211071235
domContentLoaded105894112618111011219
domInteractive2214115151858
firstPaint623151129942110471226
backgroundConnect23322130811236248
firstReactRender28195283245
getState23786132853
initialActions9158101128
loadScripts832713103480879989
setupStore1273451323
numNetworkReqs1367319670
BrowserifyPower User HomeuiStartup20131766261129724102611
load1025892137517312411375
domContentLoaded1017884135917112361359
domInteractive30151002552100
firstPaint72817213693929541369
backgroundConnect2372202579244257
firstReactRender28253432934
getState17511323828182238
initialActions162140349140
loadScripts78965511291689891129
setupStore1292331223
numNetworkReqs15710231084294310
WebpackStandard HomeuiStartup821694119891835987
load60155295978593767
domContentLoaded59354593574587756
domInteractive171194131443
firstPaint18759902174202578
backgroundConnect241270122755
firstReactRender29176183438
getState1163441219
initialActions40264410
loadScripts59054292572584745
setupStore1162841216
numNetworkReqs1367319770
WebpackPower User HomeuiStartup12951156188020813101880
load63558279169698791
domContentLoaded61957273759679737
domInteractive261373204373
firstPaint32280742239583742
backgroundConnect57122386676238
firstReactRender27253122831
getState1466517628162176
initialActions41165316
loadScripts61457072656668726
setupStore1163281032
numNetworkReqs1439728661191286
FirefoxBrowserifyStandard HomeuiStartup14611265205113015051718
load1238109715108812791394
domContentLoaded1238109715108812791393
domInteractive1163643950126200
firstPaint------
backgroundConnect4325164235077
firstReactRender26214642733
getState74233712
initialActions41213413
loadScripts1212108114868112531361
setupStore157228221331
numNetworkReqs1267215762
BrowserifyPower User HomeuiStartup24612195315525426673155
load13651211174318115961743
domContentLoaded13651211174218015951742
domInteractive20893645168387645
firstPaint------
backgroundConnect1053630987211309
firstReactRender40305384953
getState1376320235175202
initialActions9142101242
loadScripts13311177167817015381678
setupStore3561373348137
numNetworkReqs1436832974196329
WebpackStandard HomeuiStartup15731382219214016251885
load13461200162610413961560
domContentLoaded13451200162610413951560
domInteractive993128536110163
firstPaint------
backgroundConnect48231332352107
firstReactRender27224432835
getState74193713
initialActions6116517325
loadScripts1315118115929613671509
setupStore176221251270
numNetworkReqs1366617764
WebpackPower User HomeuiStartup26172251335733428153357
load15601317186416117171864
domContentLoaded15591317186316117171863
domInteractive17435518165376518
firstPaint------
backgroundConnect11630376102209376
firstReactRender43291121948112
getState1509028459207284
initialActions2302175318217
loadScripts15251294177214916761772
setupStore3581314059131
numNetworkReqs1376629780216297
📊 Page Load Benchmark Results

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

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±39ms) 🟡 | historical mean value: 1.03s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 723ms (±62ms) 🟢 | historical mean value: 719ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±43ms) 🟢 | historical mean value: 79ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 39ms 1.01s 1.34s 1.06s 1.34s
domContentLoaded 723ms 62ms 699ms 1.29s 741ms 1.29s
firstPaint 80ms 43ms 64ms 504ms 88ms 504ms
firstContentfulPaint 80ms 43ms 64ms 504ms 88ms 504ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 484 Bytes (0.01%)
  • ui: 2.94 KiB (0.04%)
  • common: 753 Bytes (0.01%)

@DDDDDanica DDDDDanica enabled auto-merge November 4, 2025 12:46
@DDDDDanica DDDDDanica added this pull request to the merge queue Nov 4, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Nov 4, 2025
@chloeYue chloeYue added this pull request to the merge queue Nov 4, 2025
Merged via the queue into main with commit e054b7e Nov 4, 2025
173 checks passed
@chloeYue chloeYue deleted the fix-flaky-invoke-tests branch November 4, 2025 18:04
@github-actions github-actions bot locked and limited conversation to collaborators Nov 4, 2025
@metamaskbot metamaskbot added the release-13.9.0 Issue or pull request that will be included in release 13.9.0 label Nov 4, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

e2e-test End to end test for the MetaMask extension flaky tests no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed release-13.9.0 Issue or pull request that will be included in release 13.9.0 size-M team-qa QA team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants