feat(fuzzing): add seed corpus preparation#555
Conversation
|
Thanks our robot helper @Hinotoi-agent im looking now |
|
I have run this locally against the current The good bit: this is a small, focused change and the test coverage is decent. I did not see anything that looks deliberately malicious: no new network calls, no hidden subprocess execution, no credential access, and no import-time side effects. The branch fast-forwards cleanly onto current I would hold off merging for one fix though and it's a small one but it needs sorting: The new seed corpus helper resets generated output directories before preparing the corpus:
I reproduced this safely in This does not look malicious to me, but it is a dangerous footgun. I think we should add a guard before merge:
Once that is fixed, I am comfortable with the direction of the PR. It adds useful deterministic seed preparation, but the output path safety needs tightening first. |
|
Thanks for the careful review and the local repro. I tightened the seed corpus output guard in the PR branch. What changed:
Validation run locally:
I also noticed |
|
Thanks for turning this round. I re-tested the updated PR against current Validation on my side:
So from me this is good to merge. Sensible fix, decent tests, and no drama. I, for one, am enjoying working with our new robot overlords when they take feedback this well. |
Summary
prepare_seed_corpushelper for fuzzing fixtures/examplesraptor_fuzzing.py --prepare-corpuswith output, max-size, and lockfile controlsValidation
uv run python -m pytest packages/fuzzing/tests/test_seed_corpus.py -quv run python -m pytest packages/fuzzing/tests -quv run ruff check --ignore F541 packages/fuzzing/seed_corpus.py packages/fuzzing/tests/test_seed_corpus.py packages/fuzzing/__init__.py raptor_fuzzing.pyuv run python -m compileall -q packages/fuzzing raptor_fuzzing.pygit diff --checkraptor_fuzzing.py --prepare-corpus ... --seed-out ... --no-sandboxtwice against a temporary project to verify deterministic, non-recursive output and.envskipping