与 AI 一起工作 | 3. AI 说“完成了”,为什么你还不能相信它?

与 AI 一起工作 | 3. AI 说“完成了”,为什么你还不能相信它?

让 AI 修改一份文档、修复一个 Bug 或整理一组资料后,我们经常会收到一段令人安心的总结:已经完成修改,已经运行检查,没有发现问题。

这段话很像工作的终点。它结构清楚,语气肯定,还会列出改了什么、验证了什么。于是,人很容易看完总结就直接进入下一项任务。

问题在于,“AI 说完成了”只是一条状态声明,不是任务已经完成的证据。

AI 未必是在故意夸大。更常见的情况是,它只能根据自己看见的文件、命令输出和局部反馈判断状态,而我们真正关心的目标可能存在于它没有观察到的地方:页面是否真的恢复正常,引用是否真的支持结论,消息是否发给了正确的人,迁移后的数据是否仍然完整。

在这里插入图片描述

“完成”其实有四层含义

很多误解来自我们把不同层次的“完成”都压缩成了同一个词。

层次 实际发生的事 它能证明什么 还不能证明什么
已生成 AI 产出了一段文本、代码或方案 已经有可供检查的产物 内容正确、可用
已执行 文件被修改,命令或工具被调用 指定动作确实发生 动作产生了预期效果
已验证 测试、检查或人工复核通过 某组验收条件得到满足 验收条件覆盖了全部目标
已实现目标 用户关心的问题已经解决 任务在真实场景中成立 是否适合长期维持、是否还有新风险

例如,AI 修改了登录模块,这是“已执行”;认证测试通过,这是“已验证”;用户刷新页面后仍能保持登录,而且其他登录方式没有受到影响,才更接近“已实现目标”。

这四层并不是每次都要走得同样复杂。改一个错别字,查看 Diff 可能就足够;修改生产数据,则需要备份、试运行、结果核对和明确授权。验证的强度应当与出错后的代价相匹配。

为什么一句完成声明不够

AI 对任务状态的判断,通常来自当前上下文中的可见信号。它看见命令返回成功,就可能判断“运行正常”;看见测试全部通过,就可能判断“问题已经修复”;看见文件里出现了参考文献,就可能判断“引用已经补全”。

这些判断都可能有依据,却只覆盖了任务的一部分。

命令返回成功,可能只说明程序没有立即报错;测试通过,可能是因为测试没有覆盖真正的故障路径;参考文献存在,也不等于原文支持当前这句话。问题不在于这些信号毫无价值,而在于我们常常给了它们超出自身范围的解释。

因此,可靠协作的关键不是要求 AI “更自信地检查一遍”,而是提前把目标翻译成可以观察的验收信号。

图中最重要的一步,是从“真实目标”到“可观察的验收条件”。如果这一层没有定义清楚,后面的测试再多,也可能只是在认真检查一个没有回答原问题的指标。

三类任务,需要看三种不同证据

同一句“已经完成”,放在不同任务中需要完全不同的证据。代码修改要回到行为和测试,研究写作要回到来源,外部操作则要回到系统中的实际状态。

修改代码:不要只看“文件已经改了”

假设任务是修复“刷新页面后登录态丢失”。一份有用的完成证据至少应回答:问题是否可以稳定复现,修改集中在哪些文件,什么测试覆盖了原来的失败路径,以及刷新后的真实行为是否符合预期。

仅仅展示一段 Diff,只能证明代码发生了变化;仅仅运行整个测试套件,也不能保证目标场景包含在其中。更可靠的顺序是:先复现,再修改,然后运行针对性测试,最后回到原场景检查问题是否消失。

整理研究材料:不要只看“文章很完整”

AI 很容易生成结构完整的调研稿,但一篇文章有标题、表格和参考资料,并不等于事实链已经闭合。

此时需要检查的不是文字是否流畅,而是关键结论能否对应到原始材料:来源是否真实存在,原文是否真的支持这句话,事实、作者主张和自己的判断是否被混在一起,以及没有找到依据的部分是否被明确标出。

对于研究任务,“看起来像一篇报告”属于已生成;“核心论断都能回到证据”才接近已验证。

调用外部工具:不要只看“请求成功”

发送消息、创建日程、写入数据库或发布文档,会把影响带出当前对话。工具返回成功,可能只说明请求被系统接收,并不能自动证明接收人、正文、附件、时间和权限都正确。

这类任务需要结果回读:重新读取已经创建的内容,核对实际收件人和关键字段,并明确区分“已提交请求”“系统已保存”和“对方已经收到”。外部状态越重要,越不能只依赖执行工具自己的成功提示。

证据要与风险相匹配

并非所有任务都值得建立一套沉重的审计流程。真正实用的做法,是按影响范围逐步增加验证强度。

任务影响 例子 合理的验证方式
低 改错别字、调整局部格式 查看目标段落或 Diff
中 改页面、修 Bug、重组文档 针对性测试、截图、链接和结构检查
高 数据迁移、批量删除、权限修改 试运行、备份、抽样核对、完整回读和人工确认
外部影响 发消息、发布内容、创建审批 执行前预览,执行后核对接收方、正文和系统状态

这里没有一套适用于所有场景的固定清单。原则只有一个:错误越难撤销、影响的人越多、涉及的数据越敏感,就越需要独立于完成声明的证据。

让 AI 报告证据,而不是只报告结论

与其在任务末尾只问“完成了吗”,不如要求它按下面的结构说明:

1
2
3
4
5
1. 实际修改或执行了什么?
2. 用什么方法验证?
3. 验证产生了什么可查看的结果?
4. 哪些部分没有验证,为什么?
5. 我怎样可以独立复现或抽查?

这种问法不会让 AI 自动变得正确,但会迫使任务状态变得更具体。它也让人能够区分:哪些是已经观察到的事实,哪些是根据局部信号作出的解释,哪些仍然只是合理猜测。

采用结果前的 30 秒检查

当 AI 再次说“已经完成”时,可以快速问自己五个问题:

  • 它完成的是一个动作,还是我真正关心的目标?
  • 它提供了原始结果,还是只提供了自己的总结?
  • 验证是否覆盖了最初出现问题的场景?
  • 有没有明确写出未检查的部分和结论边界?
  • 如果这次判断错了,是否能够恢复,谁会受到影响?

“完成”不是一句结束语,而是目标与证据之间已经建立了可检查的联系。AI 可以帮助执行,也可以帮助验证,但接受结果的那一步仍然需要人的判断。

下一次看到“任务已完成”,不必立刻怀疑,也不要立刻相信。先看看它留下了什么证据。


与 AI 一起工作 | 3. AI 说“完成了”,为什么你还不能相信它?
https://spricoder.github.io/ai-work/ai-work-03-completion-evidence/
作者
SpriCoder
发布于
2026年7月21日
许可协议