ai-robot-channel/agents.md

2.9 KiB
Raw Permalink Blame History

agents.mdai 编码硬规则,必须遵守)

0. 开始编码前(必须)

  • 必须已读取(路径格式:spec/<module>/...
    • spec/contracting.md(契约硬规则)
    • spec/<module>/requirements.md(当前模块需求)
    • spec/<module>/openapi.provider.yaml(本模块提供)
    • spec/<module>/openapi.deps.yaml(本模块依赖,如存在)
  • 长会话/复杂任务接续:若当前任务满足 docs/session-handoff-protocol.md 中的触发条件,必须先读取并持续更新 docs/progress/{module}-{feature}-progress.md
  • 若上述任一文档缺失、冲突或内容不明确:
    • 禁止开始实现
    • 必须在 spec/<module>/tasks.md 记录“待澄清”并停止

1. 提交与同步Git Cadence必须

  • 提交粒度
    • spec/<module>/ 下的规范文件变更必须单独 commit(不得与实现代码混在同一 commit
    • 实现代码按 spec/<module>/tasks.md子任务完成为粒度提交。
  • 提交触发点(满足任一且必须通过“最小自测”):
    • 任何 spec/<module>/ 规范文件发生变更。
    • 任一 spec/<module>/tasks.md 子任务完成(从 /🔄)。
    • 触发 docs/session-handoff-protocol.md 阈值并准备会话接续前。
  • 最小自测(必须)
    • 能编译/构建通过。
    • 单元测试通过。
    • 至少一条契约校验或接口冒烟通过(与本次变更相关)。
  • 提交质量(必须)
    • 严禁提交编译不通过或未通过最小自测的代码(不允许 checkpoint commit
    • commit message 必须包含关联的验收标准 IDfeat/fix: <desc> [AC-...]

2. 防需求偏移(必须)

  • 未更新 spec/<module>/requirements.md 前,禁止改变业务规则、验收口径或用户可见行为。
  • 代码/测试/提交必须可追溯到验收标准:
    • controller/endpoint 注释(或 @Operation 描述)必须包含 [AC-...]
    • 测试类名或测试用例名必须包含 [AC-...]
    • commit message 必须包含 [AC-...]

2. 接口契约与成熟度(必须,细则见 spec/contracting.md

  • OpenAPI 文件必须声明全局成熟度:info.x-contract-level: L0|L1|L2|L3
  • Provider 合并门槛openapi.provider.yaml < L2 时,禁止将实现代码自动合并到 main。
  • Consumer 并行规则:允许在 feature 分支基于 openapi.deps.yamlL0/L1 级别进行并行开发Mock/SDK/页面流),无需等待提供方实现。

3. 自动合并门槛(全通过才允许)

  • 单元测试通过。
  • 契约测试通过Provider 响应符合 OpenAPI Schema满足 L2 要求)。
  • OpenAPI Diff 检查通过(无未声明 breaking change
  • 需求追踪检查通过AC 引用未断裂,且符合 spec/contracting.md 的自检清单)。

4. 分支与提交规范

  • 分支:feature/<AC-ID>-descfix/<AC-ID>-desc
  • commitfeat/fix: <desc> [AC-ID]