Jun 03, 7-8 PM (17)
Jun 03, 8-9 PM (19)
Jun 03, 9-10 PM (9)
Jun 03, 10-11 PM (31)
Jun 03, 11-12 AM (14)
Jun 04, 12-1 AM (12)
Jun 04, 1-2 AM (4)
Jun 04, 2-3 AM (1)
Jun 04, 3-4 AM (5)
Jun 04, 4-5 AM (1)
Jun 04, 5-6 AM (0)
Jun 04, 6-7 AM (14)
Jun 04, 7-8 AM (10)
Jun 04, 8-9 AM (11)
Jun 04, 9-10 AM (19)
Jun 04, 10-11 AM (11)
Jun 04, 11-12 PM (14)
Jun 04, 12-1 PM (53)
Jun 04, 1-2 PM (39)
Jun 04, 2-3 PM (60)
Jun 04, 3-4 PM (12)
Jun 04, 4-5 PM (4)
Jun 04, 5-6 PM (7)
Jun 04, 6-7 PM (46)
Jun 04, 7-8 PM (27)
Jun 04, 8-9 PM (4)
Jun 04, 9-10 PM (2)
Jun 04, 10-11 PM (24)
Jun 04, 11-12 AM (7)
Jun 05, 12-1 AM (6)
Jun 05, 1-2 AM (8)
Jun 05, 2-3 AM (1)
Jun 05, 3-4 AM (1)
Jun 05, 4-5 AM (1)
Jun 05, 5-6 AM (5)
Jun 05, 6-7 AM (9)
Jun 05, 7-8 AM (12)
Jun 05, 8-9 AM (8)
Jun 05, 9-10 AM (11)
Jun 05, 10-11 AM (12)
Jun 05, 11-12 PM (8)
Jun 05, 12-1 PM (52)
Jun 05, 1-2 PM (61)
Jun 05, 2-3 PM (26)
Jun 05, 3-4 PM (24)
Jun 05, 4-5 PM (17)
Jun 05, 5-6 PM (7)
Jun 05, 6-7 PM (14)
Jun 05, 7-8 PM (12)
Jun 05, 8-9 PM (6)
Jun 05, 9-10 PM (2)
Jun 05, 10-11 PM (20)
Jun 05, 11-12 AM (9)
Jun 06, 12-1 AM (6)
Jun 06, 1-2 AM (0)
Jun 06, 2-3 AM (3)
Jun 06, 3-4 AM (4)
Jun 06, 4-5 AM (0)
Jun 06, 5-6 AM (24)
Jun 06, 6-7 AM (1)
Jun 06, 7-8 AM (2)
Jun 06, 8-9 AM (3)
Jun 06, 9-10 AM (0)
Jun 06, 10-11 AM (3)
Jun 06, 11-12 PM (6)
Jun 06, 12-1 PM (2)
Jun 06, 1-2 PM (2)
Jun 06, 2-3 PM (2)
Jun 06, 3-4 PM (18)
Jun 06, 4-5 PM (1)
Jun 06, 5-6 PM (6)
Jun 06, 6-7 PM (0)
Jun 06, 7-8 PM (6)
Jun 06, 8-9 PM (0)
Jun 06, 9-10 PM (1)
Jun 06, 10-11 PM (27)
Jun 06, 11-12 AM (9)
Jun 07, 12-1 AM (14)
Jun 07, 1-2 AM (2)
Jun 07, 2-3 AM (0)
Jun 07, 3-4 AM (0)
Jun 07, 4-5 AM (1)
Jun 07, 5-6 AM (1)
Jun 07, 6-7 AM (3)
Jun 07, 7-8 AM (0)
Jun 07, 8-9 AM (0)
Jun 07, 9-10 AM (1)
Jun 07, 10-11 AM (2)
Jun 07, 11-12 PM (2)
Jun 07, 12-1 PM (5)
Jun 07, 1-2 PM (35)
Jun 07, 2-3 PM (2)
Jun 07, 3-4 PM (4)
Jun 07, 4-5 PM (2)
Jun 07, 5-6 PM (4)
Jun 07, 6-7 PM (0)
Jun 07, 7-8 PM (0)
Jun 07, 8-9 PM (17)
Jun 07, 9-10 PM (1)
Jun 07, 10-11 PM (21)
Jun 07, 11-12 AM (9)
Jun 08, 12-1 AM (9)
Jun 08, 1-2 AM (5)
Jun 08, 2-3 AM (3)
Jun 08, 3-4 AM (4)
Jun 08, 4-5 AM (2)
Jun 08, 5-6 AM (9)
Jun 08, 6-7 AM (5)
Jun 08, 7-8 AM (25)
Jun 08, 8-9 AM (36)
Jun 08, 9-10 AM (40)
Jun 08, 10-11 AM (24)
Jun 08, 11-12 PM (22)
Jun 08, 12-1 PM (40)
Jun 08, 1-2 PM (48)
Jun 08, 2-3 PM (33)
Jun 08, 3-4 PM (27)
Jun 08, 4-5 PM (12)
Jun 08, 5-6 PM (23)
Jun 08, 6-7 PM (14)
Jun 08, 7-8 PM (3)
Jun 08, 8-9 PM (6)
Jun 08, 9-10 PM (19)
Jun 08, 10-11 PM (29)
Jun 08, 11-12 AM (8)
Jun 09, 12-1 AM (5)
Jun 09, 1-2 AM (3)
Jun 09, 2-3 AM (1)
Jun 09, 3-4 AM (3)
Jun 09, 4-5 AM (26)
Jun 09, 5-6 AM (5)
Jun 09, 6-7 AM (23)
Jun 09, 7-8 AM (50)
Jun 09, 8-9 AM (35)
Jun 09, 9-10 AM (45)
Jun 09, 10-11 AM (51)
Jun 09, 11-12 PM (46)
Jun 09, 12-1 PM (86)
Jun 09, 1-2 PM (84)
Jun 09, 2-3 PM (36)
Jun 09, 3-4 PM (38)
Jun 09, 4-5 PM (16)
Jun 09, 5-6 PM (18)
Jun 09, 6-7 PM (18)
Jun 09, 7-8 PM (19)
Jun 09, 8-9 PM (16)
Jun 09, 9-10 PM (16)
Jun 09, 10-11 PM (28)
Jun 09, 11-12 AM (10)
Jun 10, 12-1 AM (11)
Jun 10, 1-2 AM (16)
Jun 10, 2-3 AM (11)
Jun 10, 3-4 AM (7)
Jun 10, 4-5 AM (5)
Jun 10, 5-6 AM (2)
Jun 10, 6-7 AM (46)
Jun 10, 7-8 AM (82)
Jun 10, 8-9 AM (18)
Jun 10, 9-10 AM (59)
Jun 10, 10-11 AM (46)
Jun 10, 11-12 PM (134)
Jun 10, 12-1 PM (48)
Jun 10, 1-2 PM (33)
Jun 10, 2-3 PM (31)
Jun 10, 3-4 PM (25)
Jun 10, 4-5 PM (33)
Jun 10, 5-6 PM (10)
Jun 10, 6-7 PM (3)
Jun 10, 7-8 PM (0)
2,804 commits this week Jun 03, 2026 - Jun 10, 2026
Add stdlib wrappers for remaining BLS12-381 builtins
Complete coverage of the BLS12-381 prelude builtins so protocols no longer
need to blend raw builtins with stdlib:

- g1.neg / g2.neg: additive inverse of a curve point (previously only
  inlined inside `sub`). `sub` now reuses `neg`/`add`.
- pairing.mul: multiply two `MillerLoopResult` together, aggregating
  pairings before a final verification (wraps
  bls12_381_mul_miller_loop_result).

Adds property tests: P + (-P) = 0, -P = 0 - P, P - P = 0, and pairing
bilinearity (e(P,Q)^2 = e(2P,Q); e(P,Q)*e(P,Q') = e(P, Q+Q')).

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Re-export deprecated rule names from `Cardano.Ledger.Shelley.API.Types`
`Cardano.Ledger.Shelley.API.Types` keeps re-exporting the deprecated
`Shelley*` rule names (sourced from `Cardano.Ledger.Shelley.Era`) rather
than the new ones, since this module will eventually be removed. Update
the internal call sites to import the new rule names from
`Cardano.Ledger.Shelley.Rules` directly.
Rename Conway rules
- `ConwayBBODY` -> `BBODY`
- `ConwayCERT` -> `CERT`
- `ConwayCERTS` -> `CERTS`
- `ConwayDELEG` -> `DELEG`
- `ConwayENACT` -> `ENACT`
- `ConwayEPOCH` -> `EPOCH`
- `ConwayGOV` -> `GOV`
- `ConwayGOVCERT` -> `GOVCERT`
- `ConwayHARDFORK` -> `HARDFORK`
- `ConwayLEDGER` -> `LEDGER`
- `ConwayMEMPOOL` -> `MEMPOOL`
- `ConwayNEWEPOCH` -> `NEWEPOCH`
- `ConwayRATIFY` -> `RATIFY`
- `ConwayTICKF` -> `TICKF`
- `ConwayUTXO` -> `UTXO`
- `ConwayUTXOS` -> `UTXOS`
- `ConwayUTXOW` -> `UTXOW`
Rename Dijkstra rules
- `DijkstraBBODY` -> `BBODY`
- `DijkstraCERT` -> `CERT`
- `DijkstraGOV` -> `GOV`
- `DijkstraGOVCERT` -> `GOVCERT`
- `DijkstraLEDGER` -> `LEDGER`
- `DijkstraMEMPOOL` -> `MEMPOOL`
- `DijkstraSUBCERT` -> `SUBCERT`
- `DijkstraSUBCERTS` -> `SUBCERTS`
- `DijkstraSUBDELEG` -> `SUBDELEG`
- `DijkstraSUBGOV` -> `SUBGOV`
- `DijkstraSUBGOVCERT` -> `SUBGOVCERT`
- `DijkstraSUBLEDGER` -> `SUBLEDGER`
- `DijkstraSUBLEDGERS` -> `SUBLEDGERS`
- `DijkstraSUBPOOL` -> `SUBPOOL`
- `DijkstraSUBUTXO` -> `SUBUTXO`
- `DijkstraSUBUTXOW` -> `SUBUTXOW`
- `DijkstraUTXO` -> `UTXO`
- `DijkstraUTXOW` -> `UTXOW`