W3
开发者进阶中级125 次阅读

DApp 上线检查清单:从合约到前端的 12 项

合约、前端、监控、应急四条线同时就绪才算上线;本文给出 12 项可逐条勾选的检查清单与对应的责任划分。

#上线#检查清单#运维#应急#发布

一句话结论

上线不是「合约部署成功了」,而是合约、前端、监控、应急四条线同时就绪。缺任何一条,一次小故障都会被放大成一次事故。

12 项清单

合约侧

  1. 审计完成,遗留问题有明确结论与处理方式,测试覆盖到关键分支。
  2. 权限收敛:管理权限交给多签,敏感操作加时间锁,不在个人钱包上留后门。
  3. 源码验证完成,编译参数与部署参数可追溯。
  4. 升级路径确认:是代理还是不可升级,升级的触发条件与执行人写清楚。

前端侧

  1. 配置了多个 RPC 端点,并有网络异常与数据延迟的明确界面状态。
  2. 完整手动回归:连接、签名、授权、链切换、拒绝签名各走一遍。
  3. 移动端与未安装钱包的用户有明确引导路径。
  4. 签名请求内容可读,不使用盲签(必要时用 EIP-712 结构化签名)。

运行侧

  1. 关键事件监控上线,告警按优先级分级并指定渠道。
  2. 值班安排与处理手册(runbook)确定,每条告警都有人对应。
  3. 应急开关可用:暂停、限额、权限转移的执行方式与执行人已确认。

沟通侧

  1. 公告渠道与状态页确定,出问题时第一时间向用户说明的模板准备好了。

为什么是 12 项而不是 5 项

因为真实事故的成因往往不在合约代码里,而在「没监控到」「没人值班」「用户不知道该做什么」。合约写得再好,一次没被及时发现的异常,或者一次没人回应的公告,都会让损失成倍放大。

给你的教训

  • 清单要有人负责、有完成时间,否则它只是一份文档。
  • 先在测试网完整跑一遍清单,不要拿主网当第一次演练。
  • 优先灰度而不是一次全量:先限额、先开放部分用户,再逐步放大。
  • 提前演练监控与应急,在没出事的时候确认流程走得通,比事后补救便宜得多。
  • 上线后第一周集中盯盘,确认平稳后再逐步放松。

延伸阅读