revision-coverage-requires-sound-propagation

OUT derived (depth 7)

Revision safety covers the complete two-dimensional space — the provenance axis (internal via comprehensive edge-case handling, external via defensive containment) and the temporal axis (creation-time contradiction resolution, maintenance-time staleness detection) — but this coverage is contingent on propagation correctly discovering all dependent nodes to complete revision cascades.

Summary

The revision system addresses safety across two dimensions — where beliefs come from and when they might go wrong — but all of that coverage only holds if the propagation engine can reliably find every downstream node that needs updating when something changes. If propagation misses dependents, revision cascades are incomplete and the safety guarantees break down. This belief is currently retracted, suggesting that complete dependent-node discovery may not be assured.

Justifications

SL — Provenance-axis and temporal-axis revision coverage combine into full two-dimensional coverage but depend on propagation soundness for cascade completeness

Antecedents (all must be IN):

  • revision-safety-spans-internal-and-external — The revision system is universally safe across both belief provenance boundaries: internally-originated beliefs are covered by comprehensive edge-case handling and lifecycle awareness with no blind spots, while externally-originated beliefs are defensively contained through layered ingestion pipelines — the same revision guarantees apply regardless of whether a belief was created locally, derived by LLM, or imported from another agent.
  • edge-case-safety-spans-creation-and-maintenance — The system handles edge cases safely across both temporal dimensions: at creation time, uniform revision covers all semantic edge cases (vacuous premises, asymmetric absence, empty antecedents) through minimal primitives; at maintenance time, contradiction resolution and staleness detection actively catch drift — no edge case is safe only at one point in time.

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

These beliefs depend on this one:

Details