麦式参考 MickerBook Reference

上线检查清单

Launch Checklist

也常被叫作:发布清单上线前检查go-live checklist发布检查

你可能会这么说

「要发出去了,先检查一遍:别把用户带进坑里,出了事也知道怎么退。」

上线检查清单 Launch Checklist

上线前过一遍的清单:备份、回滚、监控、灰度,让「放出去」变成可控制的动作。

上线检查清单是「放出去之前」最后过一遍的清单。它不是「功能做完了」的庆祝会,而是「坏了怎么办」的预案。要回答的问题就三类:用户能访问吗(功能在真实地址上可用)、出事怎么发现(有没有观测手段)、出事怎么退(能不能快速回滚)。这三类答不上来,功能再完整也别急着放。

对非技术用户,最容易犯的错是把「AI 说做完了」当成「可以上线了」。AI 说的「做完」是「代码生成了」,上线是「真人会用到、出问题会投诉、坏了要能修」。中间隔着一整段:备份有没有、旧版本能不能恢复、坏了你知不知道、能不能先放给一小部分人试。

第一版别追求「完美上线」,追求「安全上线」:可以丑、可以少,但上线当天你要能回答「如果坏了,我怎么发现、怎么退」。清单就为这个存在:每一条都是一次能亲手做的验证,不是「我觉得没问题」。把它一条条过,过的打勾,没过的标「未验证」并说清为什么不拦——没验证的项比全打勾但没真验过安全得多。

长什么样 真实可交互,不是截图

上线前,至少过这些

真实地址能打开,不是本地地址
旧版本能回滚(有备份或能退回上一版)
? 出错了我怎么知道:未接监控
? 数据有备份:未验证

最后两项标「未验证」不是失败,是诚实——上线前最怕的是全部打勾,但没有一项真的亲手验过。

拆开看,里面有这几块

  1. 1
    可用性 Reachability

    真实用户访问的地址能打开,域名和 HTTPS 生效,不是 localhost。

  2. 2
    数据安全 Data safety

    有备份,删错了能找回;涉及用户数据时,备份更要紧。

  3. 3
    可回滚 Rollback

    出问题能退回上一个版本,且你(或 AI)知道具体怎么操作。

  4. 4
    可观测 Observability

    出错了你怎么知道:错误日志、报警,至少一个「看状态」的地方。

  5. 5
    灰度与流量 Staged rollout

    能不能先放给一小部分人,而不是一口气全量。

  6. 6
    善后预案 Incident plan

    出事了找谁、怎么通知用户、怎么修、怎么交代。

常见的有哪几种

最小上线清单Minimum

能打开 + 能回滚 + 出错了知道。

用在:个人项目第一版

标准上线清单Standard

备份、回滚、监控、域名/HTTPS、上线公告。

用在:有真实用户的产品

高风险清单High-risk

灰度、监控报警、数据迁移预案、回滚演练、责任人。

用在:涉及钱、用户数据、老系统替换

容易搞混?这样区分

上线检查清单 验收标准 Acceptance Criteria

验收标准是「这个功能对不对」(给用户看的);上线清单是「放出去安不安全」(给自己看的)。两者都要,别用功能测试代替上线检查。

看 验收标准
上线检查清单 功能清单 Feature list

功能清单列「做了什么」;上线清单列「放出去之后怎么活」。功能齐全不等于可以上线。

上线检查清单 测试 Testing

测试证明「代码在受控环境里没问题」;上线清单证明「在真实环境里可控」。测试都过只是清单里的一项,不是全部。

看 测试

什么时候用得上

上线前一夜

把清单逐条过,过的打勾,没过的标「未验证」并写明为什么敢放。

上线当天

先放小范围:自己先点一遍、让几个朋友试,再放开。

上线后一小时

看监控、日志、用户反馈。坏得早发现,比晚发现好一百倍。

你可以这样跟 AI 说

直接复制下面这段,把【】里的换成你的情况。它比一句「帮我加个 X」多说清楚了:改哪里、不许动啥、做完交什么。

【范围】为[产品名]上线准备一份检查清单和必要的上线配套,不要改功能代码
【目标】上线当天我能回答三个问题:用户能访问吗、坏了怎么发现、坏了怎么退回。请给我:
  1. 上线清单:每一条是「打开哪个地址 / 点哪一步 / 看什么」能亲手验证的
  2. 回滚方案:如果新版坏了,具体怎么退回上一版,命令或步骤给我
  3. 数据备份:现在数据存哪、怎么备份、多久一次、备份放哪
  4. 观测手段:上线后我怎么知道出错了(错误日志在哪看、有没有报警)
  5. 灰度建议:能不能先只放给一小部分人,怎么做
【边界】不要顺手改功能、不要加新功能;如果某项做不到(比如没有监控工具),直接告诉我「做不到,替代方案是什么」,不要写「应该可以」
【交付】给我一份清单文件,每条带「验证动作」;回滚、备份、监控三块各给一个「实际操作一遍」的验证步骤;说明哪些你已亲自验证过、哪些没有

最后一句「做不到就说做不到」最关键:AI 最擅长把「没配监控」包装成「监控已配置」。让它先承认现状,你才知道哪些是真风险。

它说「做好了」,你怎么自己验

这是本站的重头戏。AI 最会的不是写代码,是说「已完成」。这一条,它通常最多做到「生产」这层:线上真实环境有效,有回滚和观测。

要亲眼看到这些,才算数

  • 用真实地址(不是 localhost)在手机和电脑上各打开一次,域名和 HTTPS 生效。
  • 亲手做一次回滚演练:把新版换回旧版,确认旧版能正常服务,再换回来。
  • 做一次备份恢复演练:从备份里找回一条数据,确认真能找回。
  • 确认出错能被发现:制造一个错误(比如断开一个接口或删一个必需文件),看监控或日志能不能看到。
  • 全量放出去之前,有没有先放给小范围(你自己加几个朋友)验证过。
  • 上线第一天只看一个东西:有没有真实用户在用,有没有异常报错。

它常这么糊弄你

  • 「可以上线了,功能都测过了」——测试通过不等于上线安全。问它:回滚方案是什么,你演练过吗?
  • 「已部署到生产」——但你用 localhost 打开当然能开。让它给你真实公网地址,你自己开。
  • 「监控已经配好了」——配了不等于会报警。让它演示一次:出错时你在哪里看到通知。
  • 「备份没问题」——备份存在不等于备份能恢复。让它做一次恢复演练,拿证据出来。
  • 「先全量上,有问题再回滚」——回滚没演练过等于没有回滚。上线前演练一次,十分钟的事。

上线检查清单是少数几个天然属于「生产」层的词条:它的每一条都只在真实环境里才有意义。别的词条能停在主路径,这一条必须推到 prod 才能说「验过了」。

考考你 选一个你觉得对的

AI 说「功能都测完了,可以上线了」,上线前你最该先做哪件事?