Skip to content

Conversation

@tuna1207
Copy link
Member

@tuna1207 tuna1207 commented Nov 14, 2025

Description

  • Fix payment method select card if no crypto available between plan change
  • Fix copy text in confirmation tooltip and start now button

Open in GitHub Codespaces

Changelog

CHANGELOG entry: null

Related issues

Fixes:

Manual testing steps

  1. Go to this page...

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

Makes the Shield confirm CTA show “Start free trial” unless the user has already trialed, fixes the monthly tooltip copy order, and defaults payment method to card when crypto isn’t selected/available; updates locales and tests.

  • Confirmations UI:
    • Footer CTA: For TransactionType.shieldSubscriptionApprove, choose t('shieldStartNowCTAWithTrial') unless the user has already trialed PRODUCT_TYPES.SHIELD, then use t('shieldStartNowCTA').
    • Integrates useUserSubscriptions to read trialedProducts.
  • Shield Plan:
    • Payment Method Default: Ensure selection defaults to card when no crypto token is available/selected or last used method is card.
  • Confirm Info (Shield Subscription Approve):
    • Monthly Tooltip: Swap params to display per-month first, then total in shieldEstimatedChangesMonthlyTooltipText.
  • i18n:
    • Add shieldStartNowCTAWithTrial message in app/_locales/en/messages.json and en_GB/messages.json.
  • Tests:
    • Update footer.test.tsx to mock useUserSubscriptions and reflect CTA logic.

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

@metamaskbot metamaskbot added the team-onboarding Onboarding team label Nov 14, 2025
@metamaskbot
Copy link
Collaborator

metamaskbot commented Nov 14, 2025

✨ Files requiring CODEOWNER review ✨

@MetaMask/confirmations (3 files, +21 -2)
  • 📁 ui/
    • 📁 pages/
      • 📁 confirmations/
        • 📁 components/
          • 📁 confirm/
            • 📁 footer/
              • 📄 footer.test.tsx +10 -0
              • 📄 footer.tsx +10 -1
            • 📁 info/
              • 📁 shield-subscription-approve/
                • 📄 estimated-changes.tsx +1 -1

🔐 @MetaMask/web3auth (3 files, +24 -1)
  • 📁 ui/
    • 📁 pages/
      • 📁 confirmations/
        • 📁 components/
          • 📁 confirm/
            • 📁 footer/
              • 📄 footer.test.tsx +10 -0
              • 📄 footer.tsx +10 -1
      • 📁 shield-plan/
        • 📄 shield-plan.tsx +4 -0

@tuna1207 tuna1207 marked this pull request as ready for review November 14, 2025 14:45
@tuna1207 tuna1207 requested review from a team as code owners November 14, 2025 14:45
chaitanyapotti
chaitanyapotti previously approved these changes Nov 14, 2025
vinistevam
vinistevam previously approved these changes Nov 14, 2025
@chaitanyapotti chaitanyapotti linked an issue Nov 14, 2025 that may be closed by this pull request
9 tasks
@tuna1207 tuna1207 dismissed stale reviews from vinistevam and chaitanyapotti via bbee7cc November 14, 2025 15:06
@metamaskbot
Copy link
Collaborator

Builds ready [bbee7cc]
UI Startup Metrics (1145 ± 125 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyStandard HomeuiStartup1145980203312511991353
load983845179511410441119
domContentLoaded976840176611310371111
domInteractive221477151964
firstPaint68089180939410051096
backgroundConnect18717326411189210
firstReactRender24185152639
getState2064782438
initialActions102112
loadScripts7966501573112852928
setupStore1061821113
numNetworkReqs1367519673
BrowserifyPower User HomeuiStartup21951918312329422603123
load1141963161320814021613
domContentLoaded1120946159821013941598
domInteractive601917454129174
firstPaint66413114653879981465
backgroundConnect25623431421262314
firstReactRender814513523104135
getState22216533347246333
initialActions103113
loadScripts888726131620011671316
setupStore26153983339
numNetworkReqs1239219234152192
WebpackStandard HomeuiStartup8497241217998471138
load62256298990617929
domContentLoaded61555697187612911
domInteractive181274131557
firstPaint23260975233215798
backgroundConnect261368133356
firstReactRender31206893640
getState1152831216
initialActions103111
loadScripts61255496185610901
setupStore1164951315
numNetworkReqs1367219870
WebpackPower User HomeuiStartup1169944185029115811850
load71659311421638991142
domContentLoaded69958211171558681117
domInteractive411413845103138
firstPaint3758411273366281127
backgroundConnect57112176450217
firstReactRender43404724647
getState1509819926164199
initialActions101011
loadScripts69558011071518581107
setupStore1272771327
numNetworkReqs846413827121138
FirefoxBrowserifyStandard HomeuiStartup15791381216613516301850
load1324118915929113711517
domContentLoaded1324118915929113701517
domInteractive61352164262172
firstPaint------
backgroundConnect47261602450101
firstReactRender30226073046
getState1173741221
initialActions203123
loadScripts1294117015668613311471
setupStore168201211447
numNetworkReqs1267516758
BrowserifyPower User HomeuiStartup32202417451364640674513
load14781268196221117241962
domContentLoaded14781267196221117241962
domInteractive24583583164376583
firstPaint------
backgroundConnect52585126540310021265
firstReactRender91631542099154
getState20111038464229384
initialActions215135
loadScripts14381228190620916511906
setupStore14341527116191527
numNetworkReqs1287523057215230
WebpackStandard HomeuiStartup16091422226614216211969
load13651216179511513871648
domContentLoaded13641216179511513871648
domInteractive56281533063131
firstPaint------
backgroundConnect47221452453115
firstReactRender342599133372
getState1276771220
initialActions112022
loadScripts13361199170910513671565
setupStore14757111349
numNetworkReqs1366617764
WebpackPower User HomeuiStartup34172685484269840064842
load17441508234524218512345
domContentLoaded17441508234424218512344
domInteractive24989588169470588
firstPaint------
backgroundConnect586119125640711261256
firstReactRender1025113923118139
getState16511623532180235
initialActions317137
loadScripts16891450229323818232293
setupStore742613232108132
numNetworkReqs1196822454182224
📊 Page Load Benchmark Results

Current Commit: bbee7cc | Date: 11/14/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: 717ms (±35ms) 🟢 | historical mean value: 722ms ⬇️ (historical data)
  • firstContentfulPaint-> current mean value: 75ms (±12ms) 🟢 | historical mean value: 77ms ⬇️ (historical data)

📈 Detailed Results

Metric Mean Std Dev Min Max P95 P99
pageLoadTime 1.03s 37ms 1.01s 1.31s 1.04s 1.31s
domContentLoaded 717ms 35ms 700ms 980ms 727ms 980ms
firstPaint 75ms 12ms 60ms 180ms 84ms 180ms
firstContentfulPaint 75ms 12ms 60ms 180ms 84ms 180ms
largestContentfulPaint 0ms 0ms 0ms 0ms 0ms 0ms
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 58 Bytes (0%)
  • ui: 503 Bytes (0.01%)
  • common: 172 Bytes (0%)

@chaitanyapotti chaitanyapotti added this pull request to the merge queue Nov 14, 2025
Merged via the queue into main with commit d89e04b Nov 14, 2025
174 checks passed
@chaitanyapotti chaitanyapotti deleted the fix/shield-cta branch November 14, 2025 16:06
@github-actions github-actions bot locked and limited conversation to collaborators Nov 14, 2025
@metamaskbot metamaskbot added the release-13.11.0 Issue or pull request that will be included in release 13.11.0 label Nov 14, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-shield release-13.11.0 Issue or pull request that will be included in release 13.11.0 size-S team-onboarding Onboarding team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Copy shows monthly and yearly amounts inverted

5 participants