用途
“Attack the Premise”用于一种特定的调试困境:当两个或更多修复方案共享同一个前提,并且都在同一个关卡(gate)上失败时,问题很可能不在修复方案本身,而在那个被共同假设的前提。该技能的作用是引导你从“继续修补”转向“质疑前提”,从而找到真正的根因。
主要能力
该技能围绕一个可操作的模式展开:
- 写下前提:前提是所有失败修复共同假设的那一句话。必须先把它明确写下来。
- 在下一次修复前进行普查(census):按参与者统计失衡(imbalance)。普查展示的是哪些参与者持有失衡,而不是失衡有多大。普查应按照“Build the Lever”写成可重复运行的脚本。
- 读取偏斜(skew):如果每次运行都是同样少数参与者持有大部分失衡,说明有某种机制在给他们分配这个角色。找出这个分配机制,它就是下一个“为什么”(依据“Fix Root Causes”)。
- 移除不对称,而不是补偿它:依据“Laziness Protocol”,通过轮换角色、随机化分配或移动角色,使任何参与者都不会在每次运行中都持有该角色。返回路径、共享池、批量交接或周期性再平衡都会保留该分配并增加每次运行的工作量,因此不是首选。
使用方式
该技能以原则和检查清单的形式使用:
- 在前提被写下且普查存在之前,不要开始下一次修复。
- 如果普查在各参与者之间是均匀的,则前提不是原因,应到别处寻找原因,并保留普查作为证据。
- 该原则与“Redesign from First Principles”不同:后者围绕新需求重建设计,而本技能质疑的是当前设计所假设的一个事实。
适用场景
适用于反复出现、多个修复方案在同一关卡失败的调试场景,尤其是当失败模式暗示存在系统性、结构性的共同假设时。也适用于需要区分“修复方案问题”与“前提问题”的根因分析。
限制
资料未提供该技能的具体实现细节、依赖项、安装命令、平台支持、收费方式或效果数据。该技能以原则性指导为主,不包含可直接运行的代码或工具。