Skip to content

feat: enable sidepanel for social login rehydration#41491

Merged
lwin-kyaw merged 2 commits intomainfrom
feat/enable-sidepanel-social-rehydration
Apr 6, 2026
Merged

feat: enable sidepanel for social login rehydration#41491
lwin-kyaw merged 2 commits intomainfrom
feat/enable-sidepanel-social-rehydration

Conversation

@lwin-kyaw
Copy link
Copy Markdown
Contributor

@lwin-kyaw lwin-kyaw commented Apr 6, 2026

Description

This PR enables SidePanel for the social login rehydration.

Changelog

CHANGELOG entry: enable sidepanel for the social login rehydration

Related issues

Fixes:

Manual testing steps

  1. Go to this page...

Screenshots/Recordings

Before

After

Screen.Recording.2026-04-06.at.12.43.25.PM.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.

Note

Medium Risk
Changes unlock/rehydration completion logic for FirstTimeFlowType.socialImport, including new sidepanel-specific completion actions and navigation, which can affect onboarding state and routing if mis-ordered or if async completion fails.

Overview
Enables sidepanel-aware completion for social login rehydration during onboarding unlock. When seedless socialImport users unlock, onboarding now conditionally sets sidepanel as default and dispatches setCompletedOnboardingWithSidepanel, then navigates immediately to the post-unlock route; non-sidepanel flows continue to mark onboarding complete and rely on the existing completedOnboarding redirect.

Tests were updated to mock thunk-style action creators and add coverage ensuring the loading overlay stays visible until the async rehydration completion action resolves (both sidepanel and non-sidepanel cases).

Reviewed by Cursor Bugbot for commit 890d6d6. Bugbot is set up for automated code reviews on this repo. Configure here.

@lwin-kyaw lwin-kyaw requested a review from a team as a code owner April 6, 2026 04:37
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 6, 2026

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-onboarding Onboarding team label Apr 6, 2026
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit c877d2d. Configure here.

@metamaskbotv2
Copy link
Copy Markdown
Contributor

metamaskbotv2 bot commented Apr 6, 2026

Builds ready [c877d2d]
⚡ Performance Benchmarks (Total: 🟢 6 pass · 🟡 12 warn · 🔴 0 fail)

Baseline (latest main): f34f804 | Date: 9/10/58222 | Pipeline: 24018877272 | Baseline logs

Interaction Benchmarks
Benchmarkchrome-browserify
loadNewAccount🟡 [Show logs]
confirmTx🟡 [Show logs]
bridgeUserActions🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • bridgeUserActions/bridge_search_token: -20%
  • bridgeUserActions/total: -15%

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

  • 🟡 loadNewAccount/FCP: p75 2.6s
  • 🟡 confirmTx/FCP: p75 2.6s
  • 🟡 bridgeUserActions/FCP: p75 2.6s
Startup Benchmarks
Benchmarkchrome-browserifychrome-webpackfirefox-browserifyfirefox-webpack
startupStandardHome🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]
startupPowerUserHome🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -11%
  • startupStandardHome/load: -12%
  • startupStandardHome/domContentLoaded: -14%
  • startupStandardHome/domInteractive: +11%
  • startupStandardHome/backgroundConnect: +11%
  • startupStandardHome/initialActions: -38%
  • startupStandardHome/loadScripts: -17%
  • startupStandardHome/numNetworkReqs: -21%
  • startupPowerUserHome/backgroundConnect: +84%
  • startupPowerUserHome/setupStore: +17%
  • startupPowerUserHome/numNetworkReqs: +16%
  • startupStandardHome/uiStartup: -14%
  • startupStandardHome/load: -13%
  • startupStandardHome/domContentLoaded: -13%
  • startupStandardHome/backgroundConnect: -33%
  • startupStandardHome/firstReactRender: -24%
  • startupStandardHome/loadScripts: -12%
  • startupStandardHome/numNetworkReqs: -29%
  • startupPowerUserHome/domInteractive: -21%
  • startupStandardHome/domInteractive: -60%
  • startupStandardHome/initialActions: -38%
  • startupStandardHome/numNetworkReqs: -18%
  • startupPowerUserHome/backgroundConnect: -22%
  • startupStandardHome/domInteractive: -33%
  • startupStandardHome/backgroundConnect: -16%
  • startupStandardHome/initialActions: -44%
  • startupStandardHome/setupStore: -60%
  • startupStandardHome/numNetworkReqs: -11%
  • startupPowerUserHome/domInteractive: -17%

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

  • 🔴 startupPowerUserHome/INP: p75 712ms
  • 🔴 startupPowerUserHome/INP: p75 680ms
  • 🟡 startupPowerUserHome/LCP: p75 3.5s
  • 🟡 startupPowerUserHome/LCP: p75 3.7s
User Journey Benchmarks
Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
assetDetails🟡 [Show logs]
solanaAssetDetails🟡 [Show logs]
importSrpHome🟡 [Show logs]
sendTransactions🟡 [Show logs]
swap🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/doneButtonToHomeScreen: -75%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: +33%
  • onboardingImportWallet/total: -38%
  • onboardingNewWallet/skipBackupToMetricsScreen: -10%
  • onboardingNewWallet/agreeButtonToOnboardingSuccess: +20%
  • onboardingNewWallet/doneButtonToAssetList: -39%
  • onboardingNewWallet/total: -32%
  • assetDetails/assetClickToPriceChart: -30%
  • assetDetails/total: -30%
  • solanaAssetDetails/assetClickToPriceChart: -58%
  • solanaAssetDetails/total: -58%
  • importSrpHome/openAccountMenuAfterLogin: -72%
  • importSrpHome/homeAfterImportWithNewWallet: -39%
  • importSrpHome/total: -34%
  • sendTransactions/openSendPageFromHome: +78%
  • sendTransactions/reviewTransactionToConfirmationPage: +13%
  • sendTransactions/total: +13%
  • swap/openSwapPageFromHome: -86%
  • swap/fetchAndDisplaySwapQuotes: +31%
  • swap/total: +14%

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

  • 🟡 assetDetails/INP: p75 208ms
  • 🟡 assetDetails/FCP: p75 2.5s
  • 🟡 solanaAssetDetails/FCP: p75 2.5s
  • 🟡 importSrpHome/FCP: p75 2.4s
  • 🟡 sendTransactions/INP: p75 224ms
  • 🟡 sendTransactions/FCP: p75 2.5s
  • 🟡 swap/FCP: p75 2.5s
🌐 Dapp Page Load Benchmarks

Current Commit: c877d2d | Date: 4/6/2026

📄 Localhost MetaMask Test Dapp

Samples: 100

Summary

  • pageLoadTime-> current mean value: 1.04s (±56ms) 🟡 | historical mean value: 1.04s ⬆️ (historical data)
  • domContentLoaded-> current mean value: 733ms (±54ms) 🟢 | historical mean value: 728ms ⬆️ (historical data)
  • firstContentfulPaint-> current mean value: 88ms (±27ms) 🟢 | historical mean value: 86ms ⬆️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.04s 56ms 1.01s 1.52s 1.06s 1.52s
domContentLoaded 733ms 54ms 709ms 1.20s 751ms 1.20s
firstPaint 88ms 27ms 72ms 348ms 96ms 348ms
firstContentfulPaint 88ms 27ms 72ms 348ms 96ms 348ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs
  • background: 58 Bytes (0%)
  • ui: 253 Bytes (0%)
  • common: 20 Bytes (0%)

@metamaskbotv2
Copy link
Copy Markdown
Contributor

metamaskbotv2 bot commented Apr 6, 2026

✨ Files requiring CODEOWNER review ✨

🔐 @MetaMask/web3auth (2 files, +226 -25)
  • 📁 ui/
    • 📁 pages/
      • 📁 onboarding-flow/
        • 📄 onboarding-flow.test.tsx +206 -21
        • 📄 onboarding-flow.tsx +20 -4

@github-actions github-actions bot added size-M and removed size-S labels Apr 6, 2026
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Apr 6, 2026

@metamaskbotv2
Copy link
Copy Markdown
Contributor

metamaskbotv2 bot commented Apr 6, 2026

Builds ready [890d6d6]
⚡ Performance Benchmarks (Total: 🟢 6 pass · 🟡 12 warn · 🔴 0 fail)

Baseline (latest main): f34f804 | Date: 9/10/58222 | Pipeline: 24020364823 | Baseline logs

Interaction Benchmarks
Benchmarkchrome-browserify
loadNewAccount
🟡 load_new_account
[Show logs]
confirmTx🟡 [Show logs]
bridgeUserActions🟡 [Show logs]

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

  • 🟡 loadNewAccount/FCP: p75 2.4s
  • 🟡 confirmTx/FCP: p75 2.4s
  • 🟡 bridgeUserActions/FCP: p75 2.5s
Startup Benchmarks
Benchmarkchrome-browserifychrome-webpackfirefox-browserifyfirefox-webpack
startupStandardHome🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]
startupPowerUserHome🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/load: -10%
  • startupStandardHome/domContentLoaded: -12%
  • startupStandardHome/backgroundConnect: +15%
  • startupStandardHome/firstReactRender: -17%
  • startupStandardHome/initialActions: -38%
  • startupStandardHome/loadScripts: -15%
  • startupStandardHome/setupStore: +14%
  • startupPowerUserHome/backgroundConnect: +78%
  • startupPowerUserHome/numNetworkReqs: -45%
  • startupStandardHome/uiStartup: -10%
  • startupStandardHome/firstPaint: +14%
  • startupStandardHome/backgroundConnect: -30%
  • startupStandardHome/firstReactRender: -20%
  • startupStandardHome/numNetworkReqs: -29%
  • startupPowerUserHome/domInteractive: -14%
  • startupPowerUserHome/numNetworkReqs: +13%
  • startupStandardHome/domInteractive: -59%
  • startupStandardHome/initialActions: +25%
  • startupStandardHome/numNetworkReqs: -18%
  • startupPowerUserHome/domInteractive: +10%
  • startupPowerUserHome/backgroundConnect: -21%
  • startupPowerUserHome/setupStore: +20%
  • startupStandardHome/domInteractive: -30%
  • startupStandardHome/backgroundConnect: -13%
  • startupStandardHome/initialActions: +11%
  • startupStandardHome/setupStore: -60%
  • startupPowerUserHome/domInteractive: -11%
  • startupPowerUserHome/backgroundConnect: -30%

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

  • 🔴 startupPowerUserHome/INP: p75 672ms
  • 🔴 startupPowerUserHome/INP: p75 656ms
  • 🟡 startupPowerUserHome/LCP: p75 3.7s
  • 🟡 startupPowerUserHome/LCP: p75 3.7s
User Journey Benchmarks
Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
assetDetails🟡 [Show logs]
solanaAssetDetails🟡 [Show logs]
importSrpHome🟡 [Show logs]
sendTransactions🟡 [Show logs]
swap🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/metricsToWalletReadyScreen: -39%
  • onboardingImportWallet/doneButtonToHomeScreen: -75%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: +33%
  • onboardingImportWallet/total: -40%
  • onboardingNewWallet/skipBackupToMetricsScreen: -16%
  • onboardingNewWallet/agreeButtonToOnboardingSuccess: -19%
  • onboardingNewWallet/doneButtonToAssetList: -27%
  • onboardingNewWallet/total: -24%
  • assetDetails/assetClickToPriceChart: -65%
  • assetDetails/total: -65%
  • solanaAssetDetails/assetClickToPriceChart: -60%
  • solanaAssetDetails/total: -60%
  • importSrpHome/openAccountMenuAfterLogin: -75%
  • importSrpHome/homeAfterImportWithNewWallet: -38%
  • importSrpHome/total: -32%
  • sendTransactions/openSendPageFromHome: +57%
  • swap/openSwapPageFromHome: -86%
  • swap/fetchAndDisplaySwapQuotes: +32%
  • swap/total: +14%

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

  • 🟡 assetDetails/INP: p75 216ms
  • 🟡 assetDetails/FCP: p75 2.5s
  • 🟡 solanaAssetDetails/FCP: p75 2.5s
  • 🟡 importSrpHome/INP: p75 224ms
  • 🟡 importSrpHome/FCP: p75 2.6s
  • 🟡 sendTransactions/FCP: p75 2.4s
  • 🟡 swap/FCP: p75 2.4s

Dapp page load benchmarks: data not available.

Bundle size diffs
  • background: 58 Bytes (0%)
  • ui: 259 Bytes (0%)
  • common: 20 Bytes (0%)

Copy link
Copy Markdown
Contributor

@smgv smgv left a comment

Choose a reason for hiding this comment

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

LGTM!

@lwin-kyaw lwin-kyaw enabled auto-merge April 6, 2026 06:35
@lwin-kyaw lwin-kyaw added this pull request to the merge queue Apr 6, 2026
Merged via the queue into main with commit a8c2db6 Apr 6, 2026
207 checks passed
@lwin-kyaw lwin-kyaw deleted the feat/enable-sidepanel-social-rehydration branch April 6, 2026 08:37
@github-actions github-actions bot locked and limited conversation to collaborators Apr 6, 2026
@metamaskbot metamaskbot added the release-13.27.0 Issue or pull request that will be included in release 13.27.0 label Apr 6, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-13.27.0 Issue or pull request that will be included in release 13.27.0 size-M team-onboarding Onboarding team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants