By: Tom Sydney Kerckhove <syd@cs-syd.eu>
Skip coverage phase when manifest has no records
When every module in the instrumented library is opted out (e.g. each
src/*.hs annotated with {-# ANN module ("DisableMutations" :: String) #-}),
the mutation manifest is empty. The coverage phase was still spawning
one child per leaf test, paying the full per-test setup cost (tmp-postgres
spin-up, etc.) to record zero mutation IDs.
Read the manifests first; if there are no records, write an empty
augmented manifest and return. The mutation phase already handles the
empty-records case (mapConcurrently on []) so no change there.