Added hermod-recon-framework-1.3.0
Jun 03, 4-5 AM (7)
Jun 03, 5-6 AM (12)
Jun 03, 6-7 AM (80)
Jun 03, 7-8 AM (16)
Jun 03, 8-9 AM (24)
Jun 03, 9-10 AM (22)
Jun 03, 10-11 AM (39)
Jun 03, 11-12 PM (76)
Jun 03, 12-1 PM (93)
Jun 03, 1-2 PM (28)
Jun 03, 2-3 PM (62)
Jun 03, 3-4 PM (26)
Jun 03, 4-5 PM (24)
Jun 03, 5-6 PM (23)
Jun 03, 6-7 PM (15)
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 (44)
Jun 09, 12-1 PM (86)
Jun 09, 1-2 PM (67)
Jun 09, 2-3 PM (36)
Jun 09, 3-4 PM (38)
Jun 09, 4-5 PM (15)
Jun 09, 5-6 PM (17)
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 (26)
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 (2)
2,750 commits this week
Jun 03, 2026
-
Jun 10, 2026
Merge pull request #926 from input-output-hk/shd/compressing-aggregated-votes
Technical debt: limiting votingPanel resource requirements
fix: update android to support 16kb window size
ci(mediator): align release workflow with Java 17
Signed-off-by: Yurii Shynbuiev <[email protected]>
fix: missing jni libraries
fix: detect in-memory GPG signing credentials for bip32-ed25519 publishing
The signing credential check only looked for signing.keyId property and GPG_KEY_ID env var, missing the in-memory signing properties used by CI (signingInMemoryKey / ORG_GRADLE_PROJECT_signingInMemoryKey). This caused unsigned artifacts to be uploaded to Maven Central, which silently rejects them during validation. Co-Authored-By: Claude Opus 4.6 <[email protected]> Signed-off-by: Yurii Shynbuiev <[email protected]>
fix(leios): Made changes to reject leios endorser block hash slot mismatches before voting
Signed-off-by: Akhil Repala <[email protected]>
feat(leios): enforce pipeline timing windows and unify the vote window
The pipeline framework tracked stages but most of PipelineTiming drove no behavior: stageFor ran only on the certified path, handleEbQuorum honored any certificate regardless of timing, and the pipeline's VoteWindowSlots had no relationship to VoteManager's vote-acceptance window. - Enforce the certification deadline: a certificate arriving at or past CertifyByDeadlineSlots is rejected (counted under certs_rejected_total), leaving the EB tracked but never certified, so it cannot become eligible. - Surface the uncertified stages: updateGaugesLocked now derives a per-EB stage gauge via stageFor with each EB's real certified flag (exercising the uncertified branch in production), plus a read-only StageOf seam. - Unify the vote window: VoteManager's vote-acceptance past bound is now the pipeline's VoteWindowSlots, passed through VoteManagerConfig and sourced from the same leiosPipelineTiming() the pipeline uses, so the two components admit votes over the same window and cannot drift. Replaces the standalone slotWindowPastTolerance. - Remove the inert StageLengthSlots field. ARCHITECTURE.md updated; DATABASE.md unaffected (in-memory, metrics only). Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]> Signed-off-by: Chris Guiney <[email protected]>
WIP: ERA decision and all-profiles.json
wb | add PV 11 preview and dijkstra support to cardano-profile
wb | remove genesis specs and use the profile contents
Remove the "genesis spec" workbench command that was used for `create-testnet-data --spec-*` and instead use what cardano-profile provides. The profile may have null "conway" or "dijkstra" genesis fields but the node still needs valid files, use a "zero" genesis in those cases.
wb | epoch-timeline fixes to follow mainnet as much as possible
Based on a mainnet db-sync and mainnet genesis files we reconstructed the timeline with no cardano-profile implementation specifics
wb | support any cost models through alonzo genesis
Going forward, the only way to inject cost models with any number of parameters is through Alonzo genesis "extraConfig" field.
wb | new epoch-timeline.json format
- Structure: Separates cost models from the rest of the parameters. - Consistency: Shelley genesis is the full object, no only the "protocolParams" field. - Consistency: Uses everywhere an object for the cost model, no arrays. - Cost model names are updated.
wb | restore previously removed extra cost models in epoch-timeline.json
Were removed when the node started only considering valid what mainnet shipped with
wb | new genesis "ripper" backend separating dataset from protocol
fix(blockfrost): compute network locked supply and align network eras… (#2510)
* fix(blockfrost): compute network locked supply and align network eras schema Signed-off-by: cryptodj413 <[email protected]> * fix(blockfrost): address review Signed-off-by: cryptodj413 <[email protected]> * fix(blockfrost): populate PaymentScript in import path Signed-off-by: cryptodj413 <[email protected]> * fix(blockfrost): address test issue Signed-off-by: cryptodj413 <[email protected]> --------- Signed-off-by: cryptodj413 <[email protected]>
fix(leios): count EB equivocation per slot and couple observe window to vote tolerance
Two follow-ups from review of the pipeline timing change: - markEquivocationLocked incremented ebEquivocationTotal (and logged) once per EB added beyond the first, so a slot with N distinct EBs counted N-1 times despite the metric documenting "number of slots with equivocating endorser blocks". Track a per-instance equivocated flag so the counter and warn log fire exactly once per equivocating slot; every EB is still flagged for inclusion exclusion. Adds a regression test. - Define observeFutureToleranceSlots as the vote manager's slotWindowFutureTolerance instead of a duplicated literal 60, so the two Leios components admit endorser blocks over the same future window and cannot drift apart. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]> Signed-off-by: Chris Guiney <[email protected]>
bump: cardano-node-leios for consensus unique constraint fix #2062
feat(ui): encrypted mnemonic keystore (scrypt + AES-256-GCM)
Signed-off-by: Chris Gianelloni <[email protected]>
feat(ui): encrypted mnemonic keystore (scrypt + AES-256-GCM)
Signed-off-by: Chris Gianelloni <[email protected]>
Wire TraceLeiosDb through to new tracing
Adapts cardano-node to the updated ouroboros-consensus newLeiosDBSQLite signature (Tracer IO TraceLeiosDb -> FilePath -> ...) introduced in IntersectMBO/ouroboros-consensus#2062, and surfaces the SQLite UNIQUE/PRIMARY KEY collision events it emits. * New tracing: adds a leiosDbTracer field on Cardano.Node.Tracing.Tracers, wires it via mkCardanoTracer at namespace Consensus.LeiosDb, and provides LogFormatting / MetaTrace instances (Warning severity). * Legacy tracing: leiosDbTracer = nullTracer, matching how the other Leios consensus tracers are currently left. * Run.hs: passes (leiosDbTracer tracers) to newLeiosDBSQLite. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
WIP: ERA decision and all-profiles.json