用途:surface-contract 面向代码与文档之间的接口边界,把“书面意图”与“可执行事实”的一致性当作一等工程问题,用于编写、更新或审计文档时对齐二者。
主要能力:以 Ousterhout(文档即抽象,小表面、真深度、不泄漏调用者不该看到的细节)与 Liskov(文档即契约,前置条件、后置条件、不变量须被每个实现遵守)两套视角审视接缝。审计时识别四类接缝失败:谎言(文档承诺代码未兑现、遗漏运行时约束或已不再维护的不变量)、泄漏(文档暴露私有字段、内部时序或实现细节)、静默承诺(代码提供未文档化的便利行为,被调用者依赖后锁死实现)、浅层抽象(文档仅复述签名已显而易见的内容)。
使用方式:按步骤定位接缝(公共 API 规范、配置 schema、插件协议、核心架构等文档与对应实现文件),提取“书面理论”中的要求、约束与隐含假设,再对照“代码事实”验证签名、校验逻辑、数据库 DDL、CLI 参数等是否一致;用四类失败归类每处不匹配,再执行对齐:代码偏离正确抽象则保留深度文档并重构代码,文档泄漏则删改并替换为高层抽象,文档浅薄则重写以说明前置、后置与不变量。对齐后需通过质量门禁:gofmt、go vet、golangci-lint、go test。
适用场景:审查或编写 Go 包 API、CLI 命令、YAML 配置 schema、JSON-over-stdin/stdout 插件协议、HTTP 端点等接口的文档与代码一致性。
限制:资料未提供该技能的安装命令、收费、平台支持或具体效果数据;其示例与工作流以 Ductile 代码库为背景,其他项目需自行适配。