Atlas
Start with the state you need to share: a counter, register, set, map, sequence, or larger system.
Open the causal machinery when a structure's merge rule raises a question.
Structures
Replicated data types and the tradeoffs they make.
-
Multi-value registers
Read nowRetain concurrent writes, then replace only the versions a later writer has observed.
Requires: Vector clocks, Dots and causal context
-
Observed-remove sets
Read nowRemove observed addition tags while preserving a concurrent add and rejecting stale replay.
Requires: Dots and causal context
Mechanisms
The causal bookkeeping that explains each structure's behavior.
-
Dots and causal context
Read nowTrack one event and the exact history that has observed it.
-
Local history
Read nowSeparate the events at a replica from the history it learns through messages.
-
Partial order
Read nowFollow causal paths without forcing independent events into a shared sequence.
Requires: Local history
-
Lamport clocks
Read nowOrder causal predecessors with one counter without mistaking scalar order for causality.
Requires: Partial order
-
Vector clocks
Read nowCompare every replica component to distinguish causal order from concurrency.
Requires: Lamport clocks
Failure modes
Reproducible bugs and the mechanisms that cause or prevent them.
No sheets here yet.
Systems
Individual mechanisms connected into larger architectures.
No sheets here yet.
Only completed sheets link to routes. Planned sheets mark the next stops, not unfinished pages.