Repository navigation
Expand file tree
/
Copy pathcodecov.yml
More file actions
92 lines (81 loc) · 2.58 KB
/
Copy pathcodecov.yml
File metadata and controls
92 lines (81 loc) · 2.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# codecov.yml
# Codecov configuration for WorkloadGovernor
# Docs: https://docs.codecov.com/docs/codecov-yaml
coverage:
# Overall project threshold — weighted average of all flags
status:
project:
default:
target: 80%
threshold: 2% # allow up to 2% drop before failing
if_not_found: success
if_ci_failed: error
# Per-flag patch coverage (only lines changed in the PR)
patch:
default:
target: 70%
threshold: 5%
# ── Flags ─────────────────────────────────────────────────────────────────────
# Each flag maps to a separate upload in .github/workflows/coverage.yml
flag_management:
default_rules:
carryforward: true # use last good upload when a flag is not uploaded in a run
flags:
backend:
paths:
- src/
carryforward: true
# Minimum coverage threshold enforced as a PR check
coverage:
status:
project:
default:
target: 80%
threshold: 2%
patch:
default:
target: 70%
frontend:
paths:
- frontend/src/
carryforward: true
coverage:
status:
project:
default:
target: 75%
threshold: 2%
patch:
default:
target: 65%
contract:
paths:
- src/ # Rust source lives in src/ for the Soroban contract
carryforward: true
coverage:
status:
project:
default:
target: 90%
threshold: 1%
patch:
default:
target: 80%
# ── PR Comment ────────────────────────────────────────────────────────────────
comment:
layout: "reach,diff,flags,tree,betaprofiling"
behavior: default # update existing comment rather than creating a new one
require_changes: true # only comment when coverage changes
require_base: true # require base commit coverage to compute delta
show_carryforward_flags: true
hide_project_coverage: false
# ── Ignore paths ──────────────────────────────────────────────────────────────
ignore:
- "tests/**"
- "infra/**"
- "docs/**"
- "**/*.md"
- "dist/**"
- "coverage/**"
- "node_modules/**"
- "target/**"