On-chain Governance
How Liquid is governed via Lux DAO — Safe + DLUX votes.
On-chain Governance
Liquid is governed on-chain through the Lux DAO stack. There is no transitional multisig — execution runs through a Safe (formerly Gnosis Safe) controlled by DAO proposals; voting weight comes from staked LUX, the Lux ecosystem token, plus DLUX, the Lux governance token issued by the DAO contracts.
- Frontend / proposals: lux.vote
- Source:
luxfi/dao - Execution: Safe multisig owned by
ModuleGovernorV1 - Voting power:
VotesERC20StakedV1(LUX → DLUX) + delegations - Strategies:
StrategyV1with pluggable voting-weight, vote-tracker, and proposer-adapter modules
Liquid's curator, allocator, strategy classifier, and gauge all hold the Safe
as admin. Parameter changes flow:
Proposal on lux.vote
→ DLUX-weighted vote (StrategyV1 + voting-weight module)
→ ModuleGovernorV1 queues + executes through Safe
→ Safe calls Liquid contract (e.g. setCap, setRiskLevel, addStrategy)Why on-chain?
Liquid is built around three principles:
- Transparency — every contract interaction is public and verifiable.
- Decentralization — no single party controls user funds or protocol parameters.
- Immutability — code that custodies value should, where possible, be fixed.
A protocol where a small multisig can upgrade arbitrary state grants that multisig functional custody of user assets and exposes signers to obligations typically reserved for professional money managers. The opposite extreme — locking every parameter forever — can't patch security issues or adapt to upstream changes.
Liquid's rule: anything that can be immutable, is. Anything that can't be immutable goes through on-chain DAO governance. Anything that can't go through on-chain governance can be delegated by the DAO to a narrowly scoped on-chain executor — never to a designation that would make it a money manager (i.e. an entity able to make biased decisions around user funds or fully control user access to them).
Layers of Governance
| Layer | Control | Rationale |
|---|---|---|
Core vault logic (Liquid.sol, LiquidPosition.sol, LiquidTransmuter.sol) | Immutable | Safety first. Code that directly custodies deposits never changes. |
| Adjustable parameters (collateralization, fees, transmuter cadence, deposit caps) | DLUX-weighted DAO vote → Safe execute | Policy stays in token-holder hands. |
| Strategy adapters (allocator, curator, classifier, gauge) | DAO-elected executor with narrow mandate | Fast response on yield routing, accountable to DAO. |
| Operational keys (allocator operator, gauge keeper) | Safe co-signers with proposal-gated rotation | Day-to-day execution without per-action votes. |
Voting & quorum
| Parameter | Value |
|---|---|
| Token | DLUX (VotesERC20StakedV1, ERC-20Votes) |
| Backing | Staked LUX |
| Module | ModuleGovernorV1 |
| Voting period | Set per-proposal by StrategyV1 |
| Quorum | Configurable via voting-weight strategy |
| Executor | Safe multisig owned by the module |
Final addresses, deployed quorum and voting timelines are published with each
release at lux.vote and tracked in
luxfi/dao deployments.
Last updated on