Skip to main content

RewardsAccumulator

What is RewardsAccumulator?

RewardsAccumulator is a simple holding contract that receives sequencer rewards from the Aztec rollup. During rebalance, StakingManager claims rewards with RewardsAccumulator as the coinbase address, then OllaCore calls recordBalance() to snapshot the new balance and withdrawToCore() to sweep the funds.

This separation exists so that rewards flow through a dedicated address rather than mixing with staked principal, making accounting cleaner.

RewardsAccumulator is upgradeable via UUPS proxy. Only OllaCore can record balances and withdraw.

Methods

recordBalance()

Snapshot current balance and return the delta since the last recording. Core-only.

function recordBalance() external returns (uint256 balanceDelta)

withdrawToCore()

Transfer all held Aztec to OllaCore. Core-only.

function withdrawToCore() external

View methods

balance()

Current Aztec balance held.

function balance() external view returns (uint256)

Events

event RewardsRecorded(uint256 indexed delta)

Balance snapshot taken, delta since last recording.

event RewardsWithdrawn(uint256 indexed amount)

Rewards swept to OllaCore.