MetaMask / MetaMask/metamask-extension
[Bug]: Disconnecting dapp via MetaMask UI does not reject pending transactions
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
**Describe the bug**
When a user disconnects a dapp through Settings → Connected Sites, any pending transaction approvals from that dapp remain open instead of being auto-rejected. The user can still approve a transaction for a dapp that is no longer connected. Disconnecting via the RPC method (wallet_revokePermissions) correctly rejects pending approvals only the UI disconnect path leaves the confirmation open.
**Screenshots/Recordings**
https://github.com/user-attachments/assets/7d1dc052-c05f-41ce-b688-377a355fcc27
**Steps to reproduce**
1. Open MM in full screen view and open the dapp connections from the hamburger menu
2. Connect to dapp
3. initiate transaction
4. leave approval pending
5. Go to MM home page
6. Connected Sites
7. Disconnect
**Error messages or log output**
```shell
```
**Where was this bug found?**
Internal release testing
**Version**
13.20.0
**Build type**
None
**Browser**
Chrome
**Operating system**
MacOS
Contributor guide
Research direction
Start by reproducing the issue in the MetaMask extension: leave a transaction approval pending, then disconnect the dapp through Settings → Connected Sites. Compare that path with wallet_revokePermissions, and consider the issue complete when the UI disconnect also rejects the pending approval and no longer allows it to be approved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- blockchain
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100