dag-resolve/README.md
2024-02-16 21:59:38 -08:00

663 B

dag-resolve

Playing around with protocol design yet again.

architecture

Rooms resemble an event-sourced database, or the elm architecture. The main difference is that like matrix, the events form a directed acyclic graph (dag) and is replicated across nodes. The root event defines hashing and signing algorithms, along with a resolver. The resolver implements access control, tiebreaking, and defines a (prev_state, event) -> new_state function.

This is currently a work in progress and there are definitely some undecided things, eg. how the state is represented (currently a key/value table, but maybe a relational or graph database could be good?)