In the course of building the demo todo list local-first app, I've found that different CRDT libraries have different assumptions about the data access pattern you're using. Automerge and Yjs prioritize text editing, but Automerge assumes a JSON interaction whereas Yjs assumes composable data structures. CR-sqlite and Evolu both presume