Skip to main content

Governance actions

This document summarizes governance and admin flows in Olla. All governance actions flow through the OllaGovernance contract, which inherits TimelockControllerUpgradeable. Actions must be scheduled, wait for the timelock delay, and then executed.

Configuration

All parameter changes are timelocked passthroughs: OllaGovernance receives the call via timelock execute and forwards it to OllaCore.

Safety module configuration

Safety module parameters are also timelocked passthroughs. OllaGovernance reads the safety module address from OllaCore and calls it directly.

Governance transfer (two-step)

Governance transfer is initiated via the timelock but accepted directly by the new governance address. On acceptance, OllaGovernance atomically transfers timelock roles (proposer/executor/canceller) and propagates DEFAULT_ADMIN_ROLE changes to all satellite contracts.

Treasury management

The treasury address is managed by OllaGovernance via the timelock. Note: instant redemption fees are no longer sent to the treasury — they are absorbed into the protocol buffer, benefiting remaining shareholders.

Safety module circuit breaker

The safety module circuit breaker is triggered automatically by OllaCore during operations. The guardian can pause/unpause directly.

Emergency pause / unpause

The governance admin can pause or unpause both OllaCore and OllaVault in a single call. These functions are not timelocked — they are callable directly by the governance admin for rapid incident response.

Upgrades

All contract upgrades are timelocked. OllaGovernance has dedicated functions for upgrading OllaCore, satellite contracts, and itself.