Skip to content

Conversation

jpuri
Copy link
Contributor

@jpuri jpuri commented Oct 15, 2025

Description

Capturing DAPP Swap metrics

Changelog

CHANGELOG entry:

Related issues

Fixes: https://github.com/MetaMask/MetaMask-planning/issues/5974

Manual testing steps

  1. Submit a swap
  2. Check that metrics are captured

Screenshots/Recordings

NA

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

Adds a Uniswap-origin swap comparison flow that parses tx data, fetches quotes/rates, computes USD metrics, and records them; introduces shared ERC20 decimals util and exposes background quote fetching.

  • Confirmations UI:
    • Add DappSwapComparisonBanner (no-UI) gated to origin === "https://app.uniswap.org" in base-transaction-info.
    • New hook useDappSwapComparisonInfo to parse swap tx data, fetch quotes, compute USD values, and update MetaMetrics (dapp_swap_comparison props).
  • Utils:
    • Introduce dapp-swap-comparison-utils (getDataFromSwap, getBestQuote, getTokenValueFromRecord) with ABI parsing.
    • Promote fetchAllErc20Decimals to shared ui/pages/confirmations/utils/token.ts; update useBalanceChanges to use it.
  • Background/Store:
    • Expose bridge FETCH_QUOTES via controller messenger and add fetchQuotes Redux action.
  • Tests:
    • Add tests for swap utils, hook, banner, and token decimals helper.

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

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 metamaskbot added the team-confirmations Push issues to confirmations team label Oct 15, 2025
@metamaskbot
Copy link
Collaborator

metamaskbot commented Oct 15, 2025

✨ Files requiring CODEOWNER review ✨

@MetaMask/confirmations (10 files, +888 -18)
  • 📁 ui/
    • 📁 pages/
      • 📁 confirmations/
        • 📁 components/
          • 📁 confirm/
            • 📁 info/
              • 📁 base-transaction-info/
                • 📄 base-transaction-info.tsx +6 -0
              • 📁 hooks/
                • 📄 useDappSwapComparisonInfo.test.ts +286 -0
                • 📄 useDappSwapComparisonInfo.ts +210 -0
              • 📁 shared/
                • 📁 dapp-swap-comparison-banner/
                  • 📄 dapp-swap-comparison-banner.test.tsx +31 -0
                  • 📄 dapp-swap-comparison-banner.tsx +11 -0
                • 📄 dapp-swap-comparison-utils.test.ts +130 -0
                • 📄 dapp-swap-comparison-utils.ts +167 -0
          • 📁 simulation-details/
            • 📄 useBalanceChanges.ts +4 -17
        • 📁 utils/
          • 📄 token.test.ts +22 -1
          • 📄 token.ts +21 -0

return;
}

const commands = parsedTransactionData.args.commands as string;
Copy link
Member

Choose a reason for hiding this comment

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

However we extract the necessary data, should all the Uniswap logic remain encapsulated in app/scripts/lib/transaction/decode/uniswap.ts?

Maybe with a new getUniswapSwapData function?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is not standard parsing of abi data and will not be re-used I think. Additionally putting data in uniswap.ts will then need for a controller action to be called from the client.

quotes[selectedQuoteIndex].quote.minDestTokenAmount,
10,
)
.minus(new Numeric(amountMin, 10))
Copy link
Member

Choose a reason for hiding this comment

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

Is it best we provide slippage in our requests to fetchQuotes to be explicit?

Maybe we could control via feature flag?

As that will influence our minimums.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@bschorchit : do you have a suggestion for slippage amount ?

Choose a reason for hiding this comment

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

If we don't pass a slippage, does it uses the our swaps defaults?
I believe they will be in a better position to define the ideal slippage than us as ideal slippage varies based on the token pair being swapped.
A feature flag for this doesn't seem ideal as we would have to accomodate logic for specific token pairs there as well.

percentage_change_in_token_amount: percentageChangeInTokenAmount,
percentage_change_in_token_min_amount:
percentageChangeInTokenMinAmount,
percentage_change_in_gas: percentageChangeInGas,
Copy link
Member

Choose a reason for hiding this comment

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

Are percentages sufficient for the metrics?

If we got loads of positive results, of higher increases, they may only amount to pennies, so should we also calculate fiat values for the total gas, amount changes, and total difference?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@bschorchit : can you please detail what all field will be useful in metrics.

Copy link

@bschorchit bschorchit Oct 15, 2025

Choose a reason for hiding this comment

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

We should get the usd values instead of percentages. We can calculate percentages later within Mixpanel.
Note: these should be usd values, not user preferred fiat values.

Properties proposed are the following:
swap_dapp_from_token_simulated_value_usd - $ usd simulated value for the sending token for the Uniswap swap
swap_dapp_to_token_simulated_value_usd - $ usd simulated value for the receiving token for the Uniswap swap
swap_dapp_minimum_received_value_usd - $ usd minimum value received for the receiving token for the Uniswap swap
swap_dapp_network_fee_usd - $ usd value for the total cost of that transaction. If it's a batch transaction that includes approve transactions, those should accounted too as part of the network fee.

swap_mm_from_token_simulated_value_usd - $ usd simulated value for the sending token for the MM swap
swap_mm_to_token_simulated_value_usd - $ usd simulated value for the receiving token for the MM swap
swap_mm_minimum_received_value_usd - $ usd minimum value received for the receiving token for the MM swap
swap_mm_network_fee - $ usd value for the total cost of that transaction. It should account for the approve transaction as well, if applicable and possible.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

PR is updated

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Screenshot 2025-10-16 at 4 14 18 PM

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: c50cf29 | Date: 10/15/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±71ms) 🟡 | historical mean value: 1.06s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 730ms (±69ms) 🟢 | historical mean value: 741ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 76ms (±12ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 71ms 1.01s 1.31s 1.29s 1.31s
domContentLoaded 730ms 69ms 696ms 994ms 953ms 994ms
firstPaint 76ms 12ms 60ms 172ms 84ms 172ms
firstContentfulPaint 76ms 12ms 60ms 172ms 84ms 172ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [c50cf29]
UI Startup Metrics (1137 ± 83 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1137100114588311781307
load9648691191719931098
domContentLoaded9548291181729871092
domInteractive18134981739
firstPaint68314212723709691090
backgroundConnect20218734319204230
firstReactRender27164983145
getState1453471728
initialActions60468631
loadScripts76264498271788895
setupStore1064351020
WebpackHomeuiStartup857738112262877979
load64559794165648814
domContentLoaded63659093264641806
domInteractive16126081537
firstPaint18756911174204604
backgroundConnect22114572734
firstReactRender27174073335
getState932131115
initialActions308247
loadScripts63458892162639795
setupStore1051931214
FirefoxBrowserifyHomeuiStartup14331234205913815001703
load1197103714729112761353
domContentLoaded1196103714729112761353
domInteractive100343235397226
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect32207183847
firstReactRender29244743038
getState95859828
initialActions6119219412
loadScripts1176102014468912561331
setupStore136147171043
WebpackHomeuiStartup1522134819029915711746
load1305117615007913581476
domContentLoaded1305117615007913581476
domInteractive92303665497198
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect321893133654
firstReactRender3426123143374
getState83454814
initialActions41566311
loadScripts1284116014767813371459
setupStore146136191148
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 1.58 KiB (0.03%)
  • ui: 3.86 KiB (0.06%)
  • common: 8.17 KiB (0.1%)

this.controllerMessenger,
`${BRIDGE_CONTROLLER_NAME}:${BridgeBackgroundAction.TRACK_METAMETRICS_EVENT}`,
),
[BridgeBackgroundAction.FETCH_QUOTES]: this.controllerMessenger.call.bind(
Copy link
Member

Choose a reason for hiding this comment

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

Ideally this would go in the bridge-controller-init file in the api property.

@jpuri jpuri changed the title feat: Adding code to capture metrics for uniswap shield feat: Adding code to capture metrics for swaps Oct 15, 2025
@jpuri jpuri changed the title feat: Adding code to capture metrics for swaps feat: Adding code to capture metrics for dapp swaps Oct 15, 2025
@jpuri jpuri force-pushed the uni_shield branch 2 times, most recently from 02c4771 to c060e20 Compare October 15, 2025 12:22
@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: c6e3040 | Date: 10/15/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.07s (±74ms) 🟡 | historical mean value: 1.05s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 752ms (±70ms) 🟢 | historical mean value: 740ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±12ms) 🟢 | historical mean value: 78ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.07s 74ms 1.01s 1.36s 1.31s 1.36s
domContentLoaded 752ms 70ms 705ms 1.04s 966ms 1.04s
firstPaint 78ms 12ms 60ms 188ms 84ms 188ms
firstContentfulPaint 78ms 12ms 60ms 188ms 84ms 188ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [c6e3040]
UI Startup Metrics (1243 ± 75 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1243112715177512821399
load106794212486811071235
domContentLoaded106093812426711021228
domInteractive18146191738
firstPaint66678124944010741186
backgroundConnect2522382787256268
firstReactRender26177382940
getState15592101731
initialActions50426618
loadScripts814691100266849982
setupStore1062231018
WebpackHomeuiStartup8427211090738551007
load63458392272639839
domContentLoaded62757890570628832
domInteractive15114581435
firstPaint16655925164181595
backgroundConnect21105172635
firstReactRender281791123255
getState931831215
initialActions309245
loadScripts62457689568626822
setupStore1051531214
FirefoxBrowserifyHomeuiStartup14301256183513714881742
load1194107015349512661365
domContentLoaded1194106915339512651365
domInteractive98333095293230
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3420103143767
firstReactRender30265143037
getState12515521819
initialActions629111423
loadScripts1173105215169312431343
setupStore136141171057
WebpackHomeuiStartup15611367205313515911891
load1334119216278913891504
domContentLoaded1334119216278913881504
domInteractive993143059105184
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3719108174183
firstReactRender32267683441
getState11415819843
initialActions41355312
loadScripts1309117215938613611480
setupStore145137201248
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 1.81 KiB (0.04%)
  • ui: 6.15 KiB (0.1%)
  • common: 9.41 KiB (0.11%)

}
});

return selectedQuoteIndex;
Copy link
Contributor Author

Choose a reason for hiding this comment

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

use use the quote with highest value of minDestTokenAmount

@metamaskbot
Copy link
Collaborator

Builds ready [c7f4536]
UI Startup Metrics (1230 ± 74 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1230109616637412671332
load105895615117110911158
domContentLoaded105195015077110851152
domInteractive17149081732
firstPaint66790117742310751141
backgroundConnect25123538415254267
firstReactRender25185962637
getState1453561827
initialActions50487617
loadScripts807712126971840901
setupStore1062941016
WebpackHomeuiStartup8297021297908381041
load626566114789623883
domContentLoaded619562113988617867
domInteractive15114771335
firstPaint198531142214189721
backgroundConnect20103462530
firstReactRender2816214203145
getState931931117
initialActions308246
loadScripts616560112985616857
setupStore951431114
FirefoxBrowserifyHomeuiStartup15311342208312915761758
load1277114215338613391435
domContentLoaded1277114115328613391434
domInteractive1043531858104259
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3725125163757
firstReactRender33285643440
getState1067681021
initialActions8217722529
loadScripts1253112315108513151412
setupStore167228241243
WebpackHomeuiStartup15571383195511915921879
load1330118815588013761495
domContentLoaded1330118815588013751494
domInteractive96303675998223
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3721100154278
firstReactRender33267893443
getState105132151018
initialActions41424311
loadScripts1306117215317813571475
setupStore146186231037
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 230 Bytes (0.01%)
  • ui: 6.08 KiB (0.09%)
  • common: 106 Bytes (0%)

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: 54ce7ff | Date: 10/16/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±71ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 730ms (±69ms) 🟢 | historical mean value: 737ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±13ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 71ms 1.00s 1.32s 1.28s 1.32s
domContentLoaded 730ms 69ms 692ms 1.01s 957ms 1.01s
firstPaint 75ms 13ms 60ms 188ms 84ms 188ms
firstContentfulPaint 75ms 13ms 60ms 188ms 84ms 188ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [54ce7ff]
UI Startup Metrics (1231 ± 63 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1231111314726312591315
load106194512925710891141
domContentLoaded105593912805610831134
domInteractive1813135131740
firstPaint765165131141210871139
backgroundConnect2502382818254272
firstReactRender24175162637
getState16596121832
initialActions60598614
loadScripts811702103555837889
setupStore1052531117
WebpackHomeuiStartup819704108559835947
load62157392461627785
domContentLoaded61356991460622779
domInteractive15114981436
firstPaint20355751175196592
backgroundConnect21114362432
firstReactRender26166283133
getState931731114
initialActions308246
loadScripts61056790358620768
setupStore952531113
FirefoxBrowserifyHomeuiStartup14581281192013415381743
load1232109715509513021390
domContentLoaded1231109615499513021390
domInteractive1043442964103259
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3421116123847
firstReactRender30256353137
getState94445817
initialActions52426419
loadScripts1209107815249112811366
setupStore146136181154
WebpackHomeuiStartup15841369207813116341916
load1349119516179414031540
domContentLoaded1349119516179414031540
domInteractive98293846199203
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3721116184189
firstReactRender342787113471
getState15419032954
initialActions41435413
loadScripts1325117715969113791513
setupStore146154221148
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 230 Bytes (0.01%)
  • ui: 6.24 KiB (0.1%)
  • common: 106 Bytes (0%)

cursor[bot]

This comment was marked as outdated.

@metamaskbot
Copy link
Collaborator

📊 Page Load Benchmark Results

Current Commit: e8c1115 | Date: 10/16/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±88ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 730ms (±84ms) 🟢 | historical mean value: 737ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 85ms (±124ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 88ms 997ms 1.60s 1.26s 1.60s
domContentLoaded 730ms 84ms 690ms 1.26s 932ms 1.26s
firstPaint 85ms 124ms 56ms 1.32s 88ms 1.32s
firstContentfulPaint 85ms 124ms 56ms 1.32s 88ms 1.32s
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [e8c1115]
UI Startup Metrics (1208 ± 82 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1208108917698212401325
load104294315227410701148
domContentLoaded103590415177510661145
domInteractive1713118131535
firstPaint67868116441210551140
backgroundConnect24823432911251259
firstReactRender25168992536
getState1654882031
initialActions607511519
loadScripts794663126373826903
setupStore1063751016
WebpackHomeuiStartup880758110964906995
load65760194260668811
domContentLoaded64959593259662795
domInteractive171258101546
firstPaint19958890193182670
backgroundConnect241180102838
firstReactRender291773103442
getState1041731215
initialActions3010247
loadScripts64659392057660783
setupStore1161831315
FirefoxBrowserifyHomeuiStartup15071306205915915621925
load12671114168410813321459
domContentLoaded12661113168410813311458
domInteractive1083443972101309
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3821182234078
firstReactRender30264733137
getState11321322925
initialActions7213619416
loadScripts12421094165810513101425
setupStore135129161052
WebpackHomeuiStartup16171393502135916361842
load13891184472834714271526
domContentLoaded13891183472834714261526
domInteractive99334056395247
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect621925232484266
firstReactRender3426101113544
getState94576914
initialActions7116722313
loadScripts13401169220912213981499
setupStore15670151253
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 230 Bytes (0.01%)
  • ui: 6.27 KiB (0.1%)
  • common: 106 Bytes (0%)

}
const amount = word?.replace(/^0+/u, '') ?? '';
return addHexPrefix(amount);
};
Copy link

Choose a reason for hiding this comment

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

Bug: Hex Conversion Error for Zero Input

The wordToAmount function returns "0x" when the input word is all zeros. This happens because removing all leading zeros leaves an empty string, which addHexPrefix converts to "0x". This "0x" value is not a valid hex representation for zero, potentially causing errors in BigNumber calculations or numeric parsing downstream, where "0x0" is expected.

Fix in Cursor Fix in Web

@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: 7333da1 | Date: 10/17/2025

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±74ms) 🟡 | historical mean value: 1.05s ⬇️ (historical data)
  • domContentLoaded-> current mean value: 734ms (±71ms) 🟢 | historical mean value: 740ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 78ms (±12ms) 🟢 | historical mean value: 78ms ⬆️ (historical data)
📈 Detailed Results
Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 74ms 1.00s 1.35s 1.29s 1.35s
domContentLoaded 734ms 71ms 697ms 1.03s 980ms 1.03s
firstPaint 78ms 12ms 64ms 172ms 96ms 172ms
firstContentfulPaint 78ms 12ms 64ms 172ms 96ms 172ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms

Results generated automatically by MetaMask CI

@metamaskbot
Copy link
Collaborator

Builds ready [7333da1]
UI Startup Metrics (1230 ± 67 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1230110014266712711375
load105996712685911021164
domContentLoaded105396312615810881158
domInteractive1913144171640
firstPaint72685122441610721153
backgroundConnect2492372646253259
firstReactRender25175372738
getState16692101830
initialActions60719619
loadScripts809719101958844916
setupStore963031016
WebpackHomeuiStartup8617331119668801000
load64659295067655835
domContentLoaded63858593866644827
domInteractive16114771536
firstPaint18857943204176755
backgroundConnect23104972834
firstReactRender291796133444
getState1041931215
initialActions3022357
loadScripts63558492764642816
setupStore1052231316
FirefoxBrowserifyHomeuiStartup14611280217914115171679
load1222109516879312751381
domContentLoaded1222109516869312751380
domInteractive1023244561100255
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3821250263858
firstReactRender31265753241
getState11520921933
initialActions6113514413
loadScripts1197107814618212481360
setupStore13665121149
WebpackHomeuiStartup15861367211713416181909
load1362120417209514071560
domContentLoaded1361120417199514061559
domInteractive1033236452104205
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect3919292304275
firstReactRender29217593139
getState9412913814
initialActions41445413
loadScripts1334118816579013741533
setupStore155240291034
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 230 Bytes (0%)
  • ui: 6.27 KiB (0.1%)
  • common: 106 Bytes (0%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed size-L team-confirmations Push issues to confirmations team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants