Repository navigation
Publish useful JaCoCo coverage and enforce measured nonregression thresholds #125
Copy link
Copy link
Closed
Labels
area: buildMaven tooling, reproducibility, packaging and quality reports.Maven tooling, reproducibility, packaging and quality reports.enhancementpriority: P2Planned maintenance; follow the ordered batch and documented dependencies.Planned maintenance; follow the ordered batch and documented dependencies.triage: depends-onFollow the explicit predecessor/coverage/tooling dependencies in the issue.Follow the explicit predecessor/coverage/tooling dependencies in the issue.
Description
Reviewed 2026-09-25 (America/Los_Angeles) against main at bd249f5. Execution order and cross-issue ownership: #169. Batch 04.
This scope replaces the dated implementation prescriptions in the original report and earlier comments; linked historical evidence remains useful but must be rechecked before implementation.
Current scope
The parent prepares JaCoCo data but default verify does not produce/check a report. #162 added Java 8 coverage collection and #152 already removed obsolete benchmark configuration. Old coverage percentages predate new tests and API code.
- Bind report/check goals for relevant library modules independently of the legacy site; skip empty aggregator reports and upload reports through SHA-pinned actions.
- Measure the current baseline, choose justified per-module floors and prove a genuine regression fails. Avoid arbitrary thresholds based on stale line counts.
- Preserve agent configuration, late property evaluation and any other JVM arguments across Surefire/Failsafe; initialize optional properties so skipping coverage still works. The property name itself is not a defect if correctly wired.
- Ensure Java 8 unit-test instrumentation from Add isolated packaged-consumer compatibility CI across Java 8–25 #162 still works and does not inherit an incompatible agent. Do not contaminate isolated packaged-consumer jobs with test agents/libraries; document which integration tests are intentionally instrumented.
- Verify normal and
jacoco.skippaths; make report data from distinct JVM runs merge deliberately instead of overwriting it.
#119 owns CI topology, #96 report retirement, #104 plugin pins. PIT/mutation testing remains the separate declined #143 scope and is not silently reintroduced as an acceptance requirement.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area: buildMaven tooling, reproducibility, packaging and quality reports.Maven tooling, reproducibility, packaging and quality reports.enhancementpriority: P2Planned maintenance; follow the ordered batch and documented dependencies.Planned maintenance; follow the ordered batch and documented dependencies.triage: depends-onFollow the explicit predecessor/coverage/tooling dependencies in the issue.Follow the explicit predecessor/coverage/tooling dependencies in the issue.
Activity
[-]Wire JaCoCo report and check into verify and upload coverage reports[/-][+]Publish useful JaCoCo coverage and enforce measured nonregression thresholds[/+]