# Design CKB Lock Scripts for Voting ## Metadata **Status**:: #x **Zettel**:: #zettel/fleeting **Created**:: [[2024-07-03]] ## Synopsis - Spore DOBs for Voting (or xUDT?) - One DOB, one vote? Or coding the DOB voting weight in its DNA? - On-chain voting or off-chain - Does voting token transferable? - Voting method 1. Token-weighted voting: Voting power is proportional to the number of tokens held. 2. Quadratic voting: Voting power scales quadratically with the number of tokens, reducing the influence of large token holders. - We can allocate tokens based on the quadratic weight to simulate quadratic voting. 3. Time-locked voting: Tokens must be locked for a certain period to participate in voting. - How about concurrent proposals? - Two-stage commit. 1. First stage: propose the upgrade and collect votes. 2. Second stage: execute the upgrade when votes exceed the threshold. - How to avoid duplicate votes? - Non-presence proof ## Integration - Discord bot - Authorization via voting token/DOB - Voting - RPC to get the upgrade history, active proposals, voting progress and result. ## Case Studies - [Realms](https://docs.realms.today/) - [🔲 Create a NFT Community DAO | Governance UI Docs (realms.today)](https://docs.realms.today/DAO%20Guides/NFT%20DAO/nftdao) - [solana-program-library/governance/README.md at master · solana-labs/solana-program-library (github.com)](https://github.com/solana-labs/solana-program-library/blob/master/governance/README.md) - [BitDAO](https://docs.bitdao.io/) - Tezos (XTZ): - Uses a formal on-chain governance mechanism called the "self-amending ledger." - Allows stakeholders to vote on protocol upgrades and implementations. - Polkadot (DOT): - Implements a council-based governance model. - Uses referenda for major decisions and includes a technical committee for emergency changes. - Compound (COMP): - Utilizes a proposal-based system where COMP token holders can vote on changes. - Includes a timelock feature for implementing approved changes. - MakerDAO (MKR): - Employs a system of Executive Votes and Governance Polls. - MKR token holders can vote on risk parameters and system upgrades. - Uniswap (UNI): - Uses a governance forum for discussion and a voting system for implementation. - UNI token holders can create and vote on proposals. - Aave (AAVE): - Implements the Aave Improvement Proposals (AIPs) system. - AAVE token holders can vote on protocol changes and parameter adjustments