Admin Guide
This guide covers administrative functions and governance management for Treem DAO administrators and authorized personnel.
Admin Overview
Administrative Roles
Super Admin:
Full system access
Smart contract ownership
Parameter management
Emergency functions
Governance Admin:
Proposal management
Voting oversight
Community moderation
Analytics access
Treasury Admin:
Fund management
Payment processing
Reward distribution
Financial reporting
Admin Dashboard Access
Navigate to Admin Panel
Go to
/admin
or/dashboard/governance-module
Requires admin authentication
Multi-factor authentication recommended
Admin Dashboard Sections
Governance Analytics
Proposal Management
User Management
Smart Contract Controls
Treasury Operations
Governance Management
Proposal Administration
Proposal Oversight
Active Monitoring:
Review new proposals for compliance
Monitor voting patterns
Track participation rates
Identify suspicious activity
Content Moderation:
Ensure proposals meet guidelines
Remove inappropriate content
Handle community reports
Maintain proposal quality standards
Emergency Proposal Actions
Proposal Cancellation:
// Emergency cancel malicious proposal
await governorContract.cancel(
targets,
values,
calldatas,
descriptionHash
);
Use Cases:
Security vulnerabilities discovered
Malicious or fraudulent proposals
Technical errors in proposal actions
Community safety concerns
Voting System Management
Vote Participation Tracking
Recording Participation:
// Record user vote participation for rewards
await stakingContract.recordVoteParticipation(voterAddress);
Batch Processing:
Process multiple voters simultaneously
Optimize gas costs for reward distribution
Maintain accurate participation records
Voting Integrity
Monitoring Activities:
Unusual voting patterns
Large vote swings
Potential vote buying
Coordinated voting attacks
Investigative Tools:
Voting power analysis
Transaction pattern review
Address clustering analysis
Temporal voting analysis
Smart Contract Administration
Staking Contract Management
Parameter Updates
Bonus Per Vote:
// Update voting reward amount
function setBonusPerVote(uint256 newBonus) external onlyOwner {
bonusPerVote = newBonus;
}
Treasury Address:
// Update treasury for reward distribution
function setTreasury(address newTreasury) external onlyOwner {
require(newTreasury != address(0), "Zero address");
treasury = newTreasury;
}
Monitoring Functions
Stake Verification:
// Check user staking status
function stakes(address user) external view returns (StakeInfo memory) {
return stakes[user];
}
// Verify grant proposal permissions
function canProposeGrants(address user) external view returns (bool) {
return stakes[user].tier == StakeTier.TWELVE_MONTHS;
}
Governor Contract Administration
Governance Parameters
Voting Delay:
// Update voting delay period
function setVotingDelay(uint256 newVotingDelay) external onlyOwner {
_setVotingDelay(newVotingDelay);
}
Voting Period:
// Update voting period duration
function setVotingPeriod(uint256 newVotingPeriod) external onlyOwner {
_setVotingPeriod(newVotingPeriod);
}
Proposal Threshold:
// Update proposal creation threshold
function setProposalThreshold(uint256 newProposalThreshold) external onlyOwner {
_setProposalThreshold(newProposalThreshold);
}
Treasury Management
Fund Administration
Token Distribution:
Monitor treasury balance
Approve large fund transfers
Manage reward distribution
Handle grant payments
Financial Controls:
Multi-signature approvals
Spending limits
Audit trail maintenance
Compliance reporting
Analytics and Reporting
Governance Analytics Dashboard
Key Metrics
Participation Metrics:
Total active proposals
Voting participation rates
Unique voter counts
Stake distribution analysis
Financial Metrics:
Treasury balance tracking
Reward distribution amounts
Grant funding allocated
Token circulation analysis
Analytics Queries
User Participation:
-- Get voting participation by user
SELECT
u.display_name,
COUNT(pv.id) as votes_cast,
SUM(pv.voting_power) as total_voting_power,
u.stake_tier
FROM profiles u
LEFT JOIN proposal_votes pv ON u.id = pv.user_id
WHERE pv.created_at >= NOW() - INTERVAL '30 days'
GROUP BY u.id, u.display_name, u.stake_tier
ORDER BY votes_cast DESC;
Proposal Success Rates:
-- Get proposal outcomes by type
SELECT
proposal_type,
status,
COUNT(*) as count,
AVG(votes_for + votes_against) as avg_participation
FROM proposals
WHERE created_at >= NOW() - INTERVAL '90 days'
GROUP BY proposal_type, status
ORDER BY proposal_type, status;
Report Generation
Automated Reports
Daily Reports:
New proposals created
Voting activity summary
Stake changes
Reward distributions
Weekly Reports:
Governance participation trends
Treasury balance changes
Community growth metrics
Security incident summary
Monthly Reports:
Comprehensive governance analysis
Financial statement summary
Strategic recommendations
Performance benchmarks
User Management
Member Administration
User Status Management
Stake Tier Verification:
-- Update user stake tier
UPDATE profiles
SET stake_tier = 'TWELVE_MONTHS',
voting_power = staked_tokens
WHERE id = $1;
Role Management:
-- Grant admin access to user
INSERT INTO user_roles (user_id, role)
VALUES ($1, 'admin')
ON CONFLICT (user_id, role) DO NOTHING;
Account Recovery
Wallet Migration:
Assist with wallet address changes
Verify ownership through multiple channels
Update database records
Maintain audit trail
Access Recovery:
Reset authentication tokens
Verify identity through KYC
Restore account permissions
Document recovery process
Community Moderation
Content Management
Proposal Content:
Review for appropriate content
Handle community reports
Enforce content guidelines
Remove policy violations
User Communications:
Monitor forum discussions
Address community concerns
Facilitate dispute resolution
Maintain respectful environment
Security Administration
Security Monitoring
Threat Detection
Unusual Activity Patterns:
Large stake movements
Coordinated voting behavior
Rapid account creation
Suspicious transaction patterns
Automated Alerts:
Smart contract anomalies
Treasury threshold breaches
Failed transaction spikes
Access pattern irregularities
Incident Response
Security Incident Workflow:
Detection: Automated alerts or manual reports
Assessment: Evaluate threat severity
Containment: Implement protective measures
Investigation: Analyze attack vectors
Recovery: Restore normal operations
Documentation: Record lessons learned
Emergency Procedures
Emergency Pause
Smart Contract Pause:
// Emergency pause staking operations
function pause() external onlyOwner {
_pause();
}
// Resume operations
function unpause() external onlyOwner {
_unpause();
}
Use Cases:
Security vulnerability discovered
Smart contract bug detected
Network attack in progress
Regulatory compliance issues
Multi-Signature Operations
Critical Functions:
Contract upgrades
Large fund transfers
Parameter changes
Emergency actions
Multi-Sig Process:
Proposal creation by authorized admin
Review by additional administrators
Multi-signature approval
Execution with transparent logging
Community notification
Maintenance Operations
Regular Maintenance Tasks
Daily Tasks
System Health Checks:
Smart contract status verification
Database consistency checks
API endpoint testing
Network connectivity validation
Data Management:
Backup verification
Log rotation
Cache optimization
Performance monitoring
Weekly Tasks
Analytics Review:
Governance participation analysis
Treasury balance reconciliation
User activity assessment
Security audit review
System Updates:
Dependency updates
Security patches
Performance optimizations
Feature deployments
Database Administration
Data Integrity
Consistency Checks:
-- Verify voting power consistency
SELECT
p.id,
p.display_name,
p.voting_power,
COALESCE(SUM(sl.amount), 0) as total_staked
FROM profiles p
LEFT JOIN stake_locks sl ON p.id = sl.user_id AND sl.is_active = true
GROUP BY p.id, p.display_name, p.voting_power
HAVING p.voting_power != COALESCE(SUM(sl.amount), 0);
Data Cleanup:
-- Clean up expired transactions
UPDATE governance_token_purchases
SET status = 'expired',
payment_details = jsonb_set(
COALESCE(payment_details, '{}'),
'{cleanup_reason}',
'"automated_cleanup"'
)
WHERE status = 'pending'
AND created_at < NOW() - INTERVAL '24 hours';
API Administration
Admin API Endpoints
Governance Management
Proposal Administration:
POST /api/admin/proposals/{id}/moderate
PUT /api/admin/proposals/{id}/status
GET /api/admin/proposals/flagged
User Management:
GET /api/admin/users
PUT /api/admin/users/{id}/role
POST /api/admin/users/{id}/verify
Analytics:
GET /api/admin/analytics/governance
GET /api/admin/analytics/participation
GET /api/admin/reports/monthly
Smart Contract Administration
Parameter Management:
PUT /api/admin/contracts/staking/bonus-per-vote
PUT /api/admin/contracts/governor/voting-delay
GET /api/admin/contracts/status
Rate Limiting and Access Control
Admin API Protection:
IP allowlisting for sensitive operations
Rate limiting for bulk operations
Audit logging for all admin actions
Multi-factor authentication required
Best Practices
Administrative Guidelines
Decision Making
Consensus Building:
Consult with other administrators
Document decision rationale
Communicate changes transparently
Monitor community feedback
Risk Assessment:
Evaluate potential impacts
Consider alternative approaches
Plan rollback procedures
Test in staging environment
Communication
Community Updates:
Regular transparency reports
Advance notice of changes
Clear explanation of decisions
Open feedback channels
Documentation:
Maintain detailed procedures
Update guides regularly
Share knowledge across team
Archive historical decisions
Security Best Practices
Access Management
Principle of Least Privilege:
Grant minimal necessary permissions
Regular access reviews
Time-limited emergency access
Separation of duties
Authentication:
Multi-factor authentication required
Hardware security keys recommended
Regular password updates
Session timeout enforcement
This comprehensive admin guide provides all necessary information for effectively managing Treem DAO governance operations.
Last updated
Was this helpful?