# CRDTs

Record: `arch:crdts`
Kind: mechanism
Layer: [Causality Core](https://banes-lab.com/records/layer/causality-core.md)
Severity: contextual
Scope: distributed state, replication, convergence
Canonical: https://banes-lab.com/ontology#arch-crdts

## Repair

- Refactored by: Model State as a CRDT
- Detected by: lost updates under concurrent replication
- Violated by: concurrent replica edits silently overwriting each other
- Measured by: merge-conflict data-loss rate
- Enforced by: replication design review

## requires

- [Commutative Merge](https://banes-lab.com/records/lex/commutative-merge.md)

## reinforces

- [Eventual Consistency](https://banes-lab.com/records/arch/eventual-consistency.md)
- [Causal Consistency](https://banes-lab.com/records/arch/causal-consistency.md)

## enables

- [Conflict-Free Replica Convergence](https://banes-lab.com/records/lex/conflict-free-replica-convergence.md)

## tensions-with

- [Metadata Overhead](https://banes-lab.com/records/lex/metadata-overhead.md)
- [Last-Write-Wins Overwrite](https://banes-lab.com/records/lex/last-write-wins-overwrite.md)

## tensions

- [CRDTs Metadata Overhead](https://banes-lab.com/records/tension/crdts-metadata-overhead.md)
- [CRDTs Last-Write-Wins Overwrite](https://banes-lab.com/records/tension/crdts-last-write-wins-overwrite.md)
