P41 · 任务流程

设置循环次数上限

Loop Prevention with Max Iterations

为反复尝试的流程设定次数上限和停止条件。

编辑审核

以下示例与示意结果由本站编写,用于说明方法,不是模型实测结果。

使用场景

依赖修复后构建仍失败,你需要避免反复更换版本而没有诊断进展。教学任务允许最多三次修复尝试;每次必须针对已观察错误提出一个假设,再做对应改动与检查。达到预算不代表问题解决。

具体做法

开始前定义一次尝试的单位、上限和提前停止条件。每轮记录错误签名、假设、改动、覆盖检查与结果,比较是否有新证据。相同无进展路径不无限重复;到上限保留当前 diff 和未解决状态,说明下一步需要什么输入或判断。后续接手读取尝试记录,次数不因新会话清零。

反例

持续更换依赖和重复构建,直到最终通过。每次会话重置尝试次数;预算耗尽时仍标任务完成。

改进写法

本教学任务最多三次修复尝试,一次包括一个基于错误的假设、对应改动和覆盖检查。逐轮保存版本、错误签名与结果;重复无新证据的路径应提前停。达到三次仍失败时保留 diff,报告未解决错误和下一必要检查,不声明完成,不在新会话重置预算。已有尝试计入总数。

为什么这样改

有上限的循环限制消耗,但更重要的是每次尝试留下可比较的诊断信息。保存次数与证据,能防止“再试一次”因会话变化变成没有终点的循环。

如何验证

教学记录若为尝试 1、2、3 都同一签名,结论应是尚未解决,停止当前修复循环并列下一输入;不是构建通过。检查每个尝试都有覆盖检查,恢复时仍识别已用三次。

若第二次已通过且没有新问题,提前完成本项检查,不为了凑三次继续改动。

适用边界

三次是教学预算,来源中的五轮为另一工作流的约定。任何次数都不保证收敛;预算结束只停止该尝试循环,不抹掉未完成工作,也不自动丢弃真实缺陷。

原文与版本

如何收录这些方法

相关方法