Skip to content

[FEATURE] Coverage Phase 2: Unit 75% gate #1401

@sergio-sisternes-epam

Description

@sergio-sisternes-epam

Is your feature request related to a problem? Please describe.
After Phase 1, coverage is visible but not enforced. Unit coverage
could regress without blocking the PR.

Describe the solution you'd like
Add a conservative unit coverage gate at 75% -- 5 points below the
80% baseline -- to catch major regressions while leaving headroom
for normal fluctuation. Integration remains report-only.

Changes

  1. Add fail_under = 75 to [tool.coverage.report] in pyproject.toml
  2. Verify ci.yml test step fails when coverage drops below 75%
  3. Integration coverage remains report-only (no gate)

Describe alternatives you've considered

  • Gating at 80% immediately -- rejected because it leaves zero margin
    and could cause false-positive failures during refactors.

Additional context
Parent: #1398 -- Phase 2 of the progressive coverage strangler-fig ratchet.

Current unit coverage is 80%, so this gate is 5 points below actual.
Apply ratchet rule: if actual exceeds 80%, raise gate to actual - 3.

Acceptance criteria

  • CI unit job fails if coverage < 75%
  • Integration job is unaffected (report-only)
  • Coverage summary still renders in $GITHUB_STEP_SUMMARY

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/ci-cdGitHub workflows, merge queue, gh-aw integrations, release pipeline.area/testingTest infrastructure, fixtures, e2e harness, coverage.qualitytype/featureNew capability, new flag, new primitive.

    Type

    No fields configured for Task.

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions