Rebase Controller
RebaseController
is responsible for initiating rebases to distribute rewards in the StakingPool
and handling emergency pausing and reopening of the pool. It acts as a security and automation layer, ensuring that rewards are updated regularly and that the pool can be paused or reopened in response to detected losses or emergencies.
View Functions
stakingPool
Returns the address of the staking pool.
function stakingPool() external view returns (address)
Return Values
stakingPool
address
Address of staking pool
priorityPool
Returns the address of the priority pool.
function priorityPool() external view returns (address)
Return Values
priorityPool
address
Address of priority pool
securityPool
Returns the address of the security pool.
function securityPool() external view returns (address)
Return Values
securityPool
address
Address of security pool
emergencyPauser
Returns the address authorized to pause the pool in case of emergency.
function emergencyPauser() external view returns (address)
Return Values
emergencyPauser
address
Address of emergency pauser
rewardsUpdater
Returns the address authorized to update rewards.
function rewardsUpdater() external view returns (address)
Return Values
rewardsUpdater
address
Address of rewards updater
checkUpkeep
Checks if a loss has been detected in any strategy.
function checkUpkeep(bytes calldata) external view returns (bool upkeepNeeded, bytes memory performData)
Return Values
upkeepNeeded
bool
True if a loss is detected in any strategy
performData
bytes
Encoded index of strategy with a loss (if any)
Write Functions
updateRewards
Updates strategy rewards in the staking pool.
function updateRewards(bytes calldata _data) external
Parameters
_data
bytes
Encoded data to pass to strategies
performUpkeep
Pauses the priority pool if a loss has been detected in a strategy.
function performUpkeep(bytes calldata _performData) external
Parameters
_performData
bytes
Encoded index of strategy with a loss
pausePool
Pauses the priority pool in the case of an emergency.
function pausePool() external
No parameters.
reopenPool
Reopens the priority pool and security pool after they were paused due to a loss, and updates strategy rewards.
function reopenPool(bytes calldata _data) external
Parameters
_data
bytes
Encoded data to pass to strategies
setEmergencyPauser
Sets the address authorized to pause the pool in case of emergency.
function setEmergencyPauser(address _emergencyPauser) external
Parameters
_emergencyPauser
address
Address of emergency pauser
setRewardsUpdater
Sets the address authorized to update rewards.
function setRewardsUpdater(address _rewardsUpdater) external
Parameters
_rewardsUpdater
address
Address of rewards updater
Last updated