Multiplayer Collaborative Canvas · View 19 of 23 · Operations
Decisions
- A session is created by the first client and released 60 s after the last one leaves, with a final checkpoint on the way out. Idle documents therefore cost storage and nothing else.
- Release and host loss enter the same ring: a clean release writes its snapshot first, a loss does not, and the difference is only how much log the next host replays (ADR-10).
- The epoch increments on every re-host, which is what makes the previous host's writes rejectable forever rather than only during the handover (ADR-03).
Consequences
- Session placement is cheap and frequent, so the platform must tolerate thousands of sessions starting and ending per second at peak — placement is a lease claim, not a scheduling decision.
- Because sessions are short-lived, a code rollout can be a drain rather than a migration (view 20).
Assumptions
- 60 s idle grace; checkpoint every 30 minutes of activity and on release.