所属教程:OpenAI Codex CLI 从入门到大师级完整教程 预计阅读:26 分钟
修 Bug 最忌"看到报错就打补丁"。先稳定复现、定位根因、再做最小修复并回归验证,才能避免同一问题反复出现。本节把缺陷修复拆成可重复执行的流程,配合版本控制与验证习惯,让每次修复都小、准、可回退。
| 信息项 | 为什么需要 |
|---|---|
| 触发步骤与输入数据 | 让代理能够在受控条件下重复同一现象,而不是凭描述推测 |
| 预期结果与实际结果 | 明确判断标准,避免把"设计如此"误判为缺陷,也避免修复后仍不满足预期 |
| 完整报错信息与栈位置 | 指向首个失败点;只截取最后一行容易误判责任模块 |
| 环境与版本前提 | 运行环境、依赖版本、配置差异可能直接决定是否触发,需一并交代 |
| 出现范围 | 是必现、偶现、特定数据下出现还是特定操作顺序触发,决定排查方向 |
| 相关近期改动 | 用版本历史对照最近变更,可快速锁定引入缺陷的改动面 |
git diff 与历史提交判断问题是否由近期改动引入,先排除已知变更再查固有逻辑。| 原则 | 具体做法 |
|---|---|
| 改动克制 | 只修改导致根因的最小片段,保持其余逻辑与命名不变 |
| 验证先行 | 修复后先跑相关测试/构建;失败的中间尝试不叠加后续修改 |
| 可回退 | 实验性修改未确认前不提交;需要放弃时用 git restore 回到干净基线 |
| 提交清晰 | 确认有效后由人工 git add、git commit,提交信息说明缺陷、根因与修复要点 |
| 不过度防御 | 必要的健壮性保护可以加,但与根因无关的宽泛兜底会掩盖真实问题,应分开评估 |
| 问题 | 处理建议 |
|---|---|
| 无法稳定复现怎么办 | 先收集触发规律与日志线索,缩小数据/环境条件,优先补充观测与检查,不急于改代码。 |
| 代理一次修了好几处问题 | 用 git diff 拆分审阅;多个独立缺陷分别处理、分别验证,避免一个提交混入多处改动。 |
| 修复后测试仍报错 | 先判断是修复引入还是既有失败;定位首个失败点,不通过删除或跳过测试来"变绿"。 |
| 根因涉及公共模块 | 先评估影响面与兼容性,必要时采用向后兼容修复并补充回归覆盖,再统一调整调用方。 |
本节掌握了缺陷修复流程、复现信息采集、根因定位与最小修复方法。下一节讲新功能实现:动手前如何澄清分解、按主路径到边界推进,并系统覆盖边界条件与错误处理。
← 上一节:搭建安全的代理工作目录 下一节:功能实现与边界条件处理 →