# description
Full persistence envelope written by the AI substrate controller and served via GET /api/v1/substrate/state.

# $comment
`additionalProperties: true` is intentional — substrate state envelopes are versioned and forward-compatible: new organelle / signal fields appear in production before the schema codegen catches up, and the controller must accept them rather than reject the whole envelope. Required fields stay locked.

# properties.self_model.description
Deprecated; subsystem snapshots now live under `subsystems.self_model`. Old envelope shape kept for backward-compatible loads.

# properties.foresight.description
Brain state from foresight module (opaque).

# properties.intelligentsia.description
Deprecated alias for `foresight`; prefer `foresight`.

# $defs.SubstrateState.description
Real-valued state vector s(t) from SubstrateState.to_dict().

# $defs.SubstrateState.properties.attention.description
Simplex-constrained attention vector (length = n_domains).

# $defs.SubstrateState.properties.mode.description
Mode coordinates on the 3-simplex [active, monitor, dream, sleep].

# $defs.SubstrateState.properties.domain_F.description
Per-domain free energy (length = n_domains).

# $defs.SubstrateState.properties.v_predicted.description
Self-model predicted internal state vector.

# $defs.Oscillators.properties.phases.description
Kuramoto oscillator phases [gamma, beta, alpha, theta, delta].