Skip to content
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

[Sentry] [Bug]: KeyringController - Cannot persist vault without password and encryption key #9167

Open
seaona opened this issue Apr 8, 2024 · 8 comments
Labels
area-Sentry Issue from Sentry needs-research regression-prod-7.26.0 Regression bug that was found in production in release 7.26.0 regression-RC-7.20.0 Sev2-normal An issue that may lead to users misunderstanding some limited risks they are taking team-accounts team-mobile-platform type-bug Something isn't working

Comments

@seaona
Copy link
Contributor

seaona commented Apr 8, 2024

Describe the bug

Whenever I trigger a deeplink transaction, the wallet opened and when I clicked Confirm tx, I got the error KeyringController - Cannot persist vault without password and encryption key
The wallet was open for a while on the background. It seems that maybe somehow was locked, but the deeplink triggered the wallet to open directly with the confirmed tx instead of the login screen. It looked normally but whenever trying to confirm the tx I got the error.
Closing the wallet and relogin in again made the wallet to work normally again, and the deeplinks were back working

Expected behavior

No response

Screenshots/Recordings

Screenshot from 2024-04-08 19-04-09

keyring-controller-deeplink.mp4

Steps to reproduce

  1. Open MM wallet
  2. Leave it open on the background for a while
  3. Trigger a deeplink (ie generate a send eth https://metamask.github.io/metamask-deeplinks/#)
  4. Open MM
  5. Confirm --- see error

Error messages or log output

No response

Version

found it in 7.20 but maybe it's present in other versions too

Build type

None

Device

Pixel 6

Operating system

Android

Additional context

No response

Severity

No response

Copy link

sentry-io bot commented May 23, 2024

Sentry Issue: METAMASK-MOBILE-2CYQ

@NicolasMassart NicolasMassart added the regression-prod-7.21.0 Regression bug that was found in production in release 7.21.0 label May 23, 2024
@metamaskbot metamaskbot changed the title [Bug]: KeyringController - Cannot persist vault without password and encryption key [Sentry] [Bug]: KeyringController - Cannot persist vault without password and encryption key May 23, 2024
@metamaskbot metamaskbot added the area-Sentry Issue from Sentry label May 23, 2024
Copy link

sentry-io bot commented May 27, 2024

Sentry Issue: METAMASK-MOBILE-2F6Y

@NicolasMassart NicolasMassart added the regression-prod-7.22.0 Regression bug that was found in production in release 7.22.0 label May 27, 2024
Copy link

sentry-io bot commented Jun 5, 2024

Sentry Issue: METAMASK-MOBILE-2CW8

@plasmacorral
Copy link
Contributor

plasmacorral commented Jun 5, 2024

I just encountered this with a QA build of v7.23.0 while preparing to conduct a migration test for a PR that is in feature QA.

Unfortunately I was not recording at the time, but did capture this console warning:
Screenshot

Device:
Samsung A515f
Android 12 with security 1/1/2024
Biometric authentication present and configured for MM.

My steps:

  1. Have wallet configured and navigate in mobile wallet browser to OpenSea
  2. Select MetaMask as the wallet option in the OpenSea login process.
  3. Encounter a prompt to choose between Play Store and Galaxy Store, suggesting the wallet isn't recognized as installed.
  4. Close the prompt and retry the connection.
  5. Choose WalletConnect instead of MetaMask to circumvent the issue.
  6. Experience an app crash, indicated by an orange diamond
  7. Arrive at the unlock screen, lacking the biometric authentication option.
  8. Log in using a password, not biometric authentication.
  9. Notice all 8 existing accounts are missing, replaced by an unfamiliar "Account 1."
  10. While documenting the issue, the app screen locks.
  11. Upon unlocking, find all missing accounts are now back in the account drop-down

ON retry with the same device, unable to reproduce and now able to sign and login to OpenSea.

Copy link

sentry-io bot commented Jun 12, 2024

Sentry Issue: METAMASK-MOBILE-2G32

node_modules/@metamask/keyring-controller/dist/KeyringController.js in __awaiter$argument_3 at line 569:32

     */
    persistAllKeyrings() {
        return __awaiter(this, void 0, void 0, function* () {
            const { encryptionKey, encryptionSalt } = this.state;
            if (!__classPrivateFieldGet(this, _KeyringController_password, "f") && !encryptionKey) {
                throw new Error(constants_1.KeyringControllerError.MissingCredentials);
            }
            const serializedKeyrings = yield Promise.all(__classPrivateFieldGet(this, _KeyringController_keyrings, "f").map((keyring) => __a {snip}
                const [type, data] = yield Promise.all([
                    keyring.type,
                    keyring.serialize(),

@gauthierpetetin gauthierpetetin added regression-prod-7.20.0 Regression bug that was found in production in release 7.20.0 regression-RC-7.20.0 and removed regression-prod-7.21.0 Regression bug that was found in production in release 7.21.0 regression-prod-7.22.0 Regression bug that was found in production in release 7.22.0 regression-prod-7.23.0 regression-prod-7.20.0 Regression bug that was found in production in release 7.20.0 labels Jun 28, 2024
Copy link

sentry-io bot commented Jul 15, 2024

Sentry Issue: METAMASK-MOBILE-2GBZ

Copy link

sentry-io bot commented Oct 18, 2024

Sentry Issue: METAMASK-MOBILE-2XWS

Copy link

sentry-io bot commented Oct 30, 2024

Sentry Issue: METAMASK-MOBILE-2H3W

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-Sentry Issue from Sentry needs-research regression-prod-7.26.0 Regression bug that was found in production in release 7.26.0 regression-RC-7.20.0 Sev2-normal An issue that may lead to users misunderstanding some limited risks they are taking team-accounts team-mobile-platform type-bug Something isn't working
Projects
Status: To be fixed
Status: To be fixed
Development

No branches or pull requests

5 participants