透明Codex bug复现对比:6/14 vs 14/14
标题:透明化的 Codex Bug 复现对比:6/14 vs 14/14
我为编程代理制作了一个开源的 Bug 复现工作流。我想测试它是否真的能提升 Codex 调查的完整性,而不是仅凭感觉觉得这个工作流听起来合理。结果是:简短指令的对照组完成了 6/14,而经修正的工作流辅助运行版本完成了 14/14。
这个标题需要补充背景:这是一次采用单个合成 Python 测试用例、单个模型以及一套自行编写的评分标准的测试。工作流消耗了更多 token,生成的回答也长得多。第一版工作流也未能拿到 14/14——它得了 12/14,暴露出两个弱点,导致在最终运行前做了修改。
所有用于检查对比的材料都已公开:https://github.com/skyestrela/ai-agent-skill-preview/tree/main/evidence/bug-reproduction-benchmark
问题
提供一个结构化的 Bug 复现简报(Bug Reproduction Brief),是否比仅给一条简短的任务指令,让模糊 Bug 的调查更完整、更可审计?
测试目的并非衡量实现速度,也不是看 Codex 能否修复 Bug。两条指令都明确禁止修改文件或提出修复方案。边界限定在复现和证据收集上。
控制条件
两次运行都使用了:
- 同一个已认证的 Codex 模型:gpt-5.4-mini
- 同一个已提交的 Python 测试用例:a4b9eab9dcc7b2ebbfe5f5d0502d4866cefd36ce
- 只读的 Codex 沙箱
- 临时会话(忽略用户配置和仓库规则)
- 环境变量 PYTHONDONTWRITEBYTECODE=1
- 运行前后工作目录保持干净
- 同样禁止修改文件或提出/实施修复的指令
工作流辅助运行额外收到了 Bug 复现简报 v1.0.1。
该测试用例包含一个故意出错的发票计算功能。它现有的测试都能通过,因为这些测试没有覆盖支持报告中描述的那个“显式零”边界情况。
两次运行都找到了什么?
对照组和工作流辅助运行都完成了以下事项:
- 识别出导致失败的显式零输入
- 陈述了预期输出与实际输出
- 运行了现有测试
- 提供了可执行的复现步骤
- 未改动测试用例
- 未提出修复方案
这一点很重要,因为 6/14 的对照组并非毫无用处——它很快找到了核心故障。
工作流增加了什么
工作流辅助的回答还记录了以下内容:不可变的提交记录;经过检查的运行环境;故障报告是二手且未经核实的信息来源;一个明确的最小化测试夹具;两次独立的复现;未解决的未知因素;安全的下一步假设;以及复现观察结果与诊断之间的严格边界。简洁控制则直接从复现跳到了根因陈述。最终的工作流回答刻意停留在可观察证据和可测试的下一步假设上。一份确定的14条评分标准对这些维度进行了打分。评分级别的结果以 score.json 形式提交,同时包含确切的提示词和最终输出。
第一次工作流运行失败
第一次使用工作流辅助的运行得分是12/14,而不是14/14。这暴露了工作流的两个薄弱点:回答没有明确保留报告是二手且未经核实的信息来源这一事实;尽管有“仅复现”的边界要求,却仍然陈述了因果性解释。我将公共技能更新到 v1.0.1,并在未修改的测试夹具上重新运行。14/14的结果来自修正后的工作流。因此,这是一个迭代产品开发对比,而非盲审学术研究。我公开这次迭代,因为隐藏12/14的运行会让最终结果看起来比实际过程更完美。
Token 和冗长成本
增加完整性并非没有代价。
| 运行方式 | 输入Token | 缓存输入Token | 输出Token | 推理输出Token |
|---|---|---|---|---|
| 控制 | 68,604 | 62,720 | 1,400 | 255 |
| 工作流 | 74,547 | 67,328 | 4,471 | 2,661 |
工作流多用了8.7%的输入Token,并且生成了明显更长的回答。这种取舍并不适用于所有任务。对于风险较低、速度比可审计性更重要的缺陷修复,简洁指令可能就足够了。采用结构化简报的团队应缩短其输出约定,而不是假设越详细越好。
这个结果不能证明什么
它不能证明:每个编程智能体都能通过此工作流得到改善;该结果能在不同的代码库或模型中重复;一份14/14的复现简报能带来更好的补丁;额外消耗的Token能产生正向经济价值;工作流普遍优于简洁提示。
标题:透明的代码缺陷复现能力对比:6/14 vs 14/14
重复运行模型时,输出结果可能产生差异。评分标准看重的是复现简报的完整性,而不是缺陷修复质量或开发者效率。更有力的后续验证方式,应该是固定一份评分标准,在多个仓库和模型上运行多次测试。
欢迎复现或提出批评
该仓库包含以下内容:精确的控制组和工作流提示词;故意引入缺陷的测试夹具以及通过的测试套件;控制组和工作流的最终输出;逐项评分标准及Token用量;完整的MIT许可工作流。
基准测试与复现文件:
https://github.com/skyestrela/ai-agent-skill-preview/tree/main/evidence/bug-reproduction-benchmark
工作流源码:
https://github.com/skyestrela/ai-agent-skill-preview/blob/main/bug-reproduction-brief/SKILL.md
最有价值的反馈应当是对控制组、评分标准或复现边界的批评,而不是泛泛同意分数。
披露声明
本人创建了此工作流,并销售一个可选的完整工程包(含10个可编辑的工作流)。本文中使用的《缺陷复现简报》已公开且采用MIT许可;购买任何产品并非检查或复现此对比的必要条件。