Skip to content

Conversation

@oliviasaa
Copy link
Contributor

@oliviasaa oliviasaa commented Jul 1, 2025

Description of change

This PR introduces a set of misbehavior-related metrics to be stored by all validators. These same metrics are exposed via Prometheus.

Each validator will track, for each of their peers:

  • Equivocations
  • Missing block proposals
  • Faulty blocks sent to them

Bases on these values, validators also calculate their peers' score.

Notes:

  • Faulty blocks are divided into provable and unprovable, since those misbehaviors could be treated differently.
  • Equivocations and missing block counts are divided into cached and uncached; uncached metrics will never decrease, and rounds that are not cached anymore can be considered "more final" than cached rounds. The uncached metrics also persist in storage.

How the change has been tested

  • Basic tests (linting, compilation, formatting, unit/integration tests)
  • Patch-specific tests (correctness, functionality coverage)
  • I have added tests that prove my fix is effective or that my feature works
  • I have checked that new and existing unit tests pass locally with my changes

Release Notes

  • Protocol: Introduces new Prometheus metrics for validators, which are also locally stored in the node.
  • Nodes (Validators and Full nodes):
  • Indexer:
  • JSON-RPC:
  • GraphQL:
  • CLI:
  • Rust SDK:
  • REST API:

@vercel
Copy link

vercel bot commented Jul 1, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
apps-backend ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 21, 2025 1:09pm
iota-evm-bridge 🛑 Canceled (Inspect) Jul 21, 2025 1:09pm
rebased-explorer ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 21, 2025 1:09pm
wallet-dashboard ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 21, 2025 1:09pm
2 Skipped Deployments
Name Status Preview Comments Updated (UTC)
apps-ui-kit ⬜️ Ignored (Inspect) Visit Preview 💬 Add feedback Jul 21, 2025 1:09pm
iota-multisig-toolkit ⬜️ Ignored (Inspect) Visit Preview Jul 21, 2025 1:09pm

@alexsporn alexsporn changed the title feat(protocol research): Introduce validator scoring metrics feat(consensus): Introduce validator scoring metrics Jul 1, 2025
@iotaledger iotaledger deleted a comment from cyberphysic4l Jul 10, 2025
@oliviasaa oliviasaa marked this pull request as ready for review July 10, 2025 22:12
@oliviasaa oliviasaa requested a review from a team as a code owner July 10, 2025 22:12
Copy link
Contributor

@piotrm50 piotrm50 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left a comment about one last detail that I would change.

@oliviasaa oliviasaa requested a review from piotrm50 July 18, 2025 13:48
Copy link
Contributor

@cyberphysic4l cyberphysic4l left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few small requests for final changes, otherwise lgtm

@oliviasaa oliviasaa marked this pull request as draft July 21, 2025 12:33
@oliviasaa oliviasaa marked this pull request as ready for review July 21, 2025 12:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants