好解释:工作手册#
把五个动作(定题、立敌、摊牌、试探、入账)和与它们并行的决策,变成可以直接用于会议、调查、实验、事故复盘和重大决策的工作界面;开始之前,先用两个问题判断环境:系统能封闭到什么程度,参与者会不会调整做法。
V20 · 配套工作手册
原理、完整论证和三个递进案例见 好解释-V20;本册可以单独使用。
医疗、法律、金融、员工权益、隐私、安全调查和生产事故,都有各自的专业标准、授权链和应急程序。出现即时危险时,先止损、升级并保全证据;涉及人或生产系统的干预,先取得相应的授权。本手册帮助你审查假设,不替代专业判断、合规要求或事故指挥权。
手册地图#
| 你现在需要什么 | 从哪里开始 |
|---|---|
| 五分钟理清一个低风险问题 | 五分钟判断卡 |
| 用两个问题判断环境 | 先判断环境 |
| 判断记录该写多深 | 按风险选择记录深度 |
| 看懂模板里的术语 | 术语先问日常问题 |
| 发起一次多人解释评审 | 主持脚本 |
| 建立完整的案例记录 | 案例记录 |
| 比较事故、增长与欺诈三种环境 | 填写样例 |
| 防止事后改写记忆,校准自己的把握 | 判断账本 |
| 把解释的结果转成行动 | 决策备忘 |
| 把本书当课程练习 | 课程练习 |
日常默认从最轻的一层开始。只有当风险、环境的开放程度、不可撤回性、协作人数或反馈延迟上升时,才继续展开后面的字段。模板的用处,是让关键的错误有地方暴露;不必每一栏都填满。
第一部分 从一页开始#
按风险选择记录深度#
| 情境 | 建议深度 | 最少要写什么 |
|---|---|---|
| 低风险、可撤回、反馈快 | 五分钟判断卡 | 现象、环境、当前决定、主解释、一个强敌、下一步、复盘日期 |
| 多人协作、解释有分歧或环境开放 | 案例记录第 0—7 节 | 适用范围、本轮目标、竞争解释、差异化预期、决策与探针、三类触发条件 |
| 高影响、难回滚、反馈慢、对抗或受监管 | 完整案例记录 + 决策备忘 + 判断账本 | 最坏情形、不行动的风险、权限、停止权、有效期、复核条件和只追加的更新 |
活跃的事故、即时的安全风险和受保护的调查,不从模板开始,而从既有的应急和授权流程开始。系统稳定以后,再用本手册保全学习线。
先判断环境#
不要先按行业分类。软件问题也可能因为用户、第三方和攻击者而开放;物理实验也可能高度可控。环境分两个问题判断,两部分分开回答:
一、系统能封闭到什么程度?(基本能 / 部分能 / 很难)
1. 主要的边界、版本、输入和状态,能否暂时固定?
2. 关键的隐藏状态,能否通过日志、测量或过程材料继续接近?
3. 相同或相近的条件,能否重放、仿真或受控比较?
二、参与者会不会调整做法?(基本不会 / 会适应 / 针对我们)
4. 观察或干预,会不会改变人群、激励或参与者的策略?
5. 有没有人在研究我们的规则、指标或流程,并据此绕开它们?
另外检查一项:当前的分析单位是否可能太小,以至于局部都正常、整体却异常?
两个回答组合起来,常见的有四种环境:
| 环境 | 两个问题的回答 | 本轮合理的解释目标 | 默认的行动偏好 |
|---|---|---|---|
| 相对可封闭 | 系统基本能封闭;参与者基本不调整。边界和状态可以固定,机制可以检查,“如果当时不这样”可以近似重建 | 尽量路径完整 | 针对机制修复,回归测试,逐级恢复 |
| 开放适应 | 系统难以封闭;参与者会适应。边界不完整,机制只能部分看见,干预会改变之后的环境 | 机制获得支持;或只求证据足以支持某个具体动作 | 在几种解释下都合理、可撤回、分阶段;写清外推的边界 |
| 对抗适应 | 系统难以封闭;有参与者针对我们调整。对方会隐藏、欺骗、学习控制并转移做法 | 机制获得支持,同时让有限的防御动作决策充分 | 分层防御,缩短反馈,轻的摩擦优先,规则带版本 |
| 混合 | 系统的部分能封闭,参与者的部分不能。系统内部的路径可以检查,用户、第三方或对手却会适应或对抗 | 分开写:哪一部分追求路径完整,哪一部分只求机制获得支持 | 内部精确修复 + 外部稳健控制 |
环境判断只对本轮任务有效。它可以被新证据修改,但不能省略;否则,团队容易用软件调试的标准要求商业世界,或者反过来,用“世界很复杂”为任意的故事开脱。
环境带来的四组取舍#
| 取舍 | 偏向左边 | 偏向右边 | 什么时候更看重右边 |
|---|---|---|---|
| 精确 vs. 稳健 | 针对单一机制优化 | 在几种解释下都不容易出错 | 解释覆盖得少、环境开放、误判代价高 |
| 速度 vs. 可撤回 | 快速扩大动作 | 分阶段,保留回滚 | 反馈慢、后果难以恢复、外推不确定 |
| 学习 vs. 干扰 | 主动干预获得信息 | 减少观察对行为的改变 | 人、组织、市场和攻击者会适应 |
| 透明 vs. 对抗 | 公开细节,便于复核 | 限制敏感的规则和阈值 | 细节会直接帮助对方绕过控制;独立监督仍然要有 |
一页工作卡#
五个动作与决策线#
| 步骤 | 核心问题 | 最少要留下什么 |
|---|---|---|
| 定题 | 我们究竟在解释哪个变化、差异或异常? | 对象、时间、对照、形态、适用范围;另写当前必须作出的决定,以及每个决定的最晚时间;没有现象可解释时,写出决定依赖的判断,以及它会在哪天、被什么观察证明是错的 |
| 立敌 | 除了主解释,还有哪种解释会改变下一步? | 一个同样具体的竞争解释;可以并存的机制和未知项另列;按来源过一遍:测量、同一时间的其他变化、共用的资源和上游、构成的变化、参与者的调整、事前验尸 |
| 摊牌 | 各个解释对现实有什么不同的要求? | 方向、时序、边界或中间过程;双方共同预期的事实单列 |
| 试探 | 决策选中的信息动作,怎样用最小、最安全的方式拿到? | 结果映射、护栏、负责人、复核时间;开放系统要写干预会带来什么干扰 |
| 入账 | 结果回来以后,原来的判断改变了什么? | 局部更新、行动变化、解释做到了哪一步、有效期、复核条件和下一次复核时间 |
入账以后,回到立敌或定题,开始下一轮。
决策线和五个动作并行,不占其中的固定位置。每到一个决定的最晚时间,或者某种损失变得承受不起时,做一次决策;第一次可能在定题之前,例如先止损。
| 什么时候做 | 核心问题 | 最少要留下什么 |
|---|---|---|
| 一个决定到了最晚时间;或者某种损失变得承受不起 | 用现在的判断,选哪一类动作?哪种损失承受不起?谁有权决定? | 维持现状、稳健动作、信息动作、承诺动作;最坏情形与停止权;止损或回滚的动作,对照每个候选解释检查过;选中的信息动作交给试探 |
每次决策,先看期望值、期权价值、承受不起的损失、在几种解释下是否都合理,以及谁有权决定,再决定是否值得购买更多信息。
五分钟判断卡#
0. 是否触发安全、合规、隐私、员工权益或生产事故的流程?
如果是,先进入对应的通道。
1. 系统能封闭到什么程度?参与者会不会调整做法,是否针对我们?
由此判断:相对可封闭 / 开放适应 / 对抗适应 / 混合
本轮需要路径完整、机制获得支持,还是只需要证据足以支持某个具体动作?
2. 要解释的现象是什么?
对象、时间、对照、变化形态和适用范围分别是什么?
当前必须作什么决定?每个决定最晚什么时候作?不行动也是一个选项。
没有现象可解释时:这个决定依赖的判断是什么?它会在哪天、被什么观察证明是错的?
3. 除了我最相信的说法,还有哪种解释会让下一步不同?
是否存在可以并存的机制、测量问题,或者还没有解释的现象?
按来源过一遍:测量、同一时间的其他变化、共用的资源和上游、构成的变化、参与者的调整;再做一次事前验尸。
4. 两种解释对什么现象有不同的预期?
哪些事实是双方都预期的,因此不能直接选边?
这类情况以往通常怎样(基础比率)?
5. 到了时限的决定,现在有哪些动作可选?
哪个在几种解释下都合理?哪个是信息动作?哪个承诺动作应当暂缓?
止损或回滚之前:这个动作在每个候选解释下,会让情况变好还是变坏?
6. 最小、安全、可撤回的观察或动作是什么?
什么结果支持,什么结果削弱,什么结果仍然分不出来?
它的结果会在决定之前到达吗?
7. 我现在对主解释有几成把握?
什么时候复盘?谁负责?结果怎样写回原来的记录?
出现什么变化,这个结论就要重新评估?
完成检查#
环境:是否分开回答了两个问题:系统能封闭到什么程度,参与者会不会调整做法?
定题:大家是不是真的在解释同一个对象,而不是共用一个大词?
立敌:竞争解释是否写得和主解释一样具体,而不是一句口号?是否按来源清单过了一遍?
摊牌:结果出来之前,是否写下了双方不同的预期?
决策:是否按每个决定的最晚时间分别决策,区分了稳健、信息和承诺动作,写了最坏情形和停止权?
试探:它是否减少了一个会改变决定的不确定性,而不只是“多收集数据”?
入账:结果是否改变了原来的解释或动作,并记录了有效期、复核条件和事前把握?
第二部分 术语先问日常问题#
术语先问日常问题#
不要从定义开始背。先问右边的问题;当这个问题反复出现时,术语才有压缩的价值。
| 术语 | 先问的日常问题 | 一个具体例子 | 不要误写成 |
|---|---|---|---|
| 解释对象 | 这一次到底是哪一个变化、差异或异常要被解释? | “全量以后,p99 从 1.25 秒升到将近 12 秒,中位数只从 230 毫秒升到 260 毫秒” | “系统有问题” |
| 相对可封闭 | 边界、状态和干预,能否暂时固定并重放? | 固定版本、请求和流量层级的发布事故 | 现实中没有外部因素 |
| 开放适应 | 边界外的因素和参与者的反应,会不会改变产生数据的方式? | 价格、渠道和销售行为同时在变 | 因为复杂,所以无法约束 |
| 混合系统 | 哪一部分能追到完整路径,哪一部分只能做有边界的机制判断? | 交易路径可以检查,攻击者的做法会转移 | 把整个系统硬归到一类 |
| 有条件的 hard-to-vary | 条件、机制、预期现象和失效边界,能否在事后免费改写? | 只对六月美国中小企业的付费搜索流量成立,并事先写下变化的先后顺序 | 给失败的故事不断加例外 |
| 分析单位 | 我们看的是一笔交易、一个账户,还是一组相互协调的账户? | 单个账户都正常,跨账户的关系图却反复出现同样的时序 | 只是把同一张报表汇总得更大 |
| 路径完整 | 能否重建这一次结果经过的主要状态变化? | 缓存键暴涨 → 未命中超过连接池处理能力 → 排队到 12 秒超时 | 所有背景因素都已穷尽 |
| 机制获得支持 | 哪条结构受到时序、中间过程和多种证据的共同约束? | 协作引导先提高第二位成员的真实使用,再提高付款 | 已经解释了全部历史原因 |
| 决策充分 | 证据是否足以支持这一个写明范围的动作? | 足以支持对关系模式命中的交易加一步二次确认;不足以支持封禁 | 故事已经被证明为真 |
| 局部封闭 | 能否固定一小块环境,让一个关键分歧接受检验? | 固定有资格的人群、版本和观察窗口的试验 | 假装其他因素不存在 |
| 工作解释 | 目前哪条机制足够具体,可以先比较和修订? | “键的数量暴涨 → 未命中增加 → 连接排队” | 已经证实的最终真相 |
| 竞争解释 | 哪个不同的机制如果成立,会改变下一步? | 共享资源竞争,而不只是缓存键 | “也许还有别的原因” |
| 差异化预期 | 什么观察会让 A 和 B 真正分开? | 未命中请求的等待明显更长,而支付授权稳定 | 双方都预期的总体恶化 |
| 共同预期的事实 | 哪项事实重要,却暂时不能在 A、B 之间选边? | 关掉功能以后延迟恢复 | 没有价值的证据 |
| 基础比率 | 这一类情况以往通常怎样? | 发布后几分钟内出现的延迟事故,大多和那次发布有关 | 结论本身 |
| 稳健动作 | 哪个动作在几种仍然可能成立的解释下都合理? | 限制无法撤回的暴露,并补齐监控 | 永远只做保守的动作 |
| 探针 | 哪个安全的观察,能减少会改变决定的未知? | 逐级恢复,每级经过高峰,并看共享资源的绝对用量 | 任何“小实验” |
| 残差 | 当前解释讲完以后,还剩下什么重要现象? | 修好缓存键以后,25% 晚高峰时购物车读缓存变慢 | 原因清单里还没填的空格 |
| 证据独立性 | 这些材料会不会被同一种错误一起骗到? | 账单、原始事件和无提示访谈,失败的方式各不相同 | 文件来自不同的团队就算独立 |
| 对抗性适应 | 对方看到控制变化以后,会不会主动改变做法? | 直接标识消失了,但跨账户的协调结构换个形式又出现 | 因为模式会变,所以不值得建模 |
| 有效期 / 复核条件 | 出现什么变化,当前的解释就不能再放心使用? | 产品、市场、人群或攻击策略改变 | 结论一旦形成就永远有效 |
| 未测混杂 | 是否有一个没记录的因素,同时影响所谓的原因和结果? | 购买意向同时影响协作行为和付款 | 任何解释不了的噪声 |
| 执行污染 | 名义上的两组,实际是否接受了相似的处理? | 销售把实验组的话术也用在了对照组身上 | 数据“不干净”的泛称 |
| 外推边界 | 换人群、版本、负载、幅度或环境,结论还成立吗? | 多投 30% 的边际成本,不能推到投入翻倍 | 结果一旦显著就普遍有效 |
| 负对照 | 有没有一个按理不该受影响的对象,可以帮我们发现假的变化? | 只改团队邀请时,个人用途的账户作为负对照 | 任意一个次要指标 |
| 期权价值 | 这个动作是否保留了以后改变方向的能力? | 5% 灰度让新信息仍然能影响下一步 | 小步永远优于全量 |
| 承受不起的损失 | 是否存在一次发生、就无法用平均收益补回的损失? | 数据泄露、违法或无法恢复的系统破坏 | 普通的高成本失败 |
| 判断账本 | 结果回来以后,原来的判断到底改了哪一部分? | 只削弱“修复版本不会给共享缓存带来新压力”,不推翻缓存键那条链 | 一份会被覆盖的会议纪要 |
一个术语如果不能带来更具体的问题、观察或边界,就先不用它。名词的用处,是压缩已经理解的结构。
因果角色速查#
原因多并不可怕,角色混乱才可怕。下面的表用于因果问题;数学、约束和历史的解释,不必硬套。
| 角色 | 它解释什么 | 快速检查 | 常见的误判 |
|---|---|---|---|
| 长期脆弱点 | 为什么系统长期容易在这里出事 | 移除它,几条失败路径是否一起减弱? | 因为离结果远而被忽略 |
| 触发器 | 为什么偏偏在这个时间爆发 | 它是否紧挨着变化发生? | 被写成唯一的根因 |
| 中介 | 上游的原因怎样传到结果 | 改变它,是否切断了一条路径? | 和并列的竞争解释混淆 |
| 调节变量 | 什么条件改变某条关系的强弱 | 分层以后,关系的强度是否变化? | 被写成独立的主因 |
| 放大器 | 为什么后果比最初的偏差严重得多 | 移除它,最初的偏差还在,后果却明显变小? | 和触发器或调节变量混淆 |
| 瓶颈 | 当前最限制结果的环节 | 改它,是否最快改变系统的表现? | 被当成最深的原因 |
| 症状 | 结果怎样表现出来 | 它是否主要发生在结果之后? | 因为看得见而被当成原因 |
| 共同原因 | 什么同时制造了两个相关的变量 | 控制或分层以后,原来的关系是否减弱? | 被相关性遮住 |
调节变量在因果关系旁边,改变这条关系的强度;放大器在结果的生成路径里,把已经出现的偏差继续放大。角色始终相对于当前的解释对象,不是变量的永久身份。
以尾延迟事故为例:承运商网关连接池的处理上限是长期脆弱点;全量放量是触发器;缓存未命中是中介;秒杀带来的总流量是调节变量;结账对这项功能没有设超时是放大器;采样的缺口是让我们看不清结果的测量问题。
复合解释写完以后,再问四遍:换部件会怎样,换角色会怎样,换时序会怎样,换边界会怎样。
第三部分 渐进式案例记录#
同一份记录按风险逐层展开。低风险问题只填到第 5 节;多人协作时填到第 7 节;高影响、难回滚、开放或受监管的问题,再展开全部字段。
记录编号:
负责人 / 决策负责人:
日期 / 当前版本 / 复盘日期:
0. 风险与权限
- 是否存在即时危险、生产影响、受监管的决策、隐私或员工权益问题?
- 适用的既有流程、审批和授权是什么?
- 谁拥有执行、停止和升级的权力?
- 记录应保存在哪里,访问和保留期限有什么要求?
1. 环境与定题
- 系统能封闭到什么程度:基本能 / 部分能 / 很难(依据:边界 / 可观测性 / 可重复干预)
- 参与者会不会调整做法:基本不会 / 会适应 / 针对我们
- 当前环境:相对可封闭 / 开放适应 / 对抗适应 / 混合
- 本轮目标:路径完整 / 机制获得支持 / 足以支持某个具体动作(写明是哪个动作)
- 要解释的现象、差异、规律或异常:
- 没有现象可解释时,决定依赖的判断,以及它会在哪天、被什么观察证明是错的:
- 对象 / 时间 / 环境 / 比较基准 / 变化形态 / 分析单位:
- 当前必须作出的决定(包括不行动),以及每个决定的最晚时间:
- 局部封闭:本轮暂时固定哪些人群、版本、流程、时间窗口或环境?
2. 材料
- 原始观测、来源和数据快照的时间:
- 口径、抽样和方法假设:
- 本轮暂用的背景知识、来源、适用范围和失效条件:
- 这类情况以往通常怎样(基础比率):
- 暂不纳入的材料及原因:
- 观察的人或仪表,会不会制造现象?能不能让观察的人不知道条件(盲检)?
3. 立敌与结构
- 当前主解释,以及事前把握(几成):
- 值得认真对待的竞争解释:
- 已按来源检查:测量 / 同一时间的其他变化 / 共用的资源和上游 / 构成的变化 / 参与者的调整 / 事前验尸
- 可以并存的机制:
- 各因素的角色:脆弱点 / 触发器 / 中介 / 调节变量 / 放大器 / 瓶颈 / 症状 / 共同原因
- 没有观测到的共同原因、行为适应和还没有解释的现象(残差):
4. 摊牌
- 主解释最有区分力的预期:
- 竞争解释最有区分力的预期:
- 哪些“应当出现却没有出现”的现象,可以用来检验:
- 双方共同预期、不能直接区分的事实:
- 跨环境检查:换时间、人群、渠道、版本或负对照,会怎样?
- 最大的证据威胁:测量 / 选择 / 混杂 / 反向因果 / 执行 / 外推 / 适应 / 其他
- 证据是否共用样本入口、标签、埋点、提问方式或组织叙事?
5. 决策
- 这次决策因为什么发生:决定到了最晚时间 / 损失变得承受不起
- 如果损失承受不起:举证责任在主张冒险的一方,要证明的是安全
- 止损或回滚的动作,在每个候选解释下会让情况变好还是变坏?
- 期望值、期权价值和承受不起的后果分别是什么?
- 维持现状 / 稳健动作 / 信息动作 / 承诺动作:
- 哪个动作在几种解释下都合理?
- 哪个动作只在某一个解释正确时才安全,因此应当暂缓?
- 每项想要的信息,预计什么时候到?会不会晚于决定?
- 当前证据足以支持的范围、幅度与有效期:
6. 试探
- 哪个关键的不确定性,会改变选项的排序、规模、时机或风险边界?
- 几天内就能做完的便宜检查有哪些,各自能更新哪条主张?
- 观察、反例、来源复核、试验、仿真或专业审查:
- 事前的结果映射:支持 / 削弱 / 仍分不出,分别是什么?
- 事前门槛:多大幅度的结果,才值得扩大投入?
- 我们担心的问题,是否只在某个总量之上才出现?探针覆盖到了吗?
- 探针会不会改变人群、激励或参与者的策略?如何发现这种干扰?
- 护栏、负责人、观察窗口和复核时间:
7. 三类触发条件
- 解释更新条件 / 观察来源 / 更新方式 / 复核人:
- 行动中止条件 / 观察频率 / 默认动作 / 停止负责人:
- 治理升级条件 / 默认动作 / 升级路径:
8. 入账
- 实际结果与数据的局限:
- 哪些解释、关系或边界被增强、削弱,或仍然分不出:
- 原来的问题、口径、分析单位或结构是否需要重写:
- 解释做到了哪一步:路径完整 / 机制获得支持 / 仍是候选
- 当前足以支持的行动、范围和有效期:
- 仍然不足以支持的行动:
- 事前把握与结果对照(用于校准):
- 复核条件:出现哪些环境变化时,结论要重新评估?
- 下一步 / 负责人 / 到期日 / 复盘日期:
第四部分 三份填完的案例记录#
三份样例分别对应相对可封闭、开放适应和混合(对手在针对规则调整)的环境。它们展示的是:环境不同,解释能做到哪一步、行动偏向什么,也不同。
样例一:尾延迟事故:接近路径完整#
记录编号:GE-019
负责人:事故调查负责人
决策负责人:值班负责人(本次事故的指挥)
当前版本:v4,恢复完成
复盘日期:下一次同类变更之前
0. 风险与权限
- 活跃的生产事故,先按值班和事故指挥流程止损。
- 值班负责人决定关闭功能,发布负责人执行;恢复阶段的停止权也在值班负责人手里,不在发布负责人手里。
- 使用批准的日志、链路追踪和去掉身份信息的重放数据。
1. 环境与定题
- 当前环境:相对可封闭的生产系统,夹带外部流量和共享依赖。
- 依据:版本、缓存状态、连接池、请求链和流量层级可以检查;秒杀流量和客户端重试不能完全固定。
- 本轮目标:主失败链尽量路径完整;外部因素的贡献保留未决。
- 解释对象:功能全量后,p99 从 1.25 秒升到 11.8 秒,中位数只从 230 毫秒升到 260 毫秒。
- 决定:是否保持关闭(立即);满足什么护栏才允许逐级恢复(系统稳定以后)。
- 局部封闭:固定版本、用户分桶、流量层级和观察窗口。
2. 材料
- 边缘日志、浏览器数据、合成监控、按调用方拆分的缓存命中率、键的数量、连接池等待、支付授权延迟。
- 架构事实:连接池 200 个连接 × 每次 0.4 秒 ≈ 每秒最多 500 次网关调用;唯一起作用的超时是网关客户端的 12 秒;结账服务是异步 I/O。
- 最慢请求的链路追踪覆盖不完整(按固定比例采样),保留为缺口。
- 基础比率:过去一年,发布后几分钟内的延迟事故,大多和那次发布有关。
3. 立敌与结构
- M1:缓存键暴涨 → 未命中增加 → 承运商网关连接池排队。(事前把握约六成)
- M2:共享资源竞争(秒杀流量或其他调用方),让几个调用方的尾部一起变慢。
- M3:支付上游变慢。
- M4:采样或测量失真。
- M1 和 M2 可以并存;秒杀可能是调节变量。
4. 摊牌
- M1:键的数量上升,结账路径命中率下降,未命中请求的等待明显更长。
- M2:其他调用方的共享等待也升高。
- M3:支付授权阶段按支付方式变差。
- M4:边缘日志、合成监控和真实链路互相冲突。
- 共同预期的事实:关掉功能以后恢复,不能单独区分 M1 和 M2。
5. 决策
- 稳健动作:关闭可选功能,冻结发布,保全证据。
- 信息动作:离线重放缓存键,检查资源隔离,逐级恢复。
- 暂缓的承诺:直接全量恢复。
- 承受不起的后果:订单、价格、税费或支付状态不一致。
6. 试探
- 结果:结账路径命中率 89%(购物车路径仍在 99% 以上);5,000 × 11% ≈ 550 次/秒,超过 500 的上限;p99 停在 12 秒附近,与唯一的超时一致。
- 灰度为什么没发现:平日 5% 约 190 次结账/秒,即使一半未命中也远低于上限。
- 修复:去掉商品组合的哈希,键从几千万降到约两百万,重放命中率 96%;加 300 毫秒超时预算和降级,关闭自动重试。
- 恢复:1% → 5% → 25% → 50% → 全量,每级覆盖一个高峰,看共享资源的绝对用量。
7. 三类触发条件
- 解释更新:修复以后未命中和等待都不变,则削弱 M1。
- 行动中止:任何正确性异常或尾延迟越界,退回上一级。
- 治理升级:数据完整性、支付正确性或权限越界时,交给专业负责人。
8. 入账
- 1% 和 5% 通过;25% 晚高峰时,结账命中率 96%,但购物车读缓存变慢,退回 5%。
- 第二条机制:修复版本缓存完整返回,每条从不到 1 KB 涨到约 50 KB,热点分片带宽接近上限。
- 迁到独立缓存实例,值裁剪到约 3 KB,设带宽预算和限流以后完成恢复。
- M1 得到支持并被修复;“修复版本不会给共享缓存带来新压力”被削弱;M3 继续被削弱。
- 解释做到了哪一步:主链路接近路径完整;秒杀的贡献和部分采样缺口未决。
- 事前把握对照:M1 约六成,结果成立,但漏掉了修复版本带来的第二条机制。
- 复核条件:连接池大小、超时设置、缓存集群或流量结构变化时,重新评估。
样例二:注册与付费:局部机制与有限的决策#
记录编号:GE-016
负责人:增长分析负责人
决策负责人:产品副总裁(产品试验);财务负责人(获客预算)
当前版本:v5,试验结果与加投结果已回写
复盘日期:下一次入口、定价或渠道结构变化时
0. 风险与权限
- 没有即时的人身或生产风险;涉及用户行为数据和产品试验。
- 已获产品、隐私和数据负责人批准;独立的支持与隐私负责人拥有关闭试验的权力。
1. 环境与定题
- 当前环境:开放适应。渠道、用户构成、销售行为和市场条件可能同时在变。
- 本轮目标:协作路径达到机制获得支持;两个动作分别判断是否决策充分。
- 不是“自助增长对不对”。
- 解释对象:入口从“预约演示”改成“免费开始使用”以后,周注册约 1,000 → 1,650;
相同的四十二天观察窗口内,首次付款率约 10% → 5%;每周付费账户约 100 → 82。
- 两个决定:下季度获客投入是否翻倍(三周后的预算会);是否上线协作引导(试验出结果后,约四个月)。
- 局部封闭:注册时声明团队用途、七十二小时内建了第一块看板并添加至少三个任务、未分配销售的组织;固定版本和观察窗口。
2. 材料
- 账单首次结算、注册事件、渠道、组织规模、CRM 响应时间、广告支出。
- 团队用途按注册时信息定义,不用“后来有没有邀请”改写历史分组。
- 抽样 800 个账户核对账单:口径差异对付款率影响不到半个百分点。
3. 立敌与结构
- M1 流量构成:低意向的个人账户拉低平均值。
- M2 协作路径:完成个人操作,却没有形成第二位真实使用者。(事前把握约四成)
- M3 销售响应:普通注册淹没了高意向线索。
- M4 付款时点:四十二天窗口低估了之后的付款。
- 四条可以并存;价格敏感度和产品价值的变化还没有建模。
4. 摊牌与便宜的检查
- M1:按改版前的构成加权,付款率 5.0% → 6.4%,约对应 1.4 个百分点;剩余 3.6 个百分点在同类账户内部。
- M3:团队用途线索的首次响应中位数 3 小时 → 11 小时;同一意向层级内快慢响应只差 2 个百分点,且有优先级混杂。前提成立,因果未识别。
- M4:前三个周批次 90 天付款率 6.6%(42 天为 5.1%),改版前 10% → 11.5%。晚到幅度相同,差距没有缩小。
- M2:需要试验。
- 共同预期的事实:总体付款下降、个人账户占比上升,区分不了 M1、M2、M3。
5. 决策
- 获客的账按广告渠道算:每周广告支出约 35 万元;改版前约 700 个注册、10% 付款,
每个付费账户约 5,000 元;改版后约 1,350 个注册、4% 付款,约 6,500 元。
首年毛利约 6,400 元(8,000 元 × 80%):改版前每个账户结余约 1,400 元,改版后大约打平。
- 稳健动作:维持获客投入,继续审计口径和销售响应。
- 信息动作:六个广告区域中两个加投 30%,运行四周,其余作对照;限定人群的协作引导试验。
- 暂缓的承诺:投入翻倍。门槛:八个周批次成熟后九十天口径每个付费账户不高于 5,000 元;
加投区域的边际注册成本没有明显高于平均。由财务负责人解释门槛。
6. 试探
- 以组织为单位随机分组,只改变协作引导;每组约 2,400 个组织(每周约 500 个符合条件,入组十周)。
- 主指标:七天内第二位不同用户完成编辑、评论或任务分配。后续指标:四十二天首次付款。
- 事前门槛:付款率提升低于 1.5 个百分点不值得保留(每提高 1 个百分点,每年约 170 万元首年毛利;维护成本每年约 250 万元)。
- 结果映射:真实使用升、付款不变 → 行为可以拉起,价值未显示;
两者都升 → 与作用链相容,不证明历史下降由缺少引导造成。
7. 三类触发条件
- 解释更新:两者都不变时,降低对这条引导路径的信心。
- 行动中止:骚扰举报、支持工单或权限异常越过护栏时关闭。
- 治理升级:数据用途或有资格的人群超出审批范围时,重新进入隐私流程。
8. 入账
- 真实使用约 25% 对 19%;付款约 9.9% 对 7.5%,差 2.4 个百分点(95% 区间 +0.8 到 +4.0)。
- 区间包含低于门槛的值;因为引导可以随时撤回,仍然保留。难以撤回的动作不能用同样的证据。
- 加投区域新增注册贵约二成;十个周批次成熟后九十天口径约 4,700 元。门槛一过一未过。
- 解释做到了哪一步:协作引导的局部效果机制获得支持;历史下降中各机制的份额未识别。
- 决策:保留引导(只限有资格的人群);全部区域加投 30%(测过的幅度);翻倍继续暂缓。
- 事前把握对照:M2 约四成,局部效果成立;但它是否解释历史下降,仍然未知。
- 复核条件:入口、定价、有资格的人群、销售流程或渠道构成发生变化。
样例三:多轮假设怎样逼近协同欺诈的模式#
记录编号:GE-021
负责人:欺诈分析负责人
决策负责人:风险事件负责人
当前版本:v7,前瞻验证与成熟标签已回写
复盘日期:控制上线后第三十天,以及任何明显的模式转移时
0. 风险与权限
- 涉及真实的资金损失、客户账户、受保护的调查材料和可能的执法协作。
- 先进入既有的欺诈响应流程;分析记录不替代正式的案件系统。
- 风险事件负责人决定临时处置;独立的合规 / 隐私负责人审查数据用途;
获授权的运营负责人拥有停止大范围规则的权力。
- 原始标识只保存在批准的环境;图里的连线不等于同一个人或共谋。
1. 环境与定题
- 当前环境:混合且对抗。交易、评分模型和发货路径可以检查;攻击者的身份、资源和做法开放且会转移。
- 本轮目标:跨账户协调机制获得支持;轻的摩擦决策充分;不追求每个真实身份的路径完整。
- 解释对象:连续十二天,发卡行欺诈通报和客户申诉显示未经授权损失约为基线三倍;
长期账户占多数;批准率、拒绝率和评分分布稳定;单个工具、设备或地区很少高频重复。
- 当前决定:哪些发货要临时加摩擦(立即);是否回滚新评分模型;是否转向跨账户的关系检测。
- 分析单位:交易 / 账户 → 关系图 + 时间窗口。
- 局部封闭:冻结模式定义,留出之后十天,限制受控处置的范围。
2. 材料
- 收单机构原始争议、内部账本、客户的未经授权确认、订单与发货记录。
- 登录 / 找回 / 会话事件、支付授权记录、评分模型版本与特征快照。
- 去掉身份信息的账户—会话—支付工具—兑换去向关系,以及事件时间窗口。
- 发货资格规则的变更记录。标签有几天到几周的延迟;不用受保护的属性作为欺诈的代理。
3. 立敌与结构(M 表示候选机制)
- M0 测量 / 回填错误。
- M1 传统盗卡测试。
- M2 账户接管。
- M3 促销或商品流程滥用;发货资格放宽。
- M4 评分模型退步。
- M5 跨账户协调:单个账户低风险,关系和时间形成重复结构。
- 可以并存:M1 提供部分支付工具;M2 解释一个子集,也是账户来源之一;即时发货和标签延迟放大 M5。
- 未知:账户来源、真实身份、控制改变以后的转移路径。
4. 摊牌
- M0:原始争议、客户确认和发货损失不能逐笔对上。
- M1:失败授权、重复工具、新账户和小额试探明显增加。
- M2:认证 / 找回异常先于购买。
- M3:停用活动或修复单一配置后损失明显收缩;资格放宽若是触发器,损失账户里应多是新获资格的账户。
- M4:旧模型能拦下新模型漏掉的大部分案例。
- M5:不依赖单一标识的关系、行为顺序和激活窗口,在留出时间窗口里复现。
- 最大的威胁:标签延迟、关系图过度拟合、共享基础设施造成的假连线、处置引起对手转移。
5. 决策
- 漏放的代价:无法撤回的资金与信任损失;误伤的代价:正常用户被拒、不公平的麻烦、证据被污染。
- 稳健动作:缩小即时发货的暴露,保全证据,限制调查访问。
- 信息动作:版本重放,独立核对认证事件,冻结模式后前瞻验证。
- 暂缓的承诺:按国家、设备、网络或账户年龄大面积封禁;按关系簇直接封号。
- 行动强度跟着精度走:被标记的订单约九成是正常用户,只用二次确认或推迟发货。
6. 试探
- P0 逐笔核对争议、账本、客户确认和发货。
- P1 比较失败授权、工具复用、账户年龄和金额序列。
- P2 独立核对认证事件,区分有 / 无账户接管的子集。
- P3 停用促销,检查供货商配置;核对损失账户中新获即时发货资格的比例。
- P4 冻结新旧评分模型和特征快照重放。
- P5 冻结关系模式,以影子模式运行在之后十天;独立复核人员不知道图分数。
- P6 只对满足多重关系信号的一小部分交易加二次确认或推迟发货,
看确认失败是零散的,还是成批出现在同一关系簇和时间窗口;
同时监控批准率、客户申诉、人工负担和正常用户的伤害;低金额商品保留小对照组,风险负责人签字。
7. 三类触发条件
- 解释更新:冻结的 M5 在留出窗口里不能复现,就降低信心;只在已知坏案例上成立,就标记过度拟合。
- 行动中止:正常批准率、客户伤害或人工积压越过护栏,自动退回更窄的范围。
- 治理升级:数据用途越界、受保护属性的风险、内部人员嫌疑或执法事项,转正式渠道。
8. 入账
- v0:回填解释了曲线变陡的一部分,真实损失得到确认。
- v1:传统试探被削弱;被盗工具仍是输入之一。
- v2:账户接管解释约三分之一的案例,覆盖不了多数。
- v3:促销只解释少量;即时发货是选择条件与放大器;资格放宽是触发器(约四分之三的损失账户是新获资格的)。
- v4:旧模型也大多给出低风险;问题改写为分析单位是否选错。
- v5:冻结的关系模式在留出窗口复现:标记约 1.7% 的订单,覆盖约 58% 的确认损失,其中约十分之一是欺诈;
单账户的“沉寂老账户”规则覆盖相近损失,却要标记约 8% 的订单,其中约五十分之一是欺诈。
对账:约三分之一的损失是基线欺诈,一部分账户接管不在模式内,58% 与“模式抓住新增部分”相容。
- v6:二次确认的失败九成以上集中在少数关系簇、几分钟内成批发生;正常用户大多通过。
- 当前最好的解释:攻击把网络级的协同拆成局部正常的行为;风控按交易 / 账户打分,关系和时序弱;
资格放宽让一批事先准备或被接管的老账户同时够了资格;标签延迟放大损失。
- 解释做到了哪一步:机制获得支持;轻的摩擦决策充分;真实身份和完整来源未识别;封号证据不足。
- 当前行动:保留多信号关系检测和轻的摩擦;即时发货资格改为依赖难以批量伪造的信号;建设多尺度判断和更快的反馈。
- 复核条件:模式的命中率或误伤率明显变化;发货资格规则再次调整;出现新的兑换去向或账户来源。
三份样例最值得比较的是结论的形状:事故尽量重建路径;增长问题限定局部机制,并把两个时间线不同的决定分开;欺诈则在对手会适应的前提下,同时管理损失、误伤和模式的转移。
第五部分 七个坏填法#
这些例子都写了内容,但写了以后仍然没有带来约束。
0. 环境判断失败#
坏: 这是软件问题,所以一定可以找到唯一的根因。
问题在于,生产系统可能包含用户行为、第三方服务、组织流程和攻击者;“软件”不保证封闭。
较好: 代码和发布路径可以重放,但用户重试和第三方依赖无法完全固定;本轮对内部链路追求路径完整,外部因素的贡献保留未决。
1. 定题失败#
坏: AI 功能的采用率不好。
较好: 过去四周,大企业客户的管理员在权限配置页的完成率从 82% 降到 48%,同期中小企业管理员稳定在约 85%。
2. 立敌失败#
坏: 竞争解释是“可能市场不好”。
较好: 大企业采购的安全审查周期变长,导致这类客户的后期销售周期拉长;它预期中小企业的自助购买路径基本稳定。
3. 摊牌失败#
坏: 如果定位的解释正确,用户会更喜欢新版。
较好: 上线后十四天内,目标客户在无提示时复述“适合谁、解决什么”的比例上升;若复述改善、团队邀请不动,只更新“理解”这一环。
4. 决策失败#
坏: 解释 A 现在更可信,所以直接全量上线。
较好: A 的相对可信度上升,但外推和最坏情形还没有解决;先在批准的人群中可撤回地上线,把全量作为有门槛的承诺动作。
坏: 出事了,先回滚再说。
较好: 回滚之前,对照每个候选解释检查它会让情况变好还是变坏;在所有解释下都能止损的动作优先,例如停止对外发单。Knight Capital 在 2012 年卸掉新代码,让损失扩大了,就是回滚只在错误的解释下才安全的例子(主书第八章)。
5. 试探失败#
坏: 我们重做整套新手引导看看。
较好: 只在团队邀请这一步增加人工陪跑,运行两周;看第二位成员的真实使用,个人用途的账户作为负对照。
6. 入账失败#
坏: 复盘会上说“我们早就知道这个风险”。
较好: 回到当时的版本:风险如果已经写下,检查为什么没有改变动作;如果没写下,承认这是盲区,并记下当前解释的有效期和复核条件。
这些较好的版本,都多了一个能输、能过期或能停下的位置。
第六部分 解释评审主持人脚本#
这是一份一小时左右的轻量脚本,适合多人协作的中等风险问题。它不适合活跃的事故现场,也不替代正式的审批。
会前材料:
- 原始数据或时间线;
- 解释对象的草稿;
- 当前必须作出的决定,以及每个决定的最晚时间;
- 每位参与者独立写下一个解释、事前把握(几成),以及最怕看到的一项观察;
- 初步的环境判断和本轮目标。
开场,3 分钟:
“今天不比谁更会讲故事。我们先确认自己处在哪种环境,
让几个解释对现实作出不同的预期,然后选择与风险相称的一步。”
第一段,环境与定题,12 分钟:
- 两个环境问题:系统能封闭到什么程度?参与者会不会调整做法,是否针对我们?
- 本轮目标是路径完整、机制获得支持,还是足以支持某个具体动作?
- 只讨论对象、时间、对照、形态、适用范围和分析单位;这一段暂时不许写原因。
- 分开写解释问题、分解问题和决策问题;写出每个决定的最晚时间。
- 确认安全、合规和权限的边界。
第二段,立敌,10 分钟:
- 先展示各自独立写下的解释,减少地位带来的影响。
- 指定一个人,把最强的竞争解释写到和主解释同样具体。
- 按来源清单过一遍:测量、同一时间的其他变化、共用的资源和上游、构成的变化、参与者的调整;每人再写一条事前验尸。
- 可以并存的机制、未知的共同原因和行为适应,另外列出。
第三段,摊牌,12 分钟:
- 每个解释写出方向、时序、边界或中间过程上的不同预期;
也写出“应当出现却没有出现”的现象。
- 双方共同预期的事实单独放,不在 A、B 之间重复记功。
- 加一个跨环境、负对照或留出时间窗口的检查。
- 审查测量、选择、混杂、执行、外推和适应的问题。
第四段,决策,10 分钟:
- 只对到了时限的决定做决策;时限未到的决定,写下最晚时间和到时需要的信息。
- 维持现状、稳健动作、信息动作和承诺动作分别是什么?
- 哪种损失承受不起?谁承担?发现会不会滞后?
- 哪个动作在几种解释下都合理?哪个只在某一个解释正确时才安全?
- 想要的信息,会在决定之前到吗?
第五段,试探与入账,12 分钟:
- 哪个不确定性会真正改变动作?有没有几天就能做完的便宜检查?
- 探针会不会改变人群、激励或对手的做法?担心的问题是否只在总量之上才出现?
- 写清结果映射、三类触发条件、负责人、有效期、复核条件和复盘日期。
结束时,允许三种产出:
1. 写明范围、解释做到哪一步和触发条件的有限行动;
2. 写明适用范围、有效期和复核日期的暂时判断;
3. 明确的“目前无法区分”,以及补证任务。
不允许的产出:
因为开过会,就把还没有区分开的几个解释写成“已经找到根因”;
或者因为世界是开放的,就不给解释写任何可以失败的后果。
第七部分 判断账本#
判断账本只追加状态变化,不覆盖旧版本,也不复制整份案例。它的作用,是让事后的记忆无法悄悄改写事前的承诺。
两条纪律比格式更重要:条目在证据到达时就写,不要等到季度复盘;条目引用原判断的版本号,改的是那个版本上的具体主张。
条目编号 / 记录时间 / 记录人:
案例编号与快照版本:
当前环境与本轮目标:
触发本次变化的新证据、观察日期与来源:
哪项事前预期得到支持:
哪项被削弱:
哪些仍然分不出:
问题、口径、分析单位、解释、证据或权限中,哪一项需要重写:
解释做到了哪一步,是否变化:路径完整 / 机制获得支持 / 仍是候选
行动是否变化,为什么:
三类触发条件是否被执行;如果没有,原因是什么:
事前把握(当时写的几成)与实际结果:
当前适用范围与有效期:
新增或修改的复核条件:
下一位负责人 / 到期日 / 复盘日期:
用账本校准自己的把握#
积累二三十条以后,把“事前把握”按档归类(例如三成、五成、七成、九成),数一数每一档里实际成立的比例。账本要尽量缩短从判断到结果的时间:天气预报员能把概率校准得很好,一个常见的解释是他们每天写下概率、很快知道结果(主书第十章)。
事前把握 条目数 实际成立 实际比例
三成 6 2 33%
五成 8 3 38%
七成 10 4 40% ← 说“七成”的事只有四成成立:在这类问题上过度自信
九成 5 5 100%
某一档的实际比例明显低于你写下的把握,说明你在这类问题上过度自信;明显高于,说明你太保守,可能因此错过了本可以更早做的决定。按问题类型分开看(事故、增长、风控、招聘……),往往能发现自己在哪类问题上最容易判断失准。
季度复盘先读原始案例,再看汇总。重点是找具体的失败:漏掉了哪个强敌,哪个触发条件没有执行,哪些结论已经过期,流程的成本和风险是否相称。不要把“区分率”或“推翻率”当成要达到的指标。
第八部分 决策备忘#
这份模板使用解释评审的输出,但不假装解释的质量可以自动给出决定。
先生成第三个选项#
当选项只有 A 和 B 时,先试着生成第三个:推迟承诺、缩小规模、做成可以撤回的、组合、退出、对冲。一张没有稳健动作的表,常常说明选项还没有展开,而不一定说明只能豪赌。
案例编号与快照版本:
系统能封闭到什么程度 / 参与者会不会调整做法:
当前环境:相对可封闭 / 开放适应 / 对抗适应 / 混合
解释做到了哪一步:路径完整 / 机制获得支持 / 仍是候选
决策问题 / 最晚决策时间:
受影响的人与授权者:
承受不起的损失,以及举证责任在哪一方:
审批、风险政策和数据治理的状态:
选项,包括维持现状、推迟承诺和退出:
A.
B.
C.
当前主解释、竞争解释、可以并存的机制、未知项与行为适应:
哪些新信息会改变选项的排序、规模、时机、监控或风险边界?
这些信息预计什么时候到?会不会晚于最晚决策时间?
解释 × 行动:
| 选项 | 如果解释 A 更接近事实 | 如果解释 B 更接近事实 | 如果存在未知的解释 |
|---|---|---|---|
| 选项 1 | | | |
| 选项 2 | | | |
| 选项 3 | | | |
对每个选项分别写:
- 最好 / 基准 / 最坏的情形
- 受益者、受损者和时间分布
- 承受不起的后果;这些是边界,不参与普通的期望值平均
- 回滚窗口与发现的延迟
- 机会成本,以及相比不行动的风险
- 干预是否会改变人群、激励或对手的做法
现在可以做的、在几种解释下都合理的动作:
值得购买的信息(以及它在决定之前能否到达):
承诺动作,以及它需要的证据、审批和风险门槛:
证据覆盖的范围和幅度(人群、版本、时间、投入幅度):
行动顺序:先做什么,何时复核,满足什么条件才进入下一阶段:
解释更新条件:
行动中止条件 / 默认动作 / 停止负责人:
治理升级条件 / 升级路径:
适用范围 / 有效期 / 复核条件:
复盘日期与账本条目编号:
第九部分 课程练习与自检#
这些练习和主书第一至十章一一对应。主书每章末尾有一道带参考思路的练习,先做那一道,再用自己的真实问题做这里的练习。不追求标准答案;用右边的标准,检查自己的答案有没有真正增加约束。
| 练习 | 任务 | 自检标准 |
|---|---|---|
| 1. 故事与解释 | 选一句“X 因为 Y”,把 Y 替换两次 | 至少指出一项替换后解释不了的事实;否则承认 Y 不承重 |
| 2. 四个层次 | 把一次事件拆成解释、证据、决策、治理四句话 | 四句话互不借用还没有成立的结论 |
| 3. 变体测试 | 对一个复合解释做部件、角色、时序、边界替换 | 每次替换都写出具体对不上的地方,而不是“感觉不对” |
| 4. 环境判断 | 用两个问题判断环境,得出相对可封闭、开放适应、对抗适应或混合 | 两个问题分开回答,各自写出依据;不按行业贴标签 |
| 5. 定题 | 把一个“大问题”改写成可以出错的问题 | 包含对象、时间、基准、形态、适用范围和分析单位;多个决定分别写最晚时间 |
| 6. 立敌 | 为主解释构造一个最强的竞争解释 | 同样具体,并且会改变调查或行动;写出它来自来源清单的哪一项 |
| 7. 摊牌 | 写一张差异化预期表 | 至少一个方向、时序、边界或过程上的真实分歧;列出共同预期的事实和一个“应当出现却没出现”的检查 |
| 8. 决策 | 写出维持现状、稳健、信息和承诺四种动作 | 写明最坏情形、承受不起的后果、每个决定的最晚时间,以及哪个动作在几种解释下都合理 |
| 9. 探针 | 设计一个最小的探针 | 事前写出支持、削弱、仍分不出;说明干预是否改变环境,担心的问题是否只在总量之上出现 |
| 10. 入账 | 用一次真实的结果更新判断 | 只更新最小必要的位置;补上解释做到了哪一步、有效期、复核条件,并对照事前把握 |
一个人提出主解释,一个人负责把竞争解释写强,第三个人只检查环境、证据来源和越界的结论。三个人轮换角色,比一起自由讨论更容易暴露盲点。
选一个真实、可以安全讨论的问题,完成一份案例记录。再分别按“相对可封闭”和“开放适应”的假设,重写决策部分:哪些证据、目标和行动偏好发生了变化?如果完全没有变化,说明环境这条线索可能还没有真正影响你的判断。
结尾 手册是否真的在帮助学习#
一次使用结束以后,不要先问“表填完整了吗”,而要问六件事:
- 问题是否比开始时更具体?
- 环境和本轮目标是否写下来了?
- 是否出现了一个足以改变下一步的强敌?
- 现实反馈回来时,是否清楚应该修改哪一条主张?
- 行动是否和证据的范围、可撤回性、最坏情形相称?
- 停止权、有效期、复核条件和复盘日期,是否真实存在?
如果模板只让文档变长,却没有带来新的区分方式、有限的动作、环境边界,或者明确的“目前无法区分”,它已经开始代替思考了。
完整的原理和三个连续推演,见 好解释-V20。