GenLayer consensus

How a decision is reached, and why one model is not enough.

A lineage finding is a judgement about the past. Judgements that rest on one model reading two READMEs are not verifiable, so the decision goes through GenLayer's Equivalence Principle with independent validators.

What is compared

Only stable fields participate in the comparison:

  • verdict
  • confidence bucket
  • direction
  • shared upstream
  • independent-origin plausibility
  • strongest evidence classes

Prose explanations are never compared for equality. Two validators can reach the same conclusion and describe it differently; that is agreement, not noise.

What a validator actually does

  1. It receives the leader's result and the same bounded evidence digest.
  2. It independently derives its own decision, rather than re-parsing the leader's.
  3. It applies the deterministic guards to its own decision.
  4. It compares the stable field tuple of its decision against the leader's.

A leader is never accepted because its output parses. A well-formed but substantively wrong verdict is rejected.

Fail closed

If verification cannot complete, the case does not resolve as accepted. Unparseable output, an off-enum value, or a chronology contradiction all result in rejection rather than a default.

No storage in nondeterministic execution

The nondeterministic block computes a decision and returns it. Contract state is written only afterwards, in deterministic execution, after consensus has accepted.

GenLayer consensus · ForkReason