赏善罚恶令

  在太乙协议中,有一个很重要的合约,用于太乙岛治理提案的执行,这个合约称作是“赏善罚恶令”。

  准确地说,这个合约(TaiyiDAOExecutor)是一个由太乙师傅共同参加的投票执行系统,可以在链上执行太乙岛提案,这些提案几乎支持一切链上交易。这个合约衍生自Compound项目的Timelock,它也为太乙岛运作了一个带时间锁定的金库系统,同时它也是太乙岛提案的实际执行者,因此又被称为“赏善罚恶令”。

  这个合约只能由太乙岛治理合约(TaiyiDAOProxy)来控制,因此只能执行太乙岛治理合约通过的提案。这些提案从给某个社区工作者发工资,到操作盘古角色印制“道理”,甚至是替换升级某个重要的合约模块,可以说是五花八门,应有尽有。

  这里举个投资的例子,如果师傅们希望外界的加密货币注资到太乙岛基金会,怎么操作赏善罚恶令?

  首先,太乙岛相关的协议本身是和现有的加密货币无关的,只定义了一种叫做“道理”的ERC20通货。太乙协议的角色合约中,每次铸造新角色的道理费用,是直接由铸造代码打入到太乙岛基金会地址的。另外太乙世界中的一些事件,也会给太乙基金会打入一些资源资产,比如金石、药材等等,作为太乙世界的建设基金。甚至,有一些特殊的资源,比如“师傅令牌”,每铸造十个,就会自动铸造一个直接打入到太乙岛基金会的地址。由于师傅令牌就是太乙岛治理的投票权,因此太乙岛基金会至少会获得10%的投票权。

  回到我们的主题上,如果有一个投资机构,想用以太坊投资太乙基金会并获得相应数量的师傅令牌。那么就可以由当前的某位师傅在太乙岛治理合约上发起一个提案

  提案中包含如下两个需要执行的交易(Transaction):
- 1、在包装ETH的ERC20代币(如WETH)合约上,从投资人地址转账到太乙岛基金会地址
- 2、在师傅令牌合约上,从太乙岛基金会地址将N个太乙师傅令牌转给投资人地址

  接下来,由各位师傅检查这个提案的内容,如果表示满意,就投票通过这个提案。

  保险起见,提案被通过并进入治理合约的执行队列后,治理合约还会等上一段时间来交给赏善罚恶令去执行。这段时间,投资人和基金会双方可以检查提案的状态,在确认为“待执行”状态后,双方才会对赏善罚恶令合约进行最后的代币操作授权。只有授权后,赏善罚恶令也才能成功执行上述两个交易。

  在提案被执行后,上述两笔交易就会被一次性执行完毕。只要有其中一笔交易失败,提案所有的相关交易都会无效(revert)。提案正确执行后,太乙岛基金会应该就收到了投资人的ETH包装代币,投资人也收到了基金会转过来的师傅令牌。

赏善罚恶
赏善罚恶
Subscribe to 太乙协议
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.