Skip to content

Governance

Offshore Cash is governed by OFF token holders through an on-chain governance system. All protocol upgrades and parameter changes go through a transparent proposal process.

Proposal Lifecycle

Create → Voting (3 days) → Timelock (2 days) → Execute
  1. Create — Any address with ≥ 50,000 OFF voting power can submit a proposal
  2. Voting — Stakers vote For, Against, or Abstain over a ~3-day voting period (21,600 blocks)
  3. Timelock — Passed proposals enter a 2-day timelock before execution
  4. Execute — After the timelock, anyone can trigger execution

Quorum

A proposal requires 5% quorum (5M OFF of the 100M total supply) in participating votes to be valid.

Guardian

A protocol Guardian has the ability to cancel any proposal at any stage. This is a safety mechanism to protect against malicious governance attacks. The Guardian role itself is subject to governance and can be reassigned via proposal.

What Governance Controls

AreaExamples
Proxy UpgradesUpgrade MainPool, Relayer Registry, and other core contracts
Fee ConfigurationAdjust protocol fee rate (0.3%, up to 5% max)
Relayer RegistryAdjust minimum stake requirements, fee parameters
PriceOracleSwitch oracle version, adjust manual rate, toggle Uniswap pricing
Protocol ParametersSupported tokens, sanctions oracle

Delegation

OFF holders can delegate their voting power to any address — including themselves. Delegation allows active community members to vote on behalf of passive holders.

  • Delegation is per-address (you delegate all your voting power)
  • You can re-delegate or reclaim your voting power at any time
  • Delegating does not transfer tokens — only voting power
  • Voting power is snapshotted at proposal creation to prevent flash-loan attacks

Timelock & Admin

All governance-controlled changes — including PriceOracle updates — must pass through the Timelock contract with a 2-day execution delay. Currently the Timelock admin is the deployer address; admin rights will be transferred to the Governance contract to complete full decentralization.

Voting Power

Voting power is derived from staking:

votingPower = stakedAmount × lockMultiplier

Lock multiplier ranges from 1.0× (7-day lock) to 2.5× (4-year lock). You must stake OFF tokens in the Staking contract to gain voting power.

Open source privacy technology