In Progress

2026-04-17

Ouroboros Peras

This week we continued focusing on two main topics:

  • Object diffusion:
    • Polished, undrafted and submitted Peras 3.75 and Peras 4 (revived) for an initial round of reviews.
    • As part of Peras 3.75, we also
      • Improved the granularity and quality of generators in the ChainDB state machine tests to get more realistic Peras scenarios.
      • Fixed garbage collection of the PerasVoteDB.
    • As part of Peras 4 (revived), we also fixed a vote validation issue in the VoteDiffusion smoke tests.
  • Voting committees:
    • We finished the big refactor and submitted five stacked PRs for review:
      • Peras 21: Remove out-of-spec WFALS test data (merged).
      • Peras 22: Generic voting committee API (under review now).
      • Peras 23: wFA^LS and EveryoneVotes voting committee implementations.
      • Peras 24: BLS crypto backend for voting committees.
      • Peras 25: Conformance and property tests for voting committee implementations.
    • In addition, we continued working on the concrete, low-level design for Peras votes and certificates. For these, we now have in place:
      • Serialization routines (+ round-trip tests).
      • All the boilerplate required for these to support both wFA^LS and EveryoneVotes voting commitees, including the marshalling routines from/to their corresponding abstract vote and certificate counterparts (+ round-trip tests).

In addition, we had multiple alignment meetings around:

  • Ledger vs. Consensus responsibility for Peras object validation.
  • Initial design for the Peras testnet.