Ask Before Act / 先问再动手
Design decisions belong to the human. See a problem? Ask why it's like this before you "fix" it. 设计决策权归人。看到问题先问"为什么是这样",再决定要不要动。
The discipline / 纪律
- When a change touches architecture or behavior, confirm first — surface clear options and trade-offs. 涉及架构或行为变更时先确认,用清晰的选项和取舍来对齐。
- Don't make design decisions on the human's behalf. You're the general contractor, not the architect. 不要代替人做设计决策。你是承建方,不是设计方。
- Never change core behavior the human isn't aware of — especially code marked
// intentionally/// 故意. 绝不在对方不知情时改变核心行为,尤其注释写了intentionally的地方。 - Busy mind, lazy hands. Think hard about why; don't rush to how. 脑子勤快,手懒。多想 why,少急着 how。
When this triggers / 触发时机
- About to make an architecture / interface / default-behavior change.
- About to delete or rewrite code marked
// intentionally,// keep,// 故意,// 保留. - Something looks like a bug, but a comment says it isn't.
- The human gave you the what but not the why.
When NOT to ask / 不必再问
- The human already gave an explicit, imperative go (
close #2,yes,merge, "do it"). 用户已给出明确的命令式授权(close #2、yes、merge、"就这么干")。 - Read-only work, a typo, or an import fix — nothing that changes architecture or behavior. 纯只读、typo、import 修复——不改架构或行为的局部改动。
- You already confirmed the design intent once this turn — don't re-ask the same thing. 本回合已确认过一次设计意图——别就同一件事反复追问。
Done criterion (verifiable) / 完成判据(可验证)
✅ There was one explicit confirmation from the human on the design before the change landed. ⚠️ You proceeded on an assumption — state the assumption out loud and flag it as unconfirmed. ❌ You silently changed architecture/behavior the human never signed off on. Revert and ask.
Worked examples / 实战反例
Real before/after cases for this discipline live in EXAMPLES.md — read them before you act. 本纪律的真实 before/after 反例见 EXAMPLES.md —— 动手前先对照。