Skip to content

[cpp-RCP-N2-05] Coverage report is polluted with STL/system headers, deflating the line-coverage denominator #68

Closed

Description

@SoundMatt

Location: coverage-report.json — per-file entries and top-level linePct/summary.

Finding: The committed coverage report's file list includes system/toolchain headers alongside project code. Of 153 file entries, 101 are paths under /usr/include (STL and libstdc++ internals — e.g. <regex>'s never-instantiated executor/compiler machinery reported at 0% hit), totaling 5,979 of the report's 9,034 total lines — roughly two-thirds of the entire denominator. Restricting to the 52 actual project files, hit/total lines are 2,794/3,055 (about 91.5%); with the system headers folded in, the reported blended linePct drops to roughly 68.8%. A safety coverage report used as DAL/ASIL evidence should measure only the code under qualification, not third-party toolchain internals the project never controls or exercises directly.

Recommendation: Filter the coverage collection (e.g. lcov --remove/gcovr --exclude on /usr/include/* and other non-project paths) so the report reflects only first-party sources under include/, cli/, etc., and re-baseline the DAL/ASIL judgement against the filtered figure.

Verification: Independently re-read and parsed coverage-report.json from current HEAD (commit 4b9449a, 2026-07-29): confirmed 101/153 file entries have /usr/include in their path, accounting for 5,979 of 9,034 total reported lines.

Filed from the 2026-07-29 ecosystem audit register; independently re-verified against current HEAD before filing.

Activity

  1. added a commit that references this issue on Jul 30, 2026
  2. SoundMatt commented on Jul 30, 2026

    @SoundMatt
    OwnerAuthor

    Fixed by #92 (merged), which was not auto-linked because the PR description's bold markdown around the issue numbers broke GitHub's closing-keyword parser.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions