mcpField

API Contract Until Match

精选按需触发
代码质量最多 10 轮

关于 API Contract Until Match

该循环用于让 API 实现与已发布的契约保持一致。每一轮先运行契约测试,根据失败信息修改实现,再进入下一轮复测,直到测试通过或达到轮数上限。

主要功能

  1. 01以契约测试套件的退出码作为判定依据
  2. 02手动触发,由使用者决定何时开始
  3. 03最多执行 10 轮,避免无限重试
  4. 04支持 Cursor

适用场景

  1. 01修改接口后确认实现仍符合已发布契约
  2. 02按新版契约调整现有 API 实现
  3. 03合并前检查契约测试是否全部通过
目标
API 实现与已发布的契约一致,npm run test:contract 全部通过。
退出条件
契约测试套件退出码为 0 时停止;若已执行 10 轮仍未通过,也停止。
每轮之间运行
npm run test:contract

启动提示词

在 Cursor 中粘贴运行,Agent 会按下面的步骤循环执行,直到满足退出条件。

prompt.md
开始运行“API Contract Until Match”循环。
目标:API 实现与已发布的契约一致,npm run test:contract 全部通过。
最大轮数:10。
第 1 步:运行契约测试 — 执行 npm run test:contract,记录退出码和失败的用例。退出码为 0 即视为达标。 `npm run test:contract`
第 2 步:分析失败原因 — 阅读失败输出,对照已发布的契约,判断是响应结构、状态码还是参数处理与契约不符。
第 3 步:修改实现 — 只针对不一致之处调整 API 实现,不改动契约本身,然后进入下一轮重新运行测试。
每轮之间运行:`npm run test:contract`
退出条件:契约测试套件退出码为 0 时停止;若已执行 10 轮仍未通过,也停止。

步骤

每一轮按顺序执行;未满足退出条件会进入下一轮,最多重复 10 轮。

01
运行契约测试

执行 npm run test:contract,记录退出码和失败的用例。退出码为 0 即视为达标。

$npm run test:contract
02
分析失败原因

阅读失败输出,对照已发布的契约,判断是响应结构、状态码还是参数处理与契约不符。

03
修改实现

只针对不一致之处调整 API 实现,不改动契约本身,然后进入下一轮重新运行测试。

未通过 → 下一轮满足条件即退出

支持的 Agent

可以直接运行这个 Loop 的编码 Agent。

Cursor
Claude Code

评论

支持 Markdown