# Codecov configuration # https://docs.codecov.com/docs/codecovyml-reference coverage: status: # Overall project coverage check project: default: # Keep combined unit + E2E coverage at or above the project floor. target: 90% threshold: 0% informational: false # Per-PR coverage change check patch: default: # Ratchet quality upward even while the legacy project total is below # the long-term target. Changed executable lines must be well tested. target: 80% threshold: 0% informational: false # Flag management. # - unit: uploaded on every PR/push by the Tests CI workflow. # - e2e: uploaded only by the opt-in "Combined Coverage" workflow. # carryforward reuses the most recent e2e report on commits where it # isn't uploaded, so the combined number/badge doesn't drop back to # unit-only between e2e runs. (Re-run / schedule that workflow to keep # the e2e portion fresh.) flag_management: individual_flags: - name: unit carryforward: false - name: e2e carryforward: true # Comment settings for PR coverage reports comment: layout: 'reach,diff,flags,files' behavior: default require_changes: false require_base: false require_head: true # Ignore these paths in coverage calculations ignore: - '**/*.spec.ts' - '**/*.test.ts' - 'tests/**' - '.nuxt/**' - 'node_modules/**' - 'coverage/**' - '**/*.d.ts' # Presentational-only: icons are pure markup with no logic. Also # excluded from the vitest coverage report; ignored here so the combined # (unit + e2e) report drops them regardless of which tool produced it. - 'components/icons/**'