validate-bug について
validate-bug は、reproduce-bug の後にバグの再現パッケージを独立して検証するスキルです。変更されていないPoCまたはコンパイラーコマンドを再実行し、主張を確認、未確認、判定不能のいずれかで記録します。
主な機能
- 01発見記録と生のレシートを確認
- 02変更されていない再現手順を再実行
- 03定められた不変条件に照らして評価
- 04検証レシートと判定をパッケージ化
活用シーン
- 01再現済みバグの独立検証
- 02不確かな再現証拠の判定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ trailofbits/ skills --skill validate-bugインストール後、Claude Code で/validate-bugを入力して読み込まれたか確認します。
詳細
バグの検証
使用するタイミング
reproduce-bug が調査結果と PoC パッケージを提出した後に使用します。
記録の仕様を確認してください。
対象に対するコマンドを実行する前に、そのプロジェクトのガイダンスに従ってください。
使用しない場合
PoC の修正、パッチの開発、または再現者の説明から再現性を推測する目的では使用しないでください。
手順
-
finding.json、再現の証拠タイプ、コマンド、PoC がある場合はその内容、および生の証跡を確認します。 再現者のトランスクリプトは読まないでください。 -
コンパイルエラーの場合は同じベースラインのコンパイラーコマンドを再実行します。実行時の PoC の場合は、変更せずにビルドし直して実行し、計画したスコープ内の入力も実行します。標準出力、標準エラー、終了ステータス、実行時間を
validate/receipts/に保存します。観察結果が信頼できない場合は、存在または不在を推測せず、inconclusiveを返してください。 -
対象の診断または実行時アサーションが、主張の内容そのものを実証し、明記された不変条件に違反しているかを判断します。短い理由とエージェントの識別情報を添えて、
confirmed、not_confirmed、inconclusiveのいずれかとしてvalidate.jsonを記述します。
{
"schema_version": 1,
"outcome": "confirmed",
"agent": "validator-1",
"reason": "The unchanged PoC reached the assertion and demonstrated the claim."
}
uv run --no-project <script> manifest <validate-step-dir>を実行してvalidate/ディレクトリ全体のマニフェストを作成し、レコードチェッカーを実行します。 PoC や調査結果を編集せず、パッケージを返してください。
却下すべき安易な判断
| 近道 | 必須の対応 |
|---|---|
| 主張を成立させるために PoC を修正する。 | inconclusive とし、その理由を説明します。 |
| 再現者の結論を信頼する。 | 変更していないパッケージを独立して再実行します。 |