Jan 24, 4-5 PM (5)
Jan 24, 5-6 PM (13)
Jan 24, 6-7 PM (3)
Jan 24, 7-8 PM (3)
Jan 24, 8-9 PM (6)
Jan 24, 9-10 PM (3)
Jan 24, 10-11 PM (25)
Jan 24, 11-12 AM (23)
Jan 25, 12-1 AM (0)
Jan 25, 1-2 AM (3)
Jan 25, 2-3 AM (0)
Jan 25, 3-4 AM (1)
Jan 25, 4-5 AM (1)
Jan 25, 5-6 AM (1)
Jan 25, 6-7 AM (1)
Jan 25, 7-8 AM (1)
Jan 25, 8-9 AM (1)
Jan 25, 9-10 AM (3)
Jan 25, 10-11 AM (0)
Jan 25, 11-12 PM (1)
Jan 25, 12-1 PM (7)
Jan 25, 1-2 PM (6)
Jan 25, 2-3 PM (12)
Jan 25, 3-4 PM (12)
Jan 25, 4-5 PM (2)
Jan 25, 5-6 PM (1)
Jan 25, 6-7 PM (2)
Jan 25, 7-8 PM (9)
Jan 25, 8-9 PM (5)
Jan 25, 9-10 PM (6)
Jan 25, 10-11 PM (21)
Jan 25, 11-12 AM (22)
Jan 26, 12-1 AM (11)
Jan 26, 1-2 AM (13)
Jan 26, 2-3 AM (15)
Jan 26, 3-4 AM (8)
Jan 26, 4-5 AM (4)
Jan 26, 5-6 AM (0)
Jan 26, 6-7 AM (4)
Jan 26, 7-8 AM (9)
Jan 26, 8-9 AM (48)
Jan 26, 9-10 AM (34)
Jan 26, 10-11 AM (16)
Jan 26, 11-12 PM (23)
Jan 26, 12-1 PM (44)
Jan 26, 1-2 PM (29)
Jan 26, 2-3 PM (33)
Jan 26, 3-4 PM (21)
Jan 26, 4-5 PM (27)
Jan 26, 5-6 PM (18)
Jan 26, 6-7 PM (16)
Jan 26, 7-8 PM (12)
Jan 26, 8-9 PM (19)
Jan 26, 9-10 PM (10)
Jan 26, 10-11 PM (29)
Jan 26, 11-12 AM (37)
Jan 27, 12-1 AM (14)
Jan 27, 1-2 AM (4)
Jan 27, 2-3 AM (4)
Jan 27, 3-4 AM (20)
Jan 27, 4-5 AM (2)
Jan 27, 5-6 AM (1)
Jan 27, 6-7 AM (9)
Jan 27, 7-8 AM (22)
Jan 27, 8-9 AM (26)
Jan 27, 9-10 AM (29)
Jan 27, 10-11 AM (71)
Jan 27, 11-12 PM (39)
Jan 27, 12-1 PM (50)
Jan 27, 1-2 PM (42)
Jan 27, 2-3 PM (25)
Jan 27, 3-4 PM (76)
Jan 27, 4-5 PM (62)
Jan 27, 5-6 PM (14)
Jan 27, 6-7 PM (28)
Jan 27, 7-8 PM (19)
Jan 27, 8-9 PM (7)
Jan 27, 9-10 PM (27)
Jan 27, 10-11 PM (32)
Jan 27, 11-12 AM (11)
Jan 28, 12-1 AM (12)
Jan 28, 1-2 AM (5)
Jan 28, 2-3 AM (8)
Jan 28, 3-4 AM (44)
Jan 28, 4-5 AM (24)
Jan 28, 5-6 AM (9)
Jan 28, 6-7 AM (9)
Jan 28, 7-8 AM (22)
Jan 28, 8-9 AM (69)
Jan 28, 9-10 AM (65)
Jan 28, 10-11 AM (45)
Jan 28, 11-12 PM (50)
Jan 28, 12-1 PM (36)
Jan 28, 1-2 PM (65)
Jan 28, 2-3 PM (54)
Jan 28, 3-4 PM (37)
Jan 28, 4-5 PM (24)
Jan 28, 5-6 PM (24)
Jan 28, 6-7 PM (8)
Jan 28, 7-8 PM (13)
Jan 28, 8-9 PM (6)
Jan 28, 9-10 PM (3)
Jan 28, 10-11 PM (23)
Jan 28, 11-12 AM (44)
Jan 29, 12-1 AM (15)
Jan 29, 1-2 AM (7)
Jan 29, 2-3 AM (15)
Jan 29, 3-4 AM (4)
Jan 29, 4-5 AM (7)
Jan 29, 5-6 AM (11)
Jan 29, 6-7 AM (17)
Jan 29, 7-8 AM (30)
Jan 29, 8-9 AM (63)
Jan 29, 9-10 AM (35)
Jan 29, 10-11 AM (82)
Jan 29, 11-12 PM (28)
Jan 29, 12-1 PM (26)
Jan 29, 1-2 PM (48)
Jan 29, 2-3 PM (94)
Jan 29, 3-4 PM (39)
Jan 29, 4-5 PM (51)
Jan 29, 5-6 PM (14)
Jan 29, 6-7 PM (39)
Jan 29, 7-8 PM (18)
Jan 29, 8-9 PM (23)
Jan 29, 9-10 PM (25)
Jan 29, 10-11 PM (28)
Jan 29, 11-12 AM (17)
Jan 30, 12-1 AM (12)
Jan 30, 1-2 AM (9)
Jan 30, 2-3 AM (33)
Jan 30, 3-4 AM (26)
Jan 30, 4-5 AM (3)
Jan 30, 5-6 AM (15)
Jan 30, 6-7 AM (10)
Jan 30, 7-8 AM (123)
Jan 30, 8-9 AM (26)
Jan 30, 9-10 AM (29)
Jan 30, 10-11 AM (30)
Jan 30, 11-12 PM (28)
Jan 30, 12-1 PM (56)
Jan 30, 1-2 PM (44)
Jan 30, 2-3 PM (54)
Jan 30, 3-4 PM (37)
Jan 30, 4-5 PM (26)
Jan 30, 5-6 PM (16)
Jan 30, 6-7 PM (2)
Jan 30, 7-8 PM (12)
Jan 30, 8-9 PM (27)
Jan 30, 9-10 PM (13)
Jan 30, 10-11 PM (36)
Jan 30, 11-12 AM (15)
Jan 31, 12-1 AM (1)
Jan 31, 1-2 AM (7)
Jan 31, 2-3 AM (3)
Jan 31, 3-4 AM (0)
Jan 31, 4-5 AM (1)
Jan 31, 5-6 AM (0)
Jan 31, 6-7 AM (2)
Jan 31, 7-8 AM (0)
Jan 31, 8-9 AM (1)
Jan 31, 9-10 AM (5)
Jan 31, 10-11 AM (4)
Jan 31, 11-12 PM (5)
Jan 31, 12-1 PM (5)
Jan 31, 1-2 PM (2)
Jan 31, 2-3 PM (7)
Jan 31, 3-4 PM (2)
Jan 31, 4-5 PM (11)
3,481 commits this week Jan 24, 2026 - Jan 31, 2026
chore: tidy kernel modules
This is a big and unpleasant commit; but vastly necessary. Multiple
things are going on, but before I explain further: why are we doing
this?

We have decided to move away from Pallas. There are various reasons
motivating this and a proper EDR will come ASAP. The gist being that we
ended up working more _around_ Pallas than _with_ Pallas. The amount of
duplication and workaround have reached a point that makes this switch a
lot more painful than I'd have liked.

In short, here's what's happening:

- The kernel top-level `lib` has been broken down into many smaller
  modules; the general strategy being "one type per module", with
  associated methods and traits.

- This shall allow us to now migrate in a more incremental fashion from
  Pallas to Amaru's own kernel / prelude. And, importantly, to give more
  thoughts about the public API we want to expose; for us, but also for
  downstream consumers.

- Few methods have been moved around, from the kernel to other places or
  vice-versa when it was relevant.

- Many duplications were already addressed; sometimes requiring a bit of
  finesse, renaming and moving types around. Some heavy work remain in a
  couple of places such as the amaru-plutus & the script context, as
  well as the "memoized" sections, which needs to be promoted as the new
  defaults.

Signed-off-by: KtorZ <[email protected]>
fix: repair auxiliary data decoder & block's body hash calculation.
  The block body hash wasn't really the bug I was originally after; and it seems like we've been doing it wrong since ... always. It's a bit comical that the one thing we forgot to verify was that blocks actually form a valid chain! This is totally missing from our ledger rules, and therefore, ended up going under the radar and the block body hash not being needed at all.

  The reason I added it here was simply because I created a regression test from one of the failing block on preprod, and thought it would be interesting to control the block hash. I am glad I did, but even more worried now.

Signed-off-by: KtorZ <[email protected]>