In Progress

2026-09-25

Ouroboros Peras

This week we continued working on several fronts:

  • After internal reviews, the Network Team has now started the process for getting things merged into main:
  • ouroboros-network#5431: updates the protocol definitions and is required for the other work. Notably, it introduces MsgServerIdle and MsgAwaitReply. Ready for review!
  • ouroboros-consensus#2321 (blocked by ouroboros-network#5431): implements graceful termination in blocking requests based on MsgServerIdle.
  • ouroboros-consensus#2322 (based on ouroboros-consensus#2321): makes idleness explicit based on MsgAwaitReply.
  • Future PRs:
    • ouroboros-consensus#XXXX (based on ouroboros-consensus#2322): informing the GSM that cert diffusion has caught up, allowing it to transition states.
    • ouroboros-consensus#YYYY: implementing a “blocked” state when incoming certificates are too new to verify. Waiting for the Peras Resolver Bounds to advance until verification gets unblocked.
  • On the Consensus side, we:

  • On the Testnet side, we:

    • Finished rebasing the setup onto the latest Peras revision in ouroboros-consensus.
    • Finished implementing initial Prometheus support in cardano-tracer.
  • On Historical Certificates side, we:

    • Simplified, documented and fixed current PerasImmutableCertDB implementation.
    • Identified design challenges to make the DB state resilient and consistent, which are under investigation.
  • In addition, we:

    • Started moving the Peras base types needed by Ledger to cardano-base.
    • Addressed the review feedback in Ledger implementation of the Peras protocol parameters and fixed a small bug in the Dijkstra PParams.
    • Investigated a possible desync of validation window between the moment when an object is announced and the moment it is downloaded, concluding that this shouldn’t be a real problem.
    • Started updating the Peras CIP-0140 to reflect some of the important developments since the project started.
    • Continued discussing the plan for concrete crypto for mainnet Peras, based on the latest feedback from the researchers.
    • Continued investigating the interaction between ObjectDiffusion and Chainsync, as well as necessary improvements needed in the PerasEpochContextResolver machinery.