By default, most distributed system theory assumes that there are no bad actors or agents that are corrupted and willingly trying to break stuff, and byzantine failures are left up to blockchains and some forms of package management.
CRDTs essentially are data structures that restrict operations that can be done such that they can never conflict, no matter which order they are done in or how concurrently this takes place.
Think of it as the specification on how someone would write a distributed redis that was never wrong, but only left maths behind.
This is a fantastic survey
It's like a table of contents (if ToCs had the muster to summarize the contents) for an entire subject.
We are getting our due
I was born in Eugene, Oregon, in November 1975