Skip to content

Report an environmental skip as TrialOutcome::skipped() - #39

Merged
rasuvaeff merged 2 commits into
masterfrom
feat/report-environmental-skip
Sep 4, 2026
Merged

Report an environmental skip as TrialOutcome::skipped()#39
rasuvaeff merged 2 commits into
masterfrom
feat/report-environmental-skip

Conversation

@rasuvaeff

Copy link
Copy Markdown
Owner

The engine counts a skip and a discard the same everywhere but the corpus
phase, where a discard means "the recorded input left the property's domain"
and the entry is pruned. markTestSkipped() guarding a missing dependency says
nothing about the input, so folding it into a discard let a machine without
that dependency delete the recorded counterexample for every machine that has
it — silently and for good.

Needs the seam core 0.8 added, so the constraint moves to ^0.8.

Fixes #38

The engine counts a skip and a discard the same everywhere but the corpus
phase, where a discard means "the recorded input left the property's domain"
and the entry is pruned. `markTestSkipped()` guarding a missing dependency says
nothing about the input, so folding it into a discard let a machine without
that dependency delete the recorded counterexample for every machine that has
it — silently and for good.

Needs the seam core 0.8 added, so the constraint moves to ^0.8.

Fixes #38
@coderabbitai

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Team

Run ID: 2b9a68ad-3de0-46ec-ae30-8735c7690242

Warning

Your free Security trial is over. An organization admin can upgrade to Advanced for continuous pull request security review or dismiss this notice.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Covering PhpUnitTrialExecutor directly pulled the whole class into the mutation
map, where six of its mutants had never been mapped and now escaped. The
behaviour that matters is not the flag anyway: a recorded regression must
survive a replay this environment skipped. EnvironmentParityTest now records a
falsification, replays it in a body that calls markTestSkipped(), and asserts
the stored bytes are untouched.
@rasuvaeff
rasuvaeff merged commit f28c39e into master Sep 4, 2026
12 checks passed
@rasuvaeff
rasuvaeff deleted the feat/report-environmental-skip branch September 4, 2026 17:38
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.

Report an environmental skip as TrialOutcome::skipped()

1 participant