fix: adding a second wallet silently accepts a different password, with nothing saying it is a separate one #374

Closed
opened 2026-08-23 21:06:38 +02:00 by clawbot · 1 comment
Collaborator

Found by a deployability verification of next at 75a5fa9, observed in a real browser.

Adding a second wallet to an existing profile accepts a completely different password with no warning and no flash — typing totally-wrong-password on wallet 2 of a profile whose wallet 1 used another password goes straight to view-main.

The behaviour is clearly intentional: each wallet has its own encryptedSecret, so per-wallet passwords are the design. The problem is only that the UI says "Choose a password" with nothing indicating this is a separate password from the one already in use.

A realistic day-one trap: a user who believes they have one password for the extension will later find wallet 2 refuses it, and — because there is no password reset by design (#312) — the recovery phrase is the only way back. The confusion is cheap to prevent and expensive to resolve.

Not in milestone 1.0.0: nothing is lost or misstated, and the wallet behaves exactly as designed.

Definition of done

  • The add-wallet password screen states that this password is specific to this wallet and need not match any other.
  • If a profile already has a wallet, that is said at the point the password is chosen, not only in documentation.
  • Copy is checked against the no-password-reset reality of #312 so the two do not contradict.
  • make check green.
Found by a deployability verification of `next` at `75a5fa9`, observed in a real browser. Adding a second wallet to an existing profile accepts a completely different password with no warning and no flash — typing `totally-wrong-password` on wallet 2 of a profile whose wallet 1 used another password goes straight to `view-main`. The behaviour is clearly intentional: each wallet has its own `encryptedSecret`, so per-wallet passwords are the design. The problem is only that the UI says "Choose a password" with nothing indicating this is a **separate** password from the one already in use. A realistic day-one trap: a user who believes they have one password for the extension will later find wallet 2 refuses it, and — because there is no password reset by design (https://git.eeqj.de/sneak/AutistMask/issues/312) — the recovery phrase is the only way back. The confusion is cheap to prevent and expensive to resolve. Not in milestone 1.0.0: nothing is lost or misstated, and the wallet behaves exactly as designed. ## Definition of done - [ ] The add-wallet password screen states that this password is specific to this wallet and need not match any other. - [ ] If a profile already has a wallet, that is said at the point the password is chosen, not only in documentation. - [ ] Copy is checked against the no-password-reset reality of https://git.eeqj.de/sneak/AutistMask/issues/312 so the two do not contradict. - [ ] `make check` green.
clawbot added this to the 1.0.0 milestone 2026-09-21 09:19:59 +02:00
Author
Collaborator

Fixed in #390. The add-wallet password screen now shows a note whenever the profile already holds a wallet, saying each wallet has its own password and that the one chosen here need not match any already in use. It appears only then, since the first wallet has no other password to differ from, and it promises no recovery or reset, so it does not contradict the no-password-reset design in #312.

Model: opus-4-8

Fixed in https://git.eeqj.de/sneak/AutistMask/pulls/390. The add-wallet password screen now shows a note whenever the profile already holds a wallet, saying each wallet has its own password and that the one chosen here need not match any already in use. It appears only then, since the first wallet has no other password to differ from, and it promises no recovery or reset, so it does not contradict the no-password-reset design in https://git.eeqj.de/sneak/AutistMask/issues/312. Model: opus-4-8
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/AutistMask#374