mirror of
https://github.com/datahaven-xyz/datahaven
synced 2026-05-24 09:50:01 +00:00
## 🎯 Overview This PR implements a comprehensive Moonbeam-inspired OpenGov (Gov2) governance system across all DataHaven runtime environments (Stagenet, Testnet, and Mainnet). The implementation provides multi-track referenda, conviction voting, collective decision-making through dual councils, and complete benchmarking support. ## ✨ Key Features ### 🗳️ Multi-Track Referendum System Implements **6 distinct governance tracks** with different thresholds and parameters: | Track | Purpose | |-------|---------| | **Root (0)** | Critical runtime upgrades | | **Whitelisted Caller (1)** | Fast-tracked technical proposals | | **General Admin (2)** | General governance proposals | | **Referendum Canceller (3)** | Cancel dangerous referenda | | **Referendum Killer (4)** | Emergency removal of malicious referenda | | **Fast General Admin (5)** | Expedited administrative decisions | ### 🏛️ Dual Council Structure - **Technical Committee**: Manages technical proposals with fast-track powers - **Treasury Council**: Oversees treasury spending with shorter motion duration ### 🔐 Custom Origins System 5 specialized permission levels for granular governance control: - `GeneralAdmin` - `ReferendumCanceller` - `ReferendumKiller` - `WhitelistedCaller` - `FastGeneralAdmin` ### ⚖️ Conviction Voting - Vote multipliers from 0.1x to 6x based on lock duration - Delegation support for proxy voting - Maximum 20 concurrent votes per account 🤖 Implementation assisted by [Claude Code](https://claude.ai/code) --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Ahmad Kaouk <56095276+ahmadkaouk@users.noreply.github.com>
18 lines
488 B
Rust
18 lines
488 B
Rust
//! Governance tests for DataHaven Testnet Runtime
|
|
//!
|
|
//! This module contains comprehensive tests for the governance system,
|
|
//! including collective councils, custom origins, referenda with tracks,
|
|
//! and integration tests for complete governance workflows.
|
|
|
|
#[cfg(all(test, feature = "runtime-benchmarks"))]
|
|
pub mod benchmarks;
|
|
#[cfg(test)]
|
|
pub mod councils;
|
|
#[cfg(test)]
|
|
pub mod integration;
|
|
#[cfg(test)]
|
|
pub mod origins;
|
|
#[cfg(test)]
|
|
pub mod proxy;
|
|
#[cfg(test)]
|
|
pub mod referenda;
|