May 06, 11-12 PM (46)
May 06, 12-1 PM (86)
May 06, 1-2 PM (53)
May 06, 2-3 PM (44)
May 06, 3-4 PM (33)
May 06, 4-5 PM (18)
May 06, 5-6 PM (8)
May 06, 6-7 PM (12)
May 06, 7-8 PM (26)
May 06, 8-9 PM (13)
May 06, 9-10 PM (9)
May 06, 10-11 PM (30)
May 06, 11-12 AM (23)
May 07, 12-1 AM (7)
May 07, 1-2 AM (2)
May 07, 2-3 AM (1)
May 07, 3-4 AM (10)
May 07, 4-5 AM (4)
May 07, 5-6 AM (33)
May 07, 6-7 AM (97)
May 07, 7-8 AM (235)
May 07, 8-9 AM (42)
May 07, 9-10 AM (29)
May 07, 10-11 AM (55)
May 07, 11-12 PM (40)
May 07, 12-1 PM (59)
May 07, 1-2 PM (48)
May 07, 2-3 PM (47)
May 07, 3-4 PM (44)
May 07, 4-5 PM (58)
May 07, 5-6 PM (10)
May 07, 6-7 PM (24)
May 07, 7-8 PM (30)
May 07, 8-9 PM (12)
May 07, 9-10 PM (18)
May 07, 10-11 PM (65)
May 07, 11-12 AM (20)
May 08, 12-1 AM (6)
May 08, 1-2 AM (19)
May 08, 2-3 AM (19)
May 08, 3-4 AM (8)
May 08, 4-5 AM (3)
May 08, 5-6 AM (20)
May 08, 6-7 AM (19)
May 08, 7-8 AM (53)
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 (55)
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 (25)
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 (56)
May 12, 5-6 PM (29)
May 12, 6-7 PM (24)
May 12, 7-8 PM (24)
May 12, 8-9 PM (16)
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 (51)
May 13, 7-8 AM (42)
May 13, 8-9 AM (44)
May 13, 9-10 AM (20)
May 13, 10-11 AM (18)
May 13, 11-12 PM (18)
4,307 commits this week May 06, 2026 - May 13, 2026
Add property tests for EveryoneVotes implementation
This commit implements property tests for the EveryoneVotes
implementation asserting that:

* votes cast by eligible voters are successfully verifiable under the
  same voting committee,
* fake (illegal) votes are successfully rejected, and
* certificates forged by multiple votes can be verifiable under the same
  voting committe

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Introduce O.C.Util.Bitmap
This commit implements a compact bitmaps via ByteStrings, adapted from
the Leios voting committee demo package (leios-wfa-ls-demo):

https://github.com/cardano-scaling/leios-wfa-ls-demo/blob/main/leios-wfa-ls-demo/lib/Cardano/Leios/BitMapPV.hs

Co-authored-by: Agustin Mista <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Nicolas BACQUEY <[email protected]>
Add property tests for WFALS implementation
This commit implements property tests for the real WFALS
implementation asserting that:

* votes cast by eligible voters are successfully verifiable under the
  same voting committee,
* fake (illegal) votes are successfully rejected, and
* certificates forged by multiple votes can be verifiable under the same
  voting committe

Co-authored-by: Nicolas BACQUEY <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Agustin Mista <[email protected]>
Define concrete Peras certs and votes using BLS signatures
This commit defines concrete data structures for Peras votes and certificates
using BLS signatures to represent vote/cert signatures as well as
non-persistent eligibility proofs.

In addition it defines serialization routines for both types, using a
compact bitmap representation in the case of certificates.

Co-authored-by: Agustin Mista <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Nicolas BACQUEY <[email protected]>
Add conversions between Peras votes/certs and voting committee types
This commit implements conversion routines between the brand-new
(concrete) Peras votes and certificates and their corresponding
(abstract) voting committee counterparts.

This is done by introducing a `VotingCommitteeSupportsPeras` type class
to allow us to easily change the underlying voting committee
implementation via a proxy type.

Co-authored-by: Agustin Mista <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Nicolas BACQUEY <[email protected]>
Add conversion roundtrip tests between Peras votes/certs and voting committee types
This commit adds conversion rountrip tests between concrete Peras votes
and certificates and their corresponding (abstract) counterparts in the
WFALS and EveryoneVotes voting committee implementations.

Notably, the roundtrip properties allow testing both total (WFALS) and partial
(EveryoneVotes) conversions, generating both good and bad cases and
contrasting them against their expected rountrip outcome.

Co-authored-by: Agustin Mista <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Nicolas BACQUEY <[email protected]>
Define PerasCrypto and wire up voting committee instance using BLS
This commit defines a concrete PerasCrypto scheme using BLS signatures
to instantiate all the voting committee superclasses needed by the WFALS
and EveryoneVotes voting committee implementations.

Note that these instances are heavily inspired by the ones defined for
TestCrypto in the generic voting committee test-suite, albeit with
slightly different types and more documentation.

Co-authored-by: Agustin Mista <[email protected]>
Co-authored-by: Thomas BAGREL <[email protected]>
Co-authored-by: Nicolas BACQUEY <[email protected]>
feat: add Scalus as onchain framework with SBT standard and cross-check CI
- Add Scalus to frameworks.json (discoveryPath: onchain/scalus/build.sbt)
- Standardize Scalus examples on SBT: migrate auction from Scala-CLI to SBT
  (src/main/scala structure, build.sbt, GeneratePlutus main class)
- Add payment-splitter .gitignore and mainClass to build.sbt
- Add setup-sbt composite action (setup-java + sbt/setup-sbt@v1 + ivy2 cache)
- Add _compile-scalus.yml reusable workflow (sbt compile + sbt run → plutus.json)
- Rename Aiken artifacts: plutus-<example> → plutus-aiken-<example>
- Add onchain-framework input to off-chain test workflows; artifact and log names
  now include the onchain framework (plutus-<onchain>-<example>,
  logs-<prefix>-<onchain>-<example>) enabling cross-product traceability
- Add cross-product CI jobs in ecosystem-test.yml: compute-cross-matrix,
  compile-scalus, and test-{ccl,mesh,evosdk}-vs-scalus
- Update generate-dashboard.sh to build a cross-product column matrix
  (onchain compile columns + offchain×onchain cross columns)

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