用途:以形式化契约(前置条件、后置条件、不变式)定义组件行为,覆盖契约设计、注解生成、校验与违规修复。
主要能力:前置条件表示调用方义务,后置条件表示被调方承诺,不变式约束对象状态;支持 Rust、TypeScript、Python、Java、Kotlin、C#、C++ 等语言的契约注解与检测。工作流分四阶段:PLAN(识别契约、设计谓词、映射义务)、CREATE(生成注解到 .outline/contracts/ 并接线依赖)、VERIFY(启用运行时标志、跑测试、检查违规)、REMEDIATE(按违规类型修复调用方、实现或状态管理)。
验证层级:优先编译期静态校验,其次测试/调试契约,最后才用运行时契约;能用类型系统表达就不加运行时契约。
使用方式:按语言启用相应标志,如 Rust 取消 CONTRACTS_DISABLE 后 cargo test;Python 设 ICONTRACT_SLOW=true 后 pytest;TypeScript 用 npx vitest run;C++ 取消 NDEBUG 后构建测试。命令包括 dbc-verify、dbc-detect、dbc-remediate,退出码 0 通过、1 前置条件失败、2 后置条件失败、3 不变式失败、11 缺库、12 无契约、13 校验失败。
适用场景:公共 API 边界输入校验、关键业务逻辑正确性、状态一致性、跨系统集成点、团队协作中形式化记录预期行为。
限制:资料未提供具体安装步骤、收费与平台信息;部分语言模板在原文中被截断,未完整给出。