Optimism 官方桥退出未到账:核对 initiated、proved 与 finalized
链小知 · 进阶 · 核验 · 依官方文档整理
从已有 L2 回执判断桥退出阶段,区分等待证明、等待最终化与已经完成。
开始前准备
- 准备已存在的 OP Mainnet 退出哈希、L2 回执和对应 L1 阶段记录。
- 文档代码使用 OP Sepolia/Sepolia 示例;使用示例时须按实际网络替换读取上下文。
1. 确认是官方退出而非第三方快速桥
记录源链、结算链、接收地址和调用的桥合约。OP Mainnet 到 Ethereum 的官方退出使用证明与最终化流程;其他 OP Stack 链、第三方流动性桥和存入路线不能直接套同一等待时间。
检查结果:记录能明确是哪条链、哪类桥和哪个方向。
2. 先检查 L2 退出回执
L2 回执成功只证明退出发起交易执行。保留其区块和时间戳,用于识别对应 withdrawal;如果回执失败或找不到,先排查源链哈希、RPC 网络与错误,不能开始计算最终到账倒计时。
检查结果:回执成功与退出消息身份分别确认。
3. 读取当前证明条件和状态
官方示例利用 getWithdrawalStatus,并核对 Portal 的 dispute game 类型及相应证明上下文。状态尚未可证明时,应检查状态提交/游戏条件,而不是只按 L2 提交时间等待。相关部署与游戏类型升级会影响旧示例参数。
检查结果:状态判断引用当前链部署和该退出的回执。
4. 把 proved 与可最终化分开
证明在 L1 确认后仍需符合最终化条件。OP Mainnet 官方流程通常涉及七天挑战窗口,不能统一从 L2 点击退出起算,也不能将七天推广到所有 OP Stack 链。用当前可最终化状态而非日历猜测。
检查结果:记录证明确认时间、等待原因和可最终化结果。
5. 最终检查接收地址与资产到账
finalized 需要对应 L1 最终化证据,之后再核对接收地址资产变化。发起、证明、最终化分别可能消耗不同链的 gas;缺一段记录就保留该阶段未知。继续操作前应按对应链当前文档确认条件。
检查结果:结果准确标明最后一个有证据的阶段及剩余检查。
怎样确认完成
- 建立退出发起、证明、最终化、到账四栏记录。
- 等待与失败有具体依据,未执行链上动作。
常见错误与边界
- 把 L2 成功回执当作 L1 已到账。
- 从点击退出时统一加七天。
- 照搬测试网合约或 dispute game 参数到主网。