The purpose of this document is to explain how the Smoothly Protocol works under the hood and our approach to build a smoothing pool to aggregate and average feeRecipient rewards for home validators.
The reader should be familiar with the concept of events in a smart contract and an understanding of how feeRecipient rewards work in eth2.0.
In order to aggregate and average rewards for home validators, we need two main components:
feeRecipient address of all validators.monitors and verifies validators
and keeps track of their state in the beacon chain.For this to work, we use events in the smart contract as the primary method for communication between the two.
Furthermore, for the Operator Node to verify and keep track of the validators in the
beacon chain, we use a beacon node HTTP API to query for new proposed slots with
our feeRecipient address and keep track of the state with a local leveldb database.
The pool is in charge of:
feeRecipient.events emited.Any validator can join our smoothing pool, in two simple steps:
feeRecipient address to our Smoothing Pool contract address.