$npx -y skills add BlueprintOS/analysis-to-delivery --skill verification-before-completion完成任务前验证(铁律)— 来自 superpowers 体系。本 skill 是桥接层,完整纪律见 <SUPERPOWERS_SKILL_ROOT>/verification-before-completion/。
| 1 | # Verification-Before-Completion(桥接到 superpowers) |
| 2 | |
| 3 | ## Contract |
| 4 | |
| 5 | - Inputs: completion claim, verification commands, implementation/documentation outputs |
| 6 | - Outputs: verification report using IDENTIFY/RUN/READ/VERIFY/THEN |
| 7 | - Gates: full verification command succeeds and output supports the claim |
| 8 | - Required disciplines: `stage-gate` |
| 9 | - Next: commit, fix loop, or `/handoff` |
| 10 | |
| 11 | > **本仓库不维护此 skill 的内容**。完整纪律请读: |
| 12 | > `<SUPERPOWERS_SKILL_ROOT>/verification-before-completion/SKILL.md` |
| 13 | |
| 14 | ## 何时调 |
| 15 | |
| 16 | - 每个子任务结束时(在 commit 之前) |
| 17 | - 整个开发冲刺结束时(在 HANDOVER 之前) |
| 18 | |
| 19 | ## 衔接点 |
| 20 | |
| 21 | - **产出**:验证报告(IDENTIFY → RUN → READ → VERIFY → THEN 5 步门控) |
| 22 | - **下一步**:commit(通过)或修复(失败) |
| 23 | - **门控**:`disciplines/stage-gate` 第 3 层(失败必须重新跑) |
| 24 | |
| 25 | ## 5 步门控 |
| 26 | |
| 27 | 参考完整纪律: |
| 28 | 1. **IDENTIFY** — 什么命令能证明这个声明? |
| 29 | 2. **RUN** — 执行完整的验证命令 |
| 30 | 3. **READ** — 读完整输出,检查退出码 |
| 31 | 4. **VERIFY** — 输出是否确认了声明? |
| 32 | 5. **THEN** — 才能做出声明 |
| 33 | |
| 34 | > **铁律:跳过任何一步 = 撒谎,不是验证。** |
| 35 | |
| 36 | ## 降级方案(superpowers 未装时) |
| 37 | |
| 38 | 如果 `<SUPERPOWERS_SKILL_ROOT>/verification-before-completion/` 不存在,严格按以下 5 步门控(铁律,不允许跳): |
| 39 | |
| 40 | ### 1. IDENTIFY — 什么命令能证明这个声明? |
| 41 | |
| 42 | - 把"已完成 / 通过 / 成功"翻译成**可执行的命令** |
| 43 | - 例如:"已修复 ASN 收货 bug" → `mvn test -Dtest=AsnReceiveServiceTest` |
| 44 | - ❌ 没有命令 = 你不知道自己在声称什么 |
| 45 | |
| 46 | ### 2. RUN — 执行完整命令 |
| 47 | |
| 48 | - 命令必须**完整执行**(不能只看 stdout 头几行就停) |
| 49 | - 包含退出码 / 错误输出 |
| 50 | - 用 `; echo "exit=$?"` 拿退出码 |
| 51 | |
| 52 | ### 3. READ — 读完整输出 |
| 53 | |
| 54 | - 读**全部**输出,不只是你期望的那部分 |
| 55 | - 数失败数 / 数 PASS 数 / 检查退出码 |
| 56 | - ❌ 看一半就跳 = 漏掉隐藏失败 |
| 57 | |
| 58 | ### 4. VERIFY — 输出是否真的支持声明? |
| 59 | |
| 60 | - 把命令输出对照你的声明 |
| 61 | - 输出支持 → 进 THEN |
| 62 | - 输出**反对**你的声明 → 立刻如实汇报(不允许"应该可以了") |
| 63 | - ❌ "看起来是对的" 一律不算 |
| 64 | |
| 65 | ### 5. THEN — 才能做出声明 |
| 66 | |
| 67 | - **经过前 4 步后**才能写"完成 / 通过 / 成功" |
| 68 | - 必须附证据:命令 + 退出码 + 关键输出片段 |
| 69 | - ❌ 没跑就声明 = 撒谎 |
| 70 | |
| 71 | ### 最小纪律摘要 |
| 72 | |
| 73 | - **IDENTIFY 写不出命令 = 这个声明不成立** |
| 74 | - **RUN 不完整 = 假装在验** |
| 75 | - **READ 跳着看 = 漏失败** |
| 76 | - **VERIFY 不严 = 给自己找借口** |
| 77 | - **THEN 没附证据 = 不可信** |
| 78 | |
| 79 | ### 安装提示 |
| 80 | |
| 81 | ```bash |
| 82 | npx skills@latest add obra/superpowers-verification-before-completion |
| 83 | ``` |