-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcodecov.yml
More file actions
111 lines (96 loc) · 2.75 KB
/
codecov.yml
File metadata and controls
111 lines (96 loc) · 2.75 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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# Codecov Configuration for FlowForge
# Documentation: https://docs.codecov.com/docs/codecov-yaml
# Validation: https://api.codecov.io/validate
codecov:
require_ci_to_pass: yes
notify:
after_n_builds: 1 # Wait for all uploads before notifying
coverage:
precision: 2
round: down
range: "70...100"
status:
# Patch-level coverage (new code in PR)
# DEVELOPMENT MODE: informational=true (reports but doesn't block PRs)
# To enforce: Change informational to false when ready for v1.0
patch:
default:
target: 80% # New code requires 80% coverage
threshold: 5%
informational: true # DEVELOPMENT: Report only, don't block
if_not_found: success
if_ci_failed: success
# Project-level coverage (per-module targets)
# DEVELOPMENT MODE: informational=true (reports but doesn't block PRs)
# To enforce: Change informational to false when ready for v1.0
project:
default: false # Disable default, use per-module targets
# Core module - FOUNDATIONAL CODE (90% target)
core:
target: 90%
threshold: 1% # Allow 1% drop only
informational: true # DEVELOPMENT: Report only
flags:
- core
# Contracts module - KILLER FEATURE (90% target)
contracts:
target: 90%
threshold: 1%
informational: true # DEVELOPMENT: Report only
flags:
- contracts
# Connectors - PRODUCTION CRITICAL (80% target)
connectors:
target: 80%
threshold: 2%
informational: true # DEVELOPMENT: Report only
flags:
- connectors
# Infrastructure - SUPPORT CODE (75% target)
infrastructure:
target: 75%
threshold: 2%
informational: true # DEVELOPMENT: Report only
flags:
- infrastructure
# Ignore paths that shouldn't count toward coverage
ignore:
- "modules/examples/**"
- "modules/compile-fail-tests/**"
- "flowforge.g8/**"
- "**/*Test.scala"
- "**/*Spec.scala"
- "**/test/**"
# Flag definitions (per-module coverage tracking)
# Upload these separately in CI using: --flag=<flag-name>
flags:
core:
paths:
- modules/core/
carryforward: true
contracts:
paths:
- modules/contracts/
carryforward: true
connectors:
paths:
- modules/connectors/
- modules/connectors-gcs/
- modules/connectors-jdbc/
carryforward: true
infrastructure:
paths:
- modules/infrastructure/
carryforward: true
# PR comment configuration
comment:
layout: "header, diff, flags, files, footer"
behavior: default
require_changes: false
require_base: no
require_head: yes
branches:
- main
# GitHub status checks
github_checks:
annotations: true