吸收与销毁
卖出到达有 ETH 资金的区间时,可用 CUBIT 换取这些 ETH。买墙取得的代币必须退出可交易流动性,专用于销毁。
买墙 ETH 深度下降与代币销毁,是此操作的两种不同后果。
初始供应固定,随后通缩
初始发行 2100 万 CUBIT,此后不再铸造。 Hook 销毁买墙回购代币时,totalSupply() 减少,totalBurned() 增加。通缩来自实际销毁,并非单纯经过一段时间。
一次卖出触及买墙
→ 该仓位的 ETH 回购 CUBIT
→ CUBIT 被隔离后销毁
→ 总供应量减少
买墙回购的 CUBIT 永不返回可交易 LP,即使价格随后上涨。待销毁队列中的代币已经退出该流动性。
价格在区间内震荡时
若震荡触及买墙,连续卖出可消耗 ETH,逐步移除市场中的 CUBIT。某些区间最终可能没有可执行流动性;资金耗尽后其 tick 仍可识别。
价格回升不会自动用已回购的 CUBIT 补充买墙,因为它们已隔离待销毁。新资金仍可加厚同一 tick 的仓位。
| 震荡区域 | 可能影响 |
|---|---|
| 区间始终高于买墙 | 交换未触及这些仓位,不产生买墙销毁 |
| 区间穿越一个或多个买墙 | CUBIT 被吸收并销毁,这些区间的 ETH 可逐渐耗尽 |
| 价格穿越阶梯 | 仓位库存改变;自身代币可在再平衡时复用或重新配置 |
可能耗尽的是流动性区间,并非作为价格单位的 tick 消失。因此并非所有震荡都自动清空所有 tick。查看阶梯作用。
区分三种状态
| 状态 | 含义 |
|---|---|
| 买墙仓位中的 ETH | 依价格与区间,该仓位仍可使用的资金 |
| 已吸收并隔离的 CUBIT | 已退出市场,可能等待销毁的库存 |
| 已销毁的 CUBIT | CubitToken.burn() 已实际减少总供应量 |
代币仅允许 hook 执行销毁。公共入口 burnAbsorbed() 不允许调用者选定接收方来取走隔离库存。
CUBIT 路由器路径
已交付路由器的卖出先结算池交换、完成退款所需的任意转账,然后若有队列则调用销毁。销毁失败会回滚整笔卖出。
这是该执行路径特有的行为,不能据此宣称任何第三方路由器的卖出都会在同一交易内销毁全部代币。
第三方集成
兼容路由器可能留下隔离代币队列。这些代币始终专用于销毁,不能再从买墙流动性中买回。之后调用 burnAbsorbed() 完成销毁。
Guardian 维护暂停期间仍可调用此函数,且不发奖励。因此要求正收益门槛的 keeper 可能延迟调用。
销毁不保证什么
销毁减少供应,不创造 ETH。若买墙资金已用于吸收卖出,其历史价位不会自动恢复深度。
多个固定买墙中,隔离库存和余款必须正确归属各仓位。旧单买墙测试本身不足以证明新实现也满足这些性质。
核查证据
Hook 的 TokensBurned、代币的 Burned 事件,以及 totalBurned() 和 totalSupply() 可追踪实际销毁。pendingBurnTokens 队列是不同的状态。
网络环境或规范分叉中的实际吸收,以及 strict-burn 的独立审查,仍是验证条件。已知局限。
来源: CubitRouter._finishSwap, CubitHook._isolateAbsorbedTokens, _burnAbsorbed, CubitToken.burn 以及 contracts/docs/STRICT_BURN.md 用于设计历史。