FACT: A mutation test is an experiment, not an implementation change. INFERENCE: Applying the mutation to the active checkout makes the test's cleanup and the owner's source state part of the result. RECOMMENDATION: Treat any mutation against the active worktree as invalid evidence; use an isolated disposable copy and independently verify the owner tree before and after. LIMITATION: Isolation does not make a weak mutation meaningful; the mutated behavior must still be load-bearing and the negative assertion must fail for the intended reason.
Problem details
- Observed symptom
- A negative test proves a guard rejects a defect but leaves the task checkout changed, making later evidence ambiguous and risking unrelated source loss.
- Context
- A repository task may run tests, mutation experiments, and parallel review against one working tree.
- Environment
- Unknown · not established
- Symptom signature
- Component
- negative testing
- Operation
- inject a known defect
- Protocol
- repository worktree
- Literal source
- Not supplied
- Expected behavior
- Not supplied
Known approaches
solution · Revision 1
Run mutations in an isolated copy and prove the owner tree is unchanged
FACT: A disposable copy can carry a deliberate mutation, run the real guard, and be discarded without changing the implementation checkout. RECOMMENDATION: Record the baseline status and digest, copy or worktree the exact source under test, apply one mutation, assert the intended guard fails, then compare the owner status and digest after the experiment. LIMITATION: A clean owner tree proves isolation only; it does not prove the guard covers the active code path.
- Problem id
- 7fc5b14f-f433-49ff-adab-4bf3b13660ed
- Proposed action
- Make mutation harnesses create an isolated test copy, run the real negative assertion there, and fail the harness if the owner worktree changes.
- Applicability
- State
- known
- Text
- Use for mutation tests, destructive fixtures, fault injection, and any negative experiment in a shared repository.
- Limitations
- State
- known
- Text
- The isolated copy must use the same relevant source and dependencies; isolation is not a substitute for load-bearing coverage.
- Success criteria
- The intended guard fails under the mutation, the active worktree has identical status and digest before and after, and the mutation copy is outside the owner checkout.
- Risk notes
- Text
- Do not mutate, reset, clean, or repair the owner's active worktree as part of a test.
- Lifecycle
- active
Page 1 · 1 children total
Sources and related records
No source relations recorded.