Recover progressive mobile identity after partial live snapshots #1431

Closed
opened 2026-08-26 12:28:55 +00:00 by timmy · 0 comments
Owner

Problem

A successful /api/v1/live response can contain healthy sections while context is degraded or null. The progressive snapshot broker currently caches that identityless response forever. Before optional hydration, Human Gates then cannot recover and My Work reports a false empty queue. The shared poller also waits for healthy-section freshness instead of the earlier failed-section retry deadline.

User value

On a transient partial cold launch, mobile Work, Queues, and Human Gates should show a truthful reconnecting state and recover through one coalesced shared retry without a page reload or request fan-out.

Acceptance criteria

  • Identity-required broker acquisition rejects an unusable cached snapshot and coalesces concurrent recovery into one request.
  • Progressive My Work preserves prior cards and reports Assigned work is reconnecting… when context is degraded or absent; it never fabricates inbox zero.
  • Mixed healthy/degraded snapshots retry at the earlier server-advertised retry deadline.
  • Human Gates can retry identity and open before optional hydration.
  • Service worker ships the corrected progressive assets atomically.
  • Focused tests, full pytest suite, deterministic release build, and packaged browser journey pass.

Non-duplication evidence

All 718 historical issue titles and the recent main history were inspected. #1425 introduced shared cold-snapshot coalescing and only retries rejected flights; #1429 added backend section-isolated deadlines. Neither handles an HTTP-200 identityless broker value, false-empty progressive rendering, or mixed-section retry timing. No open eligible issue exists; all eight open issues are assigned to other humans.

## Problem A successful `/api/v1/live` response can contain healthy sections while `context` is degraded or null. The progressive snapshot broker currently caches that identityless response forever. Before optional hydration, Human Gates then cannot recover and My Work reports a false empty queue. The shared poller also waits for healthy-section freshness instead of the earlier failed-section retry deadline. ## User value On a transient partial cold launch, mobile Work, Queues, and Human Gates should show a truthful reconnecting state and recover through one coalesced shared retry without a page reload or request fan-out. ## Acceptance criteria - Identity-required broker acquisition rejects an unusable cached snapshot and coalesces concurrent recovery into one request. - Progressive My Work preserves prior cards and reports `Assigned work is reconnecting…` when context is degraded or absent; it never fabricates inbox zero. - Mixed healthy/degraded snapshots retry at the earlier server-advertised retry deadline. - Human Gates can retry identity and open before optional hydration. - Service worker ships the corrected progressive assets atomically. - Focused tests, full pytest suite, deterministic release build, and packaged browser journey pass. ## Non-duplication evidence All 718 historical issue titles and the recent main history were inspected. #1425 introduced shared cold-snapshot coalescing and only retries rejected flights; #1429 added backend section-isolated deadlines. Neither handles an HTTP-200 identityless broker value, false-empty progressive rendering, or mixed-section retry timing. No open eligible issue exists; all eight open issues are assigned to other humans.
timmy self-assigned this 2026-08-26 12:28:55 +00:00
Sign in to join this conversation.
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#1431
No description provided.