Keep Later plans conflict-safe across devices #378

Merged
rockachopa merged 1 commits from timmy/377-later-conflict-safe into main 2026-08-09 06:39:04 +00:00
Member

Closes #377

What changed

  • tag queued Later edits with the server revision they were based on
  • persist per-item change revisions, including restore tombstones
  • reject stale same-item intent while accepting unrelated operations in the same batch
  • adopt authoritative account state and show a clear cross-device conflict status
  • bump the offline shell so the updated sync client ships atomically

Verification

  • RED: stale same-item store test, stale receipt client test, API propagation test, UI status test, shell cache test
  • GREEN: pytest -q → 719 passed
  • git diff --check → clean
Closes #377 ## What changed - tag queued Later edits with the server revision they were based on - persist per-item change revisions, including restore tombstones - reject stale same-item intent while accepting unrelated operations in the same batch - adopt authoritative account state and show a clear cross-device conflict status - bump the offline shell so the updated sync client ships atomically ## Verification - RED: stale same-item store test, stale receipt client test, API propagation test, UI status test, shell cache test - GREEN: `pytest -q` → 719 passed - `git diff --check` → clean
rockachopa added 1 commit 2026-08-09 06:37:56 +00:00
fix: keep Later plans conflict-safe across devices (#377)
All checks were successful
CI / lint (pull_request) Successful in 41s
CI / build-release (pull_request) Successful in 4s
CI / release-candidate (pull_request) Has been skipped
27fc74ced6
rockachopa merged commit 56a9a0cba6 into main 2026-08-09 06:39:04 +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#378
No description provided.