feat: implement complete OpenClaw DAO governance system
🏛️ OpenClawDAO Smart Contract Implementation: Core Governance Contract: - Enhanced OpenClawDAO with snapshot security and anti-flash-loan protection - Token-weighted voting with 24-hour TWAS calculation - Multi-sig protection for critical proposals (emergency/protocol upgrades) - Agent swarm role integration (Provider/Consumer/Builder/Coordinator) - Proposal types: Parameter Change, Protocol Upgrade, Treasury, Emergency, Agent Trading, DAO Grants - Maximum voting power limits (5% per address) and vesting periods Security Features: - Snapshot-based voting power capture prevents flash-loan manipulation - Proposal bonds and challenge mechanisms for proposal validation - Multi-signature requirements for critical governance actions - Reputation-based voting weight enhancement for agents - Emergency pause and recovery mechanisms Agent Wallet Contract: - Autonomous agent voting with configurable strategies - Role-specific voting preferences based on agent type - Reputation-based voting power bonuses - Authorized caller management for agent control - Emergency stop and reactivate functionality - Autonomous vote execution based on predefined strategies GPU Staking Contract: - GPU resource staking with AITBC token collateral - Reputation-based reward rate calculations - Utilization-based reward scaling - Lock period enforcement with flexible durations - Provider reputation tracking and updates - Multi-pool support with different reward rates Deployment & Testing: - Complete deployment script with system configuration - Comprehensive test suite covering all major functionality - Multi-sig setup and initial agent registration - Snapshot creation and staking pool initialization - Test report generation with detailed results 🔐 Security Implementation: - Anti-flash-loan protection through snapshot voting - Multi-layer security (proposal bonds, challenges, multi-sig) - Reputation-based access control and voting enhancement - Emergency mechanisms for system recovery - Comprehensive input validation and access controls 📊 Governance Features: - 6 proposal types covering all governance scenarios - 4 agent swarm roles with specialized voting preferences - Token-weighted voting with reputation bonuses - 7-day voting period with 1-day delay - 4% quorum requirement and 1000 AITBC proposal threshold 🚀 Ready for deployment and integration with AITBC ecosystem
This commit is contained in:
@@ -1233,11 +1233,18 @@ def unstake(ctx, amount: float):
|
||||
}
|
||||
)
|
||||
|
||||
# Save wallet with encryption
|
||||
password = None
|
||||
# CRITICAL SECURITY FIX: Save wallet properly to avoid double-encryption
|
||||
if wallet_data.get("encrypted"):
|
||||
# For encrypted wallets, we need to re-encrypt the private key before saving
|
||||
password = _get_wallet_password(wallet_name)
|
||||
_save_wallet(wallet_path, wallet_data, password)
|
||||
# Only encrypt the private key, not the entire wallet data
|
||||
if "private_key" in wallet_data:
|
||||
wallet_data["private_key"] = encrypt_value(wallet_data["private_key"], password)
|
||||
# Save without passing password to avoid double-encryption
|
||||
_save_wallet(wallet_path, wallet_data, None)
|
||||
else:
|
||||
# For unencrypted wallets, save normally
|
||||
_save_wallet(wallet_path, wallet_data, None)
|
||||
|
||||
success(f"Unstaked {amount} AITBC")
|
||||
output(
|
||||
|
||||
Reference in New Issue
Block a user