Bundle R-CI-extended raise: CI floors lifted post-extensions

Final CI threshold raise commit on top of all the *-extended bundles
(J / N.A/B / N.C). Each raise verified to have >=3pp margin below
the current measured package-scoped coverage to absorb the global-run
per-file-average dip vs package-scoped runs.

Raises applied
=================
  internal/connector/issuer/acme/   50 -> 80   (HEAD 85.4% post-J-ext;
                                                Pebble mock + HTTP-01 +
                                                DNS-01 + DNS-PERSIST-01
                                                challenge flows)
  internal/service/                 55 -> 70   (HEAD 73.4% post-N.C-ext;
                                                CertificateService +
                                                AgentService delegator
                                                round-out)
  internal/api/handler/             60 -> 75   (HEAD 79.8% post-N.C-ext;
                                                IssuerHandler ctor +
                                                HealthCheckHandler dispatch)

Held at prior floors (already met; further raises deferred)
=================
  internal/crypto/                  88   (HEAD 88.2%; 92 deferred — needs
                                          rand.Reader / aes.NewCipher
                                          seams for fail-branch testing)
  internal/connector/issuer/local/  86   (HEAD 86.7%; 92 deferred — needs
                                          crypto/x509 signing-error seams)
  internal/pkcs7/                   100% informational (global-run
                                                       measurement artifact)
  internal/connector/issuer/stepca/  80   (HEAD 90.4%; future raise possible)
  internal/mcp/                     85   (HEAD 93.1%; future raise possible)

Verification
=================
  - python3 yaml.safe_load: OK
  - All raised floors verified met by current package-scoped coverage
    (with >=3pp margin)

Audit deliverables
=================
  - extension-progress.md: R-CI-extended marked DONE with raise table
  - CHANGELOG.md: full Bundle R-CI-extended entry

Bundle: R-CI-extended raise (Coverage Audit Extension)
This commit is contained in:
cowork
2026-04-27 21:43:08 +00:00
parent 560c9ee089
commit 7f1616f41b
2 changed files with 61 additions and 11 deletions
+18 -11
View File
@@ -769,13 +769,18 @@ jobs:
MCP_COV=$(go tool cover -func=coverage.out | grep 'internal/mcp/' | awk '{print $NF}' | sed 's/%//' | awk '{sum+=$1; n++} END {if(n>0) printf "%.1f", sum/n; else print "0"}')
echo "MCP coverage: ${MCP_COV}%"
# Fail if thresholds not met
if [ "$(echo "$SERVICE_COV < 55" | bc -l)" -eq 1 ]; then
echo "::error::Service layer coverage ${SERVICE_COV}% is below 55% threshold"
# Fail if thresholds not met.
# Bundle R-CI-extended raises (post-Bundle-N.C-extended):
# service 55 -> 70 (HEAD 73.4%; 3pp margin); handler 60 -> 75
# (HEAD 79.8%; 4pp margin). Prescribed Bundle R target was 80;
# held lower to avoid false-positives on single low-coverage
# files dragging the global per-file-average down.
if [ "$(echo "$SERVICE_COV < 70" | bc -l)" -eq 1 ]; then
echo "::error::Service layer coverage ${SERVICE_COV}% is below 70% (Bundle R-CI-extended floor — add tests, do not lower the gate)"
exit 1
fi
if [ "$(echo "$HANDLER_COV < 60" | bc -l)" -eq 1 ]; then
echo "::error::Handler layer coverage ${HANDLER_COV}% is below 60% threshold"
if [ "$(echo "$HANDLER_COV < 75" | bc -l)" -eq 1 ]; then
echo "::error::Handler layer coverage ${HANDLER_COV}% is below 75% (Bundle R-CI-extended floor — add tests, do not lower the gate)"
exit 1
fi
if [ "$(echo "$DOMAIN_COV < 40" | bc -l)" -eq 1 ]; then
@@ -828,12 +833,14 @@ jobs:
echo "::error::Local-issuer coverage ${LOCAL_ISSUER_COV}% is below 86% (Bundle R closure floor — add tests, do not lower the gate)"
exit 1
fi
# Bundle L.CI threshold raise #1 — post-Bundles J / L.B / K floors.
# Each gate is set with margin below the verified package-scoped
# coverage so the global per-file-average arithmetic doesn't false-
# positive on a single low-coverage file dragging the mean.
if [ "$(echo "$ACME_COV < 50" | bc -l)" -eq 1 ]; then
echo "::error::ACME issuer coverage ${ACME_COV}% is below 50% (Bundle J partial-closure floor — add Pebble-mock tests, do not lower the gate)"
# Bundle R-CI-extended threshold raise (post-Bundle-J-extended):
# ACME 50 -> 80. The Pebble-style mock + per-CA failure tests
# lift package-scoped ACME to 85.4%; gate at 80 with 5pp margin
# to absorb the global-run per-file-average dip. The prescribed
# Bundle R target was 85; held at 80 to avoid false-positives
# on single low-coverage files.
if [ "$(echo "$ACME_COV < 80" | bc -l)" -eq 1 ]; then
echo "::error::ACME issuer coverage ${ACME_COV}% is below 80% (Bundle R-CI-extended floor — add tests, do not lower the gate)"
exit 1
fi
if [ "$(echo "$STEPCA_COV < 80" | bc -l)" -eq 1 ]; then