operational-integrity-survives-all-graph-states

OUT derived (depth 5)

End-to-end operational integrity holds across all semantic edge cases — including vacuous premises, asymmetric absence, and empty antecedents — only when the dependents graph is consistent and propagation handles all node references safely.

Summary

The system can be trusted to work correctly even in tricky edge cases — like when a justification has no antecedents, or when referenced nodes are missing — but only if two things hold together: the core operations are already reliable end-to-end, and the revision logic handles every edge case through the same uniform mechanisms rather than special-case patches. Since this is currently marked OUT, at least one of those foundational guarantees is not established, meaning full edge-case robustness cannot yet be claimed.

Justifications

SL — depth-5 gate — operational integrity claims assume a well-formed graph, but the fragile denormalized index and unchecked dependent lookups can violate that assumption under edge-case graph topologies

Antecedents (all must be IN):

  • operational-integrity-is-end-to-end — Every network operation achieves both transactional atomicity (load/save gating, snapshot persistence) and semantic determinism (uniform pure evaluation, terminating propagation, reversible defeat), ensuring every mutation produces a predictable, recoverable network state.
  • belief-revision-covers-all-cases-uniformly — The belief revision system handles normal beliefs and all edge cases (premises from absent justifications, asymmetric missing-node semantics, vacuously valid empty antecedents) through the same minimal mechanisms (outlist defeat and dependency-directed backtracking) — no edge case requires special-case logic.

Unless (any of these IN defeats this justification):

  • propagate-assumes-dependents-exist — Every ID in `node.dependents` is accessed via `self.nodes[dep_id]` without a membership check; a dangling dependent reference will raise `KeyError` — this is intentional (broken invariant = bug)
  • 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

Details