network-mutations-are-audited-and-index-consistent
IN derived (depth 1)
Every network mutation simultaneously maintains dual invariants: the audit log receives a timestamped event providing historical traceability, and the dependents reverse index is kept consistent ensuring correct future propagation.
Summary
Every change to the belief network guarantees two things at once: a timestamped record is appended so you can trace what happened and when, and the internal reverse index stays accurate so future propagation decisions are correct. This means the system never silently drops history and never operates on stale dependency information.
Justifications
SL — Every mutation maintains both observability (audit log) and structural consistency (dependents index) as co-invariants
Antecedents (all must be IN):
- network-mutations-append-to-audit-log — Every network mutation records a timestamped event in `self.log`, an append-only list that serves as the propagation audit trail.
- every-network-mutation-maintains-dependents — After any public mutation method on `Network` (`add_node`, `retract`, `assert_node`, `add_justification`, `supersede`, `challenge`, `defend`, `convert_to_premise`, `add_nogood`, `summarize`), `verify_dependents()` returns an empty list.
Dependents
These beliefs depend on this one:
- mutations-are-atomic-audited-and-index-consistent — Every network mutation achieves three simultaneous guarantees: transactional atomicity (context-managed load/save with write-flag gating), historical auditability (timestamped audit log entries), and structural consistency (dependents index updated synchronously) — forming a complete mutation-safety contract.
- mutations-are-observable-audited-and-index-consistent — Every network mutation achieves triple-layered traceability: callers receive structured before/after diffs at the API level, the internal audit log records timestamped events for historical analysis, and the dependents index is simultaneously maintained — providing both external and internal observability.
- network-state-is-extensible-and-consistently-tracked — Network state management is both extensible (metadata carries all lifecycle state — retraction flags, stale reasons, challenges, access tags, supersession — as a universal key-value mechanism) and consistently tracked (every mutation maintains the audit log and dependents index simultaneously), ensuring new state dimensions can be added without compromising existing consistency guarantees