-
Notifications
You must be signed in to change notification settings - Fork 3
Offline write queue (notes + mark-as-read) #125
Copy link
Copy link
Open
Description
Parent PRD
Depends on
#124 (offline read mode must be in place)
Summary
All write operations (create note, edit note, mark post as read) made while offline are queued via IsPendingSync = true and replayed in order when connectivity is restored. Soft-delete support included.
Write operations to queue
- Create note (new
NotewithIsPendingSync = true) - Edit note (updated
NotewithIsPendingSync = true,DateModified = UtcNow) - Mark post as read (
Postwithis_read = true,IsPendingSync = true,DateModified = UtcNow) - Delete note (soft-delete:
IsDeleted = true,IsPendingSync = true)
Queue behaviour
- Writes are accepted immediately and stored in SQLite
- Order of writes preserved (by
DateModified) - User sees their changes instantly in the UI (optimistic local state)
Acceptance Criteria
- Create note while offline → stored locally with
IsPendingSync = true - Edit note while offline → stored locally with updated
DateModified - Mark-as-read while offline → stored locally with
IsPendingSync = true - Delete note while offline → soft-deleted locally (
IsDeleted = true,IsPendingSync = true) - UI reflects changes immediately without waiting for sync
- Pending items visible via
ILocalDataService.GetPendingSyncPostsAsync/NotesAsync()
Stories from PRD
User stories 4, 5, 6, 18
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Projects
Status
Backlog
Status
No status