Sui 基金会在 2026 年 5 月 31 日发布事故复盘,披露 5 月 28 日至 29 日三次主网停摆的完整原因。报告最受关注的一点,是团队承认曾上线一个已知存在低概率停摆风险的临时补丁,以更快恢复网络运行���结果网络在次日早晨触发了这一故障变体,再次停摆。
报告显示,三次停摆并非出自同一个问题,而是由两个独立漏洞引发。前两次停摆都与 v1.72 版本有关。该版本引入了“地址余额”功能,允许用户直接从地址余额支付 Gas,而不是依赖 coin object,目标是简化交易流程,并支持稳定币免 Gas 转账。问题出在并发交易场景:当两笔交易同时竞争使用同一地址余额、其中一笔又被取消时,Gas 扣费逻辑没有正确处理取消状态,网络仍尝试对已取消交易收费,最终在验证者对账阶段产生负余额,也就是 underflow。验证者因此崩溃,区块生产中断。
v1.72 的 Gas 扣费逻辑如何引发前两次停摆
Sui 将前两次故障归因于同一条崩溃路径。Mysten Labs 工程团队随后通过 PR 26828 修复问题:在因余额不足而提前中止的情况下,清理地址余额 Gas 支付条目,从代码层面移除导致崩溃的路径。
但第一次停摆结束后,团队没有等待完整、充分测试的长期修复方案,而是选择先部署一个恢复速度更快的临时补丁。基金会���复盘中明确表示,这个临时方案带有“已知问题”,且有低概率再次导致停摆。团队权衡后接受了这一风险,希望在开发长期方案的同时,先让主网恢复运行。第二天早晨,网络确实命中了这一故障变体,第二次停摆随之发生。
根据披露,第二次停摆持续约3 小时 30 分钟,时间短于第一次,原因是修复框架已经建立,验证者之间的协调也更快。这份表述少见地把决策过程摆上台面:不是不可预见的单点事故,而是一次明确的风险取舍。
第三次停摆并非同源,而是重启时触发随机性状态漏洞
第三次停摆的根因与 Gas 扣费漏洞无关。报告称,验证者在周五早晨重启并安装长期修复时,触发了网络在重启后保存随机性设置方面的一个潜在漏洞。Sui 的随机性协议会在每个 epoch 开始时自动运行,而验证者重启部署补丁时,随机性初始化所要求的法定阈值高于当时共识层能够提供的水平。
更关键的是,一个早在 v1.72 之前就潜伏在代码库中的问题,使网络无法在重启后恢复随机性状态,导致 epoch 转换无法完成,用户交易再��冻结。也就是说,前两次和第三次停摆的故障模式彼此独立,第三次是应急修复过程制造出的特殊重启条件,把旧漏洞暴露了出来。
对此,Mysten Labs 通过 PR 26846 推出第二个紧急代码变更,引入确定性的强制关闭机制,用于处理卡住的 epoch。修复将主网恢复目标设定为 epoch 1142、consensus commit 768980,让验证者在不回滚任何已提交交易的前提下重新收敛并恢复区块生产。基金会确认,这一 force-close 工具在本次恢复过程中被使用过一次,且已被永久保留为未来 epoch 故障的应急工具。
基金会给出的四点结论与市场数据
这份复盘最后确认了四点:相关漏洞已修复;用户资金未面临风险;没有任何已结算交易被回滚;用于强制关闭 epoch 的机制已永久可用。对短期最直接的问题,基金会给出了明确回答。
市场层面,素材显示 SUI 当时交易价格接近 0.8789 美元。在连续故障期间,SUI 一度下探至 0.86 美元,跌幅约 8%;到周一回到接近 0.90 美元,但周度累计仍下跌约 16%。
复盘还提到,这是 Sui 自 2023 年主网上线以来第三次重大可靠性事故。此前两次分别是 2024 年 11 月一场持续两小时的交易调度故障,以及 2026 年 1 月一场持续六小时的共识分歧。三次事故根因各不相同。按报告呈现的信息,问题不在单一重复漏洞,而更像是上线前边界场景测试没有覆盖到新增功能与既有共识逻辑的交互。

