Continue mobile checklist progress across offline changes #909

Closed
opened 2026-08-15 18:20:08 +00:00 by timmy · 0 comments
Owner

Problem

After one offline checklist toggle, the issue sheet marks the queued body pending and disables every remaining checkbox. A mobile operator cannot complete a multi-step checklist during an outage. Queueing another independent full-body revision would also conflict with the first delivery.

Slice

Keep the pending checklist interactive and atomically coalesce each subsequent offline toggle into one durable issue-content intent for the same account/repository/issue. Preserve the original server revision and replace the operation identity/body in both foreground and background stores before confirming the UI. Reconnect delivers only the latest combined body.

Acceptance

  • Multiple offline checklist taps remain available at mobile touch size and produce the latest combined visible body.
  • Durable storage contains exactly one account-bound issue-content intent with the original expectedUpdatedAt.
  • Reload restores that body and remains editable.
  • Reconnect sends one revision-checked PATCH; conflict and failed replacement preserve recoverable local state.
  • Behavioral focused tests and full suite pass.

This is distinct from #905 (online checklist toggles) and #907 (first offline durable toggle).

## Problem After one offline checklist toggle, the issue sheet marks the queued body pending and disables every remaining checkbox. A mobile operator cannot complete a multi-step checklist during an outage. Queueing another independent full-body revision would also conflict with the first delivery. ## Slice Keep the pending checklist interactive and atomically coalesce each subsequent offline toggle into one durable `issue-content` intent for the same account/repository/issue. Preserve the original server revision and replace the operation identity/body in both foreground and background stores before confirming the UI. Reconnect delivers only the latest combined body. ## Acceptance - Multiple offline checklist taps remain available at mobile touch size and produce the latest combined visible body. - Durable storage contains exactly one account-bound `issue-content` intent with the original `expectedUpdatedAt`. - Reload restores that body and remains editable. - Reconnect sends one revision-checked PATCH; conflict and failed replacement preserve recoverable local state. - Behavioral focused tests and full suite pass. This is distinct from #905 (online checklist toggles) and #907 (first offline durable toggle).
timmy self-assigned this 2026-08-15 18:20:08 +00:00
timmy closed this issue 2026-08-15 19:05:23 +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#909
No description provided.