Validate Bug
Use after reproduce-bug has supplied a finding and PoC package.
Install
/plugin install trailofbits/skills/plugins/patching-bugs Run in Claude Code to add the Patching Bugs plugin, then enable this skill.
When to Use
Use after reproduce-bug has supplied a finding and PoC package. Read the
record contract.
Before target commands, follow its project guidance.
When NOT to Use
Do not use to repair a PoC, develop a patch, or infer reproduction from the reproducer's narrative.
Procedure
Read
finding.json, the reproduction's proof type, commands, any PoC, and raw receipts. Do not read the reproducer's transcript.Rerun the same baseline compiler command for compile failures, or rebuild and rerun the unchanged runtime PoC and planned scoped inputs. Save stdout, stderr, exit status and timing in
validate/receipts/. If an observation is unreliable, returninconclusiveinstead of inferring either presence or absence.Decide whether the target diagnostic or runtime assertion demonstrates the exact claim and violates the stated invariant. Write
validate.jsonasconfirmed,not_confirmed, orinconclusivewith a short reason and agent identity.
{
"schema_version": 1,
"outcome": "confirmed",
"agent": "validator-1",
"reason": "The unchanged PoC reached the assertion and demonstrated the claim."
}
- Manifest the complete
validate/directory withuv run --no-project <script> manifest <validate-step-dir>, then run the record checker. Return the package without editing the PoC or finding.
Rationalizations to Reject
| Shortcut | Required action |
|---|---|
| Fix the PoC to make the claim work. | Mark it inconclusive and explain why. |
| Trust the reproducer's conclusion. | Rerun the unchanged package independently. |
More in Patching Bugs