MetaMask / MetaMask/metamask-extension

[Bug]: Loading forever - MetaMask cannot start after blocking and unblocking request. Closing opening browser doesn't work but clicking Re-start works

Open
#37,046 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

regression-prod-13.4.0 Sev2-normal team-extension-platform type-bug
Dominant language
TypeScript
Stars
13.2k
Forks
5.6k
Avg merge
2d 5h
Merged PRs (30d)
451

Description

### Describe the bug

I found a way to reproduce the loading spinner/cannot start MetaMask and cannot recover from that state when closing opening the browser.

If you block on of the initial script requests (ie `use-snow.js`), the wallet cannot start (expected)
But then, if you unblock that, and try again, the wallet cannot start. Then if you close on re-open the browser, we see the same result.

I've seen that if I wait until the Restart screen and click that, still nothing happens, but at the second trial, the wallet then recovers (the request is sent).

I'm not sure how (if) the first case can be achieved without manually blocking the request (maybe some slowness into the computer)? and then this causing the infinite spinner issue for some users. (Those in which clicking the Reload button works)

https://github.com/user-attachments/assets/56455436-3fed-4c9b-9def-f5f6c8780693

### Expected behavior

_No response_

### Screenshots/Recordings

_No response_

### Steps to reproduce

1. Open network requests
2. Start MM
3. See the `snow.js` request
4. Right click and block the URL
5. Now restart MM
6. Click MM icon
7. See MM never loads, and eventually we get the page error
8. Now unblock the request
9. Try again
10. See MM never loads, and eventually we get the page error
11. CLose the browser completely
12. Re-open it
13. Try again
14. See MM never loads, and eventually we get the page error
15. Click Reload/Restart --> still cannot recover
16. Wait again
17. Click Reload/Restart
18. Now MM get's back to normal

### Error messages or log output

```shell

```

### Detection stage

In production (default)

### Version

13.4.0

### Build type

None

### Browser

Chrome

### Operating system

Linux

### Hardware wallet

_No response_

### Additional context

_No response_

### Severity

_No response_

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the sequence in the issue: block the `snow.js` request, restart MetaMask, unblock it, and retry across a browser restart. The issue provides no source files, tests, logs, or entry point; done means the extension recovers reliably after the request is unblocked and Reload/Restart is used.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.