You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
build: set the coverage floor from the measurement and enforce it
The 85 threshold sat below the 87.95% it was meant to floor, so it
ratcheted nothing and licensed a thirteen-line regression. It is now
88.58 - the measured figure, 419 of 473 relevant lines. One uncovered
line added to lib gives 88.40% and fails; that was checked rather than
assumed.
And precommit runs test --cover, so the floor is a gate. Nothing else
ran it, and a floor nothing enforces is decoration. CI test matrix
stays on a plain mix test: cover line attribution can differ between
Elixir versions, so the figure is enforced on the one pinned toolchain
the precommit job uses.
90% would need 426 covered, seven more. Five of the seven can only come
from the compiler generated clauses for defaulted arities nothing
calls - measured, not assumed: calling the intermediate arities covers
all five and reaches 89.64%. Each is a delegation whose defaults are a
subset of an arity already called, so those cases would asserted
nothing. That is the move this project does not make.
The mechanism claim was also wrong. cover does not need distribution:
:cover.start/0 works in a VM with no node name. What happens is that
Mix instruments the modules loaded on this node and the peer loads the
target own beams, which nothing instrumented - and cover only route to
another VM is a distributed node, which the peer deliberately is not.
Co-Authored-By: Claude <noreply@anthropic.com>
0 commit comments