Skip to content

Conversation

@kevinbluer
Copy link
Member

@kevinbluer kevinbluer commented Apr 15, 2025

Description

  • Adds enforcement that only hardware-based accounts can setup remote mode.
  • Note that the check is also triggered if the user changes the active account during the setup process
  • Also includes a number of (still work-in-progress) design parity tweaks
    • Using appropriate Page, Header, Footer, etc components
    • Various copy updates
    • Other minor design / stylistic updates

Open in GitHub Codespaces

Related issues

Fixes: #31677

Manual testing steps

  1. Create the build (yarn webpack)
  2. Go to remote/setup-swaps and remote/setup-daily-allowance and switch between a hardware and non-hardware wallet based accounts. This can be done during both the overview screen and at any time during the setup flow(s)
  3. Designs for reference when reviewing the design parity related updates, although note these are still work-in-process
  • Note to override the vaultRemoteMode feature flag (which will implicitly default to disabled), the configuration steps are available here. Example.manifest-overrides.json:
{
  "_flags": {
    "remoteFeatureFlags": {
      "vaultRemoteMode": true
    }
  }
}

Screenshots/Recordings

Before

NA

After

image
image
image

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.

@metamaskbot metamaskbot added the team-vault-deprecated MetaMask Vault Team is now Prediction Markets label Apr 15, 2025
@kevinbluer kevinbluer marked this pull request as ready for review April 15, 2025 20:09
@metamaskbot
Copy link
Collaborator

Builds ready [59a88c1]
UI Startup Metrics (1213 ± 65 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1213111415406512421331
load104695813065810751161
domContentLoaded104195412995710651152
domInteractive17136171629
firstPaint78074120639410561149
backgroundConnect6425279
firstReactRender20143942129
getState1454182030
initialActions001000
loadScripts80272598554827923
setupStore85203814
WebpackHomeuiStartup22011780269116223292415
load17031277216015717921956
domContentLoaded16961270215415717881952
domInteractive161158111347
firstPaint1786039060209294
backgroundConnect329282373165
firstReactRender21456483129344379
getState1243771529
initialActions316145
loadScripts16911268215215517861928
setupStore256306462337
FirefoxBrowserifyHomeuiStartup13461163179912314201611
load12021030167712312751440
domContentLoaded12011029167712312741439
domInteractive1084135345117191
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2413212321932
firstReactRender23196262336
getState7436479
initialActions001001
loadScripts11791019166212312421422
setupStore6429368
WebpackHomeuiStartup14751324181310615401707
load1261114515729413021440
domContentLoaded1261114515719413021440
domInteractive75341402179124
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect21145772241
firstReactRender34295043643
getState94476928
initialActions101011
loadScripts1242113015539412801423
setupStore86284820
Bundle size diffs
  • background: 0 Bytes (0%)
  • ui: 3.85 KiB (0.06%)
  • common: 0 Bytes (0%)

@metamaskbot
Copy link
Collaborator

Builds ready [21c9997]
UI Startup Metrics (1224 ± 74 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1224110214777412671366
load105995512876811081198
domContentLoaded105295112636711001187
domInteractive17134951628
firstPaint774139122240610911184
backgroundConnect74243812
firstReactRender20154552026
getState1353781931
initialActions001001
loadScripts816720100264854938
setupStore75172711
WebpackHomeuiStartup20971667255918222302386
load16121290196313917171825
domContentLoaded16051286192513717141819
domInteractive151154101346
firstPaint1766634355204301
backgroundConnect241095142656
firstReactRender21855404119337373
getState1142851321
initialActions318136
loadScripts16001285190213617121818
setupStore1774262028
FirefoxBrowserifyHomeuiStartup1393125117079814541578
load12341059154510012951426
domContentLoaded12341059154510112951426
domInteractive993917826116144
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2313125152260
firstReactRender24205742531
getState84305824
initialActions001001
loadScripts12131043152710212731410
setupStore74376624
WebpackHomeuiStartup15041354189411215651758
load1285116116029713411510
domContentLoaded1285116016029713411509
domInteractive86542833793164
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2414107142459
firstReactRender35285553747
getState94326929
initialActions102111
loadScripts1264114215839613141459
setupStore11530029822
Bundle size diffs
  • background: 0 Bytes (0%)
  • ui: 4.28 KiB (0.06%)
  • common: 0 Bytes (0%)

@metamaskbot
Copy link
Collaborator

❌ API Spec Test Failed. View the report here.

@kevinbluer kevinbluer force-pushed the feat/remote-mode-hw-wallet-gating branch 2 times, most recently from 5edf9fd to 2574113 Compare April 16, 2025 18:00
@kevinbluer kevinbluer added the no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed label Apr 16, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [2574113]
UI Startup Metrics (1227 ± 63 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1227112414086312661359
load105896611995510911165
domContentLoaded105296111905410841160
domInteractive17133651729
firstPaint748151118439810671112
backgroundConnect74253712
firstReactRender21154872044
getState13567101630
initialActions001001
loadScripts81172694953837919
setupStore85213813
WebpackHomeuiStartup21201720248117322492348
load16261340192812417201825
domContentLoaded16191337191812417121819
domInteractive15115391347
firstPaint1896955072233310
backgroundConnect279250262860
firstReactRender21155372112326357
getState1142551421
initialActions317135
loadScripts16141336189512317101817
setupStore206202242032
FirefoxBrowserifyHomeuiStartup15201226209215915541874
load13491094192615313951685
domContentLoaded13491094192615313951685
domInteractive1173729235130179
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2914161252794
firstReactRender24203942633
getState105499937
initialActions002001
loadScripts13231080189614313741620
setupStore64122711
WebpackHomeuiStartup14871335192211215521710
load1278115616689913021467
domContentLoaded1278115616689913021467
domInteractive85583123591123
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect21145572236
firstReactRender34284743744
getState84315814
initialActions002111
loadScripts1259113716459812861449
setupStore85425822

matallui
matallui previously approved these changes Apr 16, 2025
Copy link
Contributor

@matallui matallui left a comment

Choose a reason for hiding this comment

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

Just a couple of suggestions/questions, but happy if we address those in a follow-up PR, given our tight timeline.

caieu
caieu previously approved these changes Apr 16, 2025
Copy link
Contributor

@caieu caieu left a comment

Choose a reason for hiding this comment

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

LGTM

@kevinbluer kevinbluer added this pull request to the merge queue Apr 16, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to a conflict with the base branch Apr 16, 2025
@kevinbluer kevinbluer dismissed stale reviews from caieu and matallui via 517c57e April 17, 2025 14:05
@kevinbluer kevinbluer requested review from a team as code owners April 17, 2025 14:05
@kevinbluer kevinbluer force-pushed the feat/remote-mode-hw-wallet-gating branch from 517c57e to 945c883 Compare April 17, 2025 14:15
Copy link
Contributor

@caieu caieu left a comment

Choose a reason for hiding this comment

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

LGTM

@metamaskbot
Copy link
Collaborator

Builds ready [945c883]
UI Startup Metrics (1222 ± 64 ms)
PlatformBuildTypePageMetricMean (ms)Min (ms)Max (ms)Std Dev (ms)P 75 (ms)P 95 (ms)
ChromeBrowserifyHomeuiStartup1222109614366412521350
load106096212275810851178
domContentLoaded105595912215710781173
domInteractive17136361628
firstPaint674148120242310661165
backgroundConnect6410178
firstReactRender21154862241
getState1254281529
initialActions001001
loadScripts81572296854838926
setupStore84162912
WebpackHomeuiStartup21071693254718022202331
load16201313193713617351823
domContentLoaded16131309191113417261816
domInteractive151156101341
firstPaint196601545149215333
backgroundConnect279170222868
firstReactRender21454368117338361
getState154253291325
initialActions3111135
loadScripts16081308188813317211814
setupStore1664061931
FirefoxBrowserifyHomeuiStartup13831208172011314581635
load12301039153911312951490
domContentLoaded12291038153811312951489
domInteractive1083825836132165
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect2414148172450
firstReactRender23199682430
getState84345822
initialActions001001
loadScripts12081028150910912731430
setupStore6439469
WebpackHomeuiStartup15761380200915116491918
load13431186173813214301608
domContentLoaded13421186173713214301607
domInteractive954531043111156
firstPaintNaNNaNNaNNaNNaNNaN
backgroundConnect25169092644
firstReactRender38306564050
getState1155481031
initialActions002111
loadScripts13211165171313314021588
setupStore96325921

@kevinbluer kevinbluer added this pull request to the merge queue Apr 17, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Apr 17, 2025
@kevinbluer kevinbluer added this pull request to the merge queue Apr 17, 2025
Merged via the queue into main with commit 1997e26 Apr 17, 2025
167 checks passed
@kevinbluer kevinbluer deleted the feat/remote-mode-hw-wallet-gating branch April 17, 2025 16:37
@github-actions github-actions bot locked and limited conversation to collaborators Apr 17, 2025
@metamaskbot metamaskbot added the release-12.18.0 Issue or pull request that will be included in release 12.18.0 label Apr 17, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

no-changelog no-changelog Indicates no external facing user changes, therefore no changelog documentation needed release-12.18.0 Issue or pull request that will be included in release 12.18.0 team-vault-deprecated MetaMask Vault Team is now Prediction Markets

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Gate Remote Mode routes based on type of account

5 participants