Skip to content

feat(corpus): add low-weight crossover mutators#15365

Open
decofe wants to merge 1 commit into
masterfrom
centaur/add-lightweight-crossover-mutators-1782356515
Open

feat(corpus): add low-weight crossover mutators#15365
decofe wants to merge 1 commit into
masterfrom
centaur/add-lightweight-crossover-mutators-1782356515

Conversation

@decofe

@decofe decofe commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add low-weight crossover insert/replace corpus mutators using persisted corpus entries as donor transactions
  • expose fuzz and invariant mutation weights for the new strategies
  • update default mutation ratios so existing strategies remain equally weighted and crossover strategies run less often
  • cover disk-backed insert/replace behavior and CLI config parsing

Prompted by: @0xalpharush

Tests

  • cargo test -p foundry-evm invariant_crossover -- --nocapture
  • cargo test -p forge --lib fuzz_and_invariant_config_flags -- --nocapture

Note: cargo test -p forge test_config_args -- --nocapture built successfully but then ran unrelated lint UI tests and failed with solc-0.8.35: Text file busy (os error 26).

@0xalpharush

Copy link
Copy Markdown
Collaborator

derek bench invariant

@github-actions

github-actions Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

cc @0xalpharush

bench (invariant) event published. Results will be reported separately. View publisher run

Config: subcommand: invariant, PR SHA: aa8771567ba1, compare-ref: master, timeout: 3600s, workers: default, benchmark-type: property

@stevencartavia stevencartavia left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code-wise lgtm, waiting for the benchmark

mattsse
mattsse previously approved these changes Jun 25, 2026

@mattsse mattsse left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

0xKarl98
0xKarl98 previously approved these changes Jun 25, 2026
figtracer
figtracer previously approved these changes Jun 26, 2026

@figtracer figtracer left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@mablr mablr left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The benchmark categorized this as "regression", should we re-run when infra is fixed ? @grandizzy

@grandizzy

Copy link
Copy Markdown
Collaborator

The benchmark categorized this as "regression", should we re-run when infra is fixed ? @grandizzy

yes, let's wait on it

@decofe
decofe dismissed stale reviews from figtracer, 0xKarl98, and mattsse via 5999c96 July 14, 2026 10:55
@grandizzy

Copy link
Copy Markdown
Collaborator

derek bench invariant

@github-actions

github-actions Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

cc @grandizzy

bench (invariant) event published. Results will be reported separately. View publisher run

Config: subcommand: invariant, PR SHA: 5999c96c4066, compare-ref: master, timeout: 3600s, workers: default, benchmark-type: property

@decofe
decofe force-pushed the centaur/add-lightweight-crossover-mutators-1782356515 branch from 9334a94 to 1a81d55 Compare July 15, 2026 14:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

8 participants