Normative documents

Specifications

The specification directory holds RAHN's normative rules. When documentation and implementation disagree, the discrepancy is investigated and the wrong side is fixed — the spec is the contract the tests enforce.

State

The state value, its object model boundaries, and lifecycle.

Objects

Nodes, interfaces, links — the typed building blocks.

Serialization

Canonical format v2: total ordering, strict total parsing, format-version rules.

Storage

The content-addressed object store: objects, commits, refs, index.

Transitions

The closed operation vocabulary and purity rules.

Invariants

The structural floor and CI verification contract.

Constitution

Declared connectivity constraints and their evaluation.

Execution

Planning, backends, and the isolation boundary.

Observation

The deterministic observation model and ingestion.

Causality

Anchors, epistemic-status edges, DAG enforcement.

Protocol

Peer synchronization semantics over content-addressed history.

Security

Untrusted input, integrity, the simulation default, and the threat posture.

Specifications pair with the architecture decision records, which record why each rule exists. To propose a change to any of this, start from the contributing path.