disconnected-editing #6

Merged
joexo merged 13 commits from disconnected-editing into main 2026-11-12 21:23:19 +00:00
Owner
No description provided.
Replaces the sketch on offline-mode-design with what's settled since:
the database's list kept in storage like the local one, automatic
promotions queued but not counted, MySQL pull only, and no lock
between tabs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The database's list becomes a property like app.model.items, remote.shown
is derived on each read instead of kept, and only mutate changes order
while disconnected.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The modal blocks the page and takes the queue on Send or Discard; push
is ignored while a queue exists; squares count changes; only a lost
network queues, every other failure is an error; Go offline with a
queue asks first; promotions queue from tick(). Logout's warning stays
open, as logout happens on the user admin page.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A page never starts disconnected; push's full read on reconnecting waits
for Send or Discard; on MySQL a promotion queues without trying and the
user's next action tries, joining the queue's end; and a queue left by
a closed page is found when the model goes online.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A database error drops its change and the send goes on; a lost
connection stops it, puts the rest back at the front of the queue, and
MyDay goes on queuing. Several errors at once is out of scope.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Each change leaves the queue once sent, so a lost connection simply
leaves the rest; MySQL's modal says "also" and leaves out the action
that connected; Use local data discards a leftover queue; and only
app:db:loggedOut, the login gone, removes the stored list and queue.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
app.model.items is the one list, its key following the mode; remote
holds only the session, and the shown list with recurring items is
derived when drawn. The stored list stays in display order, by rank
within each group online, so resort() works the same online. With local
items, the model goes online only with the choice, and push starts then.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
joexo merged commit 80cf55ef54 into main 2026-11-12 21:23:19 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
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
joexo/myday!6
No description provided.