给 AI 文档加上可持续校验的源码引用
文章提出用版本化 YAML 将文档章节绑定到文件、符号、测试及负责人,并在每次 PR 中检查证据引用是否仍可解析。该方案是可改造的参考设计,旨在暴露代码变动导致的文档依据失效。
原文暂未完整获取,基于公开信息的快读
AI 生成的文档,代码改了之后谁来复查?dev.to 的一篇文章提出,用版本化 YAML 把文档章节绑定到源码、符号和测试,在每次 PR 中检查引用能否解析,失效就阻止发布。作者将它定位为可改造的参考设计,没有给出经过基准验证的产品效果。
目前能确认什么
方案先为每个章节声明归属和证据。模型负责的章节只能依据指定证据起草,每句话附上引用标记;发布前去掉标记,在 PR 描述中保留,供审查者追溯。人工负责的章节则通过内容哈希绑定签署记录,正文变化后需要重新确认。
节选中的 Python 脚本检查三件事:文件是否存在、正则表达式能否匹配源码、指定测试能否被 pytest 收集。测试收集只确认测试仍可发现,不执行测试,也不能证明测试通过。
这些检查可以接入持续集成(CI),让引用失效随代码变更一起暴露。文章同时披露,它属于 MonkeyCode 的产品推广内容。
我的判断
这套方案能发现文档失去依据,却不能保证文档仍然说对了。
例如,源码中的 RETRY_LIMIT 从一个数字改成另一个数字,示例正则仍能匹配,文档里的旧默认值却可能继续通过检查。给句子附上 [ev:1],也只证明它带了标记,不能证明证据支持这句话。
对程序员更有用的部分,是把文档维护责任落实到章节,并在文件删除、符号迁移、测试移除时提供明确的失败信号。默认值、边界条件和行为描述是否同步,仍需要检查证据内容与文档断言的关系。
节选里的实现也有缺口:YAML 声明了 max_age_days,脚本没有检查;人工签署的哈希校验需要自行扩展。仅给模型文件路径和正则后,如何让它读取实际证据,节选也没交代清楚。因此,现有代码还不能直接视为完整的文档发布门禁。