Five screens tell the user "Please enter your password." when the password field is empty. The private key export screen says "Password is required." for the identical condition.
src/popup/views/showPhrase.js:93 — "Please enter your password."
src/popup/views/confirmTx.js:410 — "Please enter your password."
src/popup/views/deleteWallet.js:54 — "Please enter your password."
src/popup/views/approval.js:514 — "Please enter your password."
src/popup/views/approval.js:623 — "Please enter your password."
src/popup/views/exportPrivkey.js:115 — "Password is required."
Both are full sentences, so this is not a RULES.md Language & Labeling violation; it is the same one-condition-two-wordings inconsistency that #172 fixed for the wrong-password message. Found while auditing the decryptWithPassword call sites for that issue and deliberately left out of scope there, which covered decryption failures only.
Implementation requirements
One wording for the empty-password condition on every screen that has one. "Please enter your password." is the majority wording and the natural choice; changing all six to something else is fine if there is a reason, stated in the PR body.
Strings only. No behaviour change.
The reserved error area must not shift at 360px width; measure, do not reason. "Please enter your password." is 28 characters and shorter than the 44-character message #172 measured at zero shift in the same containers, so this should be free — but the export screen's container is its own element.
Extend tests/passwordMessages.test.js, which already pins the wrong-password wording across the call sites, to cover this message too.
Definition of done
Every empty-password message in the popup is the same sentence.
Covered by a test that fails if one screen diverges.
No behaviour change.
No layout shift at 360px width, measured.
TODO.md updated in the same commit.
make check passes.
## Problem
Five screens tell the user `"Please enter your password."` when the password field is empty. The private key export screen says `"Password is required."` for the identical condition.
- `src/popup/views/showPhrase.js:93` — `"Please enter your password."`
- `src/popup/views/confirmTx.js:410` — `"Please enter your password."`
- `src/popup/views/deleteWallet.js:54` — `"Please enter your password."`
- `src/popup/views/approval.js:514` — `"Please enter your password."`
- `src/popup/views/approval.js:623` — `"Please enter your password."`
- `src/popup/views/exportPrivkey.js:115` — `"Password is required."`
Both are full sentences, so this is not a `RULES.md` Language & Labeling violation; it is the same one-condition-two-wordings inconsistency that [#172](https://git.eeqj.de/sneak/AutistMask/issues/172) fixed for the wrong-password message. Found while auditing the `decryptWithPassword` call sites for that issue and deliberately left out of scope there, which covered decryption failures only.
## Implementation requirements
- One wording for the empty-password condition on every screen that has one. `"Please enter your password."` is the majority wording and the natural choice; changing all six to something else is fine if there is a reason, stated in the PR body.
- Strings only. No behaviour change.
- The reserved error area must not shift at 360px width; measure, do not reason. `"Please enter your password."` is 28 characters and shorter than the 44-character message [#172](https://git.eeqj.de/sneak/AutistMask/issues/172) measured at zero shift in the same containers, so this should be free — but the export screen's container is its own element.
- Extend `tests/passwordMessages.test.js`, which already pins the wrong-password wording across the call sites, to cover this message too.
## Definition of done
- [ ] Every empty-password message in the popup is the same sentence.
- [ ] Covered by a test that fails if one screen diverges.
- [ ] No behaviour change.
- [ ] No layout shift at 360px width, measured.
- [ ] `TODO.md` updated in the same commit.
- [ ] `make check` passes.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Problem
Five screens tell the user
"Please enter your password."when the password field is empty. The private key export screen says"Password is required."for the identical condition.src/popup/views/showPhrase.js:93—"Please enter your password."src/popup/views/confirmTx.js:410—"Please enter your password."src/popup/views/deleteWallet.js:54—"Please enter your password."src/popup/views/approval.js:514—"Please enter your password."src/popup/views/approval.js:623—"Please enter your password."src/popup/views/exportPrivkey.js:115—"Password is required."Both are full sentences, so this is not a
RULES.mdLanguage & Labeling violation; it is the same one-condition-two-wordings inconsistency that #172 fixed for the wrong-password message. Found while auditing thedecryptWithPasswordcall sites for that issue and deliberately left out of scope there, which covered decryption failures only.Implementation requirements
"Please enter your password."is the majority wording and the natural choice; changing all six to something else is fine if there is a reason, stated in the PR body."Please enter your password."is 28 characters and shorter than the 44-character message #172 measured at zero shift in the same containers, so this should be free — but the export screen's container is its own element.tests/passwordMessages.test.js, which already pins the wrong-password wording across the call sites, to cover this message too.Definition of done
TODO.mdupdated in the same commit.make checkpasses.