DAO의 투표 메커니즘과 거버넌스 프레임워크, 플랫폼에 대해 정리하였습니다.
이전 글에서 이어집니다.
이전 글: DAO의 투표 메커니즘
Governance Frameworks & Platforms1. Token-Gated Governor Bravo - Compound- OpenZeppelin’s Governor- TallyOptimistic Governance - Aragon GovernMetropolis(구 Orca Protocol)2. Share-BasedMoloch- TributeDAO- DAOHaus3. Reputation-Based Lazy Governance - ColonyHolographic consensus - DAOStack- DxDao - DAOstack제안 프로세스하이브리드오프체인 투표온체인 투표References
Governance Frameworks & Platforms
So You Want to Start a DAO… 와 Ethereum.org 에서는 DAO 프레임워크를 멤버쉽 기준으로 Token-Gated(Token-Based), Share-Based, Reputation-Based 3가지로 분류하였습니다.
이를 기반으로 온체인 거버넌스 프레임워크를 3가지로 분류하였고 기타 레퍼런스를 적절히 참고하여 정리하였습니다.
1. Token-Gated
거버넌스 토큰을 이용하여 제안하고 투표한다. 투표 컨트랙트에 잠긴 토큰의 양에따라 투표가중치(voting weight)가 부여된다.
Governor Bravo - Compound
쿼럼 + 위임 투표 (Quorum Delegative Voting) - COMP Token Contract
COMP토큰으로 투표권을 위임할 수 있으며 위임된 COMP가 65,000이상인 주소만 의결권을 가진다. 400,000표 이상을 넘긴 다수결 이여야만 제안이 통과된다.
TimeLock Contract
제안이 통과되면 제안의 실행을 2일 지연 시킨다. 이 기간동안 사용자가 제안이 악의적이거나 수용할 수 없다고 생각하는 경우 자금을 인출할 수 있도록 한다.
Governor Bravo
쿼럼, 보팅 기간 등 매개변수를 변경 할때 마이그레이션 없이 업그레이드를 허용하는 컨트랙트
Governor Alpha에서 업그레이드 되었다.
- Governor Alpha
immutable 컨트랙트이므로 거버넌스 매개변수(e.g. 정족수, 투표 기간 등)를 변경하려면 새로운 거버넌스 계약을 배포하고 거버넌스 타임락의 소유권을 이전해야 한다.
- OpenZeppelin’s Governor
Compound’s Governor를 기반으로하는 모듈식 프레임워크
https://wiki.tally.xyz/docs/openzeppelin-governor
https://docs.openzeppelin.com/contracts/4.x/governance
https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/docs/modules/ROOT/pages/governance.adoc
https://blog.openzeppelin.com/governor-smart-contract/
- Tally
OpenZeppelin's Governor기반의 DAO 플랫폼
https://www.tally.xyz/
https://docs.tally.xyz/user-guides/what-is-a-governor-contract
https://blog.tally.xyz/understanding-governor-bravo-69b06f1875da
Optimistic Governance - Aragon Govern
Colony의 Lazy Governance와 유사하다.
Dispute Time Delay동안 Aragon Court에 이의를 제기하고 해결하지 않는 한 모든 제안은 기본적으로 통과된다.
Metropolis(구 Orca Protocol)
Pod: 하나의 전문 지식을 중심으로하는 소규모 working 그룹.
각 pod에 자체 멀티시그월렛이 있으며 pod 수준에서 투표가 이뤄진다. 멤버쉽 NFT를 통해 pod에 대한 접근권한이 부여된다.
일부 실행 권한을 주요 의사 결정자에게 위임함으로써 참여 비용이 크게 감소한다.
2. Share-Based
DAO 멤버쉽을 위해서는 제안을 통한 기존 회원의 승인이 있어야하며 자금을 후원해야한다.
Moloch
제안서 제출 후(Unsponsored) 투표가 시작되려면 후원을 받아야한다.(In Queue) - Moloch V2
정족수 없이 과반수 이상의 표를 얻은 경우 제안이 통과되지만, 결과에 동의하지 않는 멤버는 rage quitting 할수 있다. (relative majority 문제에대한 솔루션)
Rage Quitting
멤버로서 DAO에 자금을 후원해야하는 경우 사용된다. 제안이 통과되어 실행되기 전, 결과에 동의하지 않는 멤버는 자금을 회수하고 DAO에서 탈퇴할 수 있는 유예기간이 주어진다.
Moloch V1 프레임워크 에서 처음 개발되었으며 Gnosis Zodiac, 1Hive의 Dadelion Org 등 에서도 exit이라는 이름으로 도입 되었다.
장점 | - 소수에 해당하는 투표자들을 보호한다. |
ㅤ | - 지분을 철회할 수 있는 멤버보다는 DAO 활동 참여를 중요시하는 구성원들간의 유대를 강화 할수 있다. |
단점 | - 투표 프로세스가 길다. |
더보기
- TributeDAO
Moloch 기반의 DAO 프레임워크
https://tributedao.com/
https://medium.com/@OpenLawOfficial/introducing-the-tribute-dao-framework-3f2f0ed50d62
https://github.com/openlawteam/tribute-contracts
- DAOHaus
Moloch 기반의 DAO 플랫폼
https://daohaus.club
DAOHaus Stack: https://daohaus.club/docs/devs/overview
3. Reputation-Based
기여자는 보상으로 평판과 토큰을 받을 것을 요청할 수 있다. 평판을 가진 계정은 의결권을 가지며, 평판은 구매, 양도, 위임할 수 없다.
Lazy Governance - Colony
이의가 없는 한 모든 결정은 기본적으로 승인되며, 기여한 가치에 비례하여 수익을 얻는다. 탈중앙을 유지하기위해 평판의 영향은 시간이 지남에따라 줄어든다.
Holographic consensus - DAOStack
- DxDao
REP 토큰 - 평판
Holographic consensus
https://gitcoin.co/issue/caney-fork/dxdao-codeless/3/100027796
https://blog.gnosis.pm/introducing-the-dxdao-27ec4301eced
https://blog.gnosis.pm/a-brief-discussion-of-the-protocol-governing-the-dxdao-7331407a2555
- DAOstack
GEN토큰으로 의결권을 살수는 없으나 Holographic Consensus에서 제안에 대해 찬성하거나 반대하는 쪽에 스테이킹 할 수 있다. 예측 투표의 결과에 대한 보상으로 GEN토큰을 얻거나 잃게된다.
code
https://github.com/daostack/alchemy-monorepo/tree/dev/packages/infra
https://github.com/daostack/DAOstack-Hackers-Kit#infra
PrimeDAO, NecDAO에서 사용
Holographic consensus
분산조직의 거버넌스 확장성-회복탄력성(scalability-resilience) 문제 해결을 목표로한다.
- 회복탄력성(resilience): 잘못된 행동에 대한 거버넌스 시스템의 관용과 저항
- 확장성(scalability): 더 많은 인원이 네트워크에 참여함에 따라 주어진 기간에 많은 의사 결정을 처리할 수 있는 거버넌스 시스템의 능력
커뮤니티의 성장은 절대 다수(absolute majority)를 만족시키는 데 필요한 유권자의 수를 증가시키는 반면, 회복탄력성은 소수에 의해 잘못된 의사결정이 내려지지 않는것을 뜻한다.
회복탄력성을 높이기 위해서는 많은 이들이 결정에 주의를 기울여야 하지만 결정에 참여해야하는 유권자의 수가 많을수록 빠른 결정이 어렵다. 따라서 과반수의 표를 얻어야하는 절대 다수제는 의사결정의 확장성을 위한 방법이 아니다.
하지만 정족수가 줄어들면 회복탄력성이 낮아진다. 그러므로 통과 될 것으로 예상되는 좋은 제안만 상대 다수제(relative majority)를 허용하는 방법을 사용하여 제안을 통과하는 데 필요한 장벽을 줄이고 거버넌스 운영 속도를 높인다.
부스팅 기간동안 제안의 통과 여부를 예측하고 토큰을 사용하여 성공할 것이라고 믿는 제안에 upsake, 실패 할것이라 생각되면 downstake로 베팅한다. 제안의 부스팅(upstake) 수가 *동적임계값에 도달하여 통과될 것으로 예상되는 제안은 상대적 다수제로 전환하며, 결과에 따라 예측이 맞으면 예측자는 토큰 보상을 받고 실패하면 토큰을 잃는다.
*동적 임계값은 상대적 다수제로 전환할 수 있는 제안의 수, 즉 집단적 관심을 제한하기 위함
장점 | - 좋은 제안일수록 신속하게 통과하여 시간을 절약 할 수 있다. |
ㅤ | - 공격에 비용을 지불해야하므로 악의적인 제안이 채택될 가능성이 줄어든다. |
단점 | - 부적절한 제안에도 downstake를 위한 자금이 필요하기때문에 재정적으로 까다롭고 장기적으로 적용하기 어려울 수 있다. |
제안 프로세스
하이브리드
오프체인 투표 후 온체인 투표를 진행하는 하이브리드 방식을 사용하는 경우가 있다. 규모가 큰 DAO일수록 그렇게 진행 되는듯 하다. 각 단계별로 특정 조건을 넘기면 이를 온체인으로 이관한다.
먼저 브레인스토밍을 하며 지지자를 모은다. 디스코드 채널에서 제안에 대한 대화를 시작하거나 포럼에서 제안을 제시한후 논의를 진행한다.
이후 해당 제안에 대한 온도를 체크한다. 다양한 이들의 의견을 듣고 이를 제안에 반영하는 과정이다. 이 과정은 포럼에서 이뤄지기도하고 Snapshot에서 토큰보유자를 대상으로 진행하기도한다. Snapshot에서는 Gnosis Safe를 통해 멀티시그 지갑에 delegate 하거나 SafeSnap을 이용하기도한다.
유니스왑을 예로들자면, 거버넌스 프로포절 프로세스가 총 4 단계로 이루어지며 이 중 앞의 3단계가 오프체인에서 이뤄진다.
단계별로 다음 단계로 진행하기 위해서 충족해야하는 요건이 정해져 있으며, 정족수나 시간에 대한 조건이 정해져 있기도 하다. Developer DAO의 Phase3, Phase4에는 Quorum Requirement, Time Requirement, Supermajority Requirement가 지정되어 있다.
Phase1 | Proposal Discussion | 오프체인 | |
Phase2 | Temperature Check | 포럼 with Snapshot | 오프체인 |
Phase3 | Consensus Check | 포럼 with Snapshot | 오프체인 |
Phase4 | Governance Proposal | 온체인 |
다음은 Developer DAO의 제안 프로세스이다.
Phase 1 | Conversation | 디스코드 | 오프체인 |
Phase 2 | Brainstorming and DDIP Development | 포럼(with 디스코드) | 오프체인 |
Phase 3 | Forum Vote | 포럼 | 오프체인 |
Phase 4 | Snapshot Vote and Execution | Snapshot | 오프체인 |
오프체인 투표
거래 수수료가 필요 없다는 장점이 있지만, 투표를 계산하고 결과를 체인에서 실행하려면 신뢰할 수 있는 제 3자가 필요하다.
Non-token 방식 - Discourse(Forum), Discord
토큰 보유 여부 상관없이 한 유저 당 한 표를 부여한다. 조작이 가능하므로 위험성이 낮은 투표에 적합하며, Discourse Forum이나 디스코드를 통해 제안에 대한 커뮤니티의 sentiment를 측정하는데 도움이 될 수 있다.
Token-weighted Voting (Signaling Vote) - Snapshot
투표를 위해 지갑으로 메시지에 서명하며 결과 데이터는 IPFS, Arweave를 통해 저장되므로 투표 변조 위험이 적다.
토큰 보유자 대상으로 초기 sentiment 투표를 진행할때 사용한다.
온체인 투표
투표가 컨트랙트를 통해 블록체인에 제출되며 각 투표에 대한 거래수수료를 사용자가 지불한다.
온체인 투표 결과에 따라 제안을 자동으로 실행가능하여 제 3자가 필요 없다.
오프체인 투표보다 안전하므로 프로토콜 변경에 대한 승인이나 위험성이 높은 투표에 적합하다.
References
- Rage-Quitting: Rage-quit | Alexandria
- Continuous Approval Voting: How Voting Works | MakerDAO Community Portal
- Quadratic Funding: 공공재를 위한 최적의 펀딩 메커니즘, Quadratic Funding
- Holographic Consensus: A Scalable Voting System: Validation of Holographic Consensus in DAOstack
- Reputation-Based: Reputation vs Tokens