CB-509: add JaCoCo coverage reporting
Build-time tooling only — never a compile or runtime dependency, so it adds nothing to the shipped jar and no new transitive surface to the artifact. (Noting per CLAUDE.md that the pom CVE gate could not be run: no JetBrains MCP server is connected this session.) Report at target/site/jacoco/index.html, machine-readable at jacoco.csv. Deliberately NO check rule or threshold. A coverage gate rewards writing tests that merely execute lines, which is the exact failure mode this codebase has already been bitten by — CB-507 shipped a null-argument NPE with 311 green tests because FakeWorktrees.repoRoot records its argument instead of shelling out, so the broken line was covered and still wrong. Coverage is a map of where to look, not a target to hit. Baseline: 66.9% line, 60.6% branch, 76.4% method.
This commit is contained in:
@@ -169,6 +169,30 @@
|
||||
<version>3.14.0</version>
|
||||
</plugin>
|
||||
|
||||
<!--
|
||||
Coverage (CB-509). Build-time tooling only — never a compile/runtime dependency, so
|
||||
it adds nothing to the shipped jar. Report lands at target/site/jacoco/index.html and
|
||||
target/site/jacoco/jacoco.csv. No `check` rule / threshold is wired: a coverage gate
|
||||
rewards writing tests that execute lines, which is the failure mode this project is
|
||||
trying to avoid, not encourage.
|
||||
-->
|
||||
<plugin>
|
||||
<groupId>org.jacoco</groupId>
|
||||
<artifactId>jacoco-maven-plugin</artifactId>
|
||||
<version>0.8.13</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>prepare-agent</id>
|
||||
<goals><goal>prepare-agent</goal></goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>report</id>
|
||||
<phase>test</phase>
|
||||
<goals><goal>report</goal></goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<!-- Unit tests run by default; contract tests (live herdr) are tag-excluded. -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
|
||||
Reference in New Issue
Block a user