Adaptive issuance - P finalisation
Follow-up of %Adaptive Issuance - P
Some work might also be attached to %Protocol P
Task on Adaptive issuance that can be handled after the beginning of the stabilization period, mainly testing and documenting.
Tests (protocol's integration tests framework)
-
Refactor the code to make tests more reliable and easier to write -
Split into multiple files (required before anything) (!12102 (merged)) -
Clean begin_test- split begin to make it more modular (hours) !12208 (merged), !12322 (merged), !12102 (merged),!12355 (merged) -
Clean bake- add comments (hours) !12364 (merged) -
other cleanings !12243 (merged), !12232 (merged), !12116 (merged), !12346 (merged),!12418 (merged) -
Export more functionalities in protocol tests (day - optional part) -
import previous protocol to test stitching from the framework -
import plugin to get/test plugins RPC
-
-
-
classify the existing tests -- what feature is tested (directly and indirectly) (days) -
Basic functionalities -
Autostaking -
Rewards -
Slashing -
Stake/Unstake -
Unit tests
-
-
Clean and Write missing tests -
Basic functionalities -
encoding roundtrip test !12097 (merged), !11601 (merged)
-
-
Autostaking @polubelova -
after delegation decreases, autostaking leads to 10% frozen stakes !12484 (merged) (soon undraft) -
test deactivation @lrand
-
-
Rewards -
small cleanup + tests with autostaking !12417 (merged)
-
-
denunciation -
forbiding !12341 (merged)
-
-
Slashing @MBourgoin -
Any slash with delegator stakers (hours) !12465 (merged) -
Multiple misbehaviours before denunciation (days) !12465 (merged) under-review -
From single delegate (day) -
In different blocks (level+round) -
In the same block
-
-
From several delegates (2 or 3 scenarios with branches, ~2 days ?) -
In different blocks | In the same block -
With Multiple denunciations -
in a single block | in different blocks with different order -
for each misbehavior | same misbehavior -
with quick injection <- should forbid fast | with late injection <- multiple slashings -
Test slash > 100% -
over 100%: denunciation ignored? With no effect?
-
-
Last slash: check partial amount
-
-
-
unit test adaptive slashing !12340 (merged)
-
-
Stake @dianegalloiswong & @lrand -
merging some clean-up and comments (hours) !12418 (merged) -
add roundtrips with multiple stakers (hours) !12458 (merged) -
in stake from unstake, finalization, forbidden operations, change delegate tests: add some noise from other stakers doing operations too (hours) -
add a test on staking from unstake with multiple unstake operations and/or multiple re-stake operations (hours) !12458 (merged) -
test overstaking (hours) !12458 (merged) -
For each stake operation, check the retained "staking balances" are properly affected at cycle-end. (hours) !12564 (merged)
-
-
do automated protocol migration test in protocol's test (if time permits) (days)
-
migration
-
test migration (~2 days) -
check snapshot-removal's works as expected -
check consensus-rights-delay change works as expected
-
-
Tezt migration test with pre-stitching denunciations @dianegalloiswong !12473 (merged) -
Tezt test forbiding activation/deactivation @MBourgoin
-
documentation and dissemination
-
update all public documentation to make it clear that AI do not change LB issuance !12162 (merged) waiting for a consensus on how to reflect this change in the published blog posts (update the post, publish an errata, announce the diff with Paris, ...)
Public testnet demo
-
public demonstration of new UX on testnets (days) -
getting machine for running baker on testnet (@MBourgoin) -
register as bootstrap account (@MBourgoin) -
have AI enable on testnets (@julien.t ) -
prepare and run test script without public notification (@MBourgoin) -
publicly advertise demo for next week (@germanD) -
run demo on weeklynet https://forum.tezosagora.org/t/live-testing-adaptive-issuance-and-adaptive-slashing-on-weeklynet/6080/8
-
Tezos documentation
-
update documentation with duration changes !12295 (merged) -
port advertised spec to tezos.gitlab.io (hours) -
Update public ggdoc with curve figure @phink -
progressive min-max, new AI spec in https://gitlab.com/tezos/tezos/-/blob/master/docs/paris/adaptive_issuance.rst @ZaynahDargaye -
AI spec, change link to tutorial for a link to document of @MBourgoin (staking UX, or live testnets reports ?) @ZaynahDargaye -
adaptive slashing https://gitlab.com/tezos/tezos/-/blob/master/docs/paris/adaptive_slashing.rst @ZaynahDargaye -
constants change @julien.t
-
-
new rights computation (hours) -
new staking mechanism -
update https://tezos.gitlab.io/paris/consensus.html#validator-selection-staking-balance-active-stake-and-frozen-deposits @MBourgoin -
add staker in https://tezos.gitlab.io/paris/glossary.html @julien.t !12740 (merged) -
https://tezos.gitlab.io/paris/blocks_ops.html#manager-operations mention pseudo operations in the Transaction entry of Manager operations (hours) @julien.t
-
-
new receipts https://tezos.gitlab.io/paris/token_management.html: add a description for new fields (e.g., "kind":"staking") !12416 (merged)
Advertized specifications (mostly google docs advertized on tezos agora)
-
Progressive min-max https://forum.tezosagora.org/t/feedback-request-progressive-min-max-for-the-adaptive-issuance-curve/5984 -
new slashing https://forum.tezosagora.org/t/feedback-request-introducing-adaptive-slashing-in-protocol-p/6012 -
new staking -
cycle changes
simulator
-
Issuance simulation !12287 (merged) -
baker's staking simulation !12319 (closed)
Fix backported to paris
-
stitching perf issue : !12152 (merged) -
EMA reset -
Receipts clarification !12258 (merged)