Skip to main content

dig_slashing/inactivity/
mod.rs

1//! Continuous inactivity accounting (Ethereum Bellatrix parity).
2//!
3//! Traces to: [SPEC ยง9](../../../docs/resources/SPEC.md),
4//! catalogue rows
5//! [DSL-087..093](../../../docs/requirements/domains/inactivity/specs/).
6//!
7//! # Role
8//!
9//! Inactivity-leak regime detection + per-validator score
10//! accumulation. Activates when finality stalls beyond
11//! `MIN_EPOCHS_TO_INACTIVITY_PENALTY` and zero-resets scores
12//! on recovery.
13//!
14//! # Scope (incremental)
15//!
16//! Module grows one DSL at a time. First commit lands DSL-087
17//! (`in_finality_stall` threshold). Future DSLs add:
18//!
19//!   - DSL-088: `InactivityScoreVec` storage
20//!   - DSL-089: per-epoch accumulate
21//!   - DSL-090: recovery reset
22//!   - DSL-091: penalty formula
23//!   - DSL-092: leak-only gate
24//!   - DSL-093: post-stall zero penalties
25
26pub mod penalty;
27pub mod score;
28
29pub use penalty::in_finality_stall;
30pub use score::InactivityScoreTracker;