[Staking Admin] Referendum #16

Staking Admin
1yr ago
3 Comments
Executed
No context provided.
Who can edit?
Reply
Up
Share
Status
Decision14d
Confirmation3hrs
Attempts
1
Tally
100%Aye
97.2%Threshold
0%Nay
Aye
2.26MKSM
Nay
0KSM
  • 0.0%
  • 0.0%
  • 0.0%

Threshold

Support(20.4%)
2.54MKSM
Issuance
12.5MKSM
Votes
Nested
Flattened
Calls
  • Call
  • Metadata
  • Timeline6
  • Votes Bubble
  • Statistics
Comments

Proposal Fixing The Last Slashing Event On Kusama

What happened?

  • On 9.12.2022, a large amount of disputes flooded the network.
  • Other validators had issues handling the flood of messages, the disputes-coordinator became unresponsive, causing other subsystems to shut down. The disputes-coordinator task never fully finished, preventing the node to completely shutdown (where it might usually be automatically restarted depending on the setup). While in a zombie state, the node wasn't able to produce imonline heartbeats or produce blocks unless the validator manually restarted the node, causing many offline events.
  • Enough validators had offline events for there to be correlated slashing.
  • As a consequence of the amount of validators offline, election results also failed, whereby the only way for elections to happen again is for an election solution to be submitted via governance.
  • Elections can only start again with governance is restarted.
  • Chilled validators wont be able to validate again until the election via governance is restarted.

What is this proposal meant to execute?

From the validator set PoV there are 3 action items to execute:

  1. Cancelling the slash so that no account balances get changed.
  2. Resuming elections, which will work but with a validator set that is relatively weak. This brings us to point 3:
  3. Reversing the chilling, which is unfortunately difficult to do given how the data is laid out on-chain (we need to change one filed in a struct in a map, and doing it via system::set_storage is tricky because there could be more slashes in the meantime). A PR is ready to execute this, but a new runtime will be needed for this last point.

This proposal aims to execute 3 calls :

  • canceling the slash
  • lowering min_untrusted_score by 20% (to help deal with the low quality elections in the meantime)
  • force set the validator set, represented by the full exposures
Reply
Up