Skip to content

Conversation

@vinistevam
Copy link
Contributor

@vinistevam vinistevam commented Jul 17, 2025

Description

This PR aims to fix a infinity loading on spending cap confirmation when a dapp initiate a confirmation in X chain and user selected chain is Y.

Open in GitHub Codespaces

Changelog

CHANGELOG entry: Fixed infinite loading on spending cap when selected chain differs from dapp

Related issues

Fixes: #34298

Manual testing steps

  1. Log into Metamask Card site (https://card.metamask.io)
  2. Ensure extension network is set to Ethereum mainnet
  3. Prompt a spend approval for Linea by "managing limit".
  4. Sign "sign in" request.

Screenshots/Recordings

speding-cap.webm

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.

@vinistevam vinistevam added the team-confirmations Push issues to confirmations team label Jul 17, 2025
@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

✨ Files requiring CODEOWNER review ✨

@MetaMask/confirmations (1 files, +7 -2)
  • 📁 ui/
    • 📁 pages/
      • 📁 confirmations/
        • 📁 hooks/
          • 📄 useAssetDetails.js +7 -2

@metamaskbot
Copy link
Collaborator

Builds ready [09a2f59]
UI Startup Metrics (1215 ± 61 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1215109014346112501324
load104295012245510711138
domContentLoaded103694112085510661131
domInteractive18144781641
firstPaint649151121442810601134
backgroundConnect2512402776255262
firstReactRender18152831926
getState10378131025
initialActions20184213
loadScripts79169795555820881
setupStore74122712
WebpackHomeuiStartup22911754391625823862666
load17101254346225018132006
domContentLoaded17031248345825018091995
domInteractive201399161559
firstPaint1566335573172309
backgroundConnect3511390523153
firstReactRender26189418120383402
getState1146271223
initialActions13228139830
loadScripts16961244345624918071983
setupStore206319411934
FirefoxBrowserifyHomeuiStartup14141201227416814451788
load1218105514839712621421
domContentLoaded1217105514839712621420
domInteractive1163649383112315
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3415881872461
firstReactRender24203942533
getState12223332661
initialActions40719225
loadScripts1195103914639612421402
setupStore846010636
WebpackHomeuiStartup17781505280723718632252
load14821248194017515741871
domContentLoaded14821248193917515741871
domInteractive112335049395341
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect271687132859
firstReactRender59449076371
getState10362101333
initialActions8018420425
loadScripts14601226191317315561850
setupStore2352835410233
Benchmark value 252 exceeds gate value 10 for chrome browserify home mean backgroundConnect
Benchmark value 3 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 262 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 13 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 2291 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 261 exceeds gate value 235 for chrome webpack home mean firstReactRender
Benchmark value 14 exceeds gate value 7 for chrome webpack home mean initialActions
Benchmark value 2667 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 59 exceeds gate value 57 for chrome webpack home p95 domInteractive
Benchmark value 402 exceeds gate value 370 for chrome webpack home p95 firstReactRender
Benchmark value 30 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 1983 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 1415 exceeds gate value 1405 for firefox browserify home mean uiStartup
Benchmark value 117 exceeds gate value 110 for firefox browserify home mean domInteractive
Benchmark value 34 exceeds gate value 25 for firefox browserify home mean backgroundConnect
Benchmark value 13 exceeds gate value 11 for firefox browserify home mean getState
Benchmark value 5 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 1788 exceeds gate value 1660 for firefox browserify home p95 uiStartup
Benchmark value 315 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 61 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 25 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 36 exceeds gate value 27 for firefox browserify home p95 setupStore
Benchmark value 1778 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1482 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1482 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 112 exceeds gate value 100 for firefox webpack home mean domInteractive
Benchmark value 28 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 59 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 8 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1461 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 23 exceeds gate value 13 for firefox webpack home mean setupStore
Benchmark value 2252 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1871 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1871 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 341 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 59 exceeds gate value 49 for firefox webpack home p95 backgroundConnect
Benchmark value 71 exceeds gate value 50 for firefox webpack home p95 firstReactRender
Benchmark value 33 exceeds gate value 32 for firefox webpack home p95 getState
Benchmark value 25 exceeds gate value 2 for firefox webpack home p95 initialActions
Benchmark value 1850 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Benchmark value 233 exceeds gate value 28 for firefox webpack home p95 setupStore
Sum of mean exceeds: 928ms | Sum of p95 exceeds: 2259.8ms
Sum of all benchmark exceeds: 3187.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 43 Bytes (0%)
  • ui: 27 Bytes (0%)
  • common: 348 Bytes (0%)

@vinistevam vinistevam marked this pull request as ready for review July 17, 2025 12:41
@vinistevam vinistevam requested a review from a team as a code owner July 17, 2025 12:41
cursor[bot]

This comment was marked as outdated.

@DDDDDanica DDDDDanica changed the title fix: infinite loading on spending cap when selected chain differs from dapp fix: infinite loading on spending cap when selected chain differs from dapp cp-12.22.3 Jul 18, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [ebb6f5c]
UI Startup Metrics (1258 ± 63 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1258111915696312951362
load107696414006211101168
domContentLoaded106794613946511061161
domInteractive18136081740
firstPaint67078116042710791136
backgroundConnect21319633314213232
firstReactRender22135682339
getState1046491228
initialActions30284313
loadScripts863741118463900955
setupStore74243815
WebpackHomeuiStartup23481954271413324232521
load18531412221116119432092
domContentLoaded18461404219916019382085
domInteractive2112130231587
firstPaint175642120204171318
backgroundConnect3511296513050
firstReactRender1878842073214347
getState1054861219
initialActions72447627
loadScripts18411399218716019362073
setupStore1363551523
FirefoxBrowserifyHomeuiStartup15251335189713316101818
load1316116316519313761478
domContentLoaded1316116216509313761478
domInteractive1163749476115325
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect271480122752
firstReactRender292167103059
getState152287341358
initialActions508412223
loadScripts1293114716309313541453
setupStore1036410828
WebpackHomeuiStartup17551500351926117932220
load14811282329122415351772
domContentLoaded14811282329122415341772
domInteractive99343836492311
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3016100153262
firstReactRender51408475563
getState11344101538
initialActions71157171223
loadScripts14581261326622215131743
setupStore164233351538
Benchmark value 1259 exceeds gate value 1234 for chrome browserify home mean uiStartup
Benchmark value 1077 exceeds gate value 1070 for chrome browserify home mean load
Benchmark value 1067 exceeds gate value 1061 for chrome browserify home mean domContentLoaded
Benchmark value 213 exceeds gate value 10 for chrome browserify home mean backgroundConnect
Benchmark value 3 exceeds gate value 1 for chrome browserify home mean initialActions
Benchmark value 863 exceeds gate value 830 for chrome browserify home mean loadScripts
Benchmark value 232 exceeds gate value 18 for chrome browserify home p95 backgroundConnect
Benchmark value 13 exceeds gate value 1.2 for chrome browserify home p95 initialActions
Benchmark value 955 exceeds gate value 940 for chrome browserify home p95 loadScripts
Benchmark value 2349 exceeds gate value 2192 for chrome webpack home mean uiStartup
Benchmark value 1853 exceeds gate value 1711 for chrome webpack home mean load
Benchmark value 1846 exceeds gate value 1704 for chrome webpack home mean domContentLoaded
Benchmark value 1842 exceeds gate value 1699 for chrome webpack home mean loadScripts
Benchmark value 2522 exceeds gate value 2454 for chrome webpack home p95 uiStartup
Benchmark value 2092 exceeds gate value 2030 for chrome webpack home p95 load
Benchmark value 2085 exceeds gate value 2005 for chrome webpack home p95 domContentLoaded
Benchmark value 87 exceeds gate value 57 for chrome webpack home p95 domInteractive
Benchmark value 27 exceeds gate value 7 for chrome webpack home p95 initialActions
Benchmark value 2073 exceeds gate value 1970 for chrome webpack home p95 loadScripts
Benchmark value 1526 exceeds gate value 1405 for firefox browserify home mean uiStartup
Benchmark value 1317 exceeds gate value 1245 for firefox browserify home mean load
Benchmark value 1316 exceeds gate value 1239 for firefox browserify home mean domContentLoaded
Benchmark value 117 exceeds gate value 110 for firefox browserify home mean domInteractive
Benchmark value 28 exceeds gate value 25 for firefox browserify home mean backgroundConnect
Benchmark value 30 exceeds gate value 25 for firefox browserify home mean firstReactRender
Benchmark value 15 exceeds gate value 11 for firefox browserify home mean getState
Benchmark value 5 exceeds gate value 1 for firefox browserify home mean initialActions
Benchmark value 1294 exceeds gate value 1230 for firefox browserify home mean loadScripts
Benchmark value 10 exceeds gate value 9 for firefox browserify home mean setupStore
Benchmark value 1818 exceeds gate value 1660 for firefox browserify home p95 uiStartup
Benchmark value 325 exceeds gate value 195 for firefox browserify home p95 domInteractive
Benchmark value 59 exceeds gate value 55 for firefox browserify home p95 firstReactRender
Benchmark value 58 exceeds gate value 24 for firefox browserify home p95 getState
Benchmark value 23 exceeds gate value 2 for firefox browserify home p95 initialActions
Benchmark value 28 exceeds gate value 27 for firefox browserify home p95 setupStore
Benchmark value 1755 exceeds gate value 1615 for firefox webpack home mean uiStartup
Benchmark value 1481 exceeds gate value 1380 for firefox webpack home mean load
Benchmark value 1481 exceeds gate value 1380 for firefox webpack home mean domContentLoaded
Benchmark value 30 exceeds gate value 26 for firefox webpack home mean backgroundConnect
Benchmark value 52 exceeds gate value 38 for firefox webpack home mean firstReactRender
Benchmark value 7 exceeds gate value 1 for firefox webpack home mean initialActions
Benchmark value 1458 exceeds gate value 1360 for firefox webpack home mean loadScripts
Benchmark value 16 exceeds gate value 13 for firefox webpack home mean setupStore
Benchmark value 2220 exceeds gate value 1935 for firefox webpack home p95 uiStartup
Benchmark value 1772 exceeds gate value 1660 for firefox webpack home p95 load
Benchmark value 1772 exceeds gate value 1660 for firefox webpack home p95 domContentLoaded
Benchmark value 311 exceeds gate value 156 for firefox webpack home p95 domInteractive
Benchmark value 62 exceeds gate value 49 for firefox webpack home p95 backgroundConnect
Benchmark value 63 exceeds gate value 50 for firefox webpack home p95 firstReactRender
Benchmark value 38 exceeds gate value 32 for firefox webpack home p95 getState
Benchmark value 23 exceeds gate value 2 for firefox webpack home p95 initialActions
Benchmark value 1743 exceeds gate value 1630 for firefox webpack home p95 loadScripts
Benchmark value 38 exceeds gate value 28 for firefox webpack home p95 setupStore
Sum of mean exceeds: 1685ms | Sum of p95 exceeds: 1791.8ms
Sum of all benchmark exceeds: 3476.8ms

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 38 Bytes (0%)
  • ui: 27 Bytes (0%)
  • common: 269 Bytes (0%)

@vinistevam vinistevam added this pull request to the merge queue Jul 21, 2025
Merged via the queue into main with commit 2fb3782 Jul 21, 2025
145 checks passed
@vinistevam vinistevam deleted the fix/spending-cap-infinity-loading-different-chain branch July 21, 2025 12:40
@github-actions github-actions bot locked and limited conversation to collaborators Jul 21, 2025
@metamaskbot metamaskbot added the release-13.1.0 Issue or pull request that will be included in release 13.1.0 label Jul 21, 2025
@gauthierpetetin gauthierpetetin added release-12.22.3 Issue or pull request that will be included in release 12.22.3 and removed release-13.1.0 Issue or pull request that will be included in release 13.1.0 labels Aug 5, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-12.22.3 Issue or pull request that will be included in release 12.22.3 team-confirmations Push issues to confirmations team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Dapp-prompted tx to approve spend fails to render UI when currently active network is different

6 participants