Once Staking is activated and most tokens are unstaked with no new tokens being staked, Global SRPs will keep going towards 0. If at the same time Combined Token Pool remains high, the ROE can get very high. Example:
Combined token pool: 10,000,000,000,000,000 SUFs
Global SRP: 1 (all tokens unstaked)
If this occurred it will not impact staking fundamentals, but a large enough ROE can lead to overflow and/or precision truncation.
This is extremely unlikely to happen in reality as it would require a very large portion of staked tokens to be unstaked and a large number of tokens come in from fees without any new tokens being staked. Yet as Global SRPs get low, meaning fewer are staking, the APR goes up creating an incentive to stake.
No matter the solution selected, Combined Token Pool and Global SRPs have to be initialized to a non-zero value to avoid unexpected behavior.
1. Leave as-is
This approach assumes market forces would prevent ROE from going extreme.
In extreme cases may lead to overflow and loss of precision.
2. Freeze ROE
With this approach if Global SRPs get too low, e.g. 1M, the ROE would be “frozen” (kept at last value). Once Global SRPs go back above the minimum, ROE would be unfrozen.
As ROE is frozen, users do not earn rewards.
As ROE goes up and stakers “recycle” (stake/unstake) their tokens, the required minimum of staked tokens to not freeze ROE goes up.