用途
本技能用于产出 TESTER 与 DEV 唯一共同阅读的文档——用户故事(HU)从外部视角必须完成什么,且描述精度足以让两个互不相见的智能体得到相同结果。契约固定“可观察”的部分,内部实现留给 DEV 自由发挥。
该技能不构建任何东西。它只编写、提问,然后停止。
输入
- 用户故事(HU):若已连接则通过 MCP 从 Jira 获取,或使用指定的文件/链接。若存在未解决的开放问题,则停止:在编写契约前先升级处理。
- TECH-DESIGN.md:与本 HU 对应的小节及验收标准。
- adrs/:仅限本 HU 的故事级 ADR(以及制约其接口的横切 ADR,例如 API 风格)。
- AGENTS.md:项目约定。
- contratos/ 中已有的先前契约——以免与已固定的名称冲突。
工作流程
- 组装上下文包:HU + 适用的 ADR + TDD 小节,仅此而已。列出哪些内容进入了上下文包以及原因。
- 识别使用该功能所经过的可观察接口(一条 HTTP 路由、一个界面、一条命令、一个事件等)。契约基于该接口编写。
- 对每个 Gherkin 场景和 TDD 的每条验收标准,推导出各用例:
- 精确输入(路由、参数、格式);
- 每个用例的精确输出(状态码、数据、可见文本、持久化效果);
- 错误(何种非法输入产生何种响应)。
- 固定不可协商的名称:路由、字段、可见消息、格式。这些是 TESTER 将逐字校验的内容。
- 标注每一行的来源(Gherkin 场景、TDD 标准、ADR)。没有来源的行属于新决策:标记为“DECISIÓN PROPUESTA(提议决策)”,并进入提交给人工的问题清单。绝不将其呈现为来自 HU。
- 声明哪些内容不属于契约(所有内部内容:结构、函数名、查询)→ 属于 DEV 的自由范围。
- 使用 assets/contrato-template.md 保存 contratos/CONTRATO-<HU>.md,版本 v1。
- 停止。向人工呈现契约与问题清单。不调用任何其他智能体。
版本管理
当周期中出现空缺(由 TESTER、DEV 或裁决报告)时:
- 向人工提出问题;
- 根据回答编辑契约,提升版本(v2、v3……),并在 changelog 中新增一行(改了什么、为什么、谁批准);
- 由 LEAD 通知 TESTER 和 DEV 新版本。
约束
- 不用假设补全 HU 未说明的内容:要提问。
- 不在契约中描述内部实现。
- 如与先前契约中已固定的名称相冲突,必须明确说明,不得默认违反。
- 不发布任何内容。
适用场景
适用于多智能体(TESTER、DEV)并行协作、需要以“可观察契约”作为唯一事实来源的软件交付流程;尤其是通过 Jira/MCP 管理用户故事、并维护 TECH-DESIGN.md、ADR 与 AGENTS.md 约定的项目。
限制
技能本身不实现功能、不调用其他智能体、不发布内容。用户故事存在未决开放问题时会停止。对于 HU 未提供的事实,只能提问,不能编造。