Closed
Milestone
expired on Jun 13, 2023
Adaptive Inflation - Activation
Following Adaptive Inflation design phase
People: @philippewang.info , @rafoo_ Reviewers: @mbouaziz (50%), @lrand, @raphael-proust
Work breakdown:
-
add a feature flag for Adaptive Inflation (see !7220 (merged) for an example of feature flag recently added) -> !8566 (merged) generalize per-block vote (revive !5168 (closed))-
add a per-block vote for Adaptive Inflation -> !8661 (merged) -
persistent EMA (register the EMA in the context) -
add a context field for the EMA -> !8967 (merged) -
register the EMA in the context -> !9002 (merged)
-
-
put the threshold at 80% (and not 50% like in LB); when the threshold is reached, set the launch cycle to next_cycle + preserved_cycle + max_slashing_period. Do not update the launch cycle if it is already set. -> !9058 (merged) -
setting the launch cycle -
add a context field for the launch cycle -> !8967 (merged) -
add a RPC to expose the launch cycle field -> !9057 (merged)
-
-
use the activation cycle to set the feature flag: -
make the launch_cycle context field optional !9087 (merged) -
use it to set the feature flag -> !9071 (merged)
-
-
new ema value appears in block metadata like LB -> done as part of !9002 (merged) -
modify EMA parameters -
the EMA is currently represented on an int32. We probably need to change it to something larger such as int64. -> !8987 (merged) (or not actually, see !9104 (merged)) -
turn the EMA module into a functor whose parameters influence the half life -> !9025 (merged) -
modify the vote parameters so that the half-life becomes 2 weeks -> !9074 (merged)
-
For %Adaptive Inflation - Stabilization or earlier
-
test the activation: -
duplicate lib_protocol/test/integration/liquidity_baking.ml -
Test for the EMA: !9061 (merged) -
Test for the activation: !9068 (merged)
-
-
duplicate lib_protocol/test/unit/liquidity_baking_repr.ml -> !9056 (closed)done as part of !9074 (merged)
-
-
mention in changelog that the vote is not a toggle (contrary to LB); once the 80% threshold is reached, deactivating adaptive inflation would require another protocol amendment -
parameterize toggle vote unit tests so that they test both LB and AI votes
For %"Adaptive Inflation - Validation"
-
renamings -
rename "toggle vote" into "per block vote" (in proto, lib_delegate)
-
Loading
Loading
Loading
Loading