Voting on Proposals¶
This guide covers how to participate in governance by voting on proposals. You'll learn to find active proposals, understand what they do, cast your vote, and execute successful proposals.
Prerequisites¶
Before voting, ensure you have:
- Delegated voting power - tokens have 0 voting power until delegated
- Vote gate satisfied - your effective votes at the proposal snapshot are ≥
minVotesToVote(default: 1 SXXX)
Check your status:
1. Find Active Proposals¶
View Proposal Inbox¶
This shows: - Proposal IDs - Current state (Pending, Active, Succeeded, Queued, Executed) - Voting deadlines - Current vote counts
Check Recommended Actions¶
This tells you what to do next: - "Vote on proposal #X" - Proposal is active, needs votes - "Queue proposal #X" - Succeeded, ready for queue - "Execute proposal #X" - Queued and delay passed
2. Understand What a Proposal Does¶
Before voting, understand the proposal's effects.
Quick Preview¶
Shows: - Proposal description - Target contracts and functions - Current voting status - Time remaining - Quorum progress
Detailed Decode¶
For deeper analysis:
This decodes the calldata to show exactly what will happen if the proposal passes (e.g., library updates, parameter changes).
Proposal Summary¶
Shows before/after effects of the proposal.
3. Cast Your Vote¶
Support options:
- for - Vote in favor
- against - Vote against
- abstain - Abstain (counts toward quorum but not outcome)
Examples:
# Vote for proposal 42
sage proposals vote 42 for --dao 0xYourDAO
# Vote against
sage proposals vote 42 against --dao 0xYourDAO
# Abstain
sage proposals vote 42 abstain --dao 0xYourDAO
Vote with Reason¶
Provide on-chain reasoning for your vote:
sage governance vote <proposal-id> for \
--reason "This improves error handling in the SQL prompt" \
--dao 0xYourDAO
Non-Interactive Voting¶
For automation:
4. After Voting Ends¶
Queue Successful Proposals¶
Proposals that pass must be queued for the timelock delay:
Execute After Delay¶
Once the timelock delay passes:
Or through governance command:
Wait for Execution¶
Watch a proposal through its lifecycle:
This polls until the proposal reaches Executed state, automatically queueing and executing when possible.
Proposal Lifecycle¶
1. CREATED
└─▶ Proposal submitted to Governor
2. PENDING (optional delay)
└─▶ Voting hasn't started yet
3. ACTIVE
└─▶ Voting period open → VOTE HERE
4. SUCCEEDED
└─▶ Quorum reached, majority voted for → Queue it
5. QUEUED
└─▶ Waiting for Timelock delay → Wait
6. EXECUTED
└─▶ Proposal actions completed → Done!
Check Proposal State¶
Understanding Voting Power¶
Your vote is weighted by your effective votes at the proposal’s snapshot (delegated SXXX votes, optionally multiplied by DAO‑scoped NFT multipliers).
Check Your Voting Power¶
With Multipliers¶
If the DAO uses NFT multipliers:
Governance Information¶
View Quorum¶
View Threshold¶
Full Proposal Details¶
Quick Reference¶
# Discovery
sage proposals inbox --dao 0xDAO
sage proposals status --dao 0xDAO
sage proposals preview <id> --dao 0xDAO
# Voting
sage proposals vote <id> for --dao 0xDAO
sage proposals vote <id> against --dao 0xDAO
sage proposals vote <id> abstain --dao 0xDAO
# Execution
sage governance queue <id> --subdao 0xDAO
sage proposals execute <id> --dao 0xDAO
# Analysis
sage governance decode <id> --subdao 0xDAO
sage governance summary <id> --subdao 0xDAO
sage governance state <id> --subdao 0xDAO
Related¶
- Delegation and Governance - Getting voting power
- Governance Models - How different DAOs work
- Creating a DAO - Setting up governance