Update o-c and add tracer for LeiosTally - #6670
Draft
johnalotoski wants to merge 1 commit into
Draft
Conversation
Bumps ouroboros-consensus to pick up the running per-point vote tally trace, and registers the Consensus.LeiosKernel.Tally namespace it needs. The bump spans two consensus commits: the trace itself, and keeping the per-point total in the vote state rather than resumming the voter map on every accepted vote. The tally is the certification margin. Only certified points reach the chain, so a point that stalls below minCertificationThreshold currently leaves no record of how close it came, and a diffusion near miss cannot be told apart from a structural shortfall. Registration is the usual three sites: forHuman, namespaceFor and allNamespaces. privacyFor, detailsFor and metricsDocFor take their class defaults and documentFor is covered by the instance catch-all. forHuman renders the adding seat and its weight alongside the tally and threshold, so the human format carries the same five fields as forMachine. Severity falls through to the Info default, matching the neighbouring Voted and VoteAcquired traces. Note that puts it below the Notice root threshold in the configs shipped here, so the trace is inert unless the deployment lowers Consensus.LeiosKernel, as the playground config does. A metric would sidestep the threshold entirely and is worth considering when log-derived values move to Prometheus.
There was a problem hiding this comment.
Pull request overview
This PR updates the node’s tracing integration to surface the new consensus trace event TraceLeiosTally, making the Leios certification margin observable, and bumps the ouroboros-consensus pinned source-repository-package to a commit that includes that new constructor.
Changes:
- Add human-readable formatting for
TraceLeiosTallyin the node’sTraceLeiosKernellog formatting. - Register
TraceLeiosTallyunderNamespace [] ["Tally"]and include it inallNamespacesso it can be configured via the tracing framework. - Update
cabal.projectto point theouroboros-consensusSRP to a newer commit (and update the recorded sha256 comment).
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| cardano-node/src/Cardano/Node/Tracing/Tracers/Consensus.hs | Adds formatting + namespace registration for the new TraceLeiosTally trace event. |
| cabal.project | Bumps the pinned ouroboros-consensus SRP commit to bring in the new trace constructor. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
johnalotoski
marked this pull request as draft
August 31, 2026 18:19
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Node-side companion to the consensus change that adds
TraceLeiosTally, making theLeios certification margin observable. IntersectMBO/ouroboros-consensus#2256
cabal.projectbumps theouroboros-consensussource-repository-packageCardano/Node/Tracing/Tracers/Consensus.hsregisters the new constructor at the threesites the tracing framework requires: a
forHumanclause, anamespaceFormapping toNamespace [] ["Tally"], and the corresponding entry inallNamespaces.forMachineneeds nothing, since it delegates to consensus
traceLeiosKernelToObject.Severity falls through to
Info, matchingVotedandVoteAcquired. That makes thetrace inert under stock configs, which filter at
Notice.