---
# System prepended metadata

title: Kusama Election Rescue

---

# Kusama Election Rescue



## Diagnosis

- https://twitter.com/alice_und_bob/status/1601112599189676033
- `submit_emergency_result` / `governance_onchain_fallback` (low score)
- Lower `MinUntrustedScore` 
- Tweak slashing spans directly to remove chilling, possibly 
    - Or do a quick runtime upgrade
    - Once either is done, election scores would rise again
    - put `MinUntrustedScore` to something high again.


---

## Action Items 

- [x] Simulate next elections in wasm to make sure snapshot creation is fine.
- [x] Why `import-block`/`check-block` didn't work. 
- [x] Post on PA how the call was generated.
- [ ] A `try-runtime` test that executes all the proposals 
- [ ] A `try-runtime-cli` command that
    - [ ] Executes proposals
    - [ ] Executes any given call and origin
    - [ ] Rolls upcoming blocks.
    - The importance of all of these is that they can execute in WASM. 
- [x] Polkadot forum about https://github.com/paritytech/substrate/pull/12420 slashing update.
- [ ] Automate `MinUntrustedScore` https://github.com/paritytech/substrate/issues/11965
- [ ] Blocking elections for a very very long time is probably not a good idea. We can end up with literally no validators. Instead, EPM should be a bit more easy to recover from Emergency (https://github.com/paritytech/substrate/issues/11472). Also, maybe a new abstraction like `T::ElectionProvider::force_elect` which does things onchain on small subset.  
- [ ] Handbook for election failures. 
- [ ] Integrate better with Versi and perform such scenarios
    - [ ] List of scenarios to try (https://github.com/paritytech/substrate/issues/9057).
    - [ ] Add staking code to the runtime.
- [x] What happened in the first place.


From Al: 

> The intention was to not give a turn to produce a block to someone who was offline, increasing performance. But performance is not really affected much if a couple of people are offline. It is affected if a lot of people are offline, but then kicking is dangerous. So we might as well not kick for offlineness


> Jakob thinks that we should not disable anyone, which solves some of the issues here, and only disable validators for parachain protocol aspects. 