Multiplayer Collaborative Canvas  ·  View 01 of 23  ·  Context and scope

System Context

Who edits, who watches, what the platform depends on, and the boundary it will not cross.

Editable source SVG draw.io All views
Clients Web editor local replica Mobile viewer People Designer edits live Stakeholder link, comment only Workspace admin Depends on Microsoft Entra ID Malware scanning uploaded assets Notification service Entitlements plan, seats Multiplayer Canvas Platform Live document sessions Downstream Search service Analytics estate metadata only Audit & support operations comments sharing rules socket read-only sign-in, tokens verdicts mentions limits index feed exports audit events Multiplayer Collaborative Canvas — System Context External / third party Person or role synchronous event / async batch Clients: web editor, desktop app (same replica) and mobile viewer. Out of scope: the rendering engine, design-system semantics, prototyping playback, plugin execution, billing. v 1.0 · owner Platform Architecture · date 2026-10

Decisions

  • The platform owns the document's state and its history, and nothing about what the document means. Shapes, components, design-system semantics and prototyping all live in the client; the platform sequences intent it does not interpret beyond structural validity.
  • Sharing is resolved inside the platform rather than by the product's own permission layer, because a revocation has to reach a socket that is already open — a decision that only works if the capability is bound at admission (view 22).
  • Assets never travel through the session: the document holds a content hash and the bytes move client-to-storage, which keeps a 100 MB image out of the ordering path (view 11).

Deliberately out of scope

  • The rendering engine and the editor's own undo UI — only the semantics of a shared undo are the platform's problem (view 10 of the requirement).
  • Plugin execution: the plugin host is a caller with a quota, not code the platform runs.
  • Billing and entitlements. The platform reads limits and never decides them.

Assumptions

  • 4 million monthly active editors, 11 million monthly viewers, 120,000 workspaces — a stated assumption, not a measurement.
  • Viewers outnumber editors by roughly three to one, which is what justifies giving them a separate distribution path.
  • Identity is federated to the workspace's own tenant; guest viewers arrive through link scope with no account.