概述
Council 选举允许代币持有者为候选人投票。得票最多的候选人成为 Council 成员。投票需要锁定代币到 Council 合约中。选举流程
1
选举开始
选举被发起(需要平台的 EIP-712 签名)。选举有固定的持续时间。
2
投票期
代币持有者授权代币给 Council 合约,然后调用
voteElection() 为候选人投票。代币在选举结束前一直锁定。3
选举结束
endTime 过后,任何人都可以调用 claimElectionTokens()。第一个调用者触发结算——得票最高的候选人成为 Council 成员。4
领回代币
所有投票者调用
claimElectionTokens() 取回锁定的代币。读取选举状态
选举状态字段
在选举中投票
查看候选人
选举结束后领回代币
选举结束后(block.timestamp > endTime):