Singleton contracts
These contracts are deployed once and shared by every pool:Mainnet
Bepolia
Call
StakingPoolContractsFactory to create and register a pool. Call DelegationHandlerFactory to deploy a per-validator handler proxy for Foundation delegation. The other rows are shared infrastructure.
Per-pool proxy contracts
deployStakingPoolContracts returns proxy addresses for your validator. You and your stakers call those proxies. Store the addresses. Give stakers the StakingPool address for deposits.
Proxy contracts for each pool:
- StakingPool: deposits, shares, and staker interactions. Stakers deposit BERA here and receive stBERA.
- SmartOperator: validator operations and Proof of Liquidity integration.
- IncentiveCollector: incentive token collection, conversion, and the incentive auction.
- StakingRewardsVault: consensus-layer reward collection and compounding.
- DelegationHandler: Foundation-delegated capital. Deployed only on the delegated path.