用途
Verify This 用于验证一个具体主张,而不是复述结论。它通过可重复的证据来证明或证伪某个主张。
何时使用
- 用户提出“验证这个”“证明它能用”“这修好了吗”或“给我看证据”。
- 一个缺陷修复需要前后复现对比。
- 一个 UI、CLI、API、性能或内存相关的主张需要测量。
- 测试通过,但用户可见行为仍需要确认。
不要用于“代码更整洁”这类模糊主张。应先要求给出可测量的主张。
工作流程
- 把主张改写为可证伪的形式:条件、指标、阈值。
- 选取能够证伪它的最小本地验证面。
- 从旧状态采集基线:合并基点、父提交、失败分支或当前损坏的复现。
- 从变更后的状态采集处理结果,使用相同的命令、数据、预热和环境。
- 对比原始产物:数字、截图、终端记录、HTTP 响应、性能剖析、堆快照或测试输出。
- 返回唯一结论:VERIFIED、NOT VERIFIED 或 INCONCLUSIVE。
本地验证面
- 代码行为:聚焦的单元/集成测试或最小复现脚本。
- CLI/TUI 行为:control-cli、终端记录或演示录制。
- UI 行为:control-ui、截图、无障碍快照或浏览器追踪。
- API 行为:本地 HTTP/RPC 请求与响应差异。
- 性能:同机基线/处理计时或 CPU 剖析。
- 内存:可疑操作前后的堆快照。
产物布局
在可以安全写入产物时:
/tmp/verify-this/<claim-slug>/ ├── claim.md ├── timeline.md ├── baseline/ ├── treatment/ ├── diff/ └── verdict.md
如果产物可能包含敏感代码、提示词、截图、HTTP 正文或堆数据,除非用户同意写入磁盘,否则只保留最小化的内联证据。
结论规则
- VERIFIED:基线与处理结果按预测方向变化,达到主张的阈值,且没有明显混杂因素。
- NOT VERIFIED:行为未改变、朝错误方向变化,或未达到阈值。
- INCONCLUSIVE:没有有效基线、信号有噪声、测量失败,或环境差异使对比失效。
输出格式
使用以下形式:
VERIFIED | NOT VERIFIED | INCONCLUSIVE Claim: <可证伪的主张>
Evidence: <指标/产物>: baseline=<...>, treatment=<...>, delta=<...>, threshold=<...>
Reasoning: <一段紧凑的说明,指出证据和任何混杂因素>
不要弱化负面结果。一个明确的 NOT VERIFIED 是有用的。