2b044075

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

Mutation: make the covering-test reorder gate pure and tested

Address code-review follow-ups:

- Extract reorderForMutationChild, a pure helper that reorders a mutation
  child's filtered forest cheapest-first only when execution-order
  randomisation is enabled and a baseline is present.  The child now reads the
  baseline unconditionally and hands the flag + costs to this helper, so the
  gate (previously an inline IO conditional) is unit-testable.  Behaviour is
  unchanged: reading the baseline when randomisation is off is a harmless extra
  read, and the helper yields the same forest.
- Add gate tests: reorder when randomisation is on with a baseline, and leave
  the forest untouched when randomisation is off or no baseline is available.
- Note in readAndUnionBaselineDirs that the slowest-wins baseline merge (chosen
  for safe timeouts) only affects ordering quality, never verdicts.