Feb 06, 8-9 AM (91)
Feb 06, 9-10 AM (39)
Feb 06, 10-11 AM (33)
Feb 06, 11-12 PM (42)
Feb 06, 12-1 PM (76)
Feb 06, 1-2 PM (58)
Feb 06, 2-3 PM (54)
Feb 06, 3-4 PM (62)
Feb 06, 4-5 PM (63)
Feb 06, 5-6 PM (15)
Feb 06, 6-7 PM (9)
Feb 06, 7-8 PM (35)
Feb 06, 8-9 PM (13)
Feb 06, 9-10 PM (15)
Feb 06, 10-11 PM (25)
Feb 06, 11-12 AM (29)
Feb 07, 12-1 AM (6)
Feb 07, 1-2 AM (2)
Feb 07, 2-3 AM (5)
Feb 07, 3-4 AM (5)
Feb 07, 4-5 AM (5)
Feb 07, 5-6 AM (7)
Feb 07, 6-7 AM (0)
Feb 07, 7-8 AM (5)
Feb 07, 8-9 AM (7)
Feb 07, 9-10 AM (5)
Feb 07, 10-11 AM (2)
Feb 07, 11-12 PM (1)
Feb 07, 12-1 PM (2)
Feb 07, 1-2 PM (13)
Feb 07, 2-3 PM (16)
Feb 07, 3-4 PM (16)
Feb 07, 4-5 PM (11)
Feb 07, 5-6 PM (9)
Feb 07, 6-7 PM (9)
Feb 07, 7-8 PM (3)
Feb 07, 8-9 PM (3)
Feb 07, 9-10 PM (7)
Feb 07, 10-11 PM (26)
Feb 07, 11-12 AM (25)
Feb 08, 12-1 AM (1)
Feb 08, 1-2 AM (5)
Feb 08, 2-3 AM (7)
Feb 08, 3-4 AM (2)
Feb 08, 4-5 AM (2)
Feb 08, 5-6 AM (3)
Feb 08, 6-7 AM (0)
Feb 08, 7-8 AM (0)
Feb 08, 8-9 AM (9)
Feb 08, 9-10 AM (0)
Feb 08, 10-11 AM (2)
Feb 08, 11-12 PM (2)
Feb 08, 12-1 PM (2)
Feb 08, 1-2 PM (0)
Feb 08, 2-3 PM (3)
Feb 08, 3-4 PM (2)
Feb 08, 4-5 PM (3)
Feb 08, 5-6 PM (9)
Feb 08, 6-7 PM (1)
Feb 08, 7-8 PM (3)
Feb 08, 8-9 PM (4)
Feb 08, 9-10 PM (27)
Feb 08, 10-11 PM (42)
Feb 08, 11-12 AM (19)
Feb 09, 12-1 AM (3)
Feb 09, 1-2 AM (9)
Feb 09, 2-3 AM (4)
Feb 09, 3-4 AM (16)
Feb 09, 4-5 AM (6)
Feb 09, 5-6 AM (6)
Feb 09, 6-7 AM (31)
Feb 09, 7-8 AM (10)
Feb 09, 8-9 AM (70)
Feb 09, 9-10 AM (25)
Feb 09, 10-11 AM (78)
Feb 09, 11-12 PM (73)
Feb 09, 12-1 PM (104)
Feb 09, 1-2 PM (53)
Feb 09, 2-3 PM (60)
Feb 09, 3-4 PM (97)
Feb 09, 4-5 PM (48)
Feb 09, 5-6 PM (24)
Feb 09, 6-7 PM (16)
Feb 09, 7-8 PM (20)
Feb 09, 8-9 PM (48)
Feb 09, 9-10 PM (28)
Feb 09, 10-11 PM (36)
Feb 09, 11-12 AM (34)
Feb 10, 12-1 AM (17)
Feb 10, 1-2 AM (6)
Feb 10, 2-3 AM (8)
Feb 10, 3-4 AM (3)
Feb 10, 4-5 AM (9)
Feb 10, 5-6 AM (10)
Feb 10, 6-7 AM (16)
Feb 10, 7-8 AM (77)
Feb 10, 8-9 AM (58)
Feb 10, 9-10 AM (32)
Feb 10, 10-11 AM (77)
Feb 10, 11-12 PM (100)
Feb 10, 12-1 PM (63)
Feb 10, 1-2 PM (83)
Feb 10, 2-3 PM (50)
Feb 10, 3-4 PM (42)
Feb 10, 4-5 PM (25)
Feb 10, 5-6 PM (18)
Feb 10, 6-7 PM (20)
Feb 10, 7-8 PM (26)
Feb 10, 8-9 PM (16)
Feb 10, 9-10 PM (15)
Feb 10, 10-11 PM (40)
Feb 10, 11-12 AM (19)
Feb 11, 12-1 AM (4)
Feb 11, 1-2 AM (12)
Feb 11, 2-3 AM (4)
Feb 11, 3-4 AM (1)
Feb 11, 4-5 AM (6)
Feb 11, 5-6 AM (5)
Feb 11, 6-7 AM (9)
Feb 11, 7-8 AM (13)
Feb 11, 8-9 AM (132)
Feb 11, 9-10 AM (29)
Feb 11, 10-11 AM (37)
Feb 11, 11-12 PM (55)
Feb 11, 12-1 PM (89)
Feb 11, 1-2 PM (63)
Feb 11, 2-3 PM (54)
Feb 11, 3-4 PM (46)
Feb 11, 4-5 PM (54)
Feb 11, 5-6 PM (20)
Feb 11, 6-7 PM (34)
Feb 11, 7-8 PM (24)
Feb 11, 8-9 PM (41)
Feb 11, 9-10 PM (25)
Feb 11, 10-11 PM (47)
Feb 11, 11-12 AM (31)
Feb 12, 12-1 AM (10)
Feb 12, 1-2 AM (6)
Feb 12, 2-3 AM (12)
Feb 12, 3-4 AM (7)
Feb 12, 4-5 AM (8)
Feb 12, 5-6 AM (32)
Feb 12, 6-7 AM (13)
Feb 12, 7-8 AM (20)
Feb 12, 8-9 AM (22)
Feb 12, 9-10 AM (22)
Feb 12, 10-11 AM (46)
Feb 12, 11-12 PM (28)
Feb 12, 12-1 PM (40)
Feb 12, 1-2 PM (59)
Feb 12, 2-3 PM (80)
Feb 12, 3-4 PM (39)
Feb 12, 4-5 PM (49)
Feb 12, 5-6 PM (81)
Feb 12, 6-7 PM (31)
Feb 12, 7-8 PM (28)
Feb 12, 8-9 PM (19)
Feb 12, 9-10 PM (26)
Feb 12, 10-11 PM (50)
Feb 12, 11-12 AM (29)
Feb 13, 12-1 AM (9)
Feb 13, 1-2 AM (9)
Feb 13, 2-3 AM (14)
Feb 13, 3-4 AM (6)
Feb 13, 4-5 AM (5)
Feb 13, 5-6 AM (28)
Feb 13, 6-7 AM (33)
Feb 13, 7-8 AM (29)
Feb 13, 8-9 AM (2)
4,401 commits this week Feb 06, 2026 - Feb 13, 2026
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]>
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]>
Extend ChainDB test block body with optional Peras cert round number
This commit extend the TestBlock used by the storage tests with an
optional PerasRoundNo representing the round of a Peras certificate
optionally included in the block.

NOTE: in the future, this round number might need to be expanded into a
full-blown Peras certificate in order to test other aspects of such
certificates included in blocks, but there's no need for that just yet.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Introduce LedgerSupportPeras type class
This commit introduces a `LedgerSupportsPeras` type class with the
`getLatestPerasCertRound` to be able to extract the (cached) round number of the
latest Peras certificate included in a block from the ledger state of an
arbitrary block type.

In addition, it adds the constraint globally, propagates it down
everywhere, and implement all the missing `LedgerSupportsPeras`
instances that became needed. Notably, it implements non-trivial
instances for: 1) the Shelley ledger state, and 2) the hard fork block
ledger state.

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
chore: upgrade crate versions and `openapi.yaml` version and `mithril-infra/assets/infra.version` version
* mithril-protocol-config from `0.1.4` to `0.1.5`
* mithril-aggregator from `0.8.22` to `0.8.23`
* mithril-common from `0.6.49` to `0.6.50`
* mithril-signer from `0.3.15` to `0.3.16`
* mithril-end-to-end from `0.4.117` to `0.4.118`
* openapi.yaml from `0.1.58` to `0.1.59`
* mithril-infra/assets/infra.version from `0.5.6` to `0.5.7`