3083 字
约 10 分钟
15
S17-A15 · 事故后的长期跟进:三个月后改完了没

复盘会开得不错,改进项列了十二条,责任到人,会议纪要发群里。三个月后回看:一条没落地,其余停在"已排期"。这不是执行力问题——复盘与跟进是两个不同的机制,前者的产物是共识,后者的产物是排期。用开会的办法管跟进,就会得到一堆漂亮的条目。

跟进要解决的问题是:谁在什么时间点、用什么证据,判断一条改进是否真的改变了系统行为。


1. 两个机制的差别

维度 复盘 跟进
触发 事故结束 日历,周期性
参与者 当事团队 + 相关方 条目 owner + 有权排期的人
产物 根因、条目、共识 状态变化、排期、验证证据
失败形态 开成追责会或走过场 条目静默腐烂,无人发现
需要的制度 心理安全、流程模板 固定节奏、超期规则、升级路径

第二行是关键:复盘靠一次会议就能完成,跟进没有办法靠一次会议完成,它必须挂在已有的节奏上。


2. 十二条为什么一条没落地

四个原因覆盖绝大多数情况,判断时先分清是哪一种,因为对策完全不同。

原因 识别信号 对策
没有 owner 条目写"团队负责" 必须落到一个具名的人,团队不算 owner
没有排期 状态"待安排",无迭代归属 要么进某个迭代,要么进专项,不存在第三种
不影响当前指标 与季度 OKR 无关 挂到可靠性预算上,或明确降级
跨团队 需要别的团队改,本团队无权限 升级到有共同上级的人裁定

第四条最容易被误判成"对方不配合"。实际是没有人有权要求另一个团队为他人的事故投入,这是权限结构问题,不是意愿问题。


3. 条目的质量判据

一条改进能否被跟进,取决于它写得是否可验证。四项缺一项,它就注定停在"进行中"。

字段 判据 反例
主张 改完之后,什么行为会不同 "提升监控能力"
验证方式 怎么证明它生效,谁去验 "上线后观察"
失败条件 什么现象说明它没生效 未写,于是永远不会失败
截止与归属 日期 + 一个具名 owner "Q4 内"、"相关同学"

"能失败"这一项最容易被跳过。一条无法失败的改进项,等价于一条不需要做的改进项,因为它永远处于"看起来在推进"的状态。

// followup/<incident-id>.yaml:字段为空说明还没想清楚,别进台账
- id: FU-07
  claim: 慢查询超过阈值时,5 分钟内产生带 SQL 摘要的告警
  verify:
    how: 预发注入一条无索引查询,观察告警到达时间与内容
    by: <具名 owner>
    evidence: 告警截图 + 规则 diff 链接
  fails_if: 告警到达但无 SQL 摘要,或超过 5 分钟
  due: 2026-12-05
  slot: iteration-42        // 迭代号 / 专项名,二者必居其一

4. 排期归属:进迭代还是进专项

改进项必须有归属,否则它既不在任何人的待办里,也不在任何人的考核里。

归属 适用 代价 风险
常规迭代 工作量小于一天、与当前需求同域 挤占需求容量 被需求挤掉,反复延期
专项 跨多团队、需要重构 需要独立预算与负责人 专项结束后无人接手
可靠性预算 每迭代固定留出比例 需求方不满 预算被"紧急需求"挪用
明确放弃 成本高于收益 需要向上说明 无,反而是诚实的

第三种是多数团队缺的一环:没有预留容量,改进项就只能靠个人自觉,而个人自觉在需求压力下必然输。

// 排期判据:先算容量,再决定条目能不能进
每迭代可用容量 = 总容量 × (1 − 需求占用率)
若 改进项工作量之和 > 可用容量:
    按 fails_if 的严重度排序,取前 N 条
    其余显式标记 downgraded,写清理由与复审日期

5. 跨团队条目:谁有权要求别人改

这类条目占比通常不高,但落地率最低。处理方式取决于依赖方向。

情形 谁裁定 可行做法
同一上级下的两个团队 共同上级 一次会议定排期,写进双方迭代
无共同上级 平台/架构委员会 走技术债立项,带影响面数据
供应商或外部系统 采购与合同 owner 转成 SLA 条款或备选方案
对方也是受害方 双方共同 owner 联合条目,共担排期

一条实用判据:如果这条改进的收益主要落在提出方,那么它很难被排进去。把收益说成对方的(减少他们的告警、减少他们的值班负担),落地率会明显不同。


6. 跟进要看三层,不只看一层

只盯条目状态,会得到"完成率 80%"这种看似不错却无意义的数字。

层 看什么 判据 采集方式
条目层 单条状态与超期 超期数应为零或已显式降级 台账扫描
根因层 当初认定的根因是否被移除 同类触发条件不再成立 根因对应的机制是否变更
复发层 同类事故是否再发生 同源复发率为零才是真改完 事故分类打标

中间一层最容易被绕过:条目做完了,但根因还在,只是换个形式触发。判断方法是对着当初的根因描述问一句"这个条件现在还成立吗",答不上来就是没做完。


7. "做完"的定义

不是代码合并,不是上线,是验证过并留下证据。这三件事的差距,决定了台账是真账还是安慰剂。

// 台账扫描:找出该被处理却没人看的条目
$ jq -r '.[] | select(.status!="done" and .status!="dropped")
        | "\(.due)\t\(.id)\t\(.owner)"' followup.json \
  | sort | awk -v T="$(date +%F)" '$1 < T {print "超期:", $0}'
// done 的四个条件,缺一不算完成
done =
  verify.how 已执行          // 不是计划执行,是执行过
  AND evidence 可打开        // 截图、diff、查询结果任一种
  AND fails_if 未发生        // 反证也被检查过
  AND 状态由 owner 之外的人确认   // 自证不算

最后一条是防自欺的核心:提交者判断自己做完,与另一个人看证据判断做完,是两种可靠性。


8. 超三个月没动怎么办

不许它一直挂着。三个月是一个合适的分界线:足够长,能跨过一个季度;足够短,记忆还没丢。到期必须做三选一。

处置 适用 动作
重新评估 前提变了,成本或收益需重算 重写 claim 与 due,owner 不变
降级 有更便宜的替代手段 改写为监测项或 runbook 条目
明确放弃 成本高于收益,或根因已在别处解决 记录理由与复审日期,从活跃台账移出

最差的状态是"保留但不排期"——它占据台账、消耗注意力,且永远不产生结论。放弃一条并写清理由,比让它挂着更专业。


9. 节奏与度量

周会太密会形式化(没有变化可报),季度太疏会遗忘(人已经换岗)。

节奏 频率 内容 时长
状态扫描 每周,异步 只看状态变化与超期 零会议
评审会 每两周或每月 卡住的条目、跨团队升级 30 分钟
根因复审 每季度 根因层是否真被移除 一次专题
复发复盘 触发式 同源事故出现即开 按事故规模
// 跟进度量:四个数就够,多了会变成填表
followup:
  completion_rate:      done / (done + open)          // 分母不含 dropped
  mean_landing_days:    done_at − created_at          // 看中位数与尾部
  same_origin_recur:    按根因分类统计的复发次数        // 唯一能证明"真改完"的
  overdue_open:         到期未处置的条目数              // 应为零

完成率高但复发率不降,说明条目都在做表层修补;复发率降而完成率低,可能是条目本身定得太重。


10. 跟进与偿债是同一件事

多数改进项本质是技术债:改造成本落在当期,收益在未来。用债务的语言描述,排期讨论会容易得多。

改进项类型 债务类比 谈法
加告警、加校验 保险,非债务 按风险预算谈
补测试、补文档 利息支付 按迭代比例谈
重构触发路径 本金偿还 需要专项与截止日
放弃并接受风险 违约 需要书面接受方

把"补告警"和"重构"混成一张清单,会让后者永远排在前面几项之后,因为前者便宜且立刻可完成。


11. 症状对照

症状 根因 先动哪
条目全部"进行中" 缺 fails_if,无法判定完成 补判据,砍掉不可验证项
每季度都能列十条 根因层没动,症状反复 做根因复审,别再加条目
跨团队条目永远最后 收益归属写错 改写收益方,升级裁定
复盘会开完就散 没有固定扫描节奏 挂两周一次的异步扫描
老条目无人认领 owner 写成团队 全部改为具名,无主则放弃

12. 边界

场景 可降级到什么程度 理由
事故影响极小 单一 owner 盯一条,不做台账 制度成本高于风险
根因已在别处一并解决 记录关联,标 dropped 重复投入无收益
团队处于重大战役期 只保留与安全/资损相关的条目 容量被挤占,硬推会全线延期
单次性系统、将下线 只做止损条目 长期改进无回收期

降级也要留痕:写清"降级到何时复审"。无声的降级和放弃的区别,只在于有没有人知道。


13. 自测

  1. 复盘与跟进最关键的制度差别是什么?
  2. 十二条改进项没落地,"跨团队"这一原因为什么不能归为意愿问题?
  3. 一条改进项缺少"失败条件",会产生什么后果?
  4. 为什么"完成"要由 owner 之外的人确认?
  5. 完成率很高但复发率不降,说明什么?
  6. 三个月未动的条目有哪三种处置,最差的状态是什么?
S17-A15 · 事故后的长期跟进:三个月后改完了没
https://www.clxhxhhr.top/posts/6302/
作者
clxstart
发布于
2024-12-31
许可协议
CC BY-NC-SA 4.0
评论
0 条
还没有评论,先写一条吧。