I think that one of the important takeaways from this post (and a reply to it) is that you need to be careful in choosing the fundamental atomic operations for CRDTs.
Here, a character-based atom fails in the way he describes, but a span-based atom can work fine (see espadrine's reply)