关于 artifact-contract-auditor
artifact-contract-auditor 检查已完成单元和流水线目标所承诺的文件是否存在,并生成覆盖报告。它区分部分运行与终结运行,只核验文件覆盖,不替代更深入的来源完整性审计。
主要功能
- 01读取锁定的流水线契约
- 02检查已完成单元的必需输出
- 03按运行阶段检查最终目标
- 04报告缺失路径与状态
- 05指出失败项的修复归属
适用场景
- 01检查已完成单元是否生成约定文件
- 02确认终结运行包含所有必需目标产物
- 03定位文件覆盖失败并确定修复责任
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ willoscar/ research-units-pipeline-skills --skill artifact-contract-auditor安装后在 Claude Code 中输入/artifact-contract-auditor确认已加载。
附带文件scripts/run.py
详细介绍
制品契约审计器
此 Skill 用于衡量覆盖情况:检查各 Unit 和锁定的 Pipeline 承诺提供的文件是否在需要时存在。它不会取代 pipeline.py audit 中更深入的 Attempt、Manifest、制品哈希和台账检查。
输入
UNITS.csv。PIPELINE.lock.md。- 锁定的
pipelines/*.pipeline.md目标制品契约。
输出
output/CONTRACT_REPORT.md。
步骤
1. 确定生效的契约
读取 PIPELINE.lock.md,解析此仓库中的 Pipeline,并解析 UNITS.csv。如果锁定文件无效或 Unit 表格式错误,应将其视为可报告的契约失败,而不是猜测其他工作流。
完成标准:一个 Pipeline 契约和一个可读取的 Unit 表已绑定到此次审计。
2. 检查已完成 Unit 的输出
对于每个状态为 DONE 的 Unit,验证其每项必需输出是否存在。以 ? 为前缀的输出是可选的。即使 Pipeline 仍在运行,缺少必需输出也属于 Unit 级别的契约偏差。
完成标准:每个状态为 DONE 的 Unit 都被归类为输出完整,或被列出并附上每个缺失的必需路径。
3. 在适用时检查 Pipeline 最终目标
确定所有 Unit 是否都已进入终态(DONE 或 SKIP)。只有在此之后,才要求 Pipeline 声明的每个非可选目标制品。在部分 Run 期间,应将缺少最终目标报告为预期情况,而非失败。
完成标准:根据实际 Run 阶段评估最终目标的完整性,而不只是检查文件是否缺失。
4. 编写报告
始终写入 output/CONTRACT_REPORT.md,并设置以下状态之一:
PASS:Run 已进入终态,Unit 输出完整,Pipeline 目标完整。OK:Run 尚未完成,已完成 Unit 的输出符合要求。FAIL:状态为DONE的 Unit 缺少输出,或已进入终态的 Run 缺少最终目标。
完成标准:报告注明评估的 Pipeline、Run 阶段、状态,以及所有阻断问题涉及的缺失路径。
5. 安排下一步操作
对于缺失的 Unit 输出,通过 Pipeline 适配器重新打开或重新运行所属 Unit。对于缺失的最终目标,确定所属 Unit 或 Skill。文件覆盖检查通过后,使用 scripts/pipeline.py audit 检查来源完整性。
完成标准:每项 FAIL 都有负责人和修复路径;任何 PASS 声明都明确限于已声明文件的覆盖情况。
上下文指引
- 锁定的 Pipeline front matter 是目标制品的唯一来源。
UNITS.csv是 Unit 输出义务的唯一来源。- 使用深度 Run Audit 检查 Attempt 配对、Manifest 身份、哈希、Decision、Failure 和 Evaluation 的一致性。
脚本
快速开始
uv run python .codex/skills/artifact-contract-auditor/scripts/run.py \
--workspace workspaces/<name>
所有选项
--workspace <path>:要审计的工作区。--unit-id <U###>、--inputs、--outputs、--checkpoint:可选的 Pipeline 运行器兼容参数。
示例
查看接口:
uv run python .codex/skills/artifact-contract-auditor/scripts/run.py --help
覆盖检查通过后,运行更深入的来源审计:
uv run python scripts/pipeline.py audit --workspace workspaces/<name>
副作用
审计可能会创建或替换 output/CONTRACT_REPORT.md。不得编辑研究内容、Unit 状态、检查点审批或源制品。