Found by a deployability verification of next at 75a5fa9, observed in a real browser.
If storage becomes unreadable while the popup is already open, the popup keeps rendering the stale profile — view-main with the old balance — instead of moving to the recovery screen added by #311. Reopening the popup recovers correctly.
Benign as it stands: nothing can be signed without a password, and the stale view is read-only. But it is the #311 family — the recovery screen exists precisely so the user is never left looking at something untrue about their wallet, and here they are, until they happen to reopen.
Not in milestone 1.0.0: it requires storage to fail underneath a live popup, and the failure is read-only and self-correcting on reopen.
Definition of done
A popup that discovers unreadable state while open moves to the recovery screen rather than continuing to render the last good profile.
It must not thrash: a transient read failure should not flap the user between views.
Test: corrupt storage under an open popup and assert the view changes. Fails against current head — state the mutation and observed result.
make check green.
Found by a deployability verification of `next` at `75a5fa9`, observed in a real browser.
If storage becomes unreadable **while the popup is already open**, the popup keeps rendering the stale profile — `view-main` with the old balance — instead of moving to the recovery screen added by https://git.eeqj.de/sneak/AutistMask/issues/311. Reopening the popup recovers correctly.
Benign as it stands: nothing can be signed without a password, and the stale view is read-only. But it is the https://git.eeqj.de/sneak/AutistMask/issues/311 family — the recovery screen exists precisely so the user is never left looking at something untrue about their wallet, and here they are, until they happen to reopen.
Not in milestone 1.0.0: it requires storage to fail underneath a live popup, and the failure is read-only and self-correcting on reopen.
## Definition of done
- [ ] A popup that discovers unreadable state while open moves to the recovery screen rather than continuing to render the last good profile.
- [ ] It must not thrash: a transient read failure should not flap the user between views.
- [ ] Test: corrupt storage under an open popup and assert the view changes. Fails against current head — state the mutation and observed result.
- [ ] `make check` green.
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.
Found by a deployability verification of
nextat75a5fa9, observed in a real browser.If storage becomes unreadable while the popup is already open, the popup keeps rendering the stale profile —
view-mainwith the old balance — instead of moving to the recovery screen added by #311. Reopening the popup recovers correctly.Benign as it stands: nothing can be signed without a password, and the stale view is read-only. But it is the #311 family — the recovery screen exists precisely so the user is never left looking at something untrue about their wallet, and here they are, until they happen to reopen.
Not in milestone 1.0.0: it requires storage to fail underneath a live popup, and the failure is read-only and self-correcting on reopen.
Definition of done
make checkgreen.