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 (5)
Jun 10, 5-6 AM (2)
2,742 commits this week
Jun 03, 2026
-
Jun 10, 2026
tracing: surface TraceLeiosDb via the Leios kernel tracer
Adapts cardano-node to the updated ouroboros-consensus newLeiosDBSQLite signature (Tracer IO TraceLeiosDb -> FilePath -> ...) from IntersectMBO/ouroboros-consensus#2062 by contramapping the TraceLeiosDb constructor into the existing Consensus.LeiosKernel tracer. SQLite UNIQUE/PRIMARY KEY collision events are given Warning severity so they remain visible under the default Notice configuration. Co-Authored-By: Claude Fable 5 <[email protected]>
pkgconf-pc-version: gate on glibc, not just linux
The test was enabled on android-prebuilt targets (isLinux && !isMusl && !isStatic), where it tried to build systemd for a bionic libc target and failed with a dependency error. systemd only builds on glibc, so gate the systemd module set on hostPlatform.libc == "glibc" (excludes android/bionic, musl, Windows, wasm) plus !isStatic.
bench: remove cardano-recon-framework (moved to IntersectMBO/hermod-tracing)
Added hermod-recon-framework-1.3.0
[EC Api] - Added: @Cardano_TR
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]>