mCUBIT Vault
未来 Vault 将支持把 CUBIT 存入不可转让仓位,获得 WETH 收入份额。该模型不创建 CUBIT,也不赋予买墙资金提取权。
mCUBIT 指这种存款体验;所读代码不创建可自由转让的 ERC-20 凭证代币。
未来发布,目标最早 J+3。 以下为预期流程,可用情况将在发布时说明。
奖励来自何处
计划使用阶梯 LP 实际以 ETH 实现的费用的 20 %,在相关维护(尤其再平衡)收取,分给有存款的用户。
该百分比基于已实现费用,不是交换量、hook 税、阶梯本金,或已显示但尚未收取的费用。
Vault 从 hook 接收 ETH 并转为 WETH。奖励按每单位存入代币记账。无活动或无已实现费用可能没有奖励,不承诺固定收益率。
存入 CUBIT
- 模块发布时,检查所提供 Vault 地址及与协议的连接。
- 授权 Vault 转移所选金额。
- 调用
stake(amount)并等待确认。 - 在存款合约读取
balanceOf(account)与unlockAt(account)。
每次追加存款都会重启该钱包在该 Vault 整个仓位的 24 小时锁定,不只是新增部分。
存入的 CUBIT 仍是现有代币。存款不是销毁,也不人为降低供应量。
提取与领取
链上 timestamp 达到 unlockAt 后,withdraw(amount) 返还 CUBIT,可部分提取。claim() 转移已获得 WETH 奖励;所读实现中,提款锁定不阻止领取。
核心 guardian 暂停不停止退出;退出仍受持有仓位合约的规则与正常运作约束。
没有质押者时收到的奖励单独记录,不应由首笔存款追溯领取。小额舍入余款依记账规则留在 Vault。
Vault 被替换时
替换影响新存款所使用的合约。已记录的 CUBIT、奖励和解锁日期仍留在旧 Vault。 替换不移动用户资金。
前端读取历史列表并允许选择各旧 Vault。查询余额、领取或提取前须检查选中地址。旧 Vault 授权不授权新 Vault。
Hook 仍有 Vault 未结算额(vaultAccrued != 0)时,注册表拒绝替换。新 Vault 还须正确连接,且无历史存款或入资。
模块局限
替换 getter 检查验证声明地址的兼容性,不证明全部替换代码安全。各次发布仍需验证记账测试、费用收取集成及旧 Vault 退出功能的保留。
来源: periphery/CubitVault.sol, CubitV2.setVault, CubitHook._accrueVaultFees, _claimVaultRewards 以及 dapp/src/chain/vault.ts.