Skip to main content

IConfigTimelockBatchQueue

Git Source

Inherits: ITimelockBatchQueue

Title: IConfigTimelockBatchQueue

Interface for configuration timelocks that prevent conflicting queued changes and reject execution when the underlying configuration changed after queueing.

Functions​

pendingActionId​

Return the unresolved action that owns a destination-scoped key, or zero if free.

function pendingActionId(bytes32 key_) external view returns (uint64 actionId);

Parameters

NameTypeDescription
key_bytes32

Returns

NameTypeDescription
actionIduint64

maxConfigKeysPerBatch​

Return the maximum total configuration keys a batch may reserve.

function maxConfigKeysPerBatch() external view returns (uint256 maximum);

Returns

NameTypeDescription
maximumuint256

getQueuedConfigStateCount​

Return the number of configuration guards stored for a sub-action.

function getQueuedConfigStateCount(
uint64 actionId_,
uint256 index_
) external view returns (uint256 length);

Parameters

NameTypeDescription
actionId_uint64
index_uint256

Returns

NameTypeDescription
lengthuint256

getQueuedConfigDestination​

Return the destination selected by the subclass when a sub-action was queued.

function getQueuedConfigDestination(
uint64 actionId_,
uint256 index_
) external view returns (address destination);

Parameters

NameTypeDescription
actionId_uint64
index_uint256

Returns

NameTypeDescription
destinationaddress

getQueuedConfigState​

Return a stored destination-scoped key and its queue-time canonical state hash.

function getQueuedConfigState(
uint64 actionId_,
uint256 index_,
uint256 configStateIndex_
) external view returns (bytes32 key, bytes32 expectedStateHash);

Parameters

NameTypeDescription
actionId_uint64
index_uint256
configStateIndex_uint256

Returns

NameTypeDescription
keybytes32
expectedStateHashbytes32

Events​

ConfigStateQueued​

Emitted when a sub-action reserves a configuration key.

event ConfigStateQueued(
uint64 indexed actionId,
uint256 indexed index,
bytes32 indexed key,
uint256 configStateIndex,
address destination,
bytes32 expectedStateHash
);

Parameters

NameTypeDescription
actionIduint64
indexuint256
keybytes32
configStateIndexuint256
destinationaddress
expectedStateHashbytes32

Errors​

IConfigTimelockBatchQueue_ConfigKeysEmpty​

error IConfigTimelockBatchQueue_ConfigKeysEmpty(uint64 actionId, uint256 index);

Parameters

NameTypeDescription
actionIduint64
indexuint256

IConfigTimelockBatchQueue_ConfigKeyZero​

error IConfigTimelockBatchQueue_ConfigKeyZero(
uint64 actionId,
uint256 index,
uint256 configStateIndex
);

Parameters

NameTypeDescription
actionIduint64
indexuint256
configStateIndexuint256

IConfigTimelockBatchQueue_ConfigKeyPending​

error IConfigTimelockBatchQueue_ConfigKeyPending(bytes32 key, uint64 pendingActionId);

Parameters

NameTypeDescription
keybytes32
pendingActionIduint64

IConfigTimelockBatchQueue_ConfigKeysTooMany​

error IConfigTimelockBatchQueue_ConfigKeysTooMany(uint256 length, uint256 maximum);

Parameters

NameTypeDescription
lengthuint256
maximumuint256

IConfigTimelockBatchQueue_ConfigDestinationZero​

error IConfigTimelockBatchQueue_ConfigDestinationZero(uint64 actionId, uint256 index);

Parameters

NameTypeDescription
actionIduint64
indexuint256

IConfigTimelockBatchQueue_ConfigDestinationChanged​

error IConfigTimelockBatchQueue_ConfigDestinationChanged(
uint64 actionId,
uint256 index,
address expectedDestination,
address currentDestination
);

Parameters

NameTypeDescription
actionIduint64
indexuint256
expectedDestinationaddress
currentDestinationaddress

IConfigTimelockBatchQueue_ConfigStateChanged​

error IConfigTimelockBatchQueue_ConfigStateChanged(
uint64 actionId,
uint256 index,
bytes32 key,
bytes32 expectedStateHash,
bytes32 currentStateHash
);

Parameters

NameTypeDescription
actionIduint64
indexuint256
keybytes32
expectedStateHashbytes32
currentStateHashbytes32

IConfigTimelockBatchQueue_ConfigKeyOwnershipInvalid​

error IConfigTimelockBatchQueue_ConfigKeyOwnershipInvalid(
uint64 actionId,
uint256 index,
bytes32 key,
uint64 pendingActionId
);

Parameters

NameTypeDescription
actionIduint64
indexuint256
keybytes32
pendingActionIduint64

IConfigTimelockBatchQueue_ConfigStateIndexOutOfBounds​

error IConfigTimelockBatchQueue_ConfigStateIndexOutOfBounds(
uint64 actionId,
uint256 index,
uint256 configStateIndex,
uint256 length
);

Parameters

NameTypeDescription
actionIduint64
indexuint256
configStateIndexuint256
lengthuint256