VolvenceZero invariants

R1–R15 and R-PE define the contract every research-lab plugin must respect. A plugin that contradicts an invariant cannot be promoted out of DISABLED.

Synced from external/VolvenceZero/archetecture.md and docs/next_gen_emogpt.md.

R-IDInvariantPrimary ownerWhy it matters
R1Multi-timescale nested learningvz-runtimeonline-fast / session-medium / background-slow / rare-heavy loops are isolated. SSL compression and RL reinforcement alternate; no loop is allowed to silently own another loop's parameters.
R2Stable substrate, adaptive controllersvz-substrateThe base model stays frozen or near-frozen; online adaptation happens in bounded controller / memory / credit layers. Rare-heavy substrate refresh is gated by ModificationGate.OFFLINE.
R3Temporal abstraction is a first-class capabilityvz-temporalSegment closure beta_t and latent controller code z_t are real runtime objects, not heuristics over text. They are learned, not hand-coded.
R4Latent control over token controlvz-temporalLong-horizon behaviour is learned in temporal controller state (z_t, beta_t). Token-space long-horizon RL is forbidden — a paper that requires it conflicts with R4 and cannot be promoted past SCAFFOLDED.
R5Memory continuum — independent stratavz-memoryTransient / episodic / persistent / derived-index memory strata are independent owners. External code may not write a stratum directly.
R6Reflection-backed memory readoutsvz-memoryBackground-slow reflection produces the memory summaries consumed by other modules. Consumers never rebuild summaries on demand.
R7Dual-track learning (World vs Self)vz-cognitionWorld-model and Self-model evolve on separate tracks. Neither reads the other's snapshots; collapsing them into one objective is forbidden.
R8Snapshot-only exchange (contracts SSOT)vz-contractsEvery runtime region has a unique primary owner; cross-module exchange runs through immutable snapshots registered in docs/DATA_CONTRACT.md. Consumers do not rebuild producer-internal state.
R9Credit layeringvz-cognitionCredit assignment lives on the controller layer. Rare-heavy artifacts (LoRAs, steering vectors) reach the model only through ModificationGate.
R10Self-modification gatingvz-cognitionModificationGate enforces validation margin + capacity cap + audit-evidence; bypass is forbidden. Two-gate evaluation is the spec floor (DM-4).
R11Nameable, publishable internal statevz-cognitionNine semantic owners — plan_intent / commitment / open_loop / user_model / execution_result / belief_assumption / relationship_state / goal_value / boundary_consent — each publish their own snapshot.
R12Evaluation covers existence, not just taskvz-cognitionSix evaluation families are read-only readouts. They MUST NOT be wired backwards as a learning source; LLM-judge is readout, never gate.
R13SSL ↔ RL alternationvz-runtimeSelf-supervised compression and reinforcement alternate cleanly. Reinforcement targets the compressed, structured substrate — not raw token streams.
R14Persistent regime identityvz-cognitionRegime is a runtime state with persistent identity, never a prompt tag. Detection is semantic / learned, never keyword matching.
R15Migration must stay interpretable and rollback-ablevz-runtimeEvery new adaptive layer enters through WiringLevel = {DISABLED, SHADOW, ACTIVE}, with an owner, exit conditions, and evidence before widening consumer radius.
R-PEPrediction error is the primitive signalvz-cognitionprediction_error is the primitive learning signal; credit, evaluation, needs, homeostasis are all readouts of it. Anything proposed as 'the' new learning signal is suspect.