Start a fresh conversation. Replace the highlighted placeholders.
For the reproduction stage of parent patching-bugs run [run directory], use reproduce-bug on [finding.json] and [local baseline checkout]. Read the record contract/project guidance, build with the project's command, and exercise planned inputs plus valid controls before edits. Retain stdout/stderr, exit/timing and unchanged PoC source. Require the target compiler diagnostic or runtime PATCH_LOADED and PATCH_REACHED immediately before assertion; setup crashes are inconclusive. Deliver reproduce.json, manifested/checked reproduce/ via uv run --no-project, evidence and unknowns; report not_reproduced or blocked honestly. Do not discover, diagnose, or fix bugs.
Required inputs
run directory
finding.json
local baseline checkout
planned inputs and failure_type
User-approved starter prompt based on a pinned source version; check current skill requirements before running. Task evidence ↗
SKILL.md
name: reproduce-bugdescription: Use when a named runtime or compiler bug in a local repository needs independent reproduction.
Reproduce Bug
When to Use
Use for the reproduction step of patching-bugs with one finding.json and a local
baseline checkout. Read the record contract.
Before target commands, follow its project guidance.
When NOT to Use
Do not use for bug discovery, patching, or a claim that cannot be exercised locally.
Report a blocker when the build or environment cannot exercise the claim.
Procedure
Select failure_type from the record contract. Build the current baseline with the
project's own command. Exercise the planned scoped inputs before any edit and
retain their observations, including valid controls. Save raw stdout, stderr,
exit status, and timing. If the behavior is absent with trustworthy evidence,
report not_reproduced; if setup or observations are unreliable, report blocked.
Runtime: exercise the built target_artifact with a PoC that records PATCH_LOADED
as defined in the contract, then prints PATCH_REACHED immediately before the assertion.
Exit nonzero for the bug, zero otherwise; a setup crash is inconclusive.
Compile: record the target expected_diagnostic from the failed compiler invocation;
use empty poc_argv and null target_artifact.
Save any unchanged PoC source under reproduce/poc/ and raw receipts
under reproduce/receipts/. Write reproduce.json with the baseline commit,
command argument arrays, artifact path, observed result, outcome, and your agent
identity. Set finding.status to reproduced or not_reproduced from the result.
If reproduction is blocked, leave finding.status as hypothesis.
{
"schema_version": 1,
"failure_type": "runtime",
"outcome": "reproduced",
"baseline_commit": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"build_argv": ["python", "build.py"],
"poc_argv": ["python", "poc.py"],
"target_artifact": "dist/app.py",
"observed": "The PoC wrote outside uploads after PATCH_REACHED.",
"blocker": null,
"agent": "reproducer-1"
}
Manifest the complete reproduce/ directory, including the PoC and record, using
the record helper: run
uv run --no-project <script> manifest <reproduce-step-dir>. Then check the
record before handoff. State blocked with the actual failure when build or setup
prevents a valid run.
Rationalizations to Reject
Shortcut
Required action
A unit test imitates the bug.
Exercise the target compiler or built runtime artifact.
A nonzero exit proves reproduction.
Require the target diagnostic, or runtime marker and assertion.
reproduce-bug by trailofbits · The Skill Leaderboard