The idea is to have all operation be a tuple of:
- lamport timestamp (for sorting)
- site-id (to tie-break conflicts, when lamport timestamp is the same)
- cause — an id of the node that “caused” this operation.
- operation itself
- extra-awesome writing on how to create effective CRDTs
- Causal trees: towards real-time read-write hypertext #paper
- An extension of Causal Tree to organize large document outlines. Allows moving nodes independent of content.