May 08, 8-9 AM (34)
May 08, 9-10 AM (12)
May 08, 10-11 AM (32)
May 08, 11-12 PM (40)
May 08, 12-1 PM (30)
May 08, 1-2 PM (46)
May 08, 2-3 PM (46)
May 08, 3-4 PM (26)
May 08, 4-5 PM (23)
May 08, 5-6 PM (29)
May 08, 6-7 PM (15)
May 08, 7-8 PM (10)
May 08, 8-9 PM (15)
May 08, 9-10 PM (16)
May 08, 10-11 PM (23)
May 08, 11-12 AM (12)
May 09, 12-1 AM (4)
May 09, 1-2 AM (1)
May 09, 2-3 AM (0)
May 09, 3-4 AM (6)
May 09, 4-5 AM (6)
May 09, 5-6 AM (2)
May 09, 6-7 AM (6)
May 09, 7-8 AM (4)
May 09, 8-9 AM (4)
May 09, 9-10 AM (3)
May 09, 10-11 AM (9)
May 09, 11-12 PM (6)
May 09, 12-1 PM (21)
May 09, 1-2 PM (24)
May 09, 2-3 PM (12)
May 09, 3-4 PM (14)
May 09, 4-5 PM (7)
May 09, 5-6 PM (0)
May 09, 6-7 PM (2)
May 09, 7-8 PM (3)
May 09, 8-9 PM (1)
May 09, 9-10 PM (8)
May 09, 10-11 PM (33)
May 09, 11-12 AM (16)
May 10, 12-1 AM (15)
May 10, 1-2 AM (0)
May 10, 2-3 AM (0)
May 10, 3-4 AM (5)
May 10, 4-5 AM (0)
May 10, 5-6 AM (4)
May 10, 6-7 AM (0)
May 10, 7-8 AM (17)
May 10, 8-9 AM (8)
May 10, 9-10 AM (1)
May 10, 10-11 AM (26)
May 10, 11-12 PM (4)
May 10, 12-1 PM (49)
May 10, 1-2 PM (18)
May 10, 2-3 PM (8)
May 10, 3-4 PM (15)
May 10, 4-5 PM (26)
May 10, 5-6 PM (11)
May 10, 6-7 PM (7)
May 10, 7-8 PM (23)
May 10, 8-9 PM (12)
May 10, 9-10 PM (10)
May 10, 10-11 PM (29)
May 10, 11-12 AM (19)
May 11, 12-1 AM (12)
May 11, 1-2 AM (5)
May 11, 2-3 AM (5)
May 11, 3-4 AM (7)
May 11, 4-5 AM (3)
May 11, 5-6 AM (12)
May 11, 6-7 AM (28)
May 11, 7-8 AM (60)
May 11, 8-9 AM (34)
May 11, 9-10 AM (77)
May 11, 10-11 AM (58)
May 11, 11-12 PM (78)
May 11, 12-1 PM (84)
May 11, 1-2 PM (102)
May 11, 2-3 PM (41)
May 11, 3-4 PM (27)
May 11, 4-5 PM (24)
May 11, 5-6 PM (26)
May 11, 6-7 PM (42)
May 11, 7-8 PM (53)
May 11, 8-9 PM (57)
May 11, 9-10 PM (22)
May 11, 10-11 PM (49)
May 11, 11-12 AM (19)
May 12, 12-1 AM (2)
May 12, 1-2 AM (2)
May 12, 2-3 AM (3)
May 12, 3-4 AM (4)
May 12, 4-5 AM (8)
May 12, 5-6 AM (11)
May 12, 6-7 AM (17)
May 12, 7-8 AM (25)
May 12, 8-9 AM (26)
May 12, 9-10 AM (35)
May 12, 10-11 AM (82)
May 12, 11-12 PM (98)
May 12, 12-1 PM (38)
May 12, 1-2 PM (69)
May 12, 2-3 PM (54)
May 12, 3-4 PM (41)
May 12, 4-5 PM (57)
May 12, 5-6 PM (40)
May 12, 6-7 PM (24)
May 12, 7-8 PM (24)
May 12, 8-9 PM (18)
May 12, 9-10 PM (8)
May 12, 10-11 PM (40)
May 12, 11-12 AM (19)
May 13, 12-1 AM (10)
May 13, 1-2 AM (2)
May 13, 2-3 AM (4)
May 13, 3-4 AM (2)
May 13, 4-5 AM (5)
May 13, 5-6 AM (29)
May 13, 6-7 AM (52)
May 13, 7-8 AM (43)
May 13, 8-9 AM (44)
May 13, 9-10 AM (21)
May 13, 10-11 AM (22)
May 13, 11-12 PM (47)
May 13, 12-1 PM (25)
May 13, 1-2 PM (44)
May 13, 2-3 PM (45)
May 13, 3-4 PM (42)
May 13, 4-5 PM (33)
May 13, 5-6 PM (30)
May 13, 6-7 PM (51)
May 13, 7-8 PM (31)
May 13, 8-9 PM (9)
May 13, 9-10 PM (24)
May 13, 10-11 PM (29)
May 13, 11-12 AM (11)
May 14, 12-1 AM (18)
May 14, 1-2 AM (3)
May 14, 2-3 AM (4)
May 14, 3-4 AM (21)
May 14, 4-5 AM (11)
May 14, 5-6 AM (18)
May 14, 6-7 AM (18)
May 14, 7-8 AM (47)
May 14, 8-9 AM (52)
May 14, 9-10 AM (35)
May 14, 10-11 AM (20)
May 14, 11-12 PM (114)
May 14, 12-1 PM (53)
May 14, 1-2 PM (151)
May 14, 2-3 PM (32)
May 14, 3-4 PM (17)
May 14, 4-5 PM (14)
May 14, 5-6 PM (37)
May 14, 6-7 PM (12)
May 14, 7-8 PM (22)
May 14, 8-9 PM (36)
May 14, 9-10 PM (35)
May 14, 10-11 PM (27)
May 14, 11-12 AM (14)
May 15, 12-1 AM (18)
May 15, 1-2 AM (15)
May 15, 2-3 AM (5)
May 15, 3-4 AM (3)
May 15, 4-5 AM (13)
May 15, 5-6 AM (14)
May 15, 6-7 AM (10)
May 15, 7-8 AM (30)
May 15, 8-9 AM (4)
4,125 commits this week May 08, 2026 - May 15, 2026
WIP Leios C3: thread LeiosDbConnection through validate (chain-sel)
Add a `ResolveLeiosBlock blk` class with a default `return blk` and a
`leiosDb :: !(LeiosDbConnection m)` field on `ValidateArgs`.  In V2's
implValidate the connection is now passed in so `validate` can call
`resolveLeiosBlock leiosDb blk` before reading tables (splicing certified
EB transactions into the Dijkstra-era block before its application).

Plumbing changes:
- `lgrLeiosDb` field on `LedgerDbArgs`; `ldbLeiosDb` on `LedgerDBEnv`.
- `cdbsLeiosDb` on `ChainDbSpecificArgs`; `completeChainDbArgs` gains a
  `LeiosDbConnection m` argument and wires it through.
- `openChainDB`, `run`, `runWith`, `openDB`, `openDBInternal`,
  `withDB`, `runThreadNetwork`, `runTestNetwork` and `implValidate`
  gain a `ResolveLeiosBlock blk` constraint.
- `fromMinimalChainDbArgs` / `mkArgs` are now monadic so they can
  allocate an in-memory `LeiosDbConnection` for tests; callers updated.
- `NoThunks` instance for `LeiosDbConnection m`; `ResolveLeiosBlock`
  default instances for `TestBlock` (storage- and util-tests).

Still WIP: callers that need a non-trivial `ResolveLeiosBlock` instance
(CardanoBlock for the dijkstra-era certified-EB resolution path, and a
few stragglers in the Cardano tooling and threadnet mock tests) — the
instance to be filled in next.

Co-Authored-By: Claude Opus 4.7 <[email protected]>
rebase leios Block/Body design onto cardano-ledger-conway-1.22.1.0
Squashes 8 leios-prototype commits:
  53517f2a leios: Add blockMayAnnouncedEb and blockCertifiesEb to Block
  6220eb51a leios: Fixes cardano-ledger-test compilation
  0f9818960 leios: Introduce the Body type with BodyInline and BodyCertificate
  1327573bf leios: More compilation fixes
  7e1fb14c9 leios: Make Body codec proper CBOR
  0c0368ea7 leios: Remove EB announcement and certification flag
  1741ba702 Make the (leios enhanced) block decoding backwards compatible
  01198fab8 leios: Fix Block codec to be backwards compatible

Skips the EB-field design churn and lands directly on the final design:
Body era = BodyInline (BlockBody era) | BodyCertificate Certificate (Maybe (BlockBody era)).

Mechanical renames for upstream API changes:
  TxSeq -> BlockBody, EraSegWits -> EraBlockBody,
  AlonzoTxSeq -> AlonzoBlockBody, ShelleyTxSeq -> ShelleyBlockBody,
  hashTxSeq -> hashBlockBody, bbHash -> shelleyBlockBodyHash,
  txSeqTxns -> alonzoBlockBodyTxs,
  module Shelley.BlockChain -> Shelley.BlockBody,
  module Alonzo.TxSeq -> Alonzo.BlockBody.

Other build fixups for upstream changes:
- EraSegWits -> EraBlockBody; fromTxSeq/toTxSeq removed for the
  txSeqBlockBodyL lens. Added shims in Block.hs that wrap the lens.
- Tx kind-parameterized: Tx era -> Tx TopTx era ripple
  (including AlonzoTx era -> AlonzoTx TopTx era).
- AccountState -> ChainAccountState.
- Mismatch's first arg changed from promoted kind to value constructor:
  'RelEQ -> RelEQ, 'RelLTEQ -> RelLTEQ.
- EncCBORGroup.listLen now takes a Proxy.
- testlib gained DecCBOR (Block h era) and ToExpr (Block h era) instances
  that conflict with leios's Body-shaped Block.

Files accepted as upstream deletions:
  Examples/Consensus.hs (834a31aa2)
  LaxBlock.hs (e2d3380ae, 50c4c17e6)
  AlonzoBBODY.hs (1e3ff232f)
  Generic/Same.hs (3a006d6aa)