Skip to content

契约扫描

是什么

契约扫描就是在开始新需求之前,先看看项目里已经有哪些约束不能碰。

它的工作可以理解为四步:从文档和历史记录中提取约束 → 根据当前任务匹配相关内容 → 判断每条约束的适用范围 → 把结果注入到实施阶段的执行上下文中,让 AI 在写代码时就自动遵守。

为什么需要它

AI 如果只看当前任务,很容易忽略已有的设计决策和历史约束。比如:

  • 旧功能的兼容性要求
  • 某些路径的命名规则
  • 之前犯过的、已经记录下来的流程错误

这些约束不会在当前需求里重复出现,但违反它们会导致新功能和已有架构冲突,或者重复犯已经记录过的错误。

契约扫描让 AI 在开始实现前就看到这些"红线",避免无意中踩雷。

它会扫描哪些内容

在需求设计阶段,OpenFlow 会自动扫描以下来源:

  • docs/current/ — 当前系统事实
  • docs/decisions/ — 架构决策记录
  • docs/current/workflow/ai-reflection/ — AI 反思记录
  • 已归档需求中的关键约束

扫描会通过多种方式匹配约束:按文件路径匹配、按目录前缀匹配、按关键词匹配。匹配到的约束会被整理成一个约束包,在后续实施阶段自动注入给 AI。

与其他机制的关系

契约扫描和 漂移检测 是一对:契约扫描负责发现"应该遵守什么",漂移检测负责检查"现在是否仍然遵守"。

它也会读取 AI 反思 产生的流程约束,帮助 AI 避免重复犯同类错误。

Released under the MIT License.