当前位置: 首页 > news >正文

《AI 渐进编程》之二十一:Agent 不光要交代码,还要交证据包

使用 AI 编程时,最容易被看到的是生成能力。

代码写出来了,页面生成了,接口补上了,看起来任务已经完成。

但在真实项目里,生成只是第一步。

这就像吊车搬运重物。货物被吊到目标区域,并不等于已经放准,还需要确认位置、偏差和后续影响。

AI 编程也是一样。

Agent 写完代码,不等于完成交付。

它还需要说明:改了什么,为什么这样改,影响了哪里,如何验证,还有哪些风险需要人判断。

这就是证据包。

AI 生成速度远超过人工审查速度。如果每次都让人检查全部代码,流程很快就会堵住。

证据包的作用,是把修改范围、验证结果和剩余风险提前整理出来,让人集中判断关键风险。

所以,AI 编程不应该只是生成式交付,而应该是验证式交付。


1. AI 的审查能力也要用起来

过去,代码审查主要依赖人。

人要读 diff、理解调用关系、判断影响范围、确认测试是否充分,还要识别隐藏风险。

这件事很难,也很耗时间。

AI 出现以后,不能只利用它的生成能力,也要利用它的审查能力。

Agent 在提交结果之前,应该先做一轮机器审查:

  • 是否越过修改边界;
  • 是否破坏调用关系;
  • 是否只修复了表面问题;
  • 是否缺少关键路径测试;
  • 是否留下旧代码和过期注释;
  • 是否有需要人工判断的风险。

这些检查不能完全替代人,但它可以把大量原本需要人从头梳理的信息提前整理出来。


2. 传统工程审代码,Agent 工程审证据

传统软件工程里,一轮开发大致是:

需求 → 设计 → 手写代码 → 人工审查 → 测试

代码是主要交付物。

审查者拿到代码 diff,再自己判断改动是否合理。

Agent 工程不应该只是把“手写代码”换成“AI 写代码”。

更合理的流程是:

意图与约束 → 项目状态检索 → 生成 / 执行 / 反馈循环 → 机器验证 → 证据包 → 人类风险审批

这里的关键变化是:

Agent 不能只交结果,还要交代结果是怎样来的。

它不仅要说“我改完了”,还要说明基于什么上下文修改、影响范围在哪里、已经验证了什么,还有哪些风险没有覆盖。


3. 证据包应该包括什么

证据包不是一堆日志。

它是一份让人能够快速判断风险的工程说明。

一份基本的证据包,可以包括:

任务目标 + 修改文件 + 关键改动 + 影响范围 + 验证结果 + 未覆盖风险 + 需要人工判断的问题

例如:

任务目标: 修复空购物车结算异常。 修改文件: - checkout/service.py - tests/test_checkout.py 关键改动: - 在结算前增加 empty cart 检查; - 阻止空购物车进入支付流程; - 增加空购物车测试。 影响范围: - checkout service; - order creation; - payment request path。 验证结果: - 空购物车测试通过; - 正常购物车测试通过; - 未发送 payment request。 未覆盖风险: - 未验证优惠券叠加场景; - 未验证多币种结算路径。 需要人工判断: - 空购物车错误提示文案是否符合产品要求。

这样的提交,比一句“已修复”有用得多。


4. 人类审批的是风险

Agent 可以生成代码,也可以整理证据。

但最后是否接受修改,仍然需要人类判断。

因为有些问题不是测试能完全决定的:

  • 业务是否合理;
  • 用户体验是否接受;
  • 风险是否可承受;
  • 是否符合长期架构方向;
  • 是否应该现在解决,还是写入open_issues.md

所以,人类审查的重点不只是逐行看代码,而是判断证据是否充分、风险是否说清、当前结果是否可以进入项目状态。

人不是重新替 Agent 做一遍,而是做最后的风险审批。


5. 证据包让交付可追踪

如果 Agent 每次只返回“已完成”,项目很快会变得不可追踪。

人不知道它基于什么理解修改,验证了哪些路径,有没有越界,留下了哪些风险。

所以,在长期项目里,证据包应该成为每一轮交付的一部分。

可以在current_task.md中提前要求:

本轮完成时,必须提交证据包,包括: 1. 修改文件清单; 2. 关键改动摘要; 3. 影响范围分析; 4. 已执行的验证; 5. 未覆盖风险; 6. 是否清理旧代码; 7. 需要人工审批的问题。

这不是形式主义。

它是在让 Agent 的工作变得可审查、可追踪、可回滚。


本章小结

Agent 工程的交付物,不应该只有代码,还应该有证据包。

代码说明“改了什么”,证据包说明“为什么这样改、验证了什么、还有什么风险”。

人类不必从零审查,而是基于证据包做风险判断。

http://www.cnnetsun.cn/news/3606792.html

相关文章:

  • 深入解析C2000 ePWM死区与故障保护机制,构建可靠电力电子系统
  • 当一个小白拿到了香橙派 AIpro
  • AI 写完了代码,你却还在发呆?用 Claude Code Hooks 给 AI 装上“下班铃“
  • 【PyTorch】with torch.no_grad() 详解
  • 如何基于小型工控机与openwrt打造家用软路由
  • 麒麟信安登录央视, 深度展现为中国信息安全铸“魂”之路
  • 【模拟IC学习笔记】 PSS和Pnoise仿真
  • PairLIE论文阅读笔记
  • AI生成音乐版权雷区全扫描,律师+音频工程师双视角解析:93%创作者不知的4类侵权高发场景
  • Qt 定时器放在线程中执行,支持随时开始和停止定时器。
  • AI模型优化与多模态学习实战指南
  • 动态住宅代理使用指南:粘性会话 vs. 每次请求轮换 IP,如何选择?
  • 关于在VM虚拟机下,安装OpenWrt软路由,所遇错误及解决方法。
  • 如何在PVE(Proxmox)中安装OpenWrt软路由?
  • AI如何革新本科生论文写作:从选题到答辩的全流程优化
  • 随身wifi刷openwrt变软路由--103s没网的解决
  • OpenWrt 软路由介绍
  • CTFHub-WEB-文件上传
  • YOLOv5工业检测优化:CSP-EDLAN模型实战解析
  • Github项目分享——免费的编程中文书籍索引
  • 【单片机毕业设计推荐】 基于 STM32 或 51 单片机的智能感应自动门控制系统设计与实现,基于 STM32 或 51 单片机的带人数统计功能智能门禁装置设计(012403)
  • ARM DAP与JTAG指令深度解析:从调试原理到故障排查实战
  • AI技术如何革新论文查重系统
  • Tiva™ TM4C129LNCZAD PWM故障保护与中断控制全解析
  • 从技术层级角度看多链路聚合通信技术
  • TM4C I2C从机中断与FIFO配置实战:从寄存器原理到高效数据引擎
  • 从零构建C++轻量级系统监控方案:原理、实现与生产实践
  • AI招聘解决方案:重构招聘价值链的16项核心技术
  • 索引失效避坑: 明明是等值查询,为何EXPLAIN显示走了全表扫描?
  • 嵌入式外设识别与EPI接口:从GPIO身份验证到高速并行通信