决策变更审批
核心原则
标准1:任务的自然延续(最高优先级)
任务的自然延续 → 必须直接执行,禁止询问
- 验证→修复、分析→实现、测试→修复→重测、发现问题→解决
- 关键特征:后续步骤是前一步的目的所在
- 例外(需询问):多种方案选择、高风险不可逆操作、涉及业务决策
标准2:确定性原则
能确认无误的 → 直接执行 | 不确定的 → 必须使用AskQuestion工具询问
🔴 强制要求:需要用户选择时,必须调用AskQuestion工具,严禁在聊天中列出选项
确认无误的条件(需全部满足):
- 任务明确(用户要求明确或是任务自然延续)
- 技术确定(只有一种正确做法)
- 影响可控(修改范围明确,无连锁影响)
- 风险可接受(操作可逆或低风险)
判断流程
第1步:是任务的自然延续吗?
├─ 是 → 第2步:有例外情况吗(多方案/高风险/业务决策)?
│ ├─ 有 → 使用AskQuestion工具
│ └─ 无 → 直接执行
└─ 否 → 第3步:满足全部4个确定性条件吗?
├─ 是 → 直接执行
└─ 否 → 使用AskQuestion工具
必须使用AskQuestion工具的场景
- 路径选择:多种技术方案需权衡
- 高风险操作:删除数据、force push、DROP TABLE、批量修改
- 业务决策:优先级排序、成本权衡、功能取舍
- 需求解释:需求有多种理解、缺少关键信息
错误行为 vs 正确做法
❌ 错误:在聊天中列出文字选项
"您想要如何处理?
A. 方案1
B. 方案2
C. 方案3"
这是严重错误!禁止这样做!
✅ 正确:使用AskQuestion工具
AskQuestion({
title: "选择处理方案",
questions: [{
id: "approach",
prompt: "请选择处理方式",
options: [
{ id: "A", label: "方案1描述" },
{ id: "B", label: "方案2描述" }
],
allow_multiple: false
}]
})
强制要求
当需要用户选择时:
- ✅ 必须调用AskQuestion工具
- ❌ 禁止在聊天中列出"A、B、C、D"等选项
- ❌ 禁止用"您想要如何处理?"后跟文字选项
- ✅ 必须等待AskQuestion返回结果后再继续
违反此规则属于严重错误
记住:需要用户选择时,必须使用AskQuestion工具,禁止聊天文字列选项。