Skip to content

Conversation

@micaelae
Copy link
Member

@micaelae micaelae commented Oct 28, 2025

Description

Prevents jumpy UI updates when quotes are being streamed

  • wait for quote request to finish loading before scrolling to alert banners
  • show loading CTA and disable submit button while quotes load so user can view any tx warnings before submitting a trade

Open in GitHub Codespaces

Changelog

CHANGELOG entry: fix: defer UI actions until swap SSE quotes are fully loaded

Related issues

Fixes: https://consensyssoftware.atlassian.net/browse/SWAPS-3027

Manual testing steps

  1. Get quotes for <$10 of any ethereum token to sol:USDC
  2. Wait 30s for quotes to refresh
  3. The Swap button should be disabled while quotes are loading
  4. Page should only scroll to the bottom after quotes are finished loading

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

Disables submit and warning auto-scroll while quotes load, tweaks countdown display, switches analytics to use isTxSubmittable, removes an unused NetworkController action, and bumps bridge-controller to ^56.0.3.

  • Bridge UI:
    • CTA behavior: BridgeCTAButton now disabled during isLoading; adds tests (including parametric cases) and snapshots updated.
    • Alerts/scrolling: prepare-bridge-page avoids scrolling to warning banners while quotes are loading.
    • Countdown: useCountdownTimer initializes with refreshRate + STEP and offsets by STEP (snapshots show 0:31/0:06).
    • Analytics: useQuoteFetchEvents uses useIsTxSubmittable for can_submit and keeps other quote metrics.
  • Controllers/Messaging:
    • Removes NetworkController:getState from AllowedActions and delegated actions in bridge-controller-messenger.
  • Dependencies:
    • Bumps @metamask/bridge-controller to ^56.0.3 (lockfile updated).

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

@metamaskbot metamaskbot added the team-swaps-and-bridge Swaps and Bridge team label Oct 28, 2025
@metamaskbot
Copy link
Collaborator

metamaskbot commented Oct 28, 2025

✨ Files requiring CODEOWNER review ✨

🔄 @MetaMask/swaps-engineers (7 files, +102 -24)
  • 📁 ui/
    • 📁 hooks/
      • 📁 bridge/
        • 📄 useCountdownTimer.ts +1 -1
        • 📄 useQuoteFetchEvents.ts +3 -3
    • 📁 pages/
      • 📁 bridge/
        • 📁 prepare/
          • 📁 __snapshots__/
            • 📄 bridge-cta-button.test.tsx.snap +0 -12
            • 📄 bridge-cta-button.test.tsx +87 -4
            • 📄 bridge-cta-button.tsx +2 -0
            • 📄 prepare-bridge-page.tsx +5 -0
        • 📁 quotes/
          • 📁 __snapshots__/
            • 📄 multichain-bridge-quote-card.test.tsx.snap +4 -4

@socket-security
Copy link

socket-security bot commented Oct 28, 2025

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​metamask/​bridge-controller@​56.0.0 ⏵ 56.0.398 +110078 +198 +1100

View full report

@micaelae micaelae changed the title fix: wait for quotes to finish loading before swap auto-scroll and enabling CTA fix: defer UI actions until swap quotes are fully loaded Oct 28, 2025
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

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

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±72ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 738ms (±69ms) 🟢 | historical mean value: 719ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±14ms) 🟢 | historical mean value: 81ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 72ms 1.01s 1.33s 1.27s 1.33s
domContentLoaded 738ms 69ms 701ms 1.01s 945ms 1.01s
firstPaint 77ms 14ms 60ms 200ms 88ms 200ms
firstContentfulPaint 77ms 14ms 60ms 200ms 88ms 200ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [cf52a62]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: -21.75 KiB (-0.47%)
  • ui: 17.88 KiB (0.25%)
  • common: 62.39 KiB (0.72%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

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

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±59ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 723ms (±69ms) 🟢 | historical mean value: 719ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 87ms (±124ms) 🟢 | historical mean value: 81ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 59ms 1.01s 1.41s 1.09s 1.41s
domContentLoaded 723ms 69ms 697ms 1.26s 758ms 1.26s
firstPaint 87ms 124ms 60ms 1.32s 84ms 1.32s
firstContentfulPaint 87ms 124ms 60ms 1.32s 84ms 1.32s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [cfc4177]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 55 Bytes (0%)
  • ui: 63 Bytes (0%)
  • common: 38.75 KiB (0.44%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

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

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±71ms) 🟡 | historical mean value: 1.03s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±68ms) 🟢 | historical mean value: 719ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±11ms) 🟢 | historical mean value: 80ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 71ms 1.01s 1.32s 1.26s 1.32s
domContentLoaded 731ms 68ms 695ms 996ms 930ms 996ms
firstPaint 76ms 11ms 56ms 160ms 88ms 160ms
firstContentfulPaint 76ms 11ms 56ms 160ms 88ms 160ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [f77d05e]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 55 Bytes (0%)
  • ui: 176 Bytes (0%)
  • common: 38.75 KiB (0.44%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: cc72852 | Date: 10/29/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±76ms) 🟡 | historical mean value: 1.06s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 727ms (±72ms) 🟢 | historical mean value: 743ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±12ms) 🟢 | historical mean value: 83ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 76ms 1.00s 1.37s 1.29s 1.37s
domContentLoaded 727ms 72ms 693ms 1.02s 977ms 1.02s
firstPaint 76ms 12ms 60ms 176ms 88ms 176ms
firstContentfulPaint 76ms 12ms 60ms 176ms 88ms 176ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [cc72852]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 63 Bytes (0%)
  • common: 38.75 KiB (0.44%)

@micaelae
Copy link
Member Author

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: d02a1a7 | Date: 10/29/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±72ms) 🟡 | historical mean value: 1.06s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 733ms (±69ms) 🟢 | historical mean value: 743ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±12ms) 🟢 | historical mean value: 83ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 72ms 1.01s 1.32s 1.29s 1.32s
domContentLoaded 733ms 69ms 696ms 1.01s 956ms 1.01s
firstPaint 76ms 12ms 60ms 176ms 88ms 176ms
firstContentfulPaint 76ms 12ms 60ms 176ms 88ms 176ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [d02a1a7]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 63 Bytes (0%)
  • common: 38.99 KiB (0.45%)

@metamaskbot
Copy link
Collaborator

Policies updated.
👀 Please review the diff for suspicious new powers.

🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff

@metamaskbot
Copy link
Collaborator

❌ test-e2e-chrome-api-specs failed. View the html report here.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 1de7544 | Date: 10/29/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.05s (±54ms) 🟡 | historical mean value: 1.06s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 734ms (±51ms) 🟢 | historical mean value: 742ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 77ms (±10ms) 🟢 | historical mean value: 83ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.05s 54ms 1.02s 1.33s 1.15s 1.33s
domContentLoaded 734ms 51ms 702ms 1.01s 811ms 1.01s
firstPaint 77ms 10ms 64ms 152ms 88ms 152ms
firstContentfulPaint 77ms 10ms 64ms 152ms 88ms 152ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [1de7544]
UI Startup Metrics (1192 ± 89 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1192100213548912561343
load101986711868610791163
domContentLoaded101286011778510731154
domInteractive19136091743
firstPaint68966118240110431159
backgroundConnect1851732087189195
firstReactRender28164563340
getState19793102335
initialActions70548724
loadScripts834687100886898986
setupStore1063031017
BrowserifyPower User HomeuiStartup21761771340254726683402
load1182933205035416022050
domContentLoaded1174929204435015912044
domInteractive311667174367
firstPaint6069417215119981721
backgroundConnect284220666128280666
firstReactRender25232922629
getState17616022315185223
initialActions52102610
loadScripts929711168031212481680
setupStore1183261132
WebpackStandard HomeuiStartup880751123171904994
load65260195160662787
domContentLoaded64459593159656776
domInteractive16124071535
firstPaint18858969183189767
backgroundConnect25135382939
firstReactRender3017128133438
getState1263041521
initialActions3011257
loadScripts64159291956653763
setupStore1162731315
WebpackPower User HomeuiStartup16871254248940221062489
load77861813342349321334
domContentLoaded73160611401769071140
domInteractive241389183289
firstPaint4996412353466781235
backgroundConnect12718523156294523
firstReactRender25223432534
getState15611022226156222
initialActions1009824298
loadScripts72660411281738961128
setupStore19667162467
FirefoxBrowserifyStandard HomeuiStartup1483127917669715351663
load1270110215667913131420
domContentLoaded1270110215657913121420
domInteractive1163526741128213
firstPaint------
backgroundConnect4224105164787
firstReactRender26215962545
getState74425713
initialActions41901136
loadScripts1244108215367712821394
setupStore1162221215
BrowserifyPower User HomeuiStartup25232176300426928283004
load13801234165311614841653
domContentLoaded13791234165311614831653
domInteractive1428823744159237
firstPaint------
backgroundConnect16433439137331439
firstReactRender382793164193
getState1228217027154170
initialActions917116671
loadScripts13351205160211514381602
setupStore25783212383
WebpackStandard HomeuiStartup16321477202610616661893
load1399125117178414361587
domContentLoaded1399125117168414351587
domInteractive1153450574107360
firstPaint------
backgroundConnect4725152185380
firstReactRender29228093037
getState854651015
initialActions51679317
loadScripts1370123316878213971551
setupStore1475491448
WebpackPower User HomeuiStartup30332443436859738034368
load17021374214525619682145
domContentLoaded17021374214525619682145
domInteractive19076402109300402
firstPaint------
backgroundConnect2434911033123581103
firstReactRender463376125376
getState1458123940159239
initialActions11235101835
loadScripts16481327206323718642063
setupStore41111544648154
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: -53 Bytes (0%)
  • common: 38.99 KiB (0.45%)

@micaelae micaelae force-pushed the swaps-sse-follow-up branch from 1de7544 to 615a5bb Compare October 29, 2025 19:35
@micaelae micaelae changed the base branch from main to mikesposito/messenger October 29, 2025 19:35
@micaelae
Copy link
Member Author

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

Policies updated.
👀 Please review the diff for suspicious new powers.

🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: c1b913a | Date: 10/29/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±70ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 731ms (±68ms) 🟢 | historical mean value: 727ms ⬆️ (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 70ms 1.00s 1.32s 1.27s 1.32s
domContentLoaded 731ms 68ms 692ms 995ms 939ms 995ms
firstPaint 76ms 14ms 60ms 204ms 84ms 204ms
firstContentfulPaint 76ms 14ms 60ms 204ms 84ms 204ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [c1b913a]
UI Startup Metrics (1268 ± 84 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1268111414918413261420
load108695312878011361238
domContentLoaded108194812787911311230
domInteractive19145781844
firstPaint58693128743810781188
backgroundConnect2292192556233240
firstReactRender29185983345
getState1984772233
initialActions608010617
loadScripts8577331049799101006
setupStore1063331115
numNetworkReqs86265624
BrowserifyPower User HomeuiStartup22781846359162932223591
load1191954194634816991946
domContentLoaded1178945190834216851908
domInteractive281670175170
firstPaint755184179657210221796
backgroundConnect27422559488270594
firstReactRender28225682656
getState18316327328198273
initialActions172152386152
loadScripts930728151630214011516
setupStore1283671236
numNetworkReqs340205682180533682
WebpackStandard HomeuiStartup816700100461842948
load59755681753614736
domContentLoaded58954980651607726
domInteractive15113961434
firstPaint18653813183164694
backgroundConnect24124572837
firstReactRender28175893346
getState1152031417
initialActions3015248
loadScripts58654679749604718
setupStore1052441216
numNetworkReqs86297628
WebpackPower User HomeuiStartup16901234244936421262449
load76461314232419091423
domContentLoaded72359812301958221230
domInteractive201366143166
firstPaint4529212333436811233
backgroundConnect12418370137342370
firstReactRender25223942539
getState15610622623159226
initialActions604311343
loadScripts71859612191928111219
setupStore16560182260
numNetworkReqs335202607148504607
FirefoxBrowserifyStandard HomeuiStartup14431255184410214911580
load1236107616137612821360
domContentLoaded1236107616137612821360
domInteractive1103826739128190
firstPaint------
backgroundConnect4125158204490
firstReactRender25205072546
getState10422628711
initialActions3111134
loadScripts1210105915867412561335
setupStore136234221214
numNetworkReqs86265724
BrowserifyPower User HomeuiStartup25982176404845728334048
load13791141188318815171883
domContentLoaded13791141188318815171883
domInteractive1667134585242345
firstPaint------
backgroundConnect22433960227335960
firstReactRender38285584455
getState1369930951146309
initialActions1319223992
loadScripts13121120160815014611608
setupStore3481012557101
numNetworkReqs26216253493309534
WebpackStandard HomeuiStartup16111437221012516511890
load1375122017268814231510
domContentLoaded1374121917268814231510
domInteractive1123246969114324
firstPaint------
backgroundConnect51191442458109
firstReactRender29227692937
getState10415317912
initialActions7125126339
loadScripts1341120216968913851482
setupStore166198291325
numNetworkReqs86315724
WebpackPower User HomeuiStartup26972258359044029783590
load15551236217026118332170
domContentLoaded15541236217026118332170
domInteractive1387528560196285
firstPaint------
backgroundConnect17028617210211617
firstReactRender47301051750105
getState1218920227133202
initialActions61236723
loadScripts15031220200122817422001
setupStore25779203779
numNetworkReqs281149588142427588

Base automatically changed from mikesposito/messenger to main October 29, 2025 20:37
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: a8779fc | Date: 10/30/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: 724ms (±35ms) 🟢 | historical mean value: 727ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±10ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 36ms 1.01s 1.30s 1.07s 1.30s
domContentLoaded 724ms 35ms 700ms 985ms 747ms 985ms
firstPaint 76ms 10ms 56ms 156ms 84ms 156ms
firstContentfulPaint 76ms 10ms 56ms 156ms 84ms 156ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [a8779fc]
UI Startup Metrics (1287 ± 93 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1287113115029313511444
load110395513259111671269
domContentLoaded109795213169011611261
domInteractive201372101947
firstPaint57679132544711031232
backgroundConnect23121531210234243
firstReactRender29185473343
getState19894102230
initialActions50577618
loadScripts8737331091899361037
setupStore1061821015
numNetworkReqs86245624
BrowserifyPower User HomeuiStartup21641758333853427273338
load1167926192936616461929
domContentLoaded1155921191635616311916
domInteractive291487234887
firstPaint6518417946009871794
backgroundConnect291222993183260993
firstReactRender26213642736
getState17114820416173204
initialActions42102510
loadScripts912696153632113831536
setupStore1282651226
numNetworkReqs313180666180575666
WebpackStandard HomeuiStartup8607411153698751031
load64359096068652848
domContentLoaded63658394367644841
domInteractive16126691438
firstPaint17858855157198607
backgroundConnect24135072743
firstReactRender27174773235
getState1262031417
initialActions3114246
loadScripts63258193165641830
setupStore1052331215
numNetworkReqs86286627
WebpackPower User HomeuiStartup15611163232542321222325
load66756810151428381015
domContentLoaded630551874100699874
domInteractive19124492644
firstPaint44153983327776983
backgroundConnect12711445174397445
firstReactRender25214762447
getState14413217911147179
initialActions614411544
loadScripts62654886698690866
setupStore22679203079
numNetworkReqs306163657166539657
FirefoxBrowserifyStandard HomeuiStartup14261257178310014901599
load1215108014367812701358
domContentLoaded1214108014367812691358
domInteractive1163625846125219
firstPaint------
backgroundConnect4124124184788
firstReactRender25206172539
getState9413215727
initialActions3120236
loadScripts1188105114087712441330
setupStore1367491232
numNetworkReqs86305724
BrowserifyPower User HomeuiStartup27272300408956028964089
load13741206164713315291647
domContentLoaded13741206164713315291647
domInteractive1699631469255314
firstPaint------
backgroundConnect18228790210396790
firstReactRender41325574955
getState1599340872174408
initialActions1211273010127
loadScripts13351177155812314761558
setupStore3161022845102
numNetworkReqs22513544390286443
WebpackStandard HomeuiStartup16141425202712216621883
load1384120717509114421551
domContentLoaded1384120717509114421550
domInteractive1143041373114373
firstPaint------
backgroundConnect4424158195174
firstReactRender28226572946
getState84537816
initialActions7118722341
loadScripts1356119017228814111523
setupStore137139141326
numNetworkReqs86306725
WebpackPower User HomeuiStartup30352364448467736114484
load17251369233529020102335
domContentLoaded17241368233529020102335
domInteractive21986556142372556
firstPaint------
backgroundConnect20433935235354935
firstReactRender42325674856
getState16211840070206400
initialActions71328732
loadScripts16671336215725619352157
setupStore38112826427282
numNetworkReqs241140513118339513
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 39 Bytes (0%)
  • ui: 666 Bytes (0.01%)
  • common: 371 Bytes (0%)

cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 3b3ea00 | Date: 10/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±37ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 718ms (±36ms) 🟢 | historical mean value: 727ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±11ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 37ms 1.00s 1.30s 1.07s 1.30s
domContentLoaded 718ms 36ms 694ms 979ms 751ms 979ms
firstPaint 76ms 11ms 60ms 164ms 88ms 164ms
firstContentfulPaint 76ms 11ms 60ms 164ms 88ms 164ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [3b3ea00]
UI Startup Metrics (1311 ± 92 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1311114714979213831460
load112595813119111941267
domContentLoaded111693013059111871259
domInteractive211466102153
firstPaint64893131046411501259
backgroundConnect23521937716238253
firstReactRender28185373344
getState20899122231
initialActions51275618
loadScripts8907121090929601026
setupStore1072941121
numNetworkReqs86255623
BrowserifyPower User HomeuiStartup21541790339155526813391
load1138927176631115911766
domContentLoaded1128921172930515741729
domInteractive261567174967
firstPaint91717617654729881765
backgroundConnect25321945554254455
firstReactRender25233022630
getState17615720615190206
initialActions1228221782
loadScripts894694147528413301475
setupStore1282751127
numNetworkReqs334155728212648728
WebpackStandard HomeuiStartup8477261101748581040
load63558691768641837
domContentLoaded62757889766635828
domInteractive15114471436
firstPaint21157925215180799
backgroundConnect22123862535
firstReactRender27175993241
getState1252641418
initialActions31153510
loadScripts62457688664633817
setupStore1152341218
numNetworkReqs86307628
WebpackPower User HomeuiStartup16101246231034316992310
load73561211601758641160
domContentLoaded69560010131308451013
domInteractive19134193141
firstPaint4089710173087001017
backgroundConnect11821478148185478
firstReactRender26233632636
getState1506417524161175
initialActions9050151550
loadScripts69059810001268331000
setupStore17648142648
numNetworkReqs300140554143493554
FirefoxBrowserifyStandard HomeuiStartup14921261189410615571662
load1267109014918013251399
domContentLoaded1266109014918013241399
domInteractive1233733252132259
firstPaint------
backgroundConnect4426164214976
firstReactRender26214952737
getState74264814
initialActions511901939
loadScripts1239107214747912941368
setupStore157248251317
numNetworkReqs86285720
BrowserifyPower User HomeuiStartup27692267396544930133965
load14101159157712515151577
domContentLoaded14091159157712515151577
domInteractive1649832464190324
firstPaint------
backgroundConnect18931884212171884
firstReactRender513194185294
getState1317218426144184
initialActions52144914
loadScripts13591122152411314601524
setupStore24657163657
numNetworkReqs24113340977310409
WebpackStandard HomeuiStartup16211454222115916472026
load1377123216628914191545
domContentLoaded1376123216618914191545
domInteractive1082946064111265
firstPaint------
backgroundConnect4520119205092
firstReactRender292274102966
getState124166231051
initialActions7120224315
loadScripts1348120215728313901510
setupStore186141201358
numNetworkReqs96317728
WebpackPower User HomeuiStartup27482229435556828954355
load15431217205126118232051
domContentLoaded15421216205126118222051
domInteractive1488833278198332
firstPaint------
backgroundConnect2183210142861991014
firstReactRender43296394863
getState1426828351190283
initialActions52215721
loadScripts14901198188222917701882
setupStore211045103145
numNetworkReqs254126576132309576
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 39 Bytes (0%)
  • ui: 643 Bytes (0.01%)
  • common: 371 Bytes (0%)

@micaelae micaelae force-pushed the swaps-sse-follow-up branch from 3b3ea00 to 6b56a74 Compare October 30, 2025 04:00
@micaelae micaelae enabled auto-merge October 30, 2025 04:01
cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 6ac296b | Date: 10/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.06s (±44ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 737ms (±41ms) 🟢 | historical mean value: 727ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 80ms (±16ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.06s 44ms 1.03s 1.38s 1.09s 1.38s
domContentLoaded 737ms 41ms 712ms 1.04s 765ms 1.04s
firstPaint 80ms 16ms 60ms 220ms 92ms 220ms
firstContentfulPaint 80ms 16ms 60ms 220ms 92ms 220ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [6ac296b]
UI Startup Metrics (1253 ± 75 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1253111214427513061376
load107495512647311291199
domContentLoaded106895212607211211194
domInteractive19147191843
firstPaint59272119643810821183
backgroundConnect2292182475233239
firstReactRender28175483344
getState208102132239
initialActions60648619
loadScripts845729104373899971
setupStore1064251016
numNetworkReqs86245624
BrowserifyPower User HomeuiStartup22911795424476933034244
load1160926184131716081841
domContentLoaded1150922182331415971823
domInteractive301582205582
firstPaint726163183151910271831
backgroundConnect286221810142265810
firstReactRender26243122631
getState20016338058191380
initialActions52194519
loadScripts899703143626712851436
setupStore1182951029
numNetworkReqs341215732196647732
WebpackStandard HomeuiStartup9277821231809551085
load682613100570688883
domContentLoaded67260699069679872
domInteractive17125991644
firstPaint22964914224210810
backgroundConnect28124983342
firstReactRender3118109113641
getState1462541719
initialActions4111258
loadScripts66960397967676859
setupStore1262641521
numNetworkReqs86296627
WebpackPower User HomeuiStartup17191251238836022092388
load73062211121498031112
domContentLoaded70061110331297391033
domInteractive201250103150
firstPaint4557210092906771009
backgroundConnect11920463141205463
firstReactRender26224862648
getState16414821218178212
initialActions11152182952
loadScripts69560910231267291023
setupStore23690264090
numNetworkReqs331190588140545588
FirefoxBrowserifyStandard HomeuiStartup1416127417118814571629
load1218107814797612621404
domContentLoaded1217107814797612611404
domInteractive1073527938123177
firstPaint------
backgroundConnect3824116144358
firstReactRender25204972546
getState74152811
initialActions317135
loadScripts1193106014577412401308
setupStore137227221215
numNetworkReqs86265726
BrowserifyPower User HomeuiStartup26372216396447628183964
load14281242196819515111968
domContentLoaded14281242196819515111968
domInteractive1608135575217355
firstPaint------
backgroundConnect2523312593034421259
firstReactRender37275484254
getState1157217125132171
initialActions16272231472
loadScripts13511206161512214551615
setupStore291059154759
numNetworkReqs266134575115336575
WebpackStandard HomeuiStartup15881413203711816411842
load1353123315337813981508
domContentLoaded1353123315327813981508
domInteractive1163538773116358
firstPaint------
backgroundConnect4424141204979
firstReactRender29227592943
getState844571018
initialActions6115618326
loadScripts1324121715107613671487
setupStore15688141353
numNetworkReqs96307728
WebpackPower User HomeuiStartup28082338347332931033473
load16361364192816218121928
domContentLoaded16351363192816318121928
domInteractive1357824552187245
firstPaint------
backgroundConnect15742446123204446
firstReactRender38305484754
getState1359721326142213
initialActions10167161667
loadScripts15861317183415117421834
setupStore30685246185
numNetworkReqs268163513110348513
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 39 Bytes (0%)
  • ui: 42 Bytes (0%)
  • common: 371 Bytes (0%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 0bbcbf1 | Date: 10/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.03s (±38ms) 🟡 | historical mean value: 1.04s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 716ms (±35ms) 🟢 | historical mean value: 727ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±11ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 38ms 1.01s 1.30s 1.04s 1.30s
domContentLoaded 716ms 35ms 697ms 976ms 729ms 976ms
firstPaint 75ms 11ms 56ms 172ms 84ms 172ms
firstContentfulPaint 75ms 11ms 56ms 172ms 84ms 172ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [0bbcbf1]
UI Startup Metrics (1283 ± 93 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1283113014819313551466
load110496312968911651252
domContentLoaded109796012878811581246
domInteractive2114124141848
firstPaint64069129145511101238
backgroundConnect2322172668235246
firstReactRender28184773344
getState21876102538
initialActions60275815
loadScripts8727341065879311024
setupStore1052441119
numNetworkReqs86245624
BrowserifyPower User HomeuiStartup22291753384567328833845
load1171918206836416552068
domContentLoaded1154914199734515861997
domInteractive291591214991
firstPaint625115171251110121712
backgroundConnect295216915173280915
firstReactRender25223122631
getState17215724121174241
initialActions53112711
loadScripts905699149529213021495
setupStore1081211112
numNetworkReqs340172691191600691
WebpackStandard HomeuiStartup8637381176758811028
load651595101077657842
domContentLoaded644590100476650837
domInteractive16125281437
firstPaint17758906172175604
backgroundConnect23135182738
firstReactRender27176193337
getState1253441421
initialActions40143512
loadScripts640587100175648834
setupStore1052741216
numNetworkReqs86296627
WebpackPower User HomeuiStartup17231442238133421732381
load74063011841659381184
domContentLoaded69561310701277451070
domInteractive19134182241
firstPaint37582944298706944
backgroundConnect11022439136122439
firstReactRender26233232832
getState16314822620168226
initialActions11155171355
loadScripts69061110571237341057
setupStore19665202165
numNetworkReqs329177598141545598
FirefoxBrowserifyStandard HomeuiStartup14781254210413015361715
load1263108615949313131439
domContentLoaded1262108615939313131439
domInteractive1243543159133253
firstPaint------
backgroundConnect4326242264689
firstReactRender25215352535
getState9421020717
initialActions711792337
loadScripts1235106814828712841408
setupStore136112121224
numNetworkReqs86325720
BrowserifyPower User HomeuiStartup27322120419567732674195
load13881159192118714681921
domContentLoaded13871159192118714681921
domInteractive1599338179199381
firstPaint------
backgroundConnect3093015084135191508
firstReactRender422885165085
getState1249224334128243
initialActions925011750
loadScripts13291138172614714071726
setupStore2881152638115
numNetworkReqs300157604145348604
WebpackStandard HomeuiStartup16251459207011916531939
load1400122317439814391613
domContentLoaded1399122317439814381613
domInteractive1193255184117384
firstPaint------
backgroundConnect462699165286
firstReactRender28237772936
getState845771014
initialActions4173737
loadScripts1369120417219514051549
setupStore14778121330
numNetworkReqs86286728
WebpackPower User HomeuiStartup27772258420953932824209
load15951310222227417762222
domContentLoaded15941310222127417752221
domInteractive1398830356166303
firstPaint------
backgroundConnect20045951262172951
firstReactRender423171115071
getState1377725344154253
initialActions713891038
loadScripts15281281195021616781950
setupStore41102325655232
numNetworkReqs287162593134388593
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 39 Bytes (0%)
  • ui: 39 Bytes (0%)
  • common: 371 Bytes (0%)

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

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 56d13db | Date: 10/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.07s (±70ms) 🟡 | historical mean value: 1.06s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 750ms (±68ms) 🟢 | historical mean value: 739ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 79ms (±12ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.07s 70ms 1.02s 1.34s 1.28s 1.34s
domContentLoaded 750ms 68ms 710ms 1.02s 955ms 1.02s
firstPaint 79ms 12ms 60ms 184ms 88ms 184ms
firstContentfulPaint 79ms 12ms 60ms 184ms 88ms 184ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [56d13db]
UI Startup Metrics (1256 ± 80 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1256109015328013161384
load108094412427611401211
domContentLoaded107290412357711341205
domInteractive19145281841
firstPaint59873123443110821168
backgroundConnect22921633613232243
firstReactRender27178692943
getState187105112035
initialActions50526513
loadScripts851682100377915989
setupStore961821013
numNetworkReqs96338632
BrowserifyPower User HomeuiStartup21991832338058828853380
load1136932168629815661686
domContentLoaded1126928168029215141680
domInteractive251552134452
firstPaint78119116904639941690
backgroundConnect282218862152266862
firstReactRender24222822628
getState18616325728205257
initialActions42133513
loadScripts884704141926211601419
setupStore1082331023
numNetworkReqs348189693196671693
WebpackStandard HomeuiStartup8797391129749181044
load65459290264659853
domContentLoaded64658589363651834
domInteractive16115481438
firstPaint22159896222205770
backgroundConnect261294112946
firstReactRender3017164163440
getState1352951523
initialActions3110257
loadScripts64258388261649823
setupStore1162131216
numNetworkReqs96358832
WebpackPower User HomeuiStartup16461393232832421182328
load71157212492067521249
domContentLoaded67055911231667201123
domInteractive19124493044
firstPaint4986111273377551127
backgroundConnect13024454151211454
firstReactRender24213122431
getState1438919723150197
initialActions81104253104
loadScripts66655611141647101114
setupStore16571162371
numNetworkReqs340189601151576601
FirefoxBrowserifyStandard HomeuiStartup1442121617868715021581
load1239105315017912991353
domContentLoaded1238105315017912991353
domInteractive1183532444129214
firstPaint------
backgroundConnect4323125214997
firstReactRender25214852642
getState84788713
initialActions316134
loadScripts1211103814487512681328
setupStore1163541214
numNetworkReqs96347731
BrowserifyPower User HomeuiStartup27742311425857531594258
load14071218173511514631735
domContentLoaded14071218173511514631735
domInteractive18510137874242378
firstPaint------
backgroundConnect21141896220305896
firstReactRender403063104763
getState1236615823139158
initialActions16198262198
loadScripts13621193165310214091653
setupStore3971353655135
numNetworkReqs273159576119419576
WebpackStandard HomeuiStartup15831415225412716161849
load1361119815948514051535
domContentLoaded1360119815948514051535
domInteractive1043338554114183
firstPaint------
backgroundConnect4323184204881
firstReactRender302275122967
getState9411612919
initialActions3132338
loadScripts1334118115368213771505
setupStore1366991325
numNetworkReqs96367728
WebpackPower User HomeuiStartup28272386353441833043534
load15751366200520217502005
domContentLoaded15751365200520317502005
domInteractive1517538076198380
firstPaint------
backgroundConnect23050694199460694
firstReactRender453185155185
getState14410422940188229
initialActions913791337
loadScripts15071336182716417091827
setupStore40111343370134
numNetworkReqs281145556116373556
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 39 Bytes (0%)
  • ui: 39 Bytes (0%)
  • common: 371 Bytes (0%)

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: a74b6de | Date: 10/30/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.07s (±72ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 748ms (±70ms) 🟢 | historical mean value: 731ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 79ms (±10ms) 🟢 | historical mean value: 77ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.07s 72ms 1.02s 1.35s 1.28s 1.35s
domContentLoaded 748ms 70ms 707ms 1.03s 960ms 1.03s
firstPaint 79ms 10ms 64ms 164ms 88ms 164ms
firstContentfulPaint 79ms 10ms 64ms 164ms 88ms 164ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [a74b6de]
UI Startup Metrics (1250 ± 76 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1250111214327612971411
load106995012547111141203
domContentLoaded106394512467011041195
domInteractive20145492047
firstPaint64390123643510941165
backgroundConnect2282132496231241
firstReactRender28175273439
getState2085582434
initialActions61567616
loadScripts841731101870884973
setupStore1064141016
numNetworkReqs96347630
BrowserifyPower User HomeuiStartup22661872347957530273479
load1174971172328715781723
domContentLoaded1165963171328715701713
domInteractive321598255298
firstPaint66587170647010531706
backgroundConnect26522251068270510
firstReactRender26243012730
getState21016738164251381
initialActions812681326
loadScripts918738141525312661415
setupStore1483481434
numNetworkReqs382194688183663688
WebpackStandard HomeuiStartup8467211304858561029
load634582112281639817
domContentLoaded626576111280632806
domInteractive15114971435
firstPaint19157809178184623
backgroundConnect23115792548
firstReactRender26175373133
getState1262841518
initialActions3018347
loadScripts623573110278630795
setupStore1042031114
numNetworkReqs96368832
WebpackPower User HomeuiStartup17021285243836922312438
load76562012852179141285
domContentLoaded71960810901618811090
domInteractive19134292842
firstPaint51110810943468841094
backgroundConnect13820472170371472
firstReactRender24224142441
getState15010717816156178
initialActions614512345
loadScripts71460610791588711079
setupStore13647111447
numNetworkReqs399217835169560835
FirefoxBrowserifyStandard HomeuiStartup14611267189810315111653
load1248109215598312991409
domContentLoaded1248109215588312991409
domInteractive1203540649136211
firstPaint------
backgroundConnect4425230255285
firstReactRender26215572649
getState74414712
initialActions4163636
loadScripts1222107515338312731382
setupStore1154751116
numNetworkReqs96286727
BrowserifyPower User HomeuiStartup29622404413543031604135
load15421311201819316022018
domContentLoaded15421310201819316012018
domInteractive17911332057219320
firstPaint------
backgroundConnect29767860219472860
firstReactRender463297155297
getState13710416816149168
initialActions19262173462
loadScripts14491223181015215451810
setupStore61101964793196
numNetworkReqs32223255175358551
WebpackStandard HomeuiStartup16161432226213316691898
load1388120817269414331571
domContentLoaded1388120717269414321570
domInteractive1133340862110245
firstPaint------
backgroundConnect4426110155377
firstReactRender312275142971
getState74263714
initialActions51669316
loadScripts1362119216949214091540
setupStore167218291228
numNetworkReqs96377829
WebpackPower User HomeuiStartup28772369411050734484110
load16501384207924919362079
domContentLoaded16501383207824919352078
domInteractive18282551128242551
firstPaint------
backgroundConnect19840596165291596
firstReactRender402957105157
getState1359420232166202
initialActions601751217
loadScripts15931341202623618322026
setupStore281066144066
numNetworkReqs295184559105405559
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 39 Bytes (0%)
  • ui: 39 Bytes (0%)
  • common: 823 Bytes (0.01%)

@micaelae micaelae added this pull request to the merge queue Oct 31, 2025
Merged via the queue into main with commit 85d5dc1 Oct 31, 2025
328 of 331 checks passed
@micaelae micaelae deleted the swaps-sse-follow-up branch October 31, 2025 01:07
@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-swaps-and-bridge Swaps and Bridge team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants