Skip to content

Conversation

@agustinmista
Copy link
Contributor

@agustinmista agustinmista commented Dec 5, 2025

Description

This PR addresses #5437 by:

  • Adding an optional Nonce to the BHeaderView record,
  • Tweaking the signature of makeHeaderView so that this optional nonce can be passed from the consensus side (not super sure if this is the right place to tweak the Ledger <-> Consensus API),
  • Requiring the Nonce to be present for Dijkstra via a new dijkstraBbodyTransition rule (not super sure about this either, see note below).

NOTE: I'm not sure if the second commit actually helps by enforcing that the nonce will be present later on, or if we instead want to defer this check until we actually want to use the nonce for certificate validation once these start popping up in blocks.

Checklist

  • Commits in meaningful sequence and with useful messages.
  • Tests added or updated when needed.
  • CHANGELOG.md files updated for packages with externally visible changes.
    NOTE: New section is never added with the code changes. (See RELEASING.md).
  • Versions updated in .cabal and CHANGELOG.md files when necessary, according to the
    versioning process.
  • Version bounds in .cabal files updated when necessary.
    NOTE: If bounds change in a cabal file, that package itself must have a version increase. (See RELEASING.md).
  • Code formatted (use scripts/fourmolize.sh).
  • Cabal files formatted (use scripts/cabal-format.sh).
  • CDDL files are up to date (use scripts/gen-cddl.sh)
  • hie.yaml updated (use scripts/gen-hie.sh).
  • Self-reviewed the diff.

@agustinmista agustinmista self-assigned this Dec 5, 2025
@agustinmista agustinmista force-pushed the peras/optional-nonce-in-bheaderview branch 2 times, most recently from ea601b6 to eb44793 Compare December 5, 2025 16:58
This commit add an optional Nonce to BHeaderView to carry the previous epoch
nonce needed to validate Peras certificates embedded in blocks. Additionally,
it tweaks 'makeHeaderView' to be able to pass this nonce from the consensus
side.
This commit adds a check in the Dijkstra BBODY transition rule to enforce
having a non-null previous epoch nonce so that Peras certificates can be
validated should they appear in a block body.
@agustinmista agustinmista force-pushed the peras/optional-nonce-in-bheaderview branch from eb44793 to 9188e90 Compare December 8, 2025 08:18
@agustinmista agustinmista marked this pull request as ready for review December 8, 2025 11:27
@agustinmista agustinmista requested a review from a team as a code owner December 8, 2025 11:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants