Home / IntersectMBO / cardano-ledger
May 10, 5-6 PM (0)
May 10, 6-7 PM (0)
May 10, 7-8 PM (0)
May 10, 8-9 PM (0)
May 10, 9-10 PM (0)
May 10, 10-11 PM (0)
May 10, 11-12 AM (0)
May 11, 12-1 AM (0)
May 11, 1-2 AM (0)
May 11, 2-3 AM (0)
May 11, 3-4 AM (0)
May 11, 4-5 AM (0)
May 11, 5-6 AM (0)
May 11, 6-7 AM (0)
May 11, 7-8 AM (0)
May 11, 8-9 AM (4)
May 11, 9-10 AM (10)
May 11, 10-11 AM (4)
May 11, 11-12 PM (2)
May 11, 12-1 PM (0)
May 11, 1-2 PM (4)
May 11, 2-3 PM (0)
May 11, 3-4 PM (5)
May 11, 4-5 PM (11)
May 11, 5-6 PM (6)
May 11, 6-7 PM (9)
May 11, 7-8 PM (0)
May 11, 8-9 PM (10)
May 11, 9-10 PM (0)
May 11, 10-11 PM (0)
May 11, 11-12 AM (0)
May 12, 12-1 AM (0)
May 12, 1-2 AM (0)
May 12, 2-3 AM (0)
May 12, 3-4 AM (0)
May 12, 4-5 AM (0)
May 12, 5-6 AM (3)
May 12, 6-7 AM (0)
May 12, 7-8 AM (1)
May 12, 8-9 AM (0)
May 12, 9-10 AM (2)
May 12, 10-11 AM (18)
May 12, 11-12 PM (0)
May 12, 12-1 PM (1)
May 12, 1-2 PM (7)
May 12, 2-3 PM (9)
May 12, 3-4 PM (6)
May 12, 4-5 PM (32)
May 12, 5-6 PM (0)
May 12, 6-7 PM (11)
May 12, 7-8 PM (5)
May 12, 8-9 PM (7)
May 12, 9-10 PM (2)
May 12, 10-11 PM (11)
May 12, 11-12 AM (0)
May 13, 12-1 AM (0)
May 13, 1-2 AM (0)
May 13, 2-3 AM (0)
May 13, 3-4 AM (0)
May 13, 4-5 AM (0)
May 13, 5-6 AM (0)
May 13, 6-7 AM (0)
May 13, 7-8 AM (15)
May 13, 8-9 AM (1)
May 13, 9-10 AM (1)
May 13, 10-11 AM (0)
May 13, 11-12 PM (9)
May 13, 12-1 PM (3)
May 13, 1-2 PM (8)
May 13, 2-3 PM (5)
May 13, 3-4 PM (13)
May 13, 4-5 PM (0)
May 13, 5-6 PM (0)
May 13, 6-7 PM (0)
May 13, 7-8 PM (11)
May 13, 8-9 PM (1)
May 13, 9-10 PM (1)
May 13, 10-11 PM (0)
May 13, 11-12 AM (0)
May 14, 12-1 AM (0)
May 14, 1-2 AM (0)
May 14, 2-3 AM (0)
May 14, 3-4 AM (0)
May 14, 4-5 AM (0)
May 14, 5-6 AM (0)
May 14, 6-7 AM (5)
May 14, 7-8 AM (0)
May 14, 8-9 AM (1)
May 14, 9-10 AM (19)
May 14, 10-11 AM (2)
May 14, 11-12 PM (0)
May 14, 12-1 PM (10)
May 14, 1-2 PM (0)
May 14, 2-3 PM (0)
May 14, 3-4 PM (0)
May 14, 4-5 PM (0)
May 14, 5-6 PM (0)
May 14, 6-7 PM (0)
May 14, 7-8 PM (2)
May 14, 8-9 PM (0)
May 14, 9-10 PM (2)
May 14, 10-11 PM (2)
May 14, 11-12 AM (0)
May 15, 12-1 AM (0)
May 15, 1-2 AM (0)
May 15, 2-3 AM (0)
May 15, 3-4 AM (0)
May 15, 4-5 AM (0)
May 15, 5-6 AM (2)
May 15, 6-7 AM (3)
May 15, 7-8 AM (1)
May 15, 8-9 AM (4)
May 15, 9-10 AM (0)
May 15, 10-11 AM (2)
May 15, 11-12 PM (1)
May 15, 12-1 PM (9)
May 15, 1-2 PM (23)
May 15, 2-3 PM (1)
May 15, 3-4 PM (2)
May 15, 4-5 PM (1)
May 15, 5-6 PM (1)
May 15, 6-7 PM (0)
May 15, 7-8 PM (0)
May 15, 8-9 PM (0)
May 15, 9-10 PM (9)
May 15, 10-11 PM (0)
May 15, 11-12 AM (0)
May 16, 12-1 AM (0)
May 16, 1-2 AM (0)
May 16, 2-3 AM (0)
May 16, 3-4 AM (0)
May 16, 4-5 AM (0)
May 16, 5-6 AM (0)
May 16, 6-7 AM (0)
May 16, 7-8 AM (0)
May 16, 8-9 AM (0)
May 16, 9-10 AM (0)
May 16, 10-11 AM (0)
May 16, 11-12 PM (0)
May 16, 12-1 PM (0)
May 16, 1-2 PM (0)
May 16, 2-3 PM (6)
May 16, 3-4 PM (3)
May 16, 4-5 PM (0)
May 16, 5-6 PM (2)
May 16, 6-7 PM (0)
May 16, 7-8 PM (2)
May 16, 8-9 PM (0)
May 16, 9-10 PM (0)
May 16, 10-11 PM (1)
May 16, 11-12 AM (0)
May 17, 12-1 AM (0)
May 17, 1-2 AM (0)
May 17, 2-3 AM (0)
May 17, 3-4 AM (0)
May 17, 4-5 AM (0)
May 17, 5-6 AM (0)
May 17, 6-7 AM (0)
May 17, 7-8 AM (0)
May 17, 8-9 AM (0)
May 17, 9-10 AM (0)
May 17, 10-11 AM (0)
May 17, 11-12 PM (0)
May 17, 12-1 PM (0)
May 17, 1-2 PM (0)
May 17, 2-3 PM (0)
May 17, 3-4 PM (0)
May 17, 4-5 PM (0)
May 17, 5-6 PM (0)
364 commits this week May 10, 2026 - May 17, 2026
L1: Add Maybe LeiosCert on DijkstraBody (Dijkstra-only)
Introduce 'Maybe LeiosCert' (mirrored after the existing 'Maybe PerasCert')
as an optional field on the Dijkstra-era 'BlockBody'. Other eras are
unaffected — this is the entire Leios-related ledger change per the
rebase plan's decision #3 (no 'Body'/'BodyInline'/'BodyCertificate' sum,
no early-era touch).

The change spans four pieces, all kept together so the type, codec,
hashing, and lens story land coherent:

- 'LeiosCert' / 'PerasCert' placeholders encode as @encodeListLen 0@
  rather than @encCBOR ()@ — the latter is 'encodeNull' (0xf6), which
  collides with the null-tag of 'encodeNullStrictMaybe' and made
  'SJust LeiosCert' indistinguishable from 'SNothing' on the wire.
  Adds a regression test in 'BaseTypesSpec' covering both certs.
- 'DijkstraBlockBody' carries pre-encoded bytes for body / wits /
  aux-data / is-valid / Leios cert / Peras cert, six slots total
  (numSegComponents = 6). The Leios and Peras cert slots always emit
  a CBOR token (null when absent) so the on-wire layout is fixed.
- Lens setters ('txSeqBlockBodyL', 'leiosCertBlockBodyL',
  'perasCertBlockBodyL') rebuild via the bidirectional
  'DijkstraBlockBody' pattern. The previous setters only updated the
  structural field and silently kept the stale pre-encoded bytes, so
  e.g. setting txs left 'dbbTxsBodyBytes' as the empty list and the
  block on the wire had no transactions even though the in-memory
  rep was correct. Mirrors the Alonzo idiom
  @lens abbTxs (\_ s -> AlonzoBlockBody s)@.
- 'Arbitrary' and 'TreeDiff' instances for the body extended to
  generate / show the new cert slot.

Co-Authored-By: Claude <[email protected]>
L1: Add Maybe LeiosCert on DijkstraBody (Dijkstra-only)
Introduce 'Maybe LeiosCert' (mirrored after the existing 'Maybe PerasCert')
as an optional field on the Dijkstra-era 'BlockBody'. Other eras are
unaffected — this is the entire Leios-related ledger change per the
rebase plan's decision #3 (no 'Body'/'BodyInline'/'BodyCertificate' sum,
no early-era touch).

The change spans four pieces, all kept together so the type, codec,
hashing, and lens story land coherent:

- 'LeiosCert' / 'PerasCert' placeholders encode as @encodeListLen 0@
  rather than @encCBOR ()@ — the latter is 'encodeNull' (0xf6), which
  collides with the null-tag of 'encodeNullStrictMaybe' and made
  'SJust LeiosCert' indistinguishable from 'SNothing' on the wire.
  Adds a regression test in 'BaseTypesSpec' covering both certs.
- 'DijkstraBlockBody' carries pre-encoded bytes for body / wits /
  aux-data / is-valid / Leios cert / Peras cert, six slots total
  (numSegComponents = 6). The Leios and Peras cert slots always emit
  a CBOR token (null when absent) so the on-wire layout is fixed.
- Lens setters ('txSeqBlockBodyL', 'leiosCertBlockBodyL',
  'perasCertBlockBodyL') rebuild via the bidirectional
  'DijkstraBlockBody' pattern. The previous setters only updated the
  structural field and silently kept the stale pre-encoded bytes, so
  e.g. setting txs left 'dbbTxsBodyBytes' as the empty list and the
  block on the wire had no transactions even though the in-memory
  rep was correct. Mirrors the Alonzo idiom
  @lens abbTxs (\_ s -> AlonzoBlockBody s)@.
- 'Arbitrary' and 'TreeDiff' instances for the body extended to
  generate / show the new cert slot.

Co-Authored-By: Claude <[email protected]>
Disable experimental packages on the prototype branch
The Leios prototype rebase doesn't need 'cardano-ledger-canonical-state',
'cardano-ledger-conformance', 'cardano-ledger-test', 'plutus-preprocessor',
'ledger-state', or 'cardano-ledger-repl-environment'. They depend on
'cardano-cls', whose source-repository-package isn't trivially compatible
with this base — comment them out so the rebase builds cleanly while we
focus on Leios scope.

Co-Authored-By: Claude <[email protected]>