-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: Onboarding failing biometrics locks screen for user instead of disabling biometrics and continuing with the onboarding #12120
Conversation
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. |
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
Bitrise❌❌❌ Commit hash: 1a8fb02 Note
Tip
|
Bitrise❌❌❌ Commit hash: efbb106 Note
Tip
|
Bitrise❌❌❌ Commit hash: fcb7a73 Note
Tip
|
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
Bitrise✅✅✅ Commit hash: 62856c5 Note
|
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #12120 +/- ##
==========================================
+ Coverage 55.58% 55.60% +0.01%
==========================================
Files 1782 1782
Lines 40085 40203 +118
Branches 4993 5018 +25
==========================================
+ Hits 22280 22353 +73
- Misses 16282 16316 +34
- Partials 1523 1534 +11 ☔ View full report in Codecov by Sentry. |
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
…iometrics-after-creating-password-navigates-to-unlock-screen-should-continue-onboarding-with-biometrics-disabled
Quality Gate passedIssues Measures |
Description
During the course of onboarding, if the user enables Face ID to log in to the app, but the Face ID is unsuccessful in reading the users face, or the user cancels the Face ID check, the user is then locked out of the app and kicked out of the onboarding flow. When they sign back in they are taken to the wallet screen.
I have added a fix so that if the Face ID fails or the user cancels the Face ID check, Face ID will be disabled and the user will have to log in with their password. The onboarding process will also continue without locking the user out of the app.
The fix isn't 'ideal' as we use a
catch
block to catch an error and then perform some state setting, when ideally acatch
should be used exclusively for error handling. However, when Biometrics fail, React Native throws an error that ends up in thecatch
. I also would prefer anenum
to be used but we are in a JS file instead of a TS file.To test the issue repeat the following:
Related issues
Fixes: https://github.com/orgs/MetaMask/projects/60/views/16?pane=issue&itemId=84422135&issue=MetaMask%7Cmetamask-mobile%7C11964
Manual testing steps
Screenshots/Recordings
Before
After
ScreenRecording_10-31-2024.14-11-32_1.MP4
Pre-merge author checklist
Pre-merge reviewer checklist