In this proposal, GIs will get a new component, the Enforcer, to manage demotion and slashing.
Demotion Mechanism:
-
Nodes are required to send regular heartbeats to GIs. If no heartbeat is received by GIs within a 5-minute rolling interval, the Node is marked as offline until a new heartbeat is received. The Node’s demotion counter increases by 1.
-
GI routes requests to a selected number of Nodes (a minimal of 3).
- If a Node fails to respond normally after a predetermined number of retries (default to 3), the Node’s demotion counter increases by 1.
- If a Node’s successful response fails to pass cross-validation with other Nodes:
- If a Node’s response differs from the majority, the Node’s demotion counter increases by 1.
- If no majority is reached, all responses are deemed invalid, but no one is demoted.
-
Each demotion reduces the Node’s reliability score, diminishing its chances of receiving requests.
- The demotion counter and reliability score are reset at the end of each Epoch.
Slashing Mechanism:
-
If a Node’s demotion counter hits the threshold (currently set to 3), it is slashed.
-
Slashed Nodes have a reliability score of 0, no requests will be routed to them.
- The reliability score is reset at the end of each Epoch.
-
Slashed Nodes will be marked as
offline
, until the Node Operator manually confirms that the Node is ready to enteronline
state. -
A slash temporarily freezes 1% of the Node’s Operation Pool AND 0.5% of its Staking Pool.
- Slashed tokens are stored in the Slashing Pool.
- A slash may be challenged by the Operator within a 3-Epoch challenge window.
- A successful challenge revokes the corresponding slash and unfreezes the tokens.
- A successful challenge does not distribute Network Rewards retrospectively.
- After 3 Epochs, the slash is committed and finalized on-chain.
- Failing to revoke a slash within the challenge window means that the slash will be committed permanently. The slashed tokens will be:
- Burn: 50% of the slashed tokens will be burnt.
- Reward and Reimbursement: 20% of the slashed tokens will be awarded to reporters. When the slash is automatically triggered without a reporter, 20% of the slashed tokens will be reimbursed to all developers who paid request fees during the Epoch in which the slashing occurred.
- Donation: The remaining tokens will be donated to the Treasury and used for Public Good initiatives and clauses.
Here is a figure showing what happens during an Epoch. The figure might be helpful for illustrating the Enforcer’s logic regarding slashing.
And here is a figure to assist in the understanding of cross-validation. -1 leads to a demotion.
This proposal is preliminary based on discussions with some core devs, and will require edits to the Whitepaper. Please share your thoughts below.
Affected pages: