thunderbird / thunderbird/stormbox
SharedWorker death leaves the app hung until a manual reload
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 105
- Forks
- 9
- Avg merge
- 18h 18m
- Merged PRs (30d)
- 16
Description
Problem
The OS can reclaim the SharedWorker process while the tab's document stays alive — common on mobile after the browser spends time in the background. Nothing notifies the page: outstanding RPCs never settle, new ones post into a void, and the user gets a spinner with no explanation. Only a manual refresh recovers.
Chrome for Android's own release notes state SharedWorker instances "might terminate unexpectedly, without notifying users or web developers."
Expected
- Detect the worker's death without relying on a heartbeat.
- Reject outstanding RPCs with a distinguishable error instead of hanging them.
- Reconnect in place — no reload, no sign-in screen — and restart sync when the worker process was actually replaced.
- Tell the user while recovery is in progress, and when it has given up.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by locating the SharedWorker RPC and sync lifecycle, then define coverage for worker death, outstanding and new RPCs, reconnection, sync restart, and user-visible recovery failure states.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend, web-dev
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100