一笔由卖出触发的代币销毁,在 2026 年 11 月 4 日几乎清空了 BNB Chain 上 TENDRIL 流动性池中 TENDRIL 一侧的余额,并促成一笔移除了近 442 万 USDT 的交换。该交易的净流出要小一些,为 555,670.538752928908475139 USDT,因为在同一笔交易中,前面已经有大量 USDT 流入。

卖出如何触发代币销毁
这笔卖出在卖方剩余的 TENDRIL 进入流动性池之前,先调用了一个控制器。UTC 时间 16:02:45,路由器的 transferFrom 调用发起了 39,053,180,124.060957132414461269 TENDRIL 的卖出,并触发了该代币的税费和控制器逻辑。
流入主池的转账会收取 30% 的卖出税,但由两个已配置地址 _poolControl 和 _markControl 发送时除外。执行该交易的合约不符合这两项豁免条件。因此,代币先将 11,715,954,037.218287139724338380 TENDRIL 发送给 _poolControl。
随后,代币调用控制器的 sellToken 函数,传入的是原始卖出数量,而不只是税额。该调用在代币把剩余 70% 记入池子之前就已完成。
历史调用轨迹显示的顺序是:transferFrom、sellToken、controlburn 和 sync,随后才是最终 swap。控制器的 opcode 轨迹确认,它将原始卖出数量乘以 2,得出了随后从池中移除的精确数量。
controlburn 在不减少总供应量的情况下移除池中代币
controlburn 函数将 TENDRIL 从池子的余额转移到一个死地址,但并未减少代币记录的总供应量,也没有销毁流动性提供者代币。
它的权限检查要求调用者必须与 _poolControl 匹配。一旦授权,它就使用 _basicTransfer 从池子的余额中扣除代币,并记入死地址。这里没有池子授权或流动性提取:代币合约直接控制自己的余额记录。
日志 28 记录了 78,106,360,248.121914264828922538 TENDRIL 的移除。这让池子里只剩下 6,678 个原始单位。按 TENDRIL 的 18 位小数计算,剩余量仅为 0.000000000000006678 TENDRIL。
这次销毁并没有同时移除 USDT。几乎全部 TENDRIL 余额消失了,而池中的 USDT 仍可用于下一次兑换。
放弃所有权并没有阻止这一路径。在事件发生前的区块 131653426 中,owner() 返回的是零地址。但 controlburn 检查的是已配置的控制器,而不是 owner(),因此这一路权限仍然有效。该函数并非对所有人开放;任意调用者都会在授权检查中失败。
储备重置使得几乎全部 USDT 都可被提走
控制器在销毁后立即调用 sync(),在剩余卖出代币到达之前,先记录了被清空后的代币余额。日志 29 将储备设为 4,421,023.357469283419586501 USDT 和 0.000000000000006678 TENDRIL。
随后,27,337,226,086.842669992690122889 TENDRIL 才进入池子。最终 swap 将 4,421,023.357469283419586499 USDT 转出,只留下 0.000000000000000002 USDT。
恒定乘积公式可以解释这一输出规模。忽略手续费和四舍五入作示例,USDT 输出可通过将 USDT 储备乘以代币输入,再除以代币储备加代币输入来计算。在记录的代币储备几乎为零时,输入项主导分母,输出就会接近全部 USDT 储备。
不过,这次最终提走的金额并不是整笔交易从池中提取的净额。USDT 总流出达到 5,117,517.824288279504509510,流入总额为 4,561,847.285535350596034371。两者相减后,得到 555,670.538752928908475139 USDT 的净流出。
合约代码和历史轨迹还原了整个顺序
这次卖出触发的代币销毁,是通过经区块浏览器验证的源码、历史调用、事件日志和 opcode 轨迹重建出来的。使用 Solidity v0.8.24+commit.e11b9ed9、关闭优化重新编译后,在区块 131653426 上得到的可执行运行时代码与合约字节码一致,编译器元数据除外。
解码后的销毁参数与从池子转入死地址的数量完全一致。整数运算也能对应税额、剩余卖出代币和储备余额。总供应量在交易前后相邻区块之间保持不变。
这笔成功的事件交易出现在区块 131653427。通过两个公开的 BNB Chain RPC 端点核对后的回执一致,且在 2026 年 11 月 6 日复查时,地址级别的 USDT 流向也完全对得上。
本文由人工智能辅助生成,并经编辑团队审校。












