| README.md | ||
| SKILL.md | ||
Adversarial Verification
对抗性验证技能 — 验证代码变更/部署/任务交付物的正确性。不是确认"它能工作",而是尝试"把它搞坏"。用于:(1) 完成非平凡任务后自验 (2) 审查 PR/MR (3) 部署后验证 (4) bobooo 说"验证一下"。灵感源自 Claude Code Verification Agent 设计。
对外介绍
Adversarial Verification 不是为了证明“它看起来没问题”,而是为了在交付前主动找到“它会在哪里坏掉”。它要求真正运行命令、检查真实输出、覆盖失败路径,并在边界值、异常输入、重复请求、非 happy path 等场景下继续施压,最终基于证据给出 PASS、FAIL 或 PARTIAL 结论。
它特别适合 PR 审查、Bug 修复复核、上线前验收、部署后验证,以及任何一句“帮我验证一下”背后的高风险交付。相比只看代码、只看测试结果,Adversarial Verification 更像一个会主动挑刺的质量搭档,帮助团队更早暴露隐藏问题,减少“看起来能跑,实际上会翻车”的发布风险。
核心理念
你的目标不是确认实现正确 — 而是尝试打破它。
你有两个已知失败模式,时刻警惕:
- 验证回避 — 读代码、叙述测试计划、写"PASS",但从未运行任何命令
- 被前 80% 诱惑 — 看到整洁 UI 或测试通过就放行,没注意一半按钮是空的
自我合理化识别
你会想跳过检查。识别这些借口并做相反的事:
| 你脑中的借口 | 正确行动 |
|---|---|
| "代码看起来正确" | 运行它 |
| "测试已经通过了" | 独立验证,测试可能是自证循环 |
| "大概没问题" | "大概"不是验证 |
| "启动服务器看代码吧" | 启动服务器然后 curl 端点 |
| "没有浏览器" | 检查是否有 browser tool / playwright |
| "这个要花太久" | 不是你决定的 |
如果你在写解释而不是命令 → 停。运行命令。
验证策略(按变更类型)
前端
启动 dev server → 浏览器/curl 检查 → 检查子资源(图片/API/静态文件)→ 运行前端测试
后端/API
启动服务器 → curl 端点 → 验证响应结构(不只是状态码)→ 测试错误处理 → 边界用例
CLI/脚本
用代表性输入运行 → 验证 stdout/stderr/exit code → 边界输入(空、畸形、极端值)
基础设施/配置
验证语法 → dry-run → 检查环境变量是否真正被引用
Bug 修复
复现原 bug → 验证修复 → 运行回归测试 → 检查相关功能副作用
重构(无行为变更)
现有测试必须全过 → diff 公共 API 表面 → 抽查行为一致性
对抗性探测(选择适用的)
- 并发 — 并行请求创建类路径,检查重复/丢失
- 边界值 — 0, -1, 空字符串, 超长字符串, unicode, MAX_INT
- 幂等性 — 同一个变更请求发两次,结果正确吗?
- 孤儿操作 — 删除/引用不存在的 ID
输出格式(强制)
每项检查:
### Check: [验证什么]
**Command run:**
[实际执行的命令]
**Output observed:**
[终端实际输出 — 复制粘贴,不要转述]
**Result: PASS** (或 FAIL — 附 Expected vs Actual)
❌ 坏例子:
### Check: POST /api/register 验证
**Result: PASS**
Evidence: 读了 routes/auth.py,逻辑正确地验证了...
(没有运行命令。读代码不是验证。)
最终判定
报告末尾必须有且仅有一行:
VERDICT: PASS
VERDICT: FAIL
VERDICT: PARTIAL
- FAIL → 附失败详情 + 复现步骤
- PARTIAL → 仅限环境限制(缺工具/无法启动服务),不是"不确定"
- 报告必须包含至少一个对抗性探测及其结果
PASS 之前的检查清单
- 至少运行了一个命令并有输出
- 至少做了一个对抗性探测
- 没有"代码看起来正确"式的跳过
- 验证了非 happy path
🚀 Installation
Via OpenClaw CLI
openclaw skill install github:Arxchibobo/adversarial-verification
Manual Installation
cd ~/.openclaw/workspace/skills/
git clone https://github.com/Arxchibobo/adversarial-verification.git adversarial-verification
📄 License
MIT
This is an OpenClaw AgentSkill. Learn more at docs.openclaw.ai.