mirror of
https://github.com/Second-Hand-Friends/kleinanzeigen-bot.git
synced 2026-03-12 10:31:50 +01:00
## ℹ️ Description *Improve codecov configuration to address erratic PR blocking behavior and provide better developer visibility into coverage impact.* - Addresses inconsistent flag definitions between codecov.yml and workflow - Resolves confusing threshold values and separate flag status checks - Improves developer experience with comprehensive PR comments ## 📋 Changes Summary - Replace separate flag checks with single combined project coverage check (70% target) - Add patch coverage check (80% target) to catch regressions in changed code - Add comprehensive PR comments showing project, patch, and file-level coverage - Configure flag carryforward for better handling of partial test runs - Remove confusing 0.2% integration threshold and separate flag status checks - Validate configuration with Codecov's official endpoint ### ⚙️ Type of Change Select the type(s) of change(s) included in this pull request: - [ ] 🐞 Bug fix (non-breaking change which fixes an issue) - [x] ✨ New feature (adds new functionality without breaking existing usage) - [ ] 💥 Breaking change (changes that might break existing user setups, scripts, or configurations) ## ✅ Checklist Before requesting a review, confirm the following: - [x] I have reviewed my changes to ensure they meet the project's standards. - [x] I have tested my changes and ensured that all tests pass (`pdm run test`). - [x] I have formatted the code (`pdm run format`). - [x] I have verified that linting passes (`pdm run lint`). - [x] I have updated documentation where necessary. By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
47 lines
1.7 KiB
YAML
47 lines
1.7 KiB
YAML
# https://docs.codecov.com/docs/codecovyml-reference
|
|
# https://json.schemastore.org/codecov.json
|
|
codecov:
|
|
branch: main
|
|
require_ci_to_pass: true
|
|
notify:
|
|
wait_for_ci: true
|
|
|
|
coverage:
|
|
precision: 2
|
|
round: down
|
|
range: "70...100" # https://docs.codecov.com/docs/codecovyml-reference#coveragerange
|
|
|
|
status:
|
|
# Combined project coverage check (all flags together)
|
|
project:
|
|
default:
|
|
target: 70% # Minimum 70% absolute coverage required
|
|
threshold: 1.5% # Allow up to 1.5% coverage drop
|
|
informational: false # Block PRs that fail this check
|
|
# No flags specified = combines all flags (unit, integration, smoke)
|
|
|
|
# Patch coverage: check coverage on changed lines only
|
|
patch:
|
|
default:
|
|
target: 80% # Require 80% coverage on new/changed code
|
|
threshold: 0% # Don't allow any drop in patch coverage
|
|
informational: false # Block PRs that fail this check
|
|
|
|
# PR Comment Configuration
|
|
comment:
|
|
layout: "header, diff, flags, files, footer" # Show comprehensive breakdown
|
|
behavior: default # Update existing comment
|
|
require_changes: false # Always post comment
|
|
require_base: false # Post even without base report
|
|
require_head: true # Only post if head report exists
|
|
hide_project_coverage: false # Show both project and patch
|
|
|
|
# Flag configuration for visibility (not for status checks)
|
|
flags:
|
|
unit-tests:
|
|
carryforward: true # Reuse previous results if not run
|
|
integration-tests:
|
|
carryforward: true
|
|
smoke-tests:
|
|
carryforward: true
|