Guard / API
foldkit-guard/sync
foldkit-guard/sync: a guard set's rules on foldkit-sync's edits to a
server-owned Entity. A cell edit is a write to a member of a row, through
the journal instead of a Remote mutation, so it answers to the same rules.
Writes are checked in two halves, by where each can run. What needs only
the principal (always, the row's and each member's Update principal
guards) is the journal's authorize, under its lock. What reads the row is
the exchange's admit, before the journal sees the edit, reading the row
through the Entity's guarded Source.
Reads are one audience: every replica that opens a document receives every
edit committed to it. So a document names its readers, who alone may open
it, and is refused where it is declared when an edit could carry a value to
someone the Entity's Read rules would not show it to.
Namespaces
Interfaces
CellChange | One cell's change, as foldkit-sync/entity's Change carries it. |
GuardedDocument | A document of edits to an Entity's members, and who may open it. |