Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ events. The `willow-state` crate is pure — zero I/O, zero networking.

- **Event**: carries unique ID, parent state hash, author PeerId,
timestamp hint, and an `EventKind` mutation variant.
- **EventKind**: 17 variants covering server structure, roles,
- **EventKind**: variants covering server structure, roles,
fine-grained permissions, chat, identity, and encryption.
- **ServerState**: complete shared state derivable from event replay.
Computes a `StateHash` (SHA-256) for divergence detection.
Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ accounts, no middlemen. End-to-end encrypted by default.
| `willow-identity` | Ed25519 identity, message signing, profiles |
| `willow-messaging` | Chat messages, HLC ordering, message store |
| `willow-crypto` | E2E encryption (ChaCha20-Poly1305, X25519) |
| `willow-channel` | Servers, channels, roles, permissions |
| `willow-network` | iroh-based P2P networking (native + WASM) |
| `willow-actor` | Lightweight actor framework (dual-target native + WASM) |
| `willow-common` | Shared wire protocol types (WireMessage, worker types) |
Expand Down Expand Up @@ -86,7 +85,7 @@ event log *is* the data.
- **`ServerState`** is the materialized view — rebuilt deterministically by
topologically sorting all events and replaying them through `materialize()`.
Peers converge to identical state when they have the same DAG.
- **22 `EventKind` variants** cover server structure (create/delete/rename
- **`EventKind` variants** cover server structure (create/delete/rename
channels and roles), chat (messages, edits, deletes, reactions, pins),
permissions (grant/revoke), identity (profiles), encryption (key rotation),
and governance (proposals and votes).
Expand Down