Problem
just coverage-native passed with 215,414 of 215,663 LLVM line-coverage units hit (99.8845%). The recipe uses
--fail-uncovered-lines 0, but cargo-llvm-cov removes an uncovered line when another function or macro expansion on the
same physical line ran. Its uncovered-line count becomes zero even when LLVM's total remains below 100%.
The behavior matches cargo-llvm-cov #404. LLVM does not expose
the exact source lines behind these partial expansion totals;
llvm-project #126307 tracks that missing detail.
The current native profile has 249 missed line units across 55 production files and 15 test or benchmark files. The
existing ignore expression limited the report to repository source.
Required changes
- Retain
--fail-uncovered-lines 0 and --show-missing-lines, and add --fail-under-lines 100 to enforce LLVM's
total.
- Exercise or remove every expansion with a missed path until LLVM reports 100% total line coverage.
- Keep production, test, benchmark, and example source in the report. Do not add ignores, exclusions, suppressions, or a
lower threshold.
- Keep the gate in
just coverage-native so local and GitHub Actions coverage use the same command.
Acceptance criteria
- The strict gate rejects the captured 99.8845% profile.
- A clean full native run reports 100% total line coverage and zero uncovered lines.
- The full suite and changed-line coverage pass without retries or skipped tests.
Problem
just coverage-nativepassed with 215,414 of 215,663 LLVM line-coverage units hit (99.8845%). The recipe uses--fail-uncovered-lines 0, but cargo-llvm-cov removes an uncovered line when another function or macro expansion on thesame physical line ran. Its uncovered-line count becomes zero even when LLVM's total remains below 100%.
The behavior matches cargo-llvm-cov #404. LLVM does not expose
the exact source lines behind these partial expansion totals;
llvm-project #126307 tracks that missing detail.
The current native profile has 249 missed line units across 55 production files and 15 test or benchmark files. The
existing ignore expression limited the report to repository source.
Required changes
--fail-uncovered-lines 0and--show-missing-lines, and add--fail-under-lines 100to enforce LLVM'stotal.
lower threshold.
just coverage-nativeso local and GitHub Actions coverage use the same command.Acceptance criteria