Skip to content

Conversation

maflcko
Copy link
Contributor

@maflcko maflcko commented Sep 7, 2025

As per the usual process to avoid wasted CI resources and timeouts when CI runs on large and presumed irrelevant inputs.

Normally, deletion of non-reduced fuzz inputs should happen after feature-freeze on the master Bitcoin Core branch, but before branch-off, so that the latest release branch retains mostly valid fuzz inputs.

Previous: #221

To "reproduce"

Install a fresh VM, as explained in the bash script's doc, and run it:

apt update && apt install curl -y
curl -L -O https://raw.githubusercontent.com/bitcoin-core/bitcoin-maintainer-tools/main/delete_nonreduced_fuzz_inputs.sh
bash delete_nonreduced_fuzz_inputs.sh

To "test"

  • Keep an eye on coverage stats, to ensure it doesn't drop
  • Re-run the script, to ensure it is "reproducible" to some extent
  • Anything else you think is important to test or review

CI

CI should pass, except for a lint failure, which should light up on any changes like this pull request, which delete fuzz inputs.

@maflcko
Copy link
Contributor Author

maflcko commented Sep 7, 2025

Storage device usage (du -sh ./fuzz_corpora/)

6.2G -> 2.9G

Determinism

  • ~145k fuzz input files deleted
git diff origin/main a1a5f2c539622e19185563c8a161bc46106ab66a --stat | tail -1
 145882 files changed, 479508 deletions(-)
  • Cross-diff with a second run of the script: 13k fuzz input files
git -c diff.renameLimit=8007 diff --stat HEAD a1a5f2c539622e19185563c8a161bc46106ab66a | tail -1 
 13428 files changed, 1835 insertions(+), 1785 deletions(-)

Coverage

main: https://drahtbot.space/host_reports/DrahtBot/reports/coverage_fuzz/monotree/7e58c94112d061af/8896c4758d4fd066/fuzz.coverage/index.html

this pull: https://drahtbot.space/host_reports/DrahtBot/reports/coverage_fuzz/monotree/7e58c94112d061af/a1a5f2c539622e19/fuzz.coverage/index.html

@dergoegge
Copy link
Member

ACK a1a5f2c

Ran the script myself and got the ~same size reduction

@dergoegge dergoegge merged commit db30a62 into bitcoin-core:main Sep 8, 2025
3 of 4 checks passed
@marcofleon
Copy link
Contributor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants