Coordinate offline outboxes safely across dashboard tabs #243

Merged
rockachopa merged 1 commits from timmy/242-cross-tab-outbox-coordination into main 2026-08-07 23:35:25 +00:00
Member

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
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
rockachopa added 1 commit 2026-08-07 23:34:40 +00:00
feat: coordinate offline outboxes across tabs (#242)
All checks were successful
CI / lint (pull_request) Successful in 22s
CI / build-frontend (pull_request) Successful in 5s
ddd87e9051
rockachopa merged commit e0bc7271fa into main 2026-08-07 23:35:25 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: stackchain/stackchain-dashboard#243
No description provided.