Register Operator
The following guide illustrates how to register a new Node Operator to begin onboarding nodes. This guide uses Testnet as an example. The Mainnet guide follows from this guide with modifications to contract addresses and rpc url for Towns Chain.
Requirements & Dependencies
- Foundry Toolkit: To install follow this guide.
- Node Operator delegation: address migrated to Towns Chain by DAO (see below).
- Warm wallet access to Node Operator wallet.
- Sufficient gas on Node Operator wallet on both Base and Towns Chain to register
The node operator wallet registered on Base must be bridged to Towns Chain by the DAO prior to proceeding with node registration. Furthermore, the node operator needs warm access to this wallet to perform node operations to register, and update a fleet of node instances.
All contract addresses for testnet and mainnet needed to register operator can be found in the contracts section.
Registration Outline
The following outlines the logical steps to onboarding a Node Operator. Instructions are applicable to testnet and mainnet. Node Operator delegations are only needed for mainnet registration.
Instructions with specific calling signatures can be found below in the Node Operator Registration.
Register Node Operator in Base
Set Commission Rate in Base
DAO approves operator
DAO activates operator to start reward clock
Node Operator Registration
- Node Operator must call
registerOperator(address)
on the BaseRegistry diamond contract deployed on Base with the address of the wallet that they wish to claim rewards with. Note that the claimer wallet can differ from the operator wallet.
setClaimAddressForOperator(claimer address, operator address) onlyClaimer
on the BaseRegistry contract with the desired wallet from the Node Operator wallet in Base. This is useful in separating concerns between the claim wallet that accrues rewards and the operator wallet which needs to be warm to facilitate node operations.-
Node Operator can begin soliciting delegation after being registered.
-
Node Operator should call
setCommissionRate(uint256)
on the BaseRegistry contract to set the commission rate for the operator. Ensure the commission rate is passed in using basis point notation (e.g. 10000 for 100%). Conversely, Node Operator can call the view,getCommissionRate(address)
passing in their operator address to check their current commission rate. -
After Node Operator receives at least
100m
RVR tokens delegated, the DAO can approve it to enter into Towns Chain. The same address will be added to River Registry on Towns Chain in order to begin configuring Nodes.