Skip to content

feat(designer-mode): add dev-only in-app visual inspector#43611

Open
andrepimenta wants to merge 4 commits into
mainfrom
feat/designer-mode-extension
Open

feat(designer-mode): add dev-only in-app visual inspector#43611
andrepimenta wants to merge 4 commits into
mainfrom
feat/designer-mode-extension

Conversation

@andrepimenta

@andrepimenta andrepimenta commented Jun 16, 2026

Copy link
Copy Markdown
Member

Description

Adds Designer Mode, a dev-only in-app visual inspector for the extension UI.
It lets a designer point at any component in the running extension, see its
component name / source file / computed styles, tweak values live, and send a
plain-language change request to an AI coding agent that applies it to the
source code.

Reason for the change: designers currently can't easily map what they see in
the running extension back to the components/styles in code, and hand-off
requires manual screenshots and back-and-forth.

Solution: a self-contained Shadow-DOM inspector (panel + hover/select
overlay + toggle) that reads component info from React fibers and talks to a
local relay (localhost:3334) consumed by the designer-mode agent skill. The
whole feature is gated behind the DESIGNER_MODE build flag and is
dead-code-eliminated when off, so it never ships in normal or production
builds
. No manifest/CSP changes were required.

Includes:

  • Vendored core under ui/helpers/designer-mode/core (panel, overlay, toggle, relay client)
  • A React fiber inspector adapter (react-adapter.ts)
  • Gated init in ui/index.js, with the flag wired through builds.yml and .metamaskrc.dist
  • docs/designer-mode.md covering setup for both developers and designers

Changelog

CHANGELOG entry: null

Manual testing steps

  1. Add DESIGNER_MODE=true to your .metamaskrc.
  2. (For the full edit→apply loop) run yarn skills to sync the designer-mode skill, then start it in your AI assistant and say "enter design mode".
  3. Fully restart the build: yarn start (the flag is read at startup).
  4. Load the unpacked extension (dist/chrome) in Chrome and open the expanded view (chrome-extension://<id>/home.html).
  5. Confirm the floating 🎨 button appears bottom-right and the console logs [designer-mode] inspector active — press Ctrl+Shift+D.
  6. Press Ctrl+Shift+D (or click 🎨) to open the inspector. Hover/click a component and verify the panel shows its name, source file, and computed styles.
  7. Edit a value inline and confirm the change previews live in the UI.
  8. With the relay/skill running, send a change request and verify the agent applies it and replies in the panel; with it off, verify the panel shows "Not connected" and Send is disabled.
  9. Regression: start a normal build without DESIGNER_MODE=true and verify no 🎨 button appears and no designer-mode code is present in the bundle.

Screenshots/Recordings

Before

After

Designer.Mode.Extension.mov

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.

Add Designer Mode, a dev-only visual inspector for the extension UI gated
behind the DESIGNER_MODE build flag (dead-code-eliminated when off, so it
never ships in normal builds). It lets designers inspect any component,
edit styles live, and send plain-language change requests to an AI coding
agent that applies them to source.

- Vendored core under ui/helpers/designer-mode/core (Shadow-DOM panel,
  hover/select overlay, toggle, and localhost relay client)
- React fiber inspector adapter (react-adapter.ts)
- Gated init in ui/index.js and the DESIGNER_MODE flag wired through
  builds.yml and .metamaskrc.dist
- docs/designer-mode.md covering setup for both developers and designers

Co-authored-by: Cursor <cursoragent@cursor.com>
@mm-token-exchange-service

Copy link
Copy Markdown
Builds ready [4936d98]
Deprecated Browserify fallback builds
⚡ Performance Benchmarks (Total: 🟢 19 pass · 🟡 6 warn · 🔴 0 fail)

Baseline (latest main): dd70ee8 | Date: 6/16/2026 | Pipeline: 27619678529 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-webpackfirefox-webpack
loadNewAccount
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
confirmTx
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
bridgeUserActions
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: +73%
  • loadNewAccount/total: +73%
  • bridgeUserActions/tbt: -14%
  • bridgeUserActions/inp: -21%
  • loadNewAccount/load_new_account: +107%
  • loadNewAccount/total: +107%
  • loadNewAccount/lcp: +1118%
  • confirmTx/confirm_tx: +14%
  • confirmTx/longTaskCount: -100%
  • confirmTx/longTaskTotalDuration: -100%
  • confirmTx/longTaskMaxDuration: -100%
  • confirmTx/tbt: -100%
  • confirmTx/total: +14%
  • confirmTx/inp: -15%
  • confirmTx/fcp: -46%
  • confirmTx/lcp: +1173%
  • bridgeUserActions/bridge_load_page: +97%
  • bridgeUserActions/bridge_load_asset_picker: +56%
  • bridgeUserActions/longTaskCount: -100%
  • bridgeUserActions/longTaskTotalDuration: -100%
  • bridgeUserActions/longTaskMaxDuration: -100%
  • bridgeUserActions/tbt: -100%
  • bridgeUserActions/total: +19%
  • bridgeUserActions/fcp: -45%
  • bridgeUserActions/lcp: +1274%
Startup Benchmarks · Samples: 100
Benchmarkchrome-webpackfirefox-webpack
startupStandardHome
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
startupPowerUserHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/cls: -100%
  • startupPowerUserHome/numNetworkReqs: -10%
  • startupStandardHome/uiStartup: -31%
  • startupStandardHome/load: -32%
  • startupStandardHome/domContentLoaded: -32%
  • startupStandardHome/domInteractive: -46%
  • startupStandardHome/backgroundConnect: -21%
  • startupStandardHome/firstReactRender: -34%
  • startupStandardHome/initialActions: -44%
  • startupStandardHome/loadScripts: -32%
  • startupStandardHome/setupStore: -24%
  • startupStandardHome/inp: -29%
  • startupStandardHome/fcp: -44%
  • startupStandardHome/lcp: -31%
  • startupPowerUserHome/backgroundConnect: +33%
  • startupPowerUserHome/setupStore: +24%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🔴 startupPowerUserHome/INP: p75 520ms
  • 🟡 startupPowerUserHome/INP: p75 208ms
  • 🟡 startupPowerUserHome/LCP: p75 3.0s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-webpackfirefox-webpack
onboardingImportWallet
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
onboardingNewWallet
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
assetDetails
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
solanaAssetDetails
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
importSrpHome
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
sendTransactions
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
swap
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/srpButtonToSrpForm: -22%
  • onboardingImportWallet/confirmSrpToPwForm: -20%
  • onboardingImportWallet/pwFormToMetricsScreen: -21%
  • onboardingImportWallet/metricsToWalletReadyScreen: -23%
  • onboardingImportWallet/doneButtonToHomeScreen: -89%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: -98%
  • onboardingImportWallet/longTaskCount: -77%
  • onboardingImportWallet/longTaskTotalDuration: -95%
  • onboardingImportWallet/longTaskMaxDuration: -92%
  • onboardingImportWallet/tbt: -99%
  • onboardingImportWallet/total: -88%
  • onboardingNewWallet/skipBackupToMetricsScreen: +13%
  • onboardingNewWallet/doneButtonToAssetList: -33%
  • onboardingNewWallet/longTaskCount: -55%
  • onboardingNewWallet/longTaskTotalDuration: -52%
  • onboardingNewWallet/longTaskMaxDuration: -19%
  • onboardingNewWallet/tbt: -49%
  • onboardingNewWallet/total: -28%
  • solanaAssetDetails/assetClickToPriceChart: -70%
  • solanaAssetDetails/longTaskCount: -100%
  • solanaAssetDetails/longTaskTotalDuration: -100%
  • solanaAssetDetails/longTaskMaxDuration: -100%
  • solanaAssetDetails/tbt: -100%
  • solanaAssetDetails/total: -70%
  • solanaAssetDetails/inp: +21%
  • solanaAssetDetails/cls: -91%
  • importSrpHome/loginToHomeScreen: -31%
  • importSrpHome/openAccountMenuAfterLogin: +68%
  • importSrpHome/homeAfterImportWithNewWallet: -41%
  • importSrpHome/longTaskCount: -42%
  • importSrpHome/longTaskTotalDuration: -44%
  • importSrpHome/longTaskMaxDuration: -30%
  • importSrpHome/tbt: -46%
  • importSrpHome/total: -37%
  • importSrpHome/inp: -33%
  • importSrpHome/fcp: -18%
  • importSrpHome/lcp: -14%
  • sendTransactions/selectTokenToSendFormLoaded: -12%
  • sendTransactions/reviewTransactionToConfirmationPage: -11%
  • sendTransactions/total: -11%
  • sendTransactions/inp: -45%
  • sendTransactions/cls: -78%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/FCP: p75 2.0s
  • 🟡 solanaAssetDetails/FCP: p75 1.9s
  • 🟡 importSrpHome/FCP: p75 1.9s
  • 🟡 sendTransactions/FCP: p75 2.0s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-webpack
dappPageLoad
[Sentry log · main/release]
🟢 [CI log]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 144.71 KiB (2.14%)
  • ui: 159.24 KiB (1.41%)
  • common: 406.15 KiB (3.09%)

Fixes the `Test lint` CI failure by running the repo formatter (oxfmt)
over the Designer Mode sources and docs.

Co-authored-by: Cursor <cursoragent@cursor.com>
Dynamic import() always uses ESM resolution under nodenext, which requires
explicit file extensions — unlike the repo's extensionless static (CJS)
imports. Convert the internal dynamic imports to static ones (the whole
module is already lazily loaded from ui/index.js, so nothing is lost), drop
the type-position import() in utils, and tighten the overlay onSelect guard
so a locked element is non-null when passed to panel.show().

Co-authored-by: Cursor <cursoragent@cursor.com>
@mm-token-exchange-service

Copy link
Copy Markdown
Builds ready [2635721]
Deprecated Browserify fallback builds
⚡ Performance Benchmarks (Total: 🟢 15 pass · 🟡 9 warn · 🔴 0 fail)

Baseline (latest main): dd70ee8 | Date: 6/16/2026 | Pipeline: 27623673695 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-webpackfirefox-webpack
loadNewAccount
[Sentry log · main/release]
🟡 [CI log]🟢 [CI log]
🔴 load_new_account
confirmTx
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
bridgeUserActions
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: -23%
  • loadNewAccount/total: -23%
  • loadNewAccount/inp: +98%
  • loadNewAccount/fcp: +14%
  • loadNewAccount/lcp: +10%
  • confirmTx/lcp: +11%
  • bridgeUserActions/bridge_load_page: -13%
  • bridgeUserActions/bridge_load_asset_picker: -17%
  • bridgeUserActions/longTaskTotalDuration: +21%
  • bridgeUserActions/longTaskMaxDuration: +21%
  • bridgeUserActions/tbt: +50%
  • bridgeUserActions/inp: -21%
  • loadNewAccount/load_new_account: +465%
  • loadNewAccount/total: +465%
  • loadNewAccount/fcp: -49%
  • loadNewAccount/lcp: +1142%
  • confirmTx/confirm_tx: +12%
  • confirmTx/longTaskCount: -100%
  • confirmTx/longTaskTotalDuration: -100%
  • confirmTx/longTaskMaxDuration: -100%
  • confirmTx/tbt: -100%
  • confirmTx/total: +12%
  • confirmTx/inp: -15%
  • confirmTx/lcp: +1175%
  • bridgeUserActions/bridge_load_page: +79%
  • bridgeUserActions/bridge_load_asset_picker: +24%
  • bridgeUserActions/longTaskCount: -100%
  • bridgeUserActions/longTaskTotalDuration: -100%
  • bridgeUserActions/longTaskMaxDuration: -100%
  • bridgeUserActions/tbt: -100%
  • bridgeUserActions/total: +196%
  • bridgeUserActions/inp: -12%
  • bridgeUserActions/lcp: +1202%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 2.0s
  • 🟡 confirmTx/FCP: p75 1.9s
  • 🟡 bridgeUserActions/FCP: p75 1.9s
Startup Benchmarks · Samples: 100
Benchmarkchrome-webpackfirefox-webpack
startupStandardHome
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
startupPowerUserHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/cls: -100%
  • startupPowerUserHome/numNetworkReqs: -10%
  • startupPowerUserHome/tbt: +11%
  • startupStandardHome/domInteractive: +17%
  • startupStandardHome/initialActions: +11%
  • startupStandardHome/fcp: +13%
  • startupPowerUserHome/uiStartup: -16%
  • startupPowerUserHome/domInteractive: -23%
  • startupPowerUserHome/backgroundConnect: -26%
  • startupPowerUserHome/fcp: -16%
  • startupPowerUserHome/lcp: -15%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🔴 startupPowerUserHome/INP: p75 592ms
  • 🟡 startupPowerUserHome/LCP: p75 2.6s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-webpackfirefox-webpack
onboardingImportWallet
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
onboardingNewWallet
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
🟡 total
assetDetails
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
solanaAssetDetails
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
importSrpHome
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
sendTransactions
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
swap
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/metricsToWalletReadyScreen: +11%
  • onboardingImportWallet/doneButtonToHomeScreen: -88%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: -98%
  • onboardingImportWallet/longTaskCount: -77%
  • onboardingImportWallet/longTaskTotalDuration: -94%
  • onboardingImportWallet/longTaskMaxDuration: -91%
  • onboardingImportWallet/tbt: -98%
  • onboardingImportWallet/total: -87%
  • onboardingNewWallet/createPwToRecoveryScreen: +11%
  • onboardingNewWallet/skipBackupToMetricsScreen: +15%
  • onboardingNewWallet/doneButtonToAssetList: -29%
  • onboardingNewWallet/longTaskTotalDuration: -27%
  • onboardingNewWallet/longTaskMaxDuration: -12%
  • onboardingNewWallet/tbt: -17%
  • onboardingNewWallet/total: -25%
  • solanaAssetDetails/assetClickToPriceChart: -64%
  • solanaAssetDetails/longTaskCount: -100%
  • solanaAssetDetails/longTaskTotalDuration: -100%
  • solanaAssetDetails/longTaskMaxDuration: -100%
  • solanaAssetDetails/tbt: -100%
  • solanaAssetDetails/total: -64%
  • solanaAssetDetails/cls: -91%
  • importSrpHome/openAccountMenuAfterLogin: +19%
  • importSrpHome/homeAfterImportWithNewWallet: -37%
  • importSrpHome/longTaskCount: -25%
  • importSrpHome/longTaskTotalDuration: -21%
  • importSrpHome/longTaskMaxDuration: +17%
  • importSrpHome/tbt: -20%
  • importSrpHome/total: -30%
  • importSrpHome/inp: -20%
  • sendTransactions/openSendPageFromHome: +29%
  • sendTransactions/tbt: +11%
  • sendTransactions/inp: -26%
  • sendTransactions/lcp: +24%
  • sendTransactions/cls: -89%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/FCP: p75 1.9s
  • 🟡 solanaAssetDetails/FCP: p75 1.9s
  • 🟡 importSrpHome/FCP: p75 1.9s
Dapp Page Load Benchmarks · Samples: 100

⚠️ Missing data: chrome/webpack/pageLoadBenchmark

✅ No regressions detected

Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 144.71 KiB (2.14%)
  • ui: 159.55 KiB (1.41%)
  • common: 406.15 KiB (3.09%)

@andrepimenta andrepimenta marked this pull request as ready for review June 17, 2026 10:47
Make the dev-flag default explicit and disabled in the template config so a
fresh .metamaskrc never enables Designer Mode unless a developer opts in.

Co-authored-by: Cursor <cursoragent@cursor.com>
@mm-token-exchange-service

Copy link
Copy Markdown
Builds ready [25cb6ba]
Deprecated Browserify fallback builds
⚡ Performance Benchmarks (Total: 🟢 16 pass · 🟡 9 warn · 🔴 0 fail)

Baseline (latest main): 2f60258 | Date: 6/17/2026 | Pipeline: 27684436908 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-webpackfirefox-webpack
loadNewAccount
[Sentry log · main/release]
🟡 [CI log]🟢 [CI log]
confirmTx
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
bridgeUserActions
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • confirmTx/inp: -17%
  • bridgeUserActions/bridge_load_page: +13%
  • bridgeUserActions/bridge_load_asset_picker: +29%
  • bridgeUserActions/bridge_search_token: +16%
  • bridgeUserActions/tbt: +22%
  • bridgeUserActions/total: +19%
  • bridgeUserActions/lcp: +913%
  • loadNewAccount/load_new_account: +145%
  • loadNewAccount/total: +145%
  • loadNewAccount/inp: -20%
  • loadNewAccount/fcp: -52%
  • loadNewAccount/lcp: +1121%
  • confirmTx/confirm_tx: +12%
  • confirmTx/longTaskCount: -100%
  • confirmTx/longTaskTotalDuration: -100%
  • confirmTx/longTaskMaxDuration: -100%
  • confirmTx/tbt: -100%
  • confirmTx/total: +12%
  • confirmTx/inp: -25%
  • confirmTx/lcp: +1128%
  • bridgeUserActions/bridge_load_page: +93%
  • bridgeUserActions/bridge_load_asset_picker: +86%
  • bridgeUserActions/longTaskCount: -100%
  • bridgeUserActions/longTaskTotalDuration: -100%
  • bridgeUserActions/longTaskMaxDuration: -100%
  • bridgeUserActions/tbt: -100%
  • bridgeUserActions/total: +22%
  • bridgeUserActions/inp: -36%
  • bridgeUserActions/lcp: +1150%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 1.9s
Startup Benchmarks · Samples: 100
Benchmarkchrome-webpackfirefox-webpack
startupStandardHome
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
startupPowerUserHome
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/setupStore: -11%
  • startupPowerUserHome/initialActions: +33%
  • startupPowerUserHome/longTaskCount: +13%
  • startupStandardHome/uiStartup: -21%
  • startupStandardHome/load: -21%
  • startupStandardHome/domContentLoaded: -21%
  • startupStandardHome/domInteractive: -20%
  • startupStandardHome/backgroundConnect: -14%
  • startupStandardHome/firstReactRender: -19%
  • startupStandardHome/loadScripts: -22%
  • startupStandardHome/setupStore: -17%
  • startupStandardHome/fcp: -34%
  • startupStandardHome/lcp: -21%
  • startupPowerUserHome/uiStartup: +14%
  • startupPowerUserHome/domInteractive: +22%
  • startupPowerUserHome/backgroundConnect: +14%
  • startupPowerUserHome/setupStore: -20%
  • startupPowerUserHome/fcp: +23%
  • startupPowerUserHome/lcp: +16%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 startupPowerUserHome/INP: p75 472ms
  • 🟡 startupPowerUserHome/LCP: p75 3.3s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-webpackfirefox-webpack
onboardingImportWallet
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]
onboardingNewWallet
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
🟡 total
assetDetails
[Sentry log · main/release]
🟡 [CI log]🟢 [CI log]
solanaAssetDetails
[Sentry log · main/release]
🟢 [CI log]🟡 [CI log]
importSrpHome
[Sentry log · main/release]
🟡 [CI log]🟢 [CI log]
sendTransactions
[Sentry log · main/release]
🟡 [CI log]🟡 [CI log]
swap
[Sentry log · main/release]
🟢 [CI log]🟢 [CI log]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/metricsToWalletReadyScreen: -12%
  • onboardingImportWallet/doneButtonToHomeScreen: -90%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: -67%
  • onboardingImportWallet/longTaskCount: -74%
  • onboardingImportWallet/longTaskTotalDuration: -91%
  • onboardingImportWallet/longTaskMaxDuration: -88%
  • onboardingImportWallet/tbt: -97%
  • onboardingImportWallet/total: -88%
  • onboardingNewWallet/createPwToRecoveryScreen: +27%
  • onboardingNewWallet/doneButtonToAssetList: -30%
  • onboardingNewWallet/longTaskCount: -50%
  • onboardingNewWallet/longTaskTotalDuration: -54%
  • onboardingNewWallet/longTaskMaxDuration: -17%
  • onboardingNewWallet/tbt: -45%
  • onboardingNewWallet/total: -26%
  • solanaAssetDetails/assetClickToPriceChart: -75%
  • solanaAssetDetails/longTaskCount: -100%
  • solanaAssetDetails/longTaskTotalDuration: -100%
  • solanaAssetDetails/longTaskMaxDuration: -100%
  • solanaAssetDetails/tbt: -100%
  • solanaAssetDetails/total: -75%
  • solanaAssetDetails/inp: +14%
  • solanaAssetDetails/cls: -88%
  • importSrpHome/loginToHomeScreen: -26%
  • importSrpHome/openAccountMenuAfterLogin: +52%
  • importSrpHome/homeAfterImportWithNewWallet: -35%
  • importSrpHome/longTaskCount: -31%
  • importSrpHome/longTaskTotalDuration: -30%
  • importSrpHome/longTaskMaxDuration: -26%
  • importSrpHome/tbt: -31%
  • importSrpHome/total: -32%
  • sendTransactions/openSendPageFromHome: -44%
  • sendTransactions/selectTokenToSendFormLoaded: -21%
  • sendTransactions/reviewTransactionToConfirmationPage: +14%
  • sendTransactions/longTaskCount: +11%
  • sendTransactions/longTaskTotalDuration: +12%
  • sendTransactions/tbt: +12%
  • sendTransactions/total: +16%
  • sendTransactions/inp: -20%
  • sendTransactions/fcp: +16%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/INP: p75 264ms
  • 🟡 importSrpHome/INP: p75 256ms
  • 🟡 sendTransactions/FCP: p75 2.0s
  • 🟡 solanaAssetDetails/FCP: p75 1.8s
  • 🟡 sendTransactions/FCP: p75 1.9s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-webpack
dappPageLoad
[Sentry log · main/release]
🟢 [CI log]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 140.96 KiB (2.09%)
  • ui: 161.74 KiB (1.43%)
  • common: 406.6 KiB (3.09%)

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant