---
name: delivery-evidence-closure
description: Use when 从 prior Nucleus result packages 生成 candidate-only 交付闭环证据和 PR/MR draft 文本。
---
# Delivery Evidence Closure
> 前置:使用本 Skill 前,先按 `using-nucleus` 完成 Nucleus 入口识别(Claude Code 会话由插件 SessionStart hook 自动注入该纪律)。
当 coding agent 需要汇总交付证据、准备可供人工审查的交付收口材料时使用本 Skill。
## 核心原则
交付收口只能汇总已经发生且可追溯的证据;它不能补造开发完成、人工 PR/MR 审查、合入或发布事实。
任何特性任务包缺设计、设计评审、实施计划、计划确认、实现、验证、multi-review、整改或整改复核证据时,不得准备 PR/MR draft 或声明交付可审。
未创建宿主 todo/task 任务包,不得生成 delivery closure candidate、PR/MR draft 或 result package。
到达 `delivery-closure-review` 人审点时,按 `_shared/references/subagent-precheck-protocol.md` 执行 `subagentPreReview` 子代理预审;未取得“材料可提交人工审查”结论前,不得请求人工交付评审。
## Checklist
启动本 Skill 后,必须先为以下每一项创建宿主 todo/task,并按顺序执行;Codex 使用计划 / 任务工具,Claude Code 使用 TodoWrite 或等价宿主 todo。每完成、阻塞、等待 review 或需要复核一项,都必须逐项更新状态。
1. **读取 prior result**:读取明确的 prior result package 和 `.nucleus/context/.json`;缺可信 result 时 `ALERT_AND_BLOCK`。
2. **创建宿主任务包**:把本 checklist 同步成当前会话的宿主 todo/task;未同步前不得生成 closure candidate 或 PR/MR draft。
3. **收集交付证据**:读取 quality gate、test report、git changed files、commit metadata 和相关 review evidence。
4. **校验特性任务包完整性**:确认每个 feature task package 都有设计、设计评审、实施计划、spec anchor、计划确认、实现、验证、multi-review、整改和整改复核证据。
5. **重算 spec compliance**:读取每个特性的 `specAnchor` 和 `feature-development/spec-compliance-evidence.json` 正文,按 changed files 重新计算 applicable rules、required evidence、UI design coverage 和公共组件 / 公共样式证据;缺 spec anchor、factsManifestHash stale、报告正文为空、blocking rule 证据缺失、UI frame 仍是 `pending-export` 或 required UI 缺截图 / 视觉证据时 `ALERT_AND_BLOCK`。
6. **阻塞缺失证据**:任何关键证据缺失时 `ALERT_AND_BLOCK`;不得用 summary、result 或 PR/MR draft 补造事实。
7. **生成收口候选**:只生成 delivery closure candidate 和 PR/MR description draft;draft 只是待审文本。
8. **等待交付人工评审**:到达人审点时按 `_shared/references/subagent-precheck-protocol.md` 执行 `subagentPreReview`,确认材料可提交人工审查后,再按 `_shared/references/interaction-format.md` 的确认型格式向用户或 PMS 呈现:先给结论(本次完成了什么、变更范围、测试状态),再展开候选材料、PR/MR draft 和缺口;缺 `delivery-closure-review` 时 STOP。
9. **写入结果证据**:构建 result package;delivery closure candidate、PR/MR draft、summary 和 result 不能替代宿主任务或人工 review,也不代表 PR/MR 已创建、已审查、已合入或已发布。
PR/MR draft 不代表 PR/MR 已创建、已审查、已合入或已发布。
## 特性开发中的角色
在特性开发场景下,只有当需求内每个特性任务包都完成时,本 Skill 才可准备 PR/MR draft 文本。完成的标准是:每个特性都有设计、设计评审、实施计划、spec anchor、计划确认、实现、验证、multi-review、整改和整改复核证据。
draft 必须汇总需求、特性、已评审设计、计划、实现、测试、review 发现、整改和证据。它不得声明人工 PR review、合入批准、版本排期或发布批准。
## 边界
- 读取 `.nucleus/context/.json` 中明确的 context package。
- 把 prior result、quality gate、test report、git changed file 和 commit metadata 作为证据读取。
- 只在 `.nucleus/runs//` 下写 closure candidate、PR/MR draft、gate、blockers 和 result。
- 即使证据不足、最终状态为 `FAILED_BLOCKED`,也要写 `delivery-closure-candidate.json`,除非 prior result / schema / path 本身不可信。
- closure 证据完整到可供审查时返回 `NEEDS_HUMAN_REVIEW`。
- 缺 result package、gate 阻塞、缺测试、变更无归属、写保护路径、legacy path、PMS 驱动模式下缺 session binding 或 schema 失败时返回 `FAILED_BLOCKED`。
本 Skill 不创建 PR/MR,不 commit、push、merge、release,也不关闭缺陷。
## STOP 点
- 任一特性任务包不完整:`ALERT_AND_BLOCK`。
- 任一特性缺 spec anchor、factsManifestHash 失效、completion gate 证据或 spec compliance 正文覆盖:`ALERT_AND_BLOCK`。
- 任一特性存在 required UI 设计源但缺 ready frame mapping、截图 / 视觉对照或公共组件 / 公共样式契约证据:`ALERT_AND_BLOCK`。
- 任一特性缺 multi-review、整改或整改复核证据:`ALERT_AND_BLOCK`。
- 在没有 `delivery-closure-review.subagentPreReview` 和真实人工事实时,请求记录 PR/MR 人工 review、合入批准、版本排期或发布批准:`ALERT_AND_BLOCK`。
- 请求在 PR/MR 创建后继续批准、合入或发布:`ALERT_AND_BLOCK`。
## 禁止
- 用 summary.md 代替 result package、test report 或 review evidence。
- 把 PR/MR draft 写成已审查、已合入或已发布。
- 在所有特性完成前收口整个需求。
- 把 delivery closure candidate、summary 或 result 当成宿主任务、人工 review、PR/MR 创建、合入或发布事实;只有按 `_shared/references/subagent-precheck-protocol.md` 完成预审、确认材料可提交人工审查后,才可进入后续人工 review。
## Runtime
```bash
python3 skills/delivery-evidence-closure/scripts/delivery_evidence_closure.py close \
--repo-root \
--context /.nucleus/context/.json
```
runtime 只导入打包的 Skill 资产和 `skills/_shared/nucleus_runtime/`,不导入根目录 `harness/` 或根目录 `scripts/`。