fix(cflite): correct fuzz binary path — fuzz/ is workspace-excluded (refs #143)#147
Merged
Merged
Conversation
…refs #143) `Cargo.toml:154-157` excludes `fuzz` from the workspace, so cargo-fuzz writes binaries to the fuzz crate's own `fuzz/target/<TRIPLE>/release/` target dir, not the workspace `./target/`. The build.sh's cp source path was always wrong — `cargo +nightly fuzz build` reported `Finished` and the for loop tried `cp ./target/x86_64-unknown-linux-gnu/release/ fuzz_axiom_tracker`, which never existed, and bash -eu exited. ClusterFuzzLite has never had a green run on this repo (`gh run list --workflow cflite_pr.yml --status success` is empty); this is the actual reason. Verification: 1-line cp source-path fix; no behavioural change to the fuzz harness itself. Each `cargo +nightly fuzz list` target maps 1:1 to a `[[bin]]` in `fuzz/Cargo.toml` (fuzz_input, fuzz_proof_state, fuzz_trust_pipeline, fuzz_axiom_tracker — all four sources present in `fuzz/fuzz_targets/`).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
.clusterfuzzlite/build.shwas copying fuzz binaries from./target/x86_64-unknown-linux-gnu/release/, butfuzzis excludedfrom the workspace (
Cargo.toml:154-157), so cargo-fuzz writes to./fuzz/target/x86_64-unknown-linux-gnu/release/instead. The cpsilently failed on the first iteration (alphabetically:
fuzz_axiom_tracker) andbash -euexited the script.This is why
cflite_pr.ymlhas never had a green run on this repo(
gh run list --workflow cflite_pr.yml --status successreturnsempty).
Closes #143.
What changed
.clusterfuzzlite/build.sh:8—cp ./target/…/release/$target→cp ./fuzz/target/…/release/$targetforces this path so a future contributor doesn't "fix" it back.
Test plan
cflite_pr.ymlon this PR completes the build step and either(a) goes green within the 5-minute fuzz budget, or (b) reaches
the actual fuzz runtime and reports a real finding.
no behavioural change to the fuzz harness, no change to fuzz
target source or Cargo manifest).
🤖 Generated with Claude Code