diff --git a/mix.exs b/mix.exs index 23f25961..a62a226a 100644 --- a/mix.exs +++ b/mix.exs @@ -21,20 +21,36 @@ defmodule MusicLibrary.MixProject do ] end - # Modules excluded from coverage accounting: cron-only workers that run - # operations incompatible with the Ecto sandbox (VACUUM / OPTIMIZE outside a - # transaction) or whose behaviour beyond a delegate call is untestable, and - # all Mix tasks (developer tooling not exercised by the application test - # suite). + # Modules excluded from coverage accounting: + # + # - Cron-only workers that run operations incompatible with the Ecto sandbox + # (VACUUM / OPTIMIZE outside a transaction) or whose behaviour beyond a + # delegate call is untestable. + # - Ecto.Repo shells (boilerplate plus platform-exclusive `extension_path/1` + # branches that cannot all execute on a single host). + # - Phoenix generator output (ErrorHTML, the MusicLibraryWeb `use` entrypoint) + # with no application behaviour. + # - Telemetry instrumentation whose write paths are only reachable from real + # `:telemetry.execute/3` events emitted by external libraries. + # - Vendored `SqliteVec.*` library code under `lib/sqlite_vec/`. + # - All Mix tasks (developer tooling not exercised by the application test + # suite). defp ignored_coverage_modules do [ MusicLibrary.Release, + MusicLibrary.Repo, + MusicLibrary.BackgroundRepo, MusicLibrary.Worker.RepoVacuum, MusicLibrary.Worker.RepoOptimize, MusicLibrary.Worker.SendRecordsOnThisDayEmail, MusicLibrary.Worker.RefreshScrobbles, MusicLibrary.Worker.BackfillScrobbledTracks, - ~r/^Mix\.Tasks\./ + MusicLibraryWeb, + MusicLibraryWeb.ErrorHTML, + MusicLibraryWeb.Telemetry, + MusicLibraryWeb.Telemetry.Storage, + ~r/^Mix\.Tasks\./, + ~r/^SqliteVec\./ ] end