SuperAPI AI 工具集

verification-before-completion

编程与开发

查看项目

更新于 10-16 04:16

技能介绍

用途

该技能用于约束 AI 编码智能体在声称工作完成、修复或通过之前的行为。其核心原则是:证据先于声明,始终如此。违反规则的字面即违反规则的精神。

主要能力

技能定义了“铁律”:没有新鲜的验证证据,不得做出任何完成声明。如果在本条消息中没有运行验证命令,就不能声称其通过。

技能提供“门控函数”,在声称任何状态或表达满意之前执行以下步骤:

  1. 识别:什么命令能证明该声明?
  2. 运行:执行完整命令(新鲜、完整)。
  3. 读取:完整输出,检查退出码,统计失败数。
  4. 验证:输出是否确认声明?若否,用证据说明实际状态;若是,带证据说明声明。
  5. 只有此时:才做出声明。

跳过任何步骤等于撒谎,而非验证。

常见失败与所需证据

技能列举了常见声明及其所需证据与不充分证据:

  • 测试通过:需要测试命令输出 0 失败;不充分的是上一次运行或“应该通过”。
  • Linter 干净:需要 Linter 输出 0 错误;不充分的是部分检查或外推。
  • 构建成功:需要构建命令退出码 0;不充分的是 Linter 通过或日志看起来不错。
  • Bug 修复:需要测试原始症状通过;不充分的是改了代码就假设已修复。
  • 回归测试有效:需要验证红绿循环;不充分的是测试只通过一次。
  • 智能体完成:需要版本控制差异显示变更;不充分的是智能体报告“成功”。
  • 需求满足:需要逐行检查清单;不充分的是测试通过。

红旗信号(停止)

使用“应该”“可能”“似乎”;在验证前表达满意(“太好了!”“完美!”“完成!”等);未验证就准备提交/推送/创建 PR;信任智能体成功报告;依赖部分验证;认为“就这一次”;累了想结束工作;任何暗示成功但未运行验证的措辞。

借口防范

技能列出常见借口与现实:

  • “现在应该能用了” → 运行验证。
  • “我有信心” → 信心不等于证据。
  • “就这一次” → 没有例外。
  • “Linter 通过了” → Linter 不等于编译器。
  • “智能体说成功了” → 独立验证。
  • “我累了” → 疲惫不是借口。
  • “部分检查就够了” → 部分证明不了什么。
  • “换个说法规则就不适用” → 精神重于字面。

关键模式

  • 测试:✅ 运行测试命令,看到 34/34 通过,说“所有测试通过”;❌ “现在应该通过了”/“看起来正确”。
  • 回归测试(TDD 红绿):✅ 编写 → 运行(通过)→ 还原修复 → 运行(必须失败)→ 恢复 → 运行(通过);❌ “我写了回归测试”(未验证红绿)。
  • 构建:✅ 运行构建,看到退出码 0,说“构建通过”;❌ “Linter 通过了”(Linter 不检查编译)。
  • 需求:✅ 重读计划 → 创建清单 → 逐项验证 → 报告差距或完成;❌ “测试通过,阶段完成”。
  • 智能体委派:✅ 智能体报告成功 → 检查版本控制差异 → 验证变更 → 报告实际状态;❌ 信任智能体报告。

为什么重要

技能引用 24 个失败记忆:人类伙伴说“我不相信你”——信任破裂;未定义函数被发布——会崩溃;缺失需求被发布——功能不完整;时间浪费在虚假完成 → 重定向 → 返工。违反:“诚实是核心价值。如果你撒谎,你将被替换。”

何时应用

始终在以下情况之前应用:任何成功/完成声明的变体;任何满意表达;任何关于工作状态的正面陈述;提交、创建 PR、任务完成;移动到下一个任务;委派给智能体。

规则适用于:确切短语;转述和同义词;成功的暗示;任何暗示完成/正确的沟通。

底线

验证没有捷径。运行命令。读取输出。然后声明结果。这是不可协商的。