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:
@@ -64,7 +64,32 @@ const app = createApp({
|
||||
|
||||
formatTime(timestamp) {
|
||||
if (!timestamp) return '-'
|
||||
return new Date(timestamp * 1000).toLocaleString()
|
||||
|
||||
// Handle ISO strings
|
||||
if (typeof timestamp === 'string') {
|
||||
try {
|
||||
const date = new Date(timestamp)
|
||||
return date.toLocaleString()
|
||||
} catch (e) {
|
||||
console.warn('Invalid timestamp format:', timestamp)
|
||||
return '-'
|
||||
}
|
||||
}
|
||||
|
||||
// Handle numeric timestamps (could be seconds or milliseconds)
|
||||
const numTimestamp = Number(timestamp)
|
||||
if (isNaN(numTimestamp)) return '-'
|
||||
|
||||
// If timestamp is in seconds (typical Unix timestamp), convert to milliseconds
|
||||
// If timestamp is already in milliseconds, use as-is
|
||||
const msTimestamp = numTimestamp < 10000000000 ? numTimestamp * 1000 : numTimestamp
|
||||
|
||||
try {
|
||||
return new Date(msTimestamp).toLocaleString()
|
||||
} catch (e) {
|
||||
console.warn('Invalid timestamp value:', timestamp)
|
||||
return '-'
|
||||
}
|
||||
},
|
||||
|
||||
formatNumber(num) {
|
||||
|
||||
Reference in New Issue
Block a user