Independently replay a PoC
Input: candidate, frozen source records, complete sealed reproduction package and registry assignment.
Install
/plugin install trailofbits/skills/plugins/regression-hunt Run in Claude Code to add the Regression Hunt plugin, then enable this skill.
When to Use
Input: candidate, frozen source records, complete sealed reproduction package and registry assignment. Use a fresh context distinct from the reproducer. Follow project guidance before target work.
When NOT to Use
Authoring or repairing the PoC. Return changes to the caller for reproduction; changed PoCs require new reproduction and replay.
Replay
- Read the standard and file contract. Verify the package; read setup and security guidance. Stop execution if prerequisites fail.
- Independently build and run actual S0/S1 only inside your attempt directory; never reuse another attempt's build output. List every build directory in
build_dirs. Execute the unchanged PoC with the same input against both. Record whether S0 behaves correctly and S1 exhibits the claimed failure. - Check real interface reachability using only the claimed user's/attacker's access. Save setup, versions, commands, observations and separate logs.
- Write and seal
replay.json, referencing the reproduction record and original PoC/input. Record divergence or blockers; uncertainty stays unresolved. Release temporary resources without deleting evidence.
Report Back
Keep detailed evidence in the sealed package. Return only:
- Status:
completeorblocked, matching the record. - Record: sealed
replay.jsonpath, or why none was produced. - Result: one sentence describing observed agreement or divergence.
- Blocker: missing prerequisite or required caller action, if blocked.
Completion means the replay attempt finished, not that the regression is confirmed.
Rationalizations to Reject
- “The previous logs look right”: replay requires your own execution.
More in Regression Hunt
- Adjudicate evidence Input: candidate, frozen sources, available reproduction/replay packages and registry assignment.
- Discover candidates Input: sealed preparation, frozen S0/S1, change context and registry assignment.
- Prepare a change Input: PR URL or repository plus commit/range, and registry assignment.
- Coordinate a regression hunt Investigate supplied PRs of any status or commits, including local commits.
- Report a campaign Input: frozen scope.json, campaign index, progress ledger, sealed stage packages and registry assignment.
- Reproduce a candidate Input: sealed preparation/discovery packages, candidate and registry assignment.