CI: line coverage on pull requests #107

Merged
bcox merged 1 commit from coverage into main 2026-10-03 01:30:58 +00:00
Owner

Follows #106.

  • .forgejo/coverage.sh runs bazel coverage --combined_report=lcov //... and instruments only our sources (^//, excluding //third_party). genhtml renders the full report, and diff-cover reports the lines this branch changed against its base. Both tools come from Fedora packages.
  • ci.yml gains a fifth job, coverage. It runs after tsan, on pull requests only. It uploads the HTML as the run's coverage-html artifact and posts diff-cover's report as a comment on the PR.

Tested so far: bazel coverage produces an lcov report with the hermetic clang (checked on //dsp:svf_test). A full-suite trial in a local fedora:43 container is still running. Two things only this PR's own run can prove: whether the job token may post the comment, and whether upload-artifact@v4 works on this Forgejo.

🤖 Generated with Claude Code

Follows #106. - **`.forgejo/coverage.sh`** runs `bazel coverage --combined_report=lcov //...` and instruments only our sources (`^//`, excluding `//third_party`). `genhtml` renders the full report, and `diff-cover` reports the lines this branch changed against its base. Both tools come from Fedora packages. - **`ci.yml`** gains a fifth job, `coverage`. It runs after tsan, on pull requests only. It uploads the HTML as the run's `coverage-html` artifact and posts diff-cover's report as a comment on the PR. Tested so far: `bazel coverage` produces an lcov report with the hermetic clang (checked on `//dsp:svf_test`). A full-suite trial in a local fedora:43 container is still running. Two things only this PR's own run can prove: whether the job token may post the comment, and whether `upload-artifact@v4` works on this Forgejo. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
ci: line coverage on pull requests
Some checks failed
ci / opt (pull_request) Successful in 37m29s
push / small (push) Successful in 26m9s
ci / asan (pull_request) Failing after 1h0m9s
ci / ubsan (pull_request) Successful in 46m13s
ci / tsan (pull_request) Successful in 16m12s
ci / coverage (pull_request) Failing after 48m4s
c8fe0413da
coverage.sh runs bazel coverage over //... with the hermetic clang's
LLVM coverage, instrumenting our sources only (^//, less third_party/),
then renders the combined lcov report with genhtml and reports the lines
the branch changed against its base with diff-cover. Both tools are
Fedora packages.

ci.yml gains a fifth job, after tsan and on pull requests only: it
uploads the HTML as the run's coverage-html artifact and posts
diff-cover's report as a comment on the pull request.

bazel coverage was checked on //dsp:svf_test locally; the whole suite
and the comment and artifact steps are proved by this pull request's
own run.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
bcox merged commit 5adc2050f1 into main 2026-10-03 01:30:58 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
bcox/tymbal!107
No description provided.