0. 什么是 LOVE20 协议
0.1. 定义
LOVE20 协议是一个基于 流动性质押获取治理权 和 可验证共识行动 的去中心化社群铸币协议。
0.2. 目的
LOVE20 协议的目的是帮助社群,铸造真正属于社群的代币,不依赖于任何中心化的团队与应用。
0.3. 场景
LOVE20 既可以务实的,作为一个完全去中心化的 Web3 版线上互助打卡社群,大家每天跑步运动、读书学习等等,并在社交网络打卡,接受社群的共同见证,获得铸币激励,实现个体与社群的共同成长;
同时也可以在迷因化社群,大家用可验证的共识行动,来传播和确认迷因文化,打造真正的去中心化的迷因社群,铸造真正属于社群的迷因币。
更多的可能,由社群自己来探索。
0.4. 名字
LOVE20 中的 LOVE 代表“爱” ,是对自己的爱,对他人的爱,也是所热爱的事物的爱。希望每个人,每天做 20 分钟 想做的或热爱的事情,获得精神与物质上的双重富足。
LOVE20 同时也可以拆开看做 LOVE+ERC20,意为爱的代币化,将爱铸为代币。
最终的定义,在社群的每个人的心中。
0.5. 代币
LOVE20 协议会从第一个同名的 LOVE20 代币开始,孵化衍生出子币、孙币、曾孙币…等不限层级的代币,每个代币都是父币社群共识的细化发展。最终形成一个庞大的 LOVE20 树状代币体系。
0.6. 铸币
每个代币总量 100 亿,公平发射完成 10%代币铸造,剩余 90%通过治理机制铸造。
1. 公平发射
在公平发射阶段将铸造 10%最大代币量的 代币。
1.1. 启动
协议部署时,会自动启动一个与协议同名的 LOVE20 代币的公平发射,以 ERC20 封装后的公链原生代币为父币,用来参与公平发射的申购。
LOVE20 协议里,任何代币在公平发射结束后,可以启动以自己为父币的子币的公平发射。
启动的子币名称满足:
- 6 个字符
- 第 1 个字符为大写英文字母
- 后 5 个字符为大写英文字母、数字
启动子币公平发射的地址需满足:
- 在父币社群有行动推举权
- 在父币社群完成 180 次的治理铸币(每完成 180 次可启动一个子币公平发射)
注意:启动代币公平发射的地址,不会获得任何额外代币,也不会有任何特殊权力。
1.2. 申购
进入到公平发射阶段,任何持有父币的人,都可以参与申购,获得代币的初次分配。
- 申购价格:固定,按协议预先设定的父币募集目标数量(除 LOVE20 募集 200 万 TKM20 外,其余子币的父币募集目标数量为 2000 万)与代币的发射量计算价格
- 申购限制:不限单个地址参与申购的父币数量,允许超额申购(超额部分将在申购领取时返还)
- 申购领取:
- 领取时间:公平发射结束的下一个区块开始,可以领取
- 领取数量:申购结束后按申购额占比计算份额
- 父币返还:按价格扣除消耗的父币,返还剩余父币
1.3. 结束
每一次申购都触发判定:
- 数量判定:累计申购额大于等于父币募集目标数量
- 时间判定:从首笔达成 50%父币募集目标数量的区块高度开始,若最新申购的区块高度,与前者的差大于等于 90378 个区块(约三天)
若两个条件同时满足,则结束公平发射
1.4. 退出
- 申购撤回:公平发射未结束,可撤回全部参与申购的父币(需满足申购后等待 30126 个区块,约 1 天)
- 托底池返还:发射结束后,募集到的父币会从发射合约转到代币合约作为托底池,为代币整体市值托底。任何人都可以拿代币,来换托底池中的父币。
可换父币数量 = 拖底池父币数量 * 代币数量 / 已铸造代币量
托底池得到的代币,将全部销毁,变为未铸造代币。
2. 治理机制
公平发射结束后,社群将进入流水线式的三阶段治理,治理的目标是通过铸币激励,引导社群积极参与可验证的共识行动,形成社群的共识。
所有的治理都是围绕“行动”来展开。
一轮完整的治理由 3 个相同时间长度(30126 个区块,约 1 天)的阶段组成,前后轮次刚好错开一个阶段的长度,即每轮治理的一个阶段结束后,立即当轮的下一个阶段及下一轮的同阶段。
| 治理轮\阶段 | P(n) | P(n+1) | P(n+2) | P(n+3) | P(n+4) | P(n+5) | P(n+6) |
|---|---|---|---|---|---|---|---|
| 第 n 轮 | 投票 | 行动 | 验证 | ||||
| 第 n + 1 轮 | 投票 | 行动 | 验证 | ||||
| 第 n + 2 轮 | 投票 | 行动 | 验证 | ||||
| 第 n + 3 轮 | 投票 | 行动 | 验证 | ||||
| 第 n + 4 轮 | 投票 | 行动 | 验证 |
注意:轮次是从协议部署时的区块开始,每经过一个阶段的区块数,则轮次加 1
投票阶段社群投出可参与的行动,行动阶段社群成员通过质押代币参与行动,验证阶段随机抽取多个报名参加此行动的社群成员,以票数的形式验证其行动实际参与情况,获得验证票可铸造行动激励,参与验证可铸造治理激励。
2.1. 角色
治理机制里主要分治理者、行动者两种角色。
2.1.1. 治理者
通过流动性质押获得治理票数,即可成为治理者,参与投票与验证的治理工作;单独质押代币,可以获得额外加速激励;申请解锁质押资产后,等待解锁期到期后,即可取回质押资产。
2.1.1.1. SL 质押获取治理票
流动性质押,简称 SL 质押,即同时质押代币与父币资产对,并设定解锁期,以获得治理票数。质押后会获得 SL 类(Staked Liquidity)代币作为质押凭证,质押的资产将自动添加到 UniswapV2 合约的流动性池,增加代币流动性。
每次质押,都需指定解锁期(最小 30 个阶段数,最大 120 个阶段数),且不小于之前质押时的解锁期(解锁期决定申请质押解锁后,需等待多久可以取回质押资产)。
治理票数 = 解锁期 * sl 质押凭证代币数量
2.1.1.2. ST 质押获取加速激励
单独代币质押,简称 ST 质押,即拥有治理票(有流动性质押)的治理者,通过单独质押代币,获得 ST 类(Staked Token)代币作为质押代币的凭证,参与加速激励的分配。
2.1.1.3. 申请解锁
提交质押解锁请求,会被立即收回 SL 与 ST 质押资产凭证,在完整的解锁期到期后,可领取质押资产。(例如:解锁期为 4 个阶段,则在第 3 轮投票阶段申请解锁,在第 8 轮投票阶段,即可取回质押资产)
2.1.1.4. 取回质押资产
取回时,会将累计质押的资产同时取回。
SL 质押的释放,会按照 UniswapV2 的 x*y=k 公式,基于当前流动池内价格,计算两种资产的释放数量,两种资产的数量乘积,与质押时的数量乘积相同,即若价格与质押时相同,则与质押时的资产数相同。
ST 质押的释放与质押时的代币数量始终保持相同。
2.1.1.5. 质押凭证不足
质押凭证可以转移,但若质押凭证余额少于质押时产生的质押凭证数量,会让治理票数暂时为零,无法参与治理,也无法申请解锁,补齐后即可恢复。
2.1.2. 行动者
持有代币加入行动,即成为行动者
2.2. 投票阶段
2.2.1. 治理者
有推举权的治理者推举行动到可投票行动列表,所有治理者从列表中选择 1 个或多个支持的行动去投票。
2.2.1.1. 行动推举
- 资格获取:持有不少于 0.3% 的治理票
- 推举限制:每轮只可推举一个行动
- 推举方式:
- 推举老行动:从所有本轮未被推举的行动中,选取一个推举到本轮可投票行动列表
- 推举新行动:创建一个新行动并推举到列表,行动包含的字段如下:
- 标题:一句话描述的行动内容
- 验证规则:详细的行动验证规则,例如:发推文包含“$LOVE20”或“#LOVE20#”,满 5 天给 10 分,每少一天减 3 分,没有则 0 分
- 最小参与代币量:大于 0 的数,参与此行动的最小代币量
- 白名单地址:指定唯一可参与行动的地址,零地址表示所有地址都可参与
- 最大随机抽取地址数:每轮随机抽取最多多少个地址接受验证,并获得行动激励铸造资格
- 辅助信息:行动加入时,需填写一个或多个辅助信息,每个辅助信息里,包含关键词(最大 64 字节)和填写指引两部分,例如:关键词:社交平台个人主页地址链接,填写指引:任何可以公开访问的社交平台地址个人主页或信息流地址链接
2.2.1.2. 行动投票
每轮投票阶段,每个治理者将获得与自己持有的治理票相同数量的投票。治理者从本轮已推举出的可投票行动中,选择 1 个或多个行动分配自己的投票。获得总投票 3%及以上的行动,将参与行动激励的分配,得票数越多,可分配的行动激励越多。
2.2.2. 行动者
无链上行为。
2.3. 行动阶段
2.3.1. 治理者
无链上行为。治理者可以在行动阶段,观察社群对于各行动的参与度和反馈,来优化迭代行动,或调整后续轮次投票支持的行动。
2.3.2. 行动者
2.3.2.1. 行动加入
在行动阶段,只有在投票阶段获得投票的行动才可加入。
向行动质押代币即可加入行动,加入后可以随时追加代币数量,追加后当轮立即生效。一次加入,后续一直有效,直到主动退出为止。
行动加入或追加代币时,可以填写或更新辅助信息,帮助验证者验证行动参与情况,例如:社交平台的信息流地址或个人主页地址等。
注意:阶段快结束前的最后 105 个区块(约 5 分钟),无法加入行动,也无法追加代币到行动中。
2.3.2.2. 行动进行
对于已经加入的行动,持续按照行动验证规则行动即可。
注意:只有当轮投票阶段超过 3%的行动,才有资格参与本轮的行动激励的分配,行动参与者要注意所参与行动是否当轮有行动激励,及时调整自己参与的行动。
2.3.2.3. 行动退出
可随时取回累计参与的所有代币,并立即退出行动
2.4. 验证阶段
2.4.1. 治理者
2.4.1.1. 行动验证
治理者负责在验证阶段,对自己投过票的行动,根据验证规则,验证每个随机抽取地址的行动完成情况,并分配验证票,可投弃权票,总验证票数累计不多于投票阶段投给该行动的票数。
随机抽取地址:进入验证阶段后,每个行动将根据行动者的质押量大小,随机抽取待验证地址,质押量越大,被抽中的概率越大。
2.4.2. 行动者
无链上行为。可根据过往验证结果,优化调整自己的行动参与,为将来自己被验证时,能够获得更多的验证票数,获得更多的行动激励铸造权
2.5. 激励铸造
治理三阶段结束,则一轮治理完成,可以开始铸造本轮的激励。
每轮可铸造的总激励 = 0.2% * (最大铸币量 - 已铸币量 - 之前轮次预留的未铸造未销毁的激励)
其中 50%为治理激励,50%为行动激励。
2.5.1. 治理激励
治理激励里 50% 为验证激励,50% 为加速激励。
治理者在验证阶段后可铸造治理激励,治理激励包含两部分:
- 验证激励:总验证激励 * 治理者验证票 / 所有验证票
- 加速激励:总加速激励 * 治理者累计质押代币数量 / 所有参与投票的治理者的总质押代币数量
注:
- 加速激励最多不超过: 2 * 验证激励
- 若所有验证者,在投票阶段都没有 ST 质押,则本轮加速激励销毁。
- 这里的质押代币数,是指当轮的投票阶段结束时的累计质押代币数量
2.5.2. 行动激励
行动激励按行动分别铸造,投票阶段所获得的投票达到总投票的 3% 的行动,其参与者将参与行动激励的分配,分配基于所获得的验证票的比例。
每个行动被抽取到的验证地址,都可以铸造本行动的行动激励:
可铸造的激励 = 本轮行动激励 * 获得的验证票 / 有激励的行动的非弃权验证票总数
3. 特殊情况
3.1. 激励预留
- 触发时机:当轮首个验证
- 预留数量:计算并预留本轮的激励(治理激励、行动激励)
3.2. 销毁加速激励
- 触发时机:当轮首个治理激励铸造
- 销毁条件:所有参与验证的治理者,当轮的投票阶段累计质押代币数为 0
- 销毁数量:本轮所有加速激励
3.3. 销毁行动激励
- 触发时机:当轮首个治理激励铸造
- 销毁条件:有激励的行动的验证票都是弃权票
- 销毁数量:本轮所有行动激励
3.4. 验证地址准备
- 触发时机:验证、行动加入、行动退出时,验证阶段待验证的随机抽取地址若还未生成,则会触发生成(使用本轮随机数种子)。其中行动加入和行动退出时触发生成的是上一轮的验证地址
- 地址数量:不超过最大地址数,若同一个地址被抽到多次,会合并返回,故可能会少于最大地址数
3.5. 随机数种子更新
- 初始随机数生成:随机数合约地址加部署时的区块高度
- 每轮默认随机数:若当前轮次未触发过随机数更新,则使用随机数合约地址和轮次来生成随机数
- 随机数种子更新:首个代币的治理者,在治理验证时,有效治理票达到总治理票 0.03%则会触发随机数种子更新,更新的计算方式为上一个随机数种子加验证者地址加当前区块高度作为本轮最新的随机数种子的值
- 封装方式:uint256(keccak256(abi.encode()))
3.6. 流动性质押手续费分配
- 触发时机:任意地址取回质押资产时
- 触发条件:流动性质押产生的手续费收入,超过 1/300 流动性质押资产(不含手续费)
- 分配方式:手续费收入由两种代币构成,其中代币销毁,增加未来治理和行动激励,父币注入托底池,增大代币最低市值