Contracts
Robinhood Chain, chain id 4663. Explorer: Blockscout.
| Contract | Address | Role |
|---|---|---|
| NodalPayouts | 0x406A19Cf933866e7087c4d4973D330F5350282e5 | x402 payTo, settlement, roots, claims (address reserved by the deployer's first deployment; not deployed yet) |
| NodalStake | 0xD3e4039c24F3BF964fb941601269fF535552E2e2 | Stake for vote weight and the USDG stake share |
| USDG | 0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168 | Settlement asset, EIP-3009 |
| Deployer | 0x8E60F3e54509F8D8cc3e9E4501759C4A72830291 | Deploys and keeps the keeper role |
NodalPayouts
settleBatch(Auth[] auths) returns (uint256 settled)
postRoot(bytes32 root, uint256 totalCumulative, string uri) // keeper
claim(address account, uint256 cumulative, bytes32[] proof)
withdrawUnallocated(address to, uint256 amount) // owner, unallocated only
proposeKeeper(address) / applyKeeper() // owner, 24 h timelock
events: Settled, SettleFailed, RootPosted, ClaimedNodalStake
stake(uint256) / requestUnstake(uint256) / withdraw() // 3 day cooldown
notifyReward(uint256) // USDG, distributed pro rata to active stake
claimReward() / earned(address) / stakedOf(address) // stakedOf = vote weightBoth contracts are covered by unit, fuzz and invariant tests, and by a fork run against the live USDG.