add Plutus Benchmarks (customSmallerIsBetter) benchmark result for 670e91326c404bc10228fcd9d0c129f7d7184ed2
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 (64)
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 (63)
Feb 12, 2-3 PM (80)
Feb 12, 3-4 PM (39)
Feb 12, 4-5 PM (49)
Feb 12, 5-6 PM (82)
Feb 12, 6-7 PM (31)
Feb 12, 7-8 PM (28)
Feb 12, 8-9 PM (20)
Feb 12, 9-10 PM (28)
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 (29)
Feb 13, 6-7 AM (33)
Feb 13, 7-8 AM (31)
Feb 13, 8-9 AM (39)
Feb 13, 9-10 AM (73)
Feb 13, 10-11 AM (73)
Feb 13, 11-12 PM (43)
Feb 13, 12-1 PM (52)
Feb 13, 1-2 PM (59)
Feb 13, 2-3 PM (48)
Feb 13, 3-4 PM (27)
Feb 13, 4-5 PM (27)
Feb 13, 5-6 PM (26)
Feb 13, 6-7 PM (25)
Feb 13, 7-8 PM (20)
Feb 13, 8-9 PM (1)
4,391 commits this week
Feb 06, 2026
-
Feb 13, 2026
chore: update clap to 4.5.58 and syn to 2.0.115 in Cargo.lock
Merge branch 'main' into feat/preview-omnibus-mithril-main
update ath ui, more compact, cleaner, and simpler
Signed-off-by: JaeBrian <[email protected]>
chain_store: isolate DB per network and fix first-block persistence (#689)
Artifacts generated from ee3017aef477aa8abb1b1266e2459a1d3ff1a835
Deploying to gh-pages from @ IntersectMBO/plutus@670e91326c404bc10228fcd9d0c129f7d7184ed2 🚀
feat: bootstrap client for mithril
Signed-off-by: Chris Gianelloni <[email protected]>
ci: disabled NotificationCenter tests
update GHA job matrix
Use chain hash comparison for properties on parametric `blk`
Some genesis tests still depend on 'TestBlock' specific logic. Specifically, the `TestHash` (the `HeaderHash TestBlock` type family instance) stores a number list representation of the path on the `BlockTree` leading to the corresponding block (i.e. its prefix `AnchoredFragment`); this is used to implement certain properties. Here, such properties are refactored to parametric blocks by using direct hash comparison (in some cases on the `BlockTree` trunk). https://github.com/tweag/ouroboros-consensus-testing/pull/32/commits/3e838526a5a6d683bf12ac59297c824215c6ee78 holds a test showcasing a property of a previous refactor: namely that the order of _fork numbers_ in a `TestHash` are not relevant for the properties that depended on it. This alternative refactor (on https://github.com/tweag/ouroboros-consensus-testing/pull/32/commits/dab534952a996f32bce1931b92698577c4115e26) intended to preserve existing code structure, which was confusing, and as such was changed in the end in search for clarity.
Add `deforestBlockTree`
An important in-progress task is to make more test code
block-polymorphic; right now it is largely hardcoded to use test blocks
but this will not work for running conformance tests against live
implementations of the protocol.
We do not know the exact motivation behind making these tests monomorphic;
regardless it seems the only thing the tests require is the ability to
compute where a block is on the block tree.
Here we add a helper function to make generalize this by constructing a map
from each block hash in the tree to the `AnchoredFragment` from it to the
anchor. That fragment is a prefix of the trunk if and only if the block
is on the trunk.
The deforested block tree is used to check for block membership, and
to prevent its unnecessary regeneration many thousands of times per test,
it is implemented by adding a `DeforestedBlockTree` field to `BlockTree` to
cache it and a smart constructor that populates it correctly at definition time
and makes it possible to deconstruct a block tree into its trunk and branches
without giving access to the cached deforestation.
GHC's pattern match checker [assumes that any case expression involving
a pattern synonym is
incomplete](https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/pragmas.html#complete-pragmas);
with either `-Wincomplete-patterns` or `-Wall`, GHC will report usage of
such patterns an incomplete pattern match like this:
```
Pattern match(es) are non-exhaustive
In an equation for ‘mkProperty’:
Patterns of type ‘GenesisTestFull blk’,
‘StateView blk’ not matched:
(GenesisTest _ _ _ _ (Test.Consensus.BlockTree.RawBlockTree _ _ _)
_ _ _ _ _ _ _)
_
```
For this reason we add a `COMPLETE` pragma to let GHC know that `BlockTree` is
in fact a complete set of patterns for deconstructing a block tree.
Generalize test machinery's reliance on `TestBlock`
Here we generalize all uses of unnecessarily-specified `TestBlock`s to instead be parametric `blk`s. For this we introduce two new type classes. The `IssueTestBlock` class abstracts the operations needed to produce blocks during chain generation. The `HasPointScheduleTestParams` class abstracts the parameters needed to run the point schedule tests. We invoke `getProtocolInfoArgs` at the beginning of a test, and use it to construct a `ProtocolInfo`, which in turn provides both a `TopLevelConfig` and an `ExtLedgerState`. The requirement of `IO` comes from needing to eventually parse cardano config files. A key point of entry for this change is found on `PeerSimulator.Run.nodeLifecycle`, where the `ProtocolInfo` is delivered, enabling the generalization of the simulation to arbitrary blocks. We provide instances for `TestBlock`. Co-authored-by: Nathan Bloomfield <[email protected]> Co-authored-by: Xavier Góngora <[email protected]>
add default package
Update haskell.nix
Nix build changes
Store Mithril downloads under module directory
docs: updated README and added troubleshooting.md
Store Mithril downloads under module path
Change flake-utils for flake-parts