CollateralFactorsRiskSteward
CollateralFactorsRiskSteward
Contract that can update collateral factors and liquidation thresholds received from RiskStewardReceiver.
This page follows CollateralFactorsRiskSteward.sol at v2.15.0. On BNB mainnet at block 118369568, proxy 0x1414ADf007E324ec1D0A77b9F1A8759Ad33d2879 used implementation 0x92352572478965A0377F57a4A2bebb4B369c22d4, matching the tagged artifact. Destination-mainnet deployment must be verified separately; the stable tag contains destination instances on testnets.
Solidity API
COLLATERAL_FACTORS
The update type for collateral factor and liquidation threshold.
string COLLATERAL_FACTORSCOLLATERAL_FACTORS_KEY
The update type key for collateral factors (keccak256 hash of COLLATERAL_FACTORS)
bytes32 COLLATERAL_FACTORS_KEYCORE_POOL_COMPTROLLER
Address of the BNB Core Pool Comptroller.
contract ICorePoolComptroller CORE_POOL_COMPTROLLERRISK_STEWARD_RECEIVER
Address of the RiskStewardReceiver used to validate and dispatch incoming updates.
constructor
Sets the immutable CORE_POOL_COMPTROLLER and RISK_STEWARD_RECEIVER addresses and disables initializers.
Parameters
corePoolComptroller_
address
The address of the Core Pool Comptroller
riskStewardReceiver_
address
The address of the RiskStewardReceiver
❌ Errors
Throws ZeroAddressNotAllowed if any of the addresses are zero
initialize
Initializes the contract as ownable and access controlled.
Parameters
accessControlManager_
address
The address of the access control manager
setSafeDeltaBps
Sets the safe delta bps.
Parameters
safeDeltaBps_
uint256
The new safe delta bps
📅 Events
Emits SafeDeltaBpsUpdated with the old and new safe delta bps
⛔️ Access Requirements
Controlled by AccessControlManager
❌ Errors
Throws InvalidSafeDeltaBps if the safe delta bps is greater than MAX_BPS
Throws RedundantValue if the new safe delta bps is equal to the current value
isSafeForDirectExecution
Checks if an update is safe for direct execution (no timelock required).
Parameters
update
struct RiskParameterUpdate
The update to check.
Return Values
[0]
bool
True if update is safe for direct execution, false if timelock is required
❌ Errors
Throws UnsupportedUpdateType if the update type is not supported
Throws RedundantValue if the new collateral factor and liquidation threshold are unchanged
applyUpdate
Applies a collateral parameter update from the RiskStewardReceiver. Delta validation and timelock checks are already performed by RiskStewardReceiver before execution.
Parameters
update
struct RiskParameterUpdate
RiskParameterUpdate update to apply
📅 Events
Emits CollateralFactorsUpdated with updateId
⛔️ Access Requirements
Only callable by the
RiskStewardReceiver
❌ Errors
Throws OnlyRiskStewardReceiver if the sender is not the
RiskStewardReceiverThrows UnsupportedUpdateType if the update type is not supported
Last updated

