An example for Node Operators
- Node Operator A and B are added to the
NodeOperatorRegistrycontract by Tranchess
- Node Operator A calls this contract to adds 100 validator pub keys
- Node Operator B calls this contract to adds 20 validator pub keys
- Alice creates 200 qETH by depositing 200 ETH into the
- Bob creates 300 qETH by depositing 300 ETH into the
EthStakingStrategycontract fetches 480 ETH from the
Fundcontract and deposits to the ETH2 Deposit Contract.
- The contract’s operator selection algorithm decides to use 5 pub keys from Node Operator A and 10 pub keys from Node Operator B.
- Some days later, the validators are active and have gained some rewards.
- Node Operator A’s 5 validators gain 0.2 ETH on the consensus layer.
- Node Operator B’s 10 validators gain 0.3 ETH on the consensus layer.
- A reporter reports all Node Operators’ total balance on the consensus layer to the
EthStakingStrategycontract: A=160.2 ETH, B=320.3 ETH
- 90% of the total rewards are added to the Fund and therefore increases the value of qETH
- qETH’s total supply is still 500 and corresponds to 500 + 90% * (0.2 + 0.3) = 500.45 ETH
- Each qETH worths 1.0009 ETH now.
- The rest of the total rewards are used to create new qETH tokens and distributed to Node Operators, veCHESS holders and Tranchess treasury.
- Creation follows the current value of qETH. Each created qETH consumes 1.0009 ETH.
- Each Node Operator gets a to-be-decided fraction x% of rewards from its validators.
- Node Operator A gets (0.2 * x% / 1.0009) qETH
- Node Operator B gets (0.3 * x% / 1.0009) qETH
- The rest of created qETH tokens are transferred to the
FeeDistributorcontract, which then distributes them to veCHESS holders and Tranchess treasury.