Great new work from : inkandswitch.com/cambria.html
Local-first software is a great aspiration, but iterating on decentralized data structures is indeed a nightmare I've been living with as I build . Excited for these ideas on more predictable data evolution.
Conversation
I wonder how to test / formally model the consistency property you'd want the lenses to describe.
3
7
I've maybe made the problem needlessly hard on myself by using content-addressable identifiers for CRDT log structures (including their parent pointers). Did that so I could serialize to IPFS or similar, but it means I have to rebase the whole tree whenever the structure changes.
Replying to
I cain’t say I know nuthin’ bout this here perdicament o’yours, but minds me bit of that there .
GIF
read image description
ALT
1
1
Replying to
If you perform the conversion on read (and after validating the hash) as suggested in the article I think this should be fine?
1
The problem is the log’s parent ID, which is the hash of the parent’s contents at write time. You can’t run the lens on the ID; you need some complex version-specific lookup table.
1
Show replies
Replying to
Ah yes, that was how we wound up using hypercores, which have stable names over time. Let's have a talk about this -- we've done quite a bit of work and may be able to help you avoid falling into some of the traps we did.
1
1
4
Ah! Thank you. I will go read that paper and then try to write you an email. :)
1
Show replies




