This contract manages administrative functions that can be executed only by specified multisig addresses. Source: src/external/governance/Governor_v1.sol. Interfaces: IGovernor_v1.

Functions

acceptAdminChange

Accept a pending grant using the recipient’s own caller route. Parameters IGovernor_v1.sol#L105

acceptOwnership

Accepts the ownership over the target address. Parameters IGovernor_v1.sol#L834

cancelAdminChange

Cancel a pending administration approval immediately. Parameters IGovernor_v1.sol#L110

cancelForceUpgradeBeaconAndRestartImplementation

Cancels the queued forced upgrade of a beacon. Parameters IGovernor_v1.sol#L746

cancelMarketFreezeSafesChange

Cancel the queued freeze Safe pair. IGovernor_v1.sol#L814

cancelRcfDeployerChange

Cancels the queued deployer change of an address. Parameters IGovernor_v1.sol#L803

cancelRestartBeaconImplementation

Cancels the queued restart of a beacon implementation. Parameters IGovernor_v1.sol#L766

cancelUpgrade

Cancels an upgrade of {IInverterBeacon_v1} by setting the active timelock to inactive. Parameters IGovernor_v1.sol#L686

executeAdminChange

Execute the approved batch after checking current authority. Parameters IGovernor_v1.sol#L107

executeBeaconForceUpgrade

Execute only the force upgrade identified by id_. Parameters IGovernor_v1.sol#L125

executeBeaconRestart

Execute only the restart identified by id_. Parameters IGovernor_v1.sol#L127

executeBeaconUpgrade

Execute only the ordinary upgrade identified by id_. Parameters IGovernor_v1.sol#L123

executeForceUpgradeBeaconAndRestartImplementation

Disabled unbound selector. Use executeBeaconForceUpgrade with its ID. Parameters IGovernor_v1.sol#L740

executeMarketFreezeSafesChange

Execute the queued freeze Safe pair. Parameters IGovernor_v1.sol#L810

executeRcfDeployerChange

Executes the queued deployer change of an address. Parameters IGovernor_v1.sol#L795

executeRestartBeaconImplementation

Disabled unbound selector. Use executeBeaconRestart with its ID. Parameters IGovernor_v1.sol#L761

init

The module’s initializer function. Parameters IGovernor_v1.sol#L508

initiateBeaconShutdown

Initiates the shutdown of a {IInverterBeacon_v1}. Parameters IGovernor_v1.sol#L704

initiateBeaconShutdownForAllLinkedBeacons

Initiates the shutdown of all linked {IInverterBeacon_v1}s. IGovernor_v1.sol#L711

migrateGovernor

Complete the one-time legacy cutover as an existing admin. IGovernor_v1.sol#L99

moduleFactoryInitCallback

Callback function that is called by {ModuleFactory_v1} during initialization. Parameters IGovernor_v1.sol#L519

queueAdminChange

Queue exact typed changes with a 24-hour delay. Parameters Returns IGovernor_v1.sol#L101

queueForceUpgradeBeaconAndRestartImplementation

Queues a forced upgrade of a beacon that also restarts the implementation. There is no immediate route: it runs only through {executeForceUpgradeBeaconAndRestartImplementation} after timelockPeriod. Parameters IGovernor_v1.sol#L730

queueMarketFreezeSafesChange

Queue the controller-bound freeze Safe pair. Parameters IGovernor_v1.sol#L806

queueRcfDeployerChange

Queues a change of the allowed-deployer status of an address on the configured {IReferenceCurveFactory_v1}. Parameters IGovernor_v1.sol#L786

queueRestartBeaconImplementation

Queues a restart of the {IInverterBeacon_v1} implementation. There is no immediate route. Parameters IGovernor_v1.sol#L756

registerAdminCoreRoute

Record the calling core’s current principal witnesses. Parameters IGovernor_v1.sol#L87

registerMetadataInModuleFactory

Registers a {IInverterBeacon_v1} with the provided metadata in the target {ModuleFactory_v1}. Parameters IGovernor_v1.sol#L631

registerNonModuleBeacon

Registers an {IInverterBeacon_v1} as a linked beacon that is not a module. Parameters IGovernor_v1.sol#L641

setGovernorBeaconController

Disabled direct setter; use typed delayed administration. Parameters IGovernor_v1.sol#L826

setModuleFactory

Disabled direct setter; queue a ModuleFactory AdminChange. Parameters IGovernor_v1.sol#L565

setReferenceCurveFactory

Disabled direct setter; queue a ReferenceCurveFactory AdminChange. Parameters IGovernor_v1.sol#L619

setTimelockPeriod

Disabled direct setter; queue a Timelock AdminChange. Parameters IGovernor_v1.sol#L691

triggerUpgradeBeaconWithTimelock

Disabled unbound selector. Use executeBeaconUpgrade with its ID. Parameters IGovernor_v1.sol#L677

upgradeBeaconWithTimelock

Starts the upgrade process of a {IInverterBeacon_v1} by creating a timelock period after which it can be upgraded via triggerUpgradeBeaconWithTimelock(). Parameters IGovernor_v1.sol#L667

View functions

getAdminApproval

Read the immutable approval snapshot. Parameters Returns IGovernor_v1.sol#L112

getAdminCoreRoute

Read a core’s declared witnesses. Execution rechecks usability. Parameters Returns IGovernor_v1.sol#L93

getBeaconApproval

Read the beacon operation commitment (0 upgrade, 1 force, 2 restart). Parameters Returns IGovernor_v1.sol#L117

getBeaconForceUpgrade

Returns the queued forced upgrade of a {IInverterBeacon_v1}. Parameters Returns IGovernor_v1.sol#L528

getBeaconRestart

Returns the queued restart of a {IInverterBeacon_v1}. The implementation and version fields are always zero. Parameters Returns IGovernor_v1.sol#L537

getBeaconTimelock

Returns the current timelock of a {IInverterBeacon_v1} address. Parameters Returns IGovernor_v1.sol#L545

getGovernorBeaconController

Read the current controller. Returns IGovernor_v1.sol#L821

getLinkedBeacons

Returns the list of currently linked {IInverterBeacon_v1}s. Returns IGovernor_v1.sol#L553

getMarketFreezeSafesChange

Read the queued freeze Safe pair. Returns IGovernor_v1.sol#L816

getMarketFreezeSafesChangeStatus

Returns the status and the execution window of the queued freeze Safe pair change. Returns IGovernor_v1.sol#L607

getModuleFactory

Returns the {ModuleFactory_v1} address. Returns IGovernor_v1.sol#L560

getRcfDeployerChange

Returns the queued deployer change of an address. Parameters Returns IGovernor_v1.sol#L576

getRcfDeployerChangeStatus

Returns the status and the execution window of the queued deployer change of an address. Parameters Returns IGovernor_v1.sol#L589

getReferenceCurveFactory

Returns the {IReferenceCurveFactory_v1} address. Returns IGovernor_v1.sol#L569

Events

AdminChangeAccepted

Parameters IGovernor_v1.sol#L77

AdminChangeCanceled

Parameters IGovernor_v1.sol#L76

AdminChangeExecuted

Parameters IGovernor_v1.sol#L75

AdminChangeQueued

Parameters IGovernor_v1.sol#L68

AdminCoreRouteRegistered

Witness tuple recorded by the exact execution core itself. Parameters IGovernor_v1.sol#L79

BeaconAddedToLinkedBeacons

Event emitted when a new beacon is added to the linked beacons. Parameters IGovernor_v1.sol#L326

BeaconApprovalQueued

Parameters IGovernor_v1.sol#L59

BeaconForcefullyUpgradedAndImplementationRestarted

Event emitted when a {IInverterBeacon_v1} is forcefully upgraded and the implementation gets restarted, after the timelock. Parameters IGovernor_v1.sol#L425

BeaconForceUpgradeCanceled

Event emitted when a queued forced upgrade is canceled. Parameters IGovernor_v1.sol#L407

BeaconForceUpgradeQueued

Event emitted when a forced upgrade and restart of a {IInverterBeacon_v1} is queued. Parameters IGovernor_v1.sol#L397

BeaconImplementationRestarted

Event emitted when a {IInverterBeacon_v1} implementation is restarted. Parameters IGovernor_v1.sol#L435

BeaconRestartCanceled

Event emitted when a queued restart is canceled. Parameters IGovernor_v1.sol#L417

BeaconRestartQueued

Event emitted when a restart of a {IInverterBeacon_v1} implementation is queued. Parameters IGovernor_v1.sol#L413

BeaconShutdownInitiated

Event emitted when a {IInverterBeacon_v1} shutdown is initiated. Parameters IGovernor_v1.sol#L388

BeaconTimelockOverwritten

Event emitted when a pending {IInverterBeacon_v1} timelock upgrade is overwritten by a new call to upgradeBeaconWithTimelock. Parameters IGovernor_v1.sol#L363

BeaconTimelockStarted

Event emitted when a new timelock period for an upgrade of a {IInverterBeacon_v1} is started. Parameters IGovernor_v1.sol#L335

BeaconUpgraded

Event emitted when a {IInverterBeacon_v1} is upgraded. Parameters IGovernor_v1.sol#L348

BeaconUpgradedCanceled

Event emitted when a {IInverterBeacon_v1} upgraded is canceled. Parameters IGovernor_v1.sol#L372

FeeManagerUpdated

Event emitted when the fee manager is updated. Parameters IGovernor_v1.sol#L376

GovernorBeaconControllerSet

Event emitted when the GovernorBeaconController_v1 is stored. Parameters IGovernor_v1.sol#L468

MarketFreezeSafesChangeCanceled

Event emitted when a queued freeze Safe pair change is canceled. Parameters IGovernor_v1.sol#L495

MarketFreezeSafesChangeExecuted

Event emitted when a freeze Safe pair change is executed. Parameters IGovernor_v1.sol#L488

MarketFreezeSafesChangeQueued

Event emitted when a freeze Safe pair change is queued. Parameters IGovernor_v1.sol#L478

ModuleFactoryUpdated

Event emitted when the module factory is updated. Parameters IGovernor_v1.sol#L380

OwnershipAccepted

Event emitted when the governor contract accepts ownership over another contract. Parameters IGovernor_v1.sol#L440

RcfDeployerChangeCanceled

Event emitted when a queued deployer change is canceled. Parameters IGovernor_v1.sol#L464

RcfDeployerChangeExecuted

Event emitted when a queued deployer change is executed. Parameters IGovernor_v1.sol#L460

RcfDeployerChangeQueued

Event emitted when a change of the allowed-deployer status is queued for a deployer. Parameters IGovernor_v1.sol#L453

ReferenceCurveFactoryUpdated

Event emitted when the {IReferenceCurveFactory_v1} is updated. Parameters IGovernor_v1.sol#L444

TimelockPeriodSet

Event emitted when a timelock period is set. Parameters IGovernor_v1.sol#L384

Errors

Governor__AdminAcceptanceRequired

Parameters IGovernor_v1.sol#L58

Governor__BeaconNotAccessible

The given target address is not accessible. Parameters IGovernor_v1.sol#L227

Governor__BeaconRecoveryAlreadyQueued

A forced upgrade or restart is already queued for the beacon. Cancel it first. Parameters IGovernor_v1.sol#L319

Governor__BeaconRecoveryNotQueued

No forced upgrade or restart is queued for the beacon. Parameters IGovernor_v1.sol#L314

Governor__CallToTargetContractFailed

The call to the target contract has failed. IGovernor_v1.sol#L242

Governor__DelayedAdministrationRequired

IGovernor_v1.sol#L54

Governor__GovernorBeaconControllerAlreadySet

The GovernorBeaconController_v1 was already set. IGovernor_v1.sol#L288

Governor__GovernorBeaconControllerNotSet

No GovernorBeaconController_v1 is stored in the governor. IGovernor_v1.sol#L285

Governor__InvalidAddress

The given address is invalid. Parameters IGovernor_v1.sol#L220

Governor__InvalidGovernorBeaconController

The address is not a usable GovernorBeaconController_v1: it has no code, its Safe pair is zero or equal, or it owns the governor beacon without an executed controller handover from the stored controller. Parameters IGovernor_v1.sol#L295

Governor__InvalidMarketFreezeSafes

The freeze Safe pair is equal, or one of its Safes is not a canonical Safe 1.4.1 proxy with a valid configuration and no modules, guard or fallback handler. IGovernor_v1.sol#L277

Governor__InvalidOperation

IGovernor_v1.sol#L55

Governor__InvalidReferenceCurveFactory

The given address is not a {IReferenceCurveFactory_v1} that this {Governor_v1} owns. Parameters IGovernor_v1.sol#L269

Governor__InvalidTimelockPeriod

The given timelock period is invalid (must be at least 48h). Parameters IGovernor_v1.sol#L224

Governor__LastUsableAdmin

IGovernor_v1.sol#L57

Governor__LinkedBeaconsNotEmpty

Can only be called when the linked {IInverterBeacon_v1} array is empty. IGovernor_v1.sol#L217

Governor__MarketFreezeSafesChangeNotQueued

No change of the freeze Safe pair is queued. IGovernor_v1.sol#L272

Governor__MarketFreezeSafesNotControllerPair

The freeze Safe pair differs from the (approvalSafe, emergencySafe) pair of the current GovernorBeaconController_v1. IGovernor_v1.sol#L282

Governor__MigrationRequired

IGovernor_v1.sol#L56

Governor__OnlyCommunityOrTeamMultisig

Can only be accessed by the CommunityMultisig or TeamMultisig. IGovernor_v1.sol#L231

Governor__OnlyLinkedModuleFactory

Can only be accessed by the linked {ModuleFactory_v1}. IGovernor_v1.sol#L213

Governor__QueuedByProtocolAdmin

The change was queued by the COMMUNITY_MULTISIG_ROLE, so only that role can cancel it. IGovernor_v1.sol#L264

Governor__QueuedChangeActive

A change is already queued (Waiting, Executable or Expired). Cancel it before a new queue. Parameters IGovernor_v1.sol#L260

Governor__QueuedChangeExpired

The execution window of the queued change has closed. A new queue with a full timelock is needed. Parameters IGovernor_v1.sol#L301

Governor__QueuedPayloadMismatch

The payload given to an execute call does not match the queued change. IGovernor_v1.sol#L305

Governor__RcfDeployerChangeNotQueued

No change of the allowed-deployer status is queued for the given deployer. Parameters IGovernor_v1.sol#L250

Governor__RcfDeployerRemovalPending

A removal of this deployer is queued. An add cannot overwrite it. Execute or cancel the removal first. Parameters IGovernor_v1.sol#L310

Governor__ReferenceCurveFactoryAlreadySet

The {IReferenceCurveFactory_v1} was already set. It cannot be changed through the governor. A new factory version ships as an upgrade of the factory beacon. IGovernor_v1.sol#L255

Governor__ReferenceCurveFactoryNotSet

No {IReferenceCurveFactory_v1} is configured in the governor. IGovernor_v1.sol#L245

Governor__TimelockPeriodNotExceeded

The timelock period needed for the {IInverterBeacon_v1} to be upgraded has not been exceeded yet. IGovernor_v1.sol#L235

Governor__UpgradeProcessNotStarted

This upgrade process for this {IInverterBeacon_v1} has not yet been started. IGovernor_v1.sol#L239