The Glitch Gremlin Governance Program manages the decentralized governance of the Glitch Gremlin ecosystem, including chaos test proposals, voting, and treasury management.
- Token staking for governance participation
- Proposal creation for chaos tests
- Voting mechanism with delegation support
- Treasury management for funded chaos tests
- Configurable governance parameters
- Node.js v16+ and pnpm
- Rust and Cargo
- Solana Tool Suite
- Anchor Framework
# Install dependencies
pnpm install
# Build the program
anchor build
# Run tests
anchor test
- Set up environment variables:
export SOLANA_RPC_URL="your_rpc_url"
export DEPLOYER_KEYPAIR_PATH="/path/to/deployer-keypair.json"
- Fund the deployer account:
solana airdrop 2 $(solana-keygen pubkey $DEPLOYER_KEYPAIR_PATH) --url devnet
- Deploy the program:
pnpm run deploy
The deployment script will:
- Deploy the program
- Initialize governance with default parameters
- Save deployment information to
deployment-info.json
Default governance parameters:
{
minStakeAmount: 1_000_000, // 1 GREMLINAI
minProposalStake: 5_000_000, // 5 GREMLINAI
votingPeriod: 604_800, // 7 days
quorumPercentage: 10, // 10%
approvalThresholdPercentage: 60, // 60%
executionDelay: 86_400, // 24 hours
stakeLockupDuration: 2_592_000, // 30 days
}
-
Access Control
- Only staked token holders can create proposals
- Minimum stake requirements for proposal creation
- Delegation controls
-
Treasury Protection
- Multi-signature requirement for treasury operations
- Funding limits per proposal
- Execution delay for approved proposals
-
Voting Security
- One token, one vote
- Vote delegation controls
- Quorum requirements
- Approval thresholds
-
Critical Issues
- Contact the emergency response team
- Pause proposal execution if necessary
- Prepare incident report
-
Non-Critical Issues
- Submit bug report
- Await review and prioritization
- Follow standard update process
Monitor the program using:
solana logs -u mainnet-beta $(solana-keygen pubkey program-keypair.json)
Run the test suite:
anchor test
This will run:
- Unit tests
- Integration tests
- Security tests
- Edge case tests
For support:
- Check the documentation
- Join our Discord server
- Open a GitHub issue
- Contact the development team
MIT License