2.2 KiB
2.2 KiB
Overview
The IGovernance interface defines a comprehensive governance system for decentralized decision-making, enabling community-driven proposal creation, voting, and execution across blockchain environments.
Interface
| Function | Parameters | Returns | Description |
|---|---|---|---|
createProposal |
string _title, string _description, ProposalType _proposalType, address[] _affectedContracts |
uint256 proposalId |
Create a new governance proposal |
castVote |
uint256 _proposalId, bool _support, uint256 _votingWeight |
void |
Cast a vote on an existing proposal |
executeProposal |
uint256 _proposalId |
bool success |
Execute a passed proposal |
getProposal |
uint256 _proposalId |
Proposal |
Retrieve full proposal details |
hasProposalPassed |
uint256 _proposalId |
bool |
Check proposal's passing status |
Events
ProposalCreated: Triggered when a new proposal is createdVoteCast: Emitted when a vote is cast on a proposal
Storage Layout
Key storage structures include:
Proposal: Comprehensive proposal metadataVote: Individual voter participation details- Proposal tracking using enumerated statuses
- Vote weight and participation tracking
Access Control
- Proposal creation restricted to authorized participants
- Voting requires valid voting weight/credentials
- Execution limited to proposals meeting governance criteria
Security Considerations
- Prevent double voting
- Implement robust quorum and threshold mechanisms
- Protect against proposal manipulation
- Validate voting weights
- Implement time-based voting windows
Deployment
Network Details
- RPC URL: https://rpc.chunknet.org
- Chain ID: 214562
- Block Explorer: https://explorer.chunknet.org
Deployment Recommendations
- Use environment variable
CHUNK_CHAIN_RPC_URL - Verify contract bytecode
- Set appropriate governance parameters
- Configure initial access controls
Testing
- Unit test proposal creation workflow
- Validate voting mechanism edge cases
- Test proposal execution scenarios
- Simulate different proposal types
- Verify access control boundaries
- Performance and gas optimization testing