dependents-index-derived-on-load
OUT premise
The `node.dependents` set is never persisted to SQLite; it is rebuilt by walking all justification antecedents and outlists during `load()`.
Summary
The system doesn't store reverse-dependency links in the database. Instead, every time the database is loaded, it reconstructs which beliefs depend on which by scanning all justification records. This means the dependency graph is always consistent with the actual justifications but costs extra work at load time, and any bug in the rebuild logic could silently break dependency tracking.
Dependents
These beliefs depend on this one:
- dependents-index-is-fragile-denormalization — The dependents set is a manually-maintained denormalized reverse index that is never persisted and must be rebuilt on every load, creating a consistency obligation on all mutation paths
- persistence-is-snapshot-not-incremental — The storage layer operates as a full snapshot: save replaces all rows, load trusts stored values without re-propagation, and the dependents index is rebuilt from scratch
Details
| Source | entries/2026/04/23/reasons_lib-storage.md |