GraphReFly reactive data structures (M5.A — D177/D178/D179).
Four reactive structures backed by pluggable backends, integrated at the Core level (no Graph dependency required):
- [
ReactiveLog] — append-only log with optional ring-buffer cap - [
ReactiveList] — ordered list with positional insert/pop - [
ReactiveMap] — key-value map with set/delete operations - [
ReactiveIndex] — sorted index with primary key lookup + secondary sort
Each structure owns a Core state NodeId and emits DIRTY→DATA snapshots
on every mutation. Optional mutation_log companions record typed
BaseChange<XxxChange<T>> deltas for op-log changesets (Phase 14).
Default backends use Vec<T> / HashMap<K, V>. imbl-backed persistent
backends are deferred until bench evidence justifies (D178).
CRDT-backed variants (yrs / automerge / loro / diamond-types) are post-1.0 work, gated behind feature flags.