Add mobile pull-to-refresh for My Work #1002

Closed
opened 2026-08-17 05:25:25 +00:00 by rockachopa · 0 comments
Member

Problem

On phones, refreshing My Work requires opening Menu → Refresh or Live data status → Refresh now. The task-first Home surface has no direct one-handed refresh gesture after app resume or network recovery.

Evidence

  • frontend/index.html exposes refresh only through secondary controls.
  • frontend/context-poller.js already provides bounded, single-flight forced refresh and retained snapshot behavior.
  • All 998 historical issue/PR titles and the latest 120 commits were checked; no pull-to-refresh, swipe-refresh, or refresh-gesture behavior exists. Adjacent #994 made Home task-first; this adds the missing direct recovery interaction rather than repeating it.

Acceptance criteria

  • At phone widths, a vertical pull beginning at page scroll position zero on unobstructed My Work reveals an accessible status indicator.
  • Releasing beyond a bounded threshold starts exactly one forced context refresh.
  • Short/horizontal gestures, interactive controls, horizontal scrollers, open overlays, non-top scroll position, and desktop widths do not refresh.
  • Concurrent pulls remain single-flight; success and offline/failure outcomes are announced while retained work stays visible.
  • Reduced-motion users do not receive animated movement.
  • The controller is included in the packaged offline-capable feature bundle and covered by behavioral and release tests.
## Problem On phones, refreshing My Work requires opening Menu → Refresh or Live data status → Refresh now. The task-first Home surface has no direct one-handed refresh gesture after app resume or network recovery. ## Evidence - `frontend/index.html` exposes refresh only through secondary controls. - `frontend/context-poller.js` already provides bounded, single-flight forced refresh and retained snapshot behavior. - All 998 historical issue/PR titles and the latest 120 commits were checked; no pull-to-refresh, swipe-refresh, or refresh-gesture behavior exists. Adjacent #994 made Home task-first; this adds the missing direct recovery interaction rather than repeating it. ## Acceptance criteria - At phone widths, a vertical pull beginning at page scroll position zero on unobstructed My Work reveals an accessible status indicator. - Releasing beyond a bounded threshold starts exactly one forced context refresh. - Short/horizontal gestures, interactive controls, horizontal scrollers, open overlays, non-top scroll position, and desktop widths do not refresh. - Concurrent pulls remain single-flight; success and offline/failure outcomes are announced while retained work stays visible. - Reduced-motion users do not receive animated movement. - The controller is included in the packaged offline-capable feature bundle and covered by behavioral and release tests.
timmy was assigned by rockachopa 2026-08-17 05:25:25 +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#1002
No description provided.