Mar 09, 8-9 AM (36)
Mar 09, 9-10 AM (30)
Mar 09, 10-11 AM (44)
Mar 09, 11-12 PM (31)
Mar 09, 12-1 PM (60)
Mar 09, 1-2 PM (24)
Mar 09, 2-3 PM (74)
Mar 09, 3-4 PM (60)
Mar 09, 4-5 PM (127)
Mar 09, 5-6 PM (50)
Mar 09, 6-7 PM (54)
Mar 09, 7-8 PM (23)
Mar 09, 8-9 PM (25)
Mar 09, 9-10 PM (13)
Mar 09, 10-11 PM (60)
Mar 09, 11-12 AM (24)
Mar 10, 12-1 AM (5)
Mar 10, 1-2 AM (35)
Mar 10, 2-3 AM (34)
Mar 10, 3-4 AM (6)
Mar 10, 4-5 AM (3)
Mar 10, 5-6 AM (5)
Mar 10, 6-7 AM (20)
Mar 10, 7-8 AM (69)
Mar 10, 8-9 AM (110)
Mar 10, 9-10 AM (30)
Mar 10, 10-11 AM (30)
Mar 10, 11-12 PM (53)
Mar 10, 12-1 PM (65)
Mar 10, 1-2 PM (51)
Mar 10, 2-3 PM (90)
Mar 10, 3-4 PM (39)
Mar 10, 4-5 PM (44)
Mar 10, 5-6 PM (26)
Mar 10, 6-7 PM (10)
Mar 10, 7-8 PM (30)
Mar 10, 8-9 PM (15)
Mar 10, 9-10 PM (33)
Mar 10, 10-11 PM (30)
Mar 10, 11-12 AM (46)
Mar 11, 12-1 AM (13)
Mar 11, 1-2 AM (10)
Mar 11, 2-3 AM (6)
Mar 11, 3-4 AM (0)
Mar 11, 4-5 AM (4)
Mar 11, 5-6 AM (3)
Mar 11, 6-7 AM (26)
Mar 11, 7-8 AM (41)
Mar 11, 8-9 AM (94)
Mar 11, 9-10 AM (24)
Mar 11, 10-11 AM (67)
Mar 11, 11-12 PM (37)
Mar 11, 12-1 PM (67)
Mar 11, 1-2 PM (63)
Mar 11, 2-3 PM (42)
Mar 11, 3-4 PM (45)
Mar 11, 4-5 PM (41)
Mar 11, 5-6 PM (51)
Mar 11, 6-7 PM (35)
Mar 11, 7-8 PM (20)
Mar 11, 8-9 PM (39)
Mar 11, 9-10 PM (14)
Mar 11, 10-11 PM (57)
Mar 11, 11-12 AM (43)
Mar 12, 12-1 AM (4)
Mar 12, 1-2 AM (8)
Mar 12, 2-3 AM (6)
Mar 12, 3-4 AM (3)
Mar 12, 4-5 AM (4)
Mar 12, 5-6 AM (8)
Mar 12, 6-7 AM (46)
Mar 12, 7-8 AM (15)
Mar 12, 8-9 AM (62)
Mar 12, 9-10 AM (50)
Mar 12, 10-11 AM (87)
Mar 12, 11-12 PM (29)
Mar 12, 12-1 PM (60)
Mar 12, 1-2 PM (51)
Mar 12, 2-3 PM (46)
Mar 12, 3-4 PM (61)
Mar 12, 4-5 PM (23)
Mar 12, 5-6 PM (26)
Mar 12, 6-7 PM (14)
Mar 12, 7-8 PM (39)
Mar 12, 8-9 PM (28)
Mar 12, 9-10 PM (10)
Mar 12, 10-11 PM (41)
Mar 12, 11-12 AM (16)
Mar 13, 12-1 AM (7)
Mar 13, 1-2 AM (21)
Mar 13, 2-3 AM (13)
Mar 13, 3-4 AM (7)
Mar 13, 4-5 AM (1)
Mar 13, 5-6 AM (2)
Mar 13, 6-7 AM (7)
Mar 13, 7-8 AM (32)
Mar 13, 8-9 AM (48)
Mar 13, 9-10 AM (90)
Mar 13, 10-11 AM (25)
Mar 13, 11-12 PM (32)
Mar 13, 12-1 PM (54)
Mar 13, 1-2 PM (59)
Mar 13, 2-3 PM (35)
Mar 13, 3-4 PM (58)
Mar 13, 4-5 PM (26)
Mar 13, 5-6 PM (30)
Mar 13, 6-7 PM (17)
Mar 13, 7-8 PM (39)
Mar 13, 8-9 PM (28)
Mar 13, 9-10 PM (14)
Mar 13, 10-11 PM (23)
Mar 13, 11-12 AM (26)
Mar 14, 12-1 AM (1)
Mar 14, 1-2 AM (1)
Mar 14, 2-3 AM (9)
Mar 14, 3-4 AM (2)
Mar 14, 4-5 AM (0)
Mar 14, 5-6 AM (1)
Mar 14, 6-7 AM (0)
Mar 14, 7-8 AM (1)
Mar 14, 8-9 AM (19)
Mar 14, 9-10 AM (3)
Mar 14, 10-11 AM (0)
Mar 14, 11-12 PM (3)
Mar 14, 12-1 PM (1)
Mar 14, 1-2 PM (20)
Mar 14, 2-3 PM (5)
Mar 14, 3-4 PM (0)
Mar 14, 4-5 PM (0)
Mar 14, 5-6 PM (0)
Mar 14, 6-7 PM (2)
Mar 14, 7-8 PM (4)
Mar 14, 8-9 PM (10)
Mar 14, 9-10 PM (10)
Mar 14, 10-11 PM (20)
Mar 14, 11-12 AM (66)
Mar 15, 12-1 AM (6)
Mar 15, 1-2 AM (23)
Mar 15, 2-3 AM (8)
Mar 15, 3-4 AM (0)
Mar 15, 4-5 AM (1)
Mar 15, 5-6 AM (1)
Mar 15, 6-7 AM (0)
Mar 15, 7-8 AM (0)
Mar 15, 8-9 AM (2)
Mar 15, 9-10 AM (14)
Mar 15, 10-11 AM (1)
Mar 15, 11-12 PM (7)
Mar 15, 12-1 PM (20)
Mar 15, 1-2 PM (19)
Mar 15, 2-3 PM (30)
Mar 15, 3-4 PM (2)
Mar 15, 4-5 PM (4)
Mar 15, 5-6 PM (4)
Mar 15, 6-7 PM (8)
Mar 15, 7-8 PM (8)
Mar 15, 8-9 PM (11)
Mar 15, 9-10 PM (7)
Mar 15, 10-11 PM (28)
Mar 15, 11-12 AM (23)
Mar 16, 12-1 AM (7)
Mar 16, 1-2 AM (19)
Mar 16, 2-3 AM (14)
Mar 16, 3-4 AM (9)
Mar 16, 4-5 AM (0)
Mar 16, 5-6 AM (5)
Mar 16, 6-7 AM (21)
Mar 16, 7-8 AM (18)
Mar 16, 8-9 AM (13)
4,383 commits this week Mar 09, 2026 - Mar 16, 2026
Refactor WFA conformance tests and instantiate real implementation
This commit refactors the weighted Fait-Accompli conformance test suite
into a composite unit test that accepts a function to preprocess the stake
distribution into a value that gets shared accross individual tests.

This is useful to instantiate this test suite against the real implementation,
which relies on a precomputed stake distribution array that can be
shared across all 3000 individual test steps.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Add getLatestPerasCertOnChainRound to ChainDB
This commit adds a new getLatestPerasCertOnChainRound method to the
ChainDB API, which extracts the latest round number of a Peras
certificate included on a block in our preferred chain. Such a round
number is taken from the corresponding ledger states of both the
immutable and volatile tips (the maximum of the two).

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Add GetLatestPerasCertOnChainRound command to ChainDB QSM test suite
This commit extends the ChainDB QuickCheck state machine tests with a
GetLatestPerasCertOnChainRound command that exercises the new
getLatestPerasCertOnChainRound method in the ChainDB API. This includes
extending the ChainDB model with the corresponding method.

NOTE: since the LoE does not yet support Peras, this commit makes sure
to only generate blocks containing Peras certificate round numbers as
well as calls to GetLatestPerasCertOnChainRound when the LoE is disabled
for the current test.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Extend ChainDB test ledger state with optional latest Peras cert round
This commit extends the ledger state of the TestBlock used in storage
tests with a field that optionally stores the round number of the latest
Peras certificate included in a TestBlock.

In addition, it trivially implements the logic needed to keep this field
updated when a new block is applied to the a test ledger.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Implement generic weighted Fait Accompli committee selection
This commit implements an initial version of the weigthed Fait-Accompli
with Local Sortition committee selection scheme. This implementation is
generic w.r.t. both the election and vote types, as well as the crypto
scheme used by the client.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Add round number of latest cert on chain to Shelley ledger state
This commit extends the Shelley ledger state with an optional
PerasRoundNo to cache the latest round number of a certificate added to
the current chain. This value is updated whenever a new block is applied
to the ledger.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Add block certificate projection to BlockSupportsPeras
This commit extends the BlockSupportsPeras type class with a method
getPerasCertInBlock to (potentially) extract Peras certificates from
blocks when they are optionally included to orchestrate the end of a
cooldown period.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
build(deps): bump github.com/blinklabs-io/gouroboros
Bumps [github.com/blinklabs-io/gouroboros](https://github.com/blinklabs-io/gouroboros) from 0.160.0 to 0.160.2.
- [Release notes](https://github.com/blinklabs-io/gouroboros/releases)
- [Changelog](https://github.com/blinklabs-io/gouroboros/blob/main/RELEASE_NOTES.md)
- [Commits](https://github.com/blinklabs-io/gouroboros/compare/v0.160.0...v0.160.2)

---
updated-dependencies:
- dependency-name: github.com/blinklabs-io/gouroboros
  dependency-version: 0.160.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
chore(deps-dev): bump @types/node from 25.3.5 to 25.5.0 in /website
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 25.3.5 to 25.5.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 25.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
chore(deps): bump mermaid from 11.12.3 to 11.13.0 in /website
Bumps [mermaid](https://github.com/mermaid-js/mermaid) from 11.12.3 to 11.13.0.
- [Release notes](https://github.com/mermaid-js/mermaid/releases)
- [Commits](https://github.com/mermaid-js/mermaid/compare/[email protected]@11.13.0)

---
updated-dependencies:
- dependency-name: mermaid
  dependency-version: 11.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>