ConstBumped on any breaking change to the IR shape. The Rust checker compares this constant against its own compiled-in version and rejects mismatches rather than guessing at a migration.
Schema 3 (current). Adds graphId on every
node and commit (the multi-graph foreign key the future cross-graph
aggregator depends on); adds the bounded IRCallGraph
annotation slot on IRCommit; adds the events: readonly never[]
forward-compatibility array on the top-level document. The
events array is empty under schema 3 today; future schemas (3.x
or 4) widen the array element type to a discriminated union of
lifecycle events (IRSubscribe | IRUnsubscribe | IRDispose | IRRead | IRTxSet) once a downstream pass consumes them. Schema 3 is the
shape PR-A of EPIC-1 ships per the brutal-critical review's slicing
recommendation: bump the wire format once for additive fields, and
design the event variants alongside the consuming pass rather than
speculatively.
Schema 2 (previous). iasbuilt/causl#359 collapsed the prior optional
resources / conflicts / msgs arrays in service of §4's
two-primitive discipline — a wire-format break for any consumer
that had begun parsing the optional fields.
Schema 1 (initial). The pre-collapse shape with eleven node
kind constants. Retired in iasbuilt/causl#359.
Schema version of the CauslModel IR.