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.
| Time to Start | Worker time | Duration | Time to finish | |
| Config | 0s | 3s | 3s | 2s |
| Eval | 2s | 38s | 38s | 41s |
| Build | 6s | 1h45m24s | 103h36m55s | 103h37m01s |
| Test | - | - | - | - |
| Deploy | - | - | - | - |
| Suite | 0s | 1h46m06s | 103h37m02s | 103h37m01s |