Skip to main content

Overview

Folio Protocol supports sophisticated governance structures with:
  • Role-based access control for different operations
  • On-chain governance with voting and timelocks
  • Dual governance (owner governance + trading governance)
  • Vote delegation and staking mechanisms
Folios can be governed by multisigs, DAOs, or fully on-chain governance contracts. You can also mix approaches for different roles.

Governance Roles

Folios use three primary roles:

DEFAULT_ADMIN_ROLE

  • Set fees and fee recipients
  • Configure auction parameters
  • Add/remove basket assets
  • Deprecate the Folio
  • Manage role assignments

REBALANCE_MANAGER

  • Start new rebalances
  • End ongoing rebalances
  • Close individual auctions

AUCTION_LAUNCHER

  • Open restricted auctions
  • Narrow price/weight ranges
  • Control auction timing
  • Close auctions
There’s also a BRAND_MANAGER role for off-chain use (no on-chain permissions).

Deployment Options

Option 1: Manual Role Assignment

Deploy a raw Folio and assign roles directly:
Use cases:
  • Multisig-controlled Folios
  • Testing and development
  • Simple governance structures
  • EOA-operated auction bots

Option 2: Full On-Chain Governance

Deploy with complete governance infrastructure:
Use cases:
  • Community-governed Folios
  • Transparent decision-making
  • Token-holder voting
  • Decentralized management

Configuring Owner Governance

Owner governance controls admin functions (fees, roles, deprecation).
1

Set Voting Parameters

Parameter Guidance:
  • votingDelay: Prevents surprise proposals, allows token acquisition
  • votingPeriod: Balance between speed and participation
  • proposalThreshold: Prevents spam, should be achievable
  • quorumThreshold: Percentage of total supply (not circulating)
  • timelockDelay: Allows users to exit before changes take effect
  • guardians: Trusted addresses for emergency cancellation
2

Choose Voting Token

Option A: Self-Governance (Folio shares = voting power)
This creates a StakingVault where users stake Folio shares to get voting power.Option B: Existing Token
Use an existing ERC20Votes token for governance.
3

Deploy Governance

Deployed components:
  • Governor: Handles proposals and voting
  • Timelock: Queues and executes approved actions

Configuring Trading Governance

Trading governance controls rebalancing operations.
1

Set Rebalancing Parameters

Trading governance typically has shorter timelines than owner governance to respond to market conditions.
2

Configure Role Assignment

Two approaches:
  1. Governance-controlled: Leave existingBasketManagers empty to deploy a separate trading governor
  2. Direct control: Provide addresses to skip trading governance deployment
3

Grant Rebalance Role

If using governance:
If using direct control:

Managing Staking Vaults

When self-governing, a StakingVault is deployed for vote locking.

Staking Folio Shares

Unstaking

Delegation

The StakingVault has:
  • Reward period: 3.5 days (for reward distribution)
  • Unstaking delay: 1 week (security cooldown)

Creating Governance Proposals

1

Prepare Proposal Actions

2

Submit Proposal

Ensure the proposer has at least proposalThreshold tokens.
3

Vote on Proposal

After the voting delay:
4

Queue and Execute

After voting period ends and proposal succeeds:

Example Governance Actions

Update Fees

Add Fee Recipient

Start Rebalance

Grant Role

Guardian Emergency Powers

Guardians can cancel malicious or erroneous proposals:
Guardians have significant power. Choose trusted, security-conscious addresses. Consider using a multi-guardian setup.

Best Practices

Use different governance structures for different roles:
  • Owner governance: Long timelock, high quorum (protocol safety)
  • Trading governance: Shorter timelock, lower quorum (market responsiveness)
  • Auction launcher: Automated EOA or bot (execution efficiency)
Start with multisig control, then gradually transition to on-chain governance as the community matures:
  1. Launch: Multisig for all roles
  2. Growth: On-chain trading governance, multisig owner governance
  3. Maturity: Full on-chain governance with guardians
  • 2+ days for owner governance: Allows users to exit before major changes
  • 1 day for trading governance: Balance between security and responsiveness
  • Never 0: Always have some delay for transparency
Calculate based on:
  • Expected participation rates (typically 5-20%)
  • Token distribution (whale concentration vs broad distribution)
  • Proposal importance (higher quorum for critical changes)

Monitoring Governance

Check Current Configuration

Track Proposals

Code Reference

  • Governance deployer: contracts/deployer/GovernanceDeployer.sol:40-109
  • Governor implementation: contracts/governance/FolioGovernor.sol
  • Staking vault: contracts/staking/StakingVault.sol
  • Role constants: contracts/utils/Constants.sol

Next Steps

Managing Rebalances

Use governance to start and manage rebalances

Deploying Folio

Review deployment options with governance