e.state.conflict.witness-change.f¶
That rotation changes the delegatee's witness pool too much for me to approve unseen.
Retrying the same thing changes nothing.
What a response says¶
The rotation changes {changed} of {aid}'s witnesses, which is not fewer than the {toad} its previous key state required — so approving it would let whoever signed it replace the pool that was protecting it.
The placeholders are filled from aid, changed, toad, which travel positionally in the args member of the response.
What to do¶
This is the attack cooperative delegation exists to stop: an attacker holding the delegatee's pre-rotated keys swaps in witnesses it controls. heti cannot tell that from a lawful migration, so migrate in steps smaller than the prior threshold instead.
Where it sits¶
| Sorter | e — Error. The problem clearly defeats someone's intentions. |
| Obstacle | e.state. — The condition of the target |
| Disposition | f — Final. Retrying the same thing changes nothing. |
A handler can match this code exactly, or by any prefix above it: e.state., e.state.conflict., e.state.conflict.witness-change..
Declared in heti.