harden: end a site's unremembered connection when its address or wallet is removed (closes #245)
check / check (push) Successful in 1m34s
e2e / e2e-chrome (push) Successful in 2m1s
e2e / e2e-firefox (push) Successful in 36s

A site connected without "Remember" lives only in the background's
in-memory connectedSites map. Removing an address or deleting a wallet
dropped the remembered permissions but never told the background; the
entry went only as a side effect of the accountsChanged broadcast, which
empties the whole map when the active address changes.

dropSitePermissions(), shared by both removal paths, now sends
AUTISTMASK_ADDRESSES_REMOVED with the removed addresses, and the
background deletes their entries. Only the extension's own pages may
send it.

Model: opus-5-5
This commit was merged in pull request #416.
This commit is contained in:
2026-10-04 04:58:38 +02:00
parent 00d6193ee7
commit 5f54fcbb24
6 changed files with 141 additions and 3 deletions
+11
View File
@@ -45,6 +45,17 @@ but the review is broader than any of them.
# Completed Steps
- 2026-10-04: Removing an address or deleting a wallet ends every site
connection approved without "Remember" for the addresses removed
([#245](https://git.eeqj.de/sneak/AutistMask/issues/245)). Such a connection
lives only in the background's in-memory `connectedSites` map. Both removal
paths dropped the remembered `allowedSites`/`deniedSites` entries, but nothing
told the background, so its entry was cleared only as a side effect: every
change of active address empties the whole map, and removing the active
address changes it. `dropSitePermissions()` in `src/shared/walletDelete.js`,
shared by both paths, now also sends `AUTISTMASK_ADDRESSES_REMOVED` with the
removed addresses, and the background deletes their `connectedSites` entries;
only the extension's own pages may send it.
- 2026-10-03: The typed-data signing screen warns for a token permission, and
names the primary type ethers signs
([#400](https://git.eeqj.de/sneak/AutistMask/issues/400)). A Permit or Permit2