This proposes a deposit-paired voting core for CKB. It keeps voting weight tied to real DAO deposits while moving the tally into live-cell state.
Community DAO v1 is the motivating profile, not a consensus commitment to any forum, website, or governance operator.
This thread follows the earlier on-chain tally discussion and focuses only on the design. For Community DAO v1 phase-2 approval votes, it can replace the authoritative tally path without making proposals official, enforcing publication policy, or executing phase-3 disbursement.
That buys on-chain tally correctness, but only with explicit custody, contention, and migration tradeoffs.
Lifecycle
pair_create creates the voting right, proposal_create creates the proposal, and vote or revote stages choices. close seals a tally when needed. After all touched deadlines pass, release_to_withdraw starts normal DAO withdrawal. Optional delegation and intent cells stay outside this base lifecycle.
Base Constraints
- Each voting right is one pair: one
VotingRightOwnercontroller plus one parkedVotingRightOwnedNervos DAO deposit. No separate voting token is minted. - Voting weight is normalized DAO weight derived from the backing deposit’s counted capacity and creation-time accumulated rate, scaled to fixed genesis
AR_0. ProposalDocumentcan record governance-profile metadata. Consensus does not enforce discussion-stage, quorum, or pass-threshold rules, but any deposit-backed amount it records must be validated from live proof deposits.- Voting means choosing one label index from the ordered label set committed in
ProposalDocument. - Release starts standard Nervos DAO withdraw phase 1. Final free transfer happens later under normal phase 2 rules.
Non-Goals
- Officialness stays off-chain: consensus creates valid proposal instances, while publication attestation and governance-profile policy decide which proposal instance counts as official.
- Fair inclusion stays out of scope: the protocol enforces vote-state correctness on a hot
VoteMetacell but does not provide first-seen or fair-order inclusion guarantees. - Voting weight is time-independent: the authoritative tally unit is normalized protocol weight, so displayed DAO balance and voting weight can diverge.
- This is not a drop-in upgrade for existing DAO deposits: users must migrate deposits under voting-right custody, and adopting the design as the official DAO path would itself require a later meta-rule vote.
Open question: is on-chain tally correctness the right base-protocol boundary?