Skip to content

cover: Pillar 2 C coverage with enumerated misses - #2

Merged
aadi-joshi merged 6 commits into
mainfrom
cover/c-baseline
Aug 2, 2026
Merged

aadi-joshi merged 6 commits into
mainfrom
cover/c-baseline

Conversation

@aadi-joshi

Copy link
Copy Markdown
Member

Summary

  • Measure original C with gcc --coverage + lcov/genhtml: upstream smoke baseline 90.48% lines / 76.75% branches; expanded corpus 98.51% / 84.50% / 100% functions.
  • Table every remaining cold line (5) and branch outcome (42) with reasons in docs/evidence/coverage.md.
  • Install and exercise kcov 43 for the port; record not_measured for src/*.zig line percent after attribution failure (DWARF present).
  • Add coverage workflow (new file), zig build cover, and scorecard fragment routing for coverage-*.json.

Test plan

  • bash scripts/run-coverage-c.sh locally or in the coverage workflow
  • Confirm suite assertion counts unchanged (4930/4924/4934/4928)
  • Confirm CI green including readme-scorecard / verify path

Make coverage collection reproducible without changing the vendored suite or implementation.
Extract the transitive Perl runtime dependencies when lcov is installed without sudo.
Capture separate upstream-suite and expanded-corpus lcov measurements with reproducible evidence.
Tie the measured baseline and expanded reports to the committed coverage tooling revision.
Record 98.51% line / 84.50% branch on the original after the expanded
corpus, table every cold line and branch, and keep port src line percent
as not_measured after kcov 43 fails to attribute Zig DWARF.
Map docs/evidence/fragments/coverage-*.json under scorecard.coverage and
expose zig build cover without touching ci.yml.
@aadi-joshi
aadi-joshi merged commit b800d61 into main Aug 2, 2026
41 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant