From ef332cfd83e505ef4d2ad21e201a076adbe5c0ec Mon Sep 17 00:00:00 2001 From: James Rich <2199651+jamesarich@users.noreply.github.com> Date: Wed, 22 Jul 2026 18:35:10 -0500 Subject: [PATCH] ci: gate Codecov project status on coverage regression Flips the Codecov project status from informational to a gate (target: auto, 1% threshold) so an overall coverage regression fails the check. The patch status stays advisory to avoid blocking small PRs on patch-coverage noise. The baseline the header comment was waiting for is now established. Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com> --- codecov.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/codecov.yml b/codecov.yml index 818860b..a94d360 100644 --- a/codecov.yml +++ b/codecov.yml @@ -1,9 +1,9 @@ # Codecov configuration — https://docs.codecov.com/docs/codecov-yaml # # Coverage is measured by Kover on the JVM target only (Kover instruments -# JVM/Android bytecode; Native/JS/Wasm execution is not counted). Reports are -# INFORMATIONAL (non-blocking) for now; a koverVerify threshold gate can be -# added once a baseline is established. +# JVM/Android bytecode; Native/JS/Wasm execution is not counted). The project +# status GATES on regression (target: auto, ±1% tolerance); the patch status +# stays advisory to avoid blocking small PRs. coverage: precision: 2 round: down @@ -11,10 +11,12 @@ coverage: status: project: default: - informational: true + target: auto # gate: fail if overall coverage regresses + threshold: 1% # tolerate ≤1% dips (rounding, flaky lines) + informational: false patch: default: - informational: true + informational: true # advisory only — don't block small PRs on patch noise comment: layout: "reach, diff, flags"