Skip to content

fix(forge): mutation dynamic linking compile set#15105

Merged
mablr merged 5 commits into
masterfrom
mablr/fix-mutation-dynamic-linking-artifacts
Jun 9, 2026
Merged

fix(forge): mutation dynamic linking compile set#15105
mablr merged 5 commits into
masterfrom
mablr/fix-mutation-dynamic-linking-artifacts

Conversation

@mablr

@mablr mablr commented Jun 8, 2026

Copy link
Copy Markdown
Member

Summary

Fix mutation testing with dynamic test linking when the selected test set depends on helper artifacts outside the initially selected sources.

Closes #15101

Details

  • Expands the mutation execution compile set to include graph sources and link-reference artifacts.
  • Normalizes project-relative library paths in the linker so absolute/canonical paths still match link references.
  • Adds debug logging for mutant compile/test errors that are classified as invalid.
  • Adds a regression test covering selected mutation tests that depend on dynamically linked helper artifacts.

@grandizzy grandizzy left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

left some comments, please check, thanks!

Comment thread crates/forge/src/mutation/orchestrator.rs Outdated
Comment thread crates/forge/src/mutation/runner.rs Outdated
Comment thread crates/forge/src/mutation/runner.rs Outdated
@mablr mablr force-pushed the mablr/fix-mutation-dynamic-linking-artifacts branch from e834c24 to 19da143 Compare June 9, 2026 07:26
@grandizzy grandizzy self-requested a review June 9, 2026 09:05
@mablr mablr merged commit 4838d65 into master Jun 9, 2026
19 of 22 checks passed
@mablr mablr deleted the mablr/fix-mutation-dynamic-linking-artifacts branch June 9, 2026 09:09
@github-project-automation github-project-automation Bot moved this to Done in Foundry Jun 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

forge test --mutate: all mutants silently reported as INVALID (0% score) for certain --match-contract selections; underlying compile error is swallowed

3 participants