提案流程
1、用户提交提案(submit Proposal)
2、管理员审核(approve or spam)
如果管理员同意(approve),提案就会公示了。
3、用户授权开始(Authorize voting to start)
4、管理员开始(start voting)
开始的时候可以配置时间、比例信息。
管理员点击开始投票时,快照的是这个区块高度(currentBlockHeight-TicketMaturity)的票[TicketMaturity:主网是512,测试网是16]。也就是管理员开始投票时,票池中所有成熟的票都可以参与投票。
// 2. Subtract TicketMaturity from block height to get into
// unforkable teritory
snapshotBlock, err := block(bb.Height - uint32(g.activeNetParams.TicketMaturity))
if err != nil {
return "", fmt.Errorf("bestBlock %v", err)
}
//3. Get ticket pool snapshot
snapshot, err := snapshot(snapshotBlock.Hash)
投票正式开始了。