| BRIP number | 0008 |
|---|---|
| Title | Validator Effective Balance Hysteresis Constant Update |
| Author(s) | P-OPS Team (Discussion Facilitator) |
| Status | Discussion |
| Type | Core (Protocol) |
| Created | TBD |
Abstract
This BRIP initiates a discussion on updating the HysteresisQuotient and HysteresisUpwardMultiplier constants to stabilize the effective balance of validators and mitigate unexpected, non-consensus-related ejections. We are soliciting input from the Berachain Team and the wider community to collectively establish optimal targets for a more capital-efficient upward threshold and a less sensitive downward floor. Discussion on the EffectiveBalanceIncrement is also invited.
Motivation
The current configuration of the validator effective balance hysteresis rules creates unnecessary economic friction and hinders capital efficiency, particularly concerning the Upward Hysteresis Threshold.
The effective balance is currently calculated in 10,000 BERA increments. The current constants require a validator’s current balance to exceed the next 10,000 BERA effective increment by an additional 12,500 BERA (10,000 / 4 * 5). This means that to register a 10,000 BERA increase in effective balance, the required actual amount (12,500 BERA) is equal to 125% of the increment size itself.
This overly aggressive threshold hinders capital efficiency. For example, to move a validator’s effective balance from 250,000 BERA to 260,000 BERA (a 10k increment), their current balance must reach and consistently hold more than 262,500 BERA.
The goal of this BRIP is to improve the capital efficiency of the validator set by significantly reducing the required upward buffer, allowing staked capital to be recognized and secured more quickly. We require consensus and analytical input from the Berachain Team and the community on the optimal target buffer percentage (e.g., 110%, 105%, etc.) and whether the base increment size itself should be changed from 10,000 BERA.
Specification
The following mainnet network constants are proposed to be updated to achieve the target downward and upward thresholds:
| Constant | Current value | Proposed value | Description |
|---|---|---|---|
| effectiveBalanceIncrement | 10000 | TBD | The base unit for effective balance changes. Open for discussion to determine optimal granularity. |
| hysteresisQuotient | 4 (current) | TBD | Needs to be chosen to reduce downward sensitivity and set the base for the upward threshold. |
| hysteresisUpwardMultiplier | 5 (currentDefault) | TBD | Needs to be set in conjunction with the Quotient to achieve the community-agreed target upward threshold percentage. |
| hysteresisDownwardMultiplier | 1 (currentDefault) | TBD | Needs to be set in conjunction with the Quotient to achieve the community-agreed target downward threshold percentage |
The current mainnet constants are defined in the mainnet.go file and used in the state transition logic state_processor.go
Rationale
The following steps outline the mathematical dependencies between the constants. For the discussion to be productive, proposals must acknowledge that the value of the HysteresisQuotient must be determined first, as it affects both the upward and downward thresholds. The HysteresisUpwardMultiplier is then chosen to achieve the final desired upward buffer.
1. Effective Balance Increment
The effectiveBalanceIncrement determines the base unit for all effective balance changes. A smaller increment would allow staking rewards to be recognized more frequently, but may lead to increased processing overhead. Our suggestion is TBD BERA
2. Downward Hysteresis
Our suggested downward threshold is - 100 BERA to prevent spurious balance drops from triggering a change in effective balance.
This can be accomplished with
- hysteresisQuotient = 10000 and hysteresisDownwardMultiplier = 100
3. Upward Hysteresis
Our suggested upward threshold is to reduce the required buffer to 10% of the effectiveBalanceIncrement (currently 1,000 BERA) to recognize staked capital more quickly.
This can be accomplished with
- hysteresisUpwardMultiplier = 10 and hysteresisQuotient = 100
Backward Compatibility
This BRIP changes network constants only. It is fully backward compatible with the current Berachain protocol implementation. The update requires a network upgrade to apply the new constant values.
Security Considerations
TBD
Copyright
All copyrights and related rights in this work are waived under CCO 1.0 Universal.