Preferences → Separate Editing now actually drives document reader
behavior, not just a saved-but-inert server setting:
- On (default, today's existing behavior): unchanged — explicit
Edit/Done toggle, save on Done.
- Off: no Edit/Done affordance — document is always editable directly
(no per-document permission field exists server-side to pre-check
against, so an unauthorized edit just fails to save rather than
being blocked client-side). Edits autosave 1.5s after typing pauses,
through the same offline-queue-aware updateDocument path the
explicit save already used. Guarded against firing a pointless save
right after opening a document, and against clobbering newer
keystrokes typed while a debounced save is still in flight.
Prerequisite: SessionStore now caches OutlineUserPreferences to
UserDefaults, loaded on launch before any network call — this needed
to stay valid on a cold offline launch, not just live in memory from
the last successful fetch. Still read-only while offline, unchanged.