RandomBeaconGovernance
RandomBeaconGovernance
This file documents a contract which is not yet deployed to Mainnet.
Owns the RandomBeacon
contract and is responsible for updating its governable parameters in respect to governance delay individual for each parameter.
newGovernanceDelay
governanceDelayChangeInitiated
newRandomBeaconGovernance
randomBeaconGovernanceTransferInitiated
newRelayEntrySoftTimeout
relayEntrySoftTimeoutChangeInitiated
newRelayEntryHardTimeout
relayEntryHardTimeoutChangeInitiated
newCallbackGasLimit
callbackGasLimitChangeInitiated
newGroupCreationFrequency
groupCreationFrequencyChangeInitiated
newGroupLifetime
groupLifetimeChangeInitiated
newDkgResultChallengePeriodLength
dkgResultChallengePeriodLengthChangeInitiated
newDkgResultChallengeExtraGas
dkgResultChallengeExtraGasChangeInitiated
newDkgResultSubmissionTimeout
dkgResultSubmissionTimeoutChangeInitiated
newDkgSubmitterPrecedencePeriodLength
dkgSubmitterPrecedencePeriodLengthChangeInitiated
newRelayEntrySubmissionFailureSlashingAmount
relayEntrySubmissionFailureSlashingAmountChangeInitiated
newMaliciousDkgResultSlashingAmount
maliciousDkgResultSlashingAmountChangeInitiated
newUnauthorizedSigningSlashingAmount
unauthorizedSigningSlashingAmountChangeInitiated
newSortitionPoolRewardsBanDuration
sortitionPoolRewardsBanDurationChangeInitiated
newRelayEntryTimeoutNotificationRewardMultiplier
relayEntryTimeoutNotificationRewardMultiplierChangeInitiated
newUnauthorizedSigningNotificationRewardMultiplier
unauthorizedSigningNotificationRewardMultiplierChangeInitiated
newMinimumAuthorization
minimumAuthorizationChangeInitiated
newAuthorizationDecreaseDelay
authorizationDecreaseDelayChangeInitiated
newAuthorizationDecreaseChangePeriod
authorizationDecreaseChangePeriodChangeInitiated
newDkgMaliciousResultNotificationRewardMultiplier
dkgMaliciousResultNotificationRewardMultiplierChangeInitiated
newDkgResultSubmissionGas
dkgResultSubmissionGasChangeInitiated
newDkgResultApprovalGasOffset
dkgResultApprovalGasOffsetChangeInitiated
newNotifyOperatorInactivityGasOffset
notifyOperatorInactivityGasOffsetChangeInitiated
newRelayEntrySubmissionGasOffset
relayEntrySubmissionGasOffsetChangeInitiated
randomBeacon
governanceDelay
GovernanceDelayUpdateStarted
GovernanceDelayUpdated
RandomBeaconGovernanceTransferStarted
RandomBeaconGovernanceTransferred
RelayEntrySoftTimeoutUpdateStarted
RelayEntrySoftTimeoutUpdated
RelayEntryHardTimeoutUpdateStarted
RelayEntryHardTimeoutUpdated
CallbackGasLimitUpdateStarted
CallbackGasLimitUpdated
GroupCreationFrequencyUpdateStarted
GroupCreationFrequencyUpdated
GroupLifetimeUpdateStarted
GroupLifetimeUpdated
DkgResultChallengePeriodLengthUpdateStarted
DkgResultChallengePeriodLengthUpdated
DkgResultChallengeExtraGasUpdateStarted
DkgResultChallengeExtraGasUpdated
DkgResultSubmissionTimeoutUpdateStarted
DkgResultSubmissionTimeoutUpdated
DkgSubmitterPrecedencePeriodLengthUpdateStarted
DkgSubmitterPrecedencePeriodLengthUpdated
RelayEntrySubmissionFailureSlashingAmountUpdateStarted
RelayEntrySubmissionFailureSlashingAmountUpdated
MaliciousDkgResultSlashingAmountUpdateStarted
MaliciousDkgResultSlashingAmountUpdated
UnauthorizedSigningSlashingAmountUpdateStarted
UnauthorizedSigningSlashingAmountUpdated
SortitionPoolRewardsBanDurationUpdateStarted
SortitionPoolRewardsBanDurationUpdated
RelayEntryTimeoutNotificationRewardMultiplierUpdateStarted
RelayEntryTimeoutNotificationRewardMultiplierUpdated
UnauthorizedSigningNotificationRewardMultiplierUpdateStarted
UnauthorizedSigningNotificationRewardMultiplierUpdated
MinimumAuthorizationUpdateStarted
MinimumAuthorizationUpdated
AuthorizationDecreaseDelayUpdateStarted
AuthorizationDecreaseDelayUpdated
AuthorizationDecreaseChangePeriodUpdateStarted
AuthorizationDecreaseChangePeriodUpdated
DkgMaliciousResultNotificationRewardMultiplierUpdateStarted
DkgMaliciousResultNotificationRewardMultiplierUpdated
DkgResultSubmissionGasUpdateStarted
DkgResultSubmissionGasUpdated
DkgResultApprovalGasOffsetUpdateStarted
DkgResultApprovalGasOffsetUpdated
NotifyOperatorInactivityGasOffsetUpdateStarted
NotifyOperatorInactivityGasOffsetUpdated
RelayEntrySubmissionGasOffsetUpdateStarted
RelayEntrySubmissionGasOffsetUpdated
onlyAfterGovernanceDelay
Reverts if called before the governance delay elapses.
Parameters
Name | Type | Description |
---|---|---|
changeInitiatedTimestamp | uint256 | Timestamp indicating the beginning of the change. |
constructor
beginGovernanceDelayUpdate
Begins the governance delay update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newGovernanceDelay | uint256 | New governance delay |
finalizeGovernanceDelayUpdate
Finalizes the governance delay update process.
Can be called only by the contract owner, after the governance delay elapses.
beginRandomBeaconGovernanceTransfer
Begins the random beacon governance transfer process.
Can be called only by the current contract governance.
finalizeRandomBeaconGovernanceTransfer
Finalizes the random beacon governance transfer process.
Can be called only by the current contract governance, after the governance delay elapses.
beginRelayEntrySoftTimeoutUpdate
Begins the relay entry soft timeout update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newRelayEntrySoftTimeout | uint256 | New relay entry submission timeout in blocks |
finalizeRelayEntrySoftTimeoutUpdate
Finalizes the relay entry soft timeout update process.
Can be called only by the contract owner, after the governance delay elapses.
beginRelayEntryHardTimeoutUpdate
Begins the relay entry hard timeout update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newRelayEntryHardTimeout | uint256 | New relay entry hard timeout in blocks |
finalizeRelayEntryHardTimeoutUpdate
Finalizes the relay entry hard timeout update process.
Can be called only by the contract owner, after the governance delay elapses.
beginCallbackGasLimitUpdate
Begins the callback gas limit update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newCallbackGasLimit | uint256 | New callback gas limit |
finalizeCallbackGasLimitUpdate
Finalizes the callback gas limit update process.
Can be called only by the contract owner, after the governance delay elapses.
beginGroupCreationFrequencyUpdate
Begins the group creation frequency update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newGroupCreationFrequency | uint256 | New group creation frequency |
finalizeGroupCreationFrequencyUpdate
Finalizes the group creation frequency update process.
Can be called only by the contract owner, after the governance delay elapses.
beginGroupLifetimeUpdate
Begins the group lifetime update process. Group lifetime needs to be shorter than the authorization decrease delay to ensure every active group is backed by enough stake. A new group lifetime value is in blocks and has to be calculated based on the average block time and authorization decrease delay which value is in seconds.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newGroupLifetime | uint256 | New group lifetime in blocks |
finalizeGroupLifetimeUpdate
Finalizes the group creation frequency update process.
Can be called only by the contract owner, after the governance delay elapses.
beginDkgResultChallengePeriodLengthUpdate
Begins the DKG result challenge period length update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newDkgResultChallengePeriodLength | uint256 | New DKG result challenge period length in blocks |
finalizeDkgResultChallengePeriodLengthUpdate
Finalizes the DKG result challenge period length update process.
Can be called only by the contract owner, after the governance delay elapses.
beginDkgResultChallengeExtraGasUpdate
Begins the DKG result challenge extra gas update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newDkgResultChallengeExtraGas | uint256 | New DKG result challenge extra gas |
finalizeDkgResultChallengeExtraGasUpdate
Finalizes the DKG result challenge extra gas update process.
Can be called only by the contract owner, after the governance delay elapses.
beginDkgResultSubmissionTimeoutUpdate
Begins the DKG result submission timeout update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newDkgResultSubmissionTimeout | uint256 | New DKG result submission timeout in blocks |
finalizeDkgResultSubmissionTimeoutUpdate
Finalizes the DKG result submission timeout update process.
Can be called only by the contract owner, after the governance delay elapses.
beginDkgSubmitterPrecedencePeriodLengthUpdate
Begins the DKG submitter precedence period length.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newDkgSubmitterPrecedencePeriodLength | uint256 | New DKG submitter precedence period length in blocks |
finalizeDkgSubmitterPrecedencePeriodLengthUpdate
Finalizes the DKG submitter precedence period length.
Can be called only by the contract owner, after the governance delay elapses.
beginSortitionPoolRewardsBanDurationUpdate
Begins the sortition pool rewards ban duration update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newSortitionPoolRewardsBanDuration | uint256 | New sortition pool rewards ban duration. |
finalizeSortitionPoolRewardsBanDurationUpdate
Finalizes the sortition pool rewards ban duration update process.
Can be called only by the contract owner, after the governance delay elapses.
beginRelayEntryTimeoutNotificationRewardMultiplierUpdate
Begins the relay entry timeout notification reward multiplier update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newRelayEntryTimeoutNotificationRewardMultiplier | uint256 | New relay entry timeout notification reward multiplier. |
beginUnauthorizedSigningNotificationRewardMultiplierUpdate
Begins the unauthorized signing notification reward multiplier update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newUnauthorizedSigningNotificationRewardMultiplier | uint256 | New unauthorized signing notification reward multiplier. |
finalizeUnauthorizedSigningNotificationRewardMultiplierUpdate
Finalizes the unauthorized signing notification reward multiplier update process.
Can be called only by the contract owner, after the governance delay elapses.
finalizeRelayEntryTimeoutNotificationRewardMultiplierUpdate
Finalizes the relay entry timeout notification reward multiplier update process.
Can be called only by the contract owner, after the governance delay elapses.
beginDkgMaliciousResultNotificationRewardMultiplierUpdate
Begins the DKG malicious result notification reward multiplier update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newDkgMaliciousResultNotificationRewardMultiplier | uint256 | New DKG malicious result notification reward multiplier. |
finalizeDkgMaliciousResultNotificationRewardMultiplierUpdate
Finalizes the DKG malicious result notification reward multiplier update process.
Can be called only by the contract owner, after the governance delay elapses.
beginRelayEntrySubmissionFailureSlashingAmountUpdate
Begins the relay entry submission failure slashing amount update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newRelayEntrySubmissionFailureSlashingAmount | uint96 | New relay entry submission failure slashing amount |
finalizeRelayEntrySubmissionFailureSlashingAmountUpdate
Finalizes the relay entry submission failure slashing amount update process.
Can be called only by the contract owner, after the governance delay elapses.
beginDkgResultSubmissionGasUpdate
Begins the DKG result submission gas update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newDkgResultSubmissionGas | uint256 | New relay entry submission gas offset |
finalizeDkgResultSubmissionGasUpdate
Finalizes DKG result submission gas update process.
Can be called only by the contract owner, after the governance delay elapses.
beginDkgResultApprovalGasOffsetUpdate
Begins the DKG result approval gas offset update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newDkgResultApprovalGasOffset | uint256 | New DKG approval gas offset |
finalizeDkgResultApprovalGasOffsetUpdate
Finalizes the DKG result approval gas offset update process.
Can be called only by the contract owner, after the governance delay elapses.
beginNotifyOperatorInactivityGasOffsetUpdate
Begins the notify operator inactivity gas offset update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newNotifyOperatorInactivityGasOffset | uint256 | New operator inactivity notification gas offset |
finalizeNotifyOperatorInactivityGasOffsetUpdate
Finalizes the notify operator inactivity gas offset update process.
Can be called only by the contract owner, after the governance delay elapses.
beginRelayEntrySubmissionGasOffsetUpdate
Begins the relay entry submission gas offset update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newRelayEntrySubmissionGasOffset | uint256 | New relay entry submission gas offset |
finalizeRelayEntrySubmissionGasOffsetUpdate
Finalizes relay entry submission gas offset update process.
Can be called only by the contract owner, after the governance delay elapses.
beginMaliciousDkgResultSlashingAmountUpdate
Begins the malicious DKG result slashing amount update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newMaliciousDkgResultSlashingAmount | uint96 | New malicious DKG result slashing amount |
finalizeMaliciousDkgResultSlashingAmountUpdate
Finalizes the malicious DKG result slashing amount update process.
Can be called only by the contract owner, after the governance delay elapses.
beginUnauthorizedSigningSlashingAmountUpdate
Begins the unauthorized signing slashing amount update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newUnauthorizedSigningSlashingAmount | uint96 | New unauthorized signing slashing amount |
finalizeUnauthorizedSigningSlashingAmountUpdate
Finalizes the unauthorized signing slashing amount update process.
Can be called only by the contract owner, after the governance delay elapses.
beginMinimumAuthorizationUpdate
Begins the minimum authorization amount update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newMinimumAuthorization | uint96 | New minimum authorization amount. |
finalizeMinimumAuthorizationUpdate
Finalizes the minimum authorization amount update process.
Can be called only by the contract owner, after the governance delay elapses.
beginAuthorizationDecreaseDelayUpdate
Begins the authorization decrease delay update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newAuthorizationDecreaseDelay | uint64 | New authorization decrease delay |
finalizeAuthorizationDecreaseDelayUpdate
Finalizes the authorization decrease delay update process.
Can be called only by the contract owner, after the governance delay elapses.
beginAuthorizationDecreaseChangePeriodUpdate
Begins the authorization decrease change period update process.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
_newAuthorizationDecreaseChangePeriod | uint64 | New authorization decrease change period |
finalizeAuthorizationDecreaseChangePeriodUpdate
Finalizes the authorization decrease change period update process.
Can be called only by the contract owner, after the governance delay elapses.
setRequesterAuthorization
Set authorization for requesters that can request a relay entry. It can be done by the governance only.
Parameters
Name | Type | Description |
---|---|---|
requester | address | Requester, can be a contract or EOA |
isAuthorized | bool | True or false |
withdrawIneligibleRewards
Withdraws rewards belonging to operators marked as ineligible for sortition pool rewards.
Can be called only by the contract owner.
Parameters
Name | Type | Description |
---|---|---|
recipient | address | Recipient of withdrawn rewards. |
getRemainingGovernanceDelayUpdateTime
Get the time remaining until the governance delay can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingRandomBeaconGovernanceTransferDelayTime
Get the time remaining until the random beacon governance can be transferred.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingRelayEntrySoftTimeoutUpdateTime
Get the time remaining until the relay entry submission soft timeout can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingRelayEntryHardTimeoutUpdateTime
Get the time remaining until the relay entry hard timeout can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingCallbackGasLimitUpdateTime
Get the time remaining until the callback gas limit can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingGroupCreationFrequencyUpdateTime
Get the time remaining until the group creation frequency can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingGroupLifetimeUpdateTime
Get the time remaining until the group lifetime can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingDkgResultChallengePeriodLengthUpdateTime
Get the time remaining until the DKG result challenge period length can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingDkgResultChallengeExtraGasUpdateTime
Get the time remaining until the DKG result challenge extra gas can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingDkgResultSubmissionTimeoutUpdateTime
Get the time remaining until the DKG result submission timeout can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingDkgSubmitterPrecedencePeriodLengthUpdateTime
Get the time remaining until the wallet owner can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingRelayEntrySubmissionFailureSlashingAmountUpdateTime
Get the time remaining until the relay entry submission failure slashing amount can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingMaliciousDkgResultSlashingAmountUpdateTime
Get the time remaining until the malicious DKG result slashing amount can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingUnauthorizedSigningSlashingAmountUpdateTime
Get the time remaining until the unauthorized signing slashing amount can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingMimimumAuthorizationUpdateTime
Get the time remaining until the minimum authorization amount can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingAuthorizationDecreaseDelayUpdateTime
Get the time remaining until the authorization decrease delay can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingAuthorizationDecreaseChangePeriodUpdateTime
Get the time remaining until the authorization decrease change period can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingSortitionPoolRewardsBanDurationUpdateTime
Get the time remaining until the sortition pool rewards ban duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingRelayEntryTimeoutNotificationRewardMultiplierUpdateTime
Get the time remaining until the relay entry timeout notification reward multiplier duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingUnauthorizedSigningNotificationRewardMultiplierUpdateTime
Get the time remaining until the unauthorized signing notification reward multiplier duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingDkgMaliciousResultNotificationRewardMultiplierUpdateTime
Get the time remaining until the DKG malicious result notification reward multiplier duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingDkgResultSubmissionGasUpdateTime
Get the time remaining until the DKG result submission gas duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingDkgResultApprovalGasOffsetUpdateTime
Get the time remaining until the DKG approval gas offset duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingNotifyOperatorInactivityGasOffsetUpdateTime
Get the time remaining until the operator inactivity notification gas offset duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingRelayEntrySubmissionGasOffsetUpdateTime
Get the time remaining until the relay entry submission gas offset duration can be updated.
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
getRemainingChangeTime
Gets the time remaining until the governable parameter update can be committed.
Parameters
Name | Type | Description |
---|---|---|
changeTimestamp | uint256 | Timestamp indicating the beginning of the change. |
Return Values
Name | Type | Description |
---|---|---|
[0] | uint256 | Remaining time in seconds. |
Last updated