InfraredV1_3

Git Source

Inherits: InfraredV1_2, IInfraredV1_3

Extension of V1.2 with validator commission management functionality

This upgrade adds support for queuing and activating validator commission changes

Functions

queueValCommission

Queues a commission rate change for a validator on incentive tokens.

Only the governor can call this function.

Reverts if a commission rate change is already queued.

function queueValCommission(bytes calldata _pubkey, uint96 _commissionRate)
    external
    onlyGovernor;

Parameters

NameTypeDescription
_pubkeybytesThe validator's pubkey.
_commissionRateuint96The commission rate of the validator on the incentive tokens.

_queueValCommission

function _queueValCommission(bytes calldata _pubkey, uint96 _commissionRate)
    internal;

queueMultipleValCommissions

Queues commission rate changes for multiple validators on incentive tokens.

Only the governor can call this function.

Reverts if any validator is invalid or if any have a commission rate change already queued.

function queueMultipleValCommissions(
    bytes[] calldata _pubkeys,
    uint96 _commissionRate
) external onlyGovernor;

Parameters

NameTypeDescription
_pubkeysbytes[]The array of validator pubkeys.
_commissionRateuint96The commission rate to set for all validators in the array.

activateQueuedValCommission

Activates the queued commission rate of a validator on incentive tokens.

Anyone can call this function once the queued commission is ready.

function activateQueuedValCommission(bytes calldata _pubkey) external;

Parameters

NameTypeDescription
_pubkeybytesThe validator's pubkey.