Decision: draft debounce interval #4
Labels
No labels
bug
chore
feature
spike
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Blocks
#26 Create-once-then-replace sync engine + conflict detection
utilities/Logbook
#35 Draft autosave debounce → sync
utilities/Logbook
Reference
utilities/Logbook#4
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Decision #4 — pick the draft-autosave debounce interval and the background-sync frequency cap.
While a user edits an entry, changes are batched and pushed to Outline on an idle debounce (a single
editMode: replaceper tick). The prototype surfaces this to the user only as "Draft autosaves every few seconds"; it doesn't commit to a number.The trade-off
Two values to set:
What to decide
The concrete debounce value (or a small range) and the minimum inter-sync gap for the cap.
Blocks: the sync engine's debounce/WorkManager scheduling.
Recommendation: 4s idle debounce with a hard cap of one sync per 4s while a sheet is open. It sits in the middle of the proposed range, keeps "autosaves every few seconds" honest, and the cap prevents runaway calls. Publish always forces an immediate final tick regardless of the cap.
Source: Solution Design — Family App v1 §7 (doc vpBNbG4TsV), decision §13 #4.
Accept recommendation. The Outline instance is on a mid-tier VPS, with not a lot of traffic.