local RBAC — three independent users, one page

Each frame is a separate instance of the app (a different machine) loaded from the same index.html. They never talk to each other — collaboration happens only by exchanging difflogs (a delta of signed ops stamped with a content hash of the base state).

Device 1 — admin
Device 2 — writer
Device 3 — reader