Concept

Deterministic network state

Determinism is RAHN's first non-negotiable rule: the same inputs produce byte-identical states, ids, and reports on every machine, every run. Not "usually the same" — identical, and enforced by tests, not by intention.

What determinism means here

Three concrete guarantees:

How RAHN achieves it

Determinism is achieved by exclusion and structure, not by effort:

The reproducibility document records what is reproducible, how it is tested, and what is not yet (binary build reproducibility is an honestly labeled gap).

Why it matters

Determinism is what turns network state into something you can reason about jointly with other people and machines. Without it, "verified" means "verified on my laptop"; diffs are ambiguous; branches cannot be merged with confidence; and a CI gate is theater. With it, a state id is a shared fact — which is the foundation for content addressing, causal attribution, and peer synchronization.

The cost, honestly

Canonical serialization, content hashing, and explicit transitions cost CPU and storage, and immutable history grows until pruning is designed. These are recorded as known costs in the limitations baseline, not hidden. Determinism also has an ergonomics tax: explicitness is more work than editing live configs.

Where to go next