add one browser-wide flush lease per offline issue/message queue using Web Locks with an expiring fallback
coordinate reconnect and Send now paths so tabs cannot submit the same operation concurrently
broadcast queue changes so Drafts refreshes across open tabs without polling
precache the coordinator in the offline shell and document takeover behavior
Verification
RED: new cross-tab coordinator tests failed before implementation (missing coordinator; retry/flush race made 2 requests)
focused: 34 passed in 3.04s
full: 399 passed in 12.43s
syntax/diff checks: clean
Closes #242
## What changed
- add one browser-wide flush lease per offline issue/message queue using Web Locks with an expiring fallback
- coordinate reconnect and Send now paths so tabs cannot submit the same operation concurrently
- broadcast queue changes so Drafts refreshes across open tabs without polling
- precache the coordinator in the offline shell and document takeover behavior
## Verification
- RED: new cross-tab coordinator tests failed before implementation (missing coordinator; retry/flush race made 2 requests)
- focused: `34 passed in 3.04s`
- full: `399 passed in 12.43s`
- syntax/diff checks: clean
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.
Closes #242
What changed
Verification
34 passed in 3.04s399 passed in 12.43s