-
Notifications
You must be signed in to change notification settings - Fork 53
Expand file tree
/
Copy path.codecov.yml
More file actions
194 lines (189 loc) · 8.62 KB
/
.codecov.yml
File metadata and controls
194 lines (189 loc) · 8.62 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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
codecov:
require_ci_to_pass: true
flags:
rust:
carryforward: true
ignore:
- "**/test_utils.rs"
- "**/test_utils/**"
- "**/tests.rs"
- "**/tests/**"
- "**/test/**"
- "packages/strategy-tests/**"
- "packages/rs-sdk-ffi/**"
- "packages/rs-platform-wallet-ffi/**"
- "packages/wasm-dpp/**"
- "packages/wasm-dpp2/**"
- "packages/wasm-sdk/**"
- "**/block_end/validator_set_update/v0/**"
- "**/block_end/validator_set_update/v1/**"
# Error type definitions — enum/struct declarations with Display/thiserror
# derives, not logic that needs test coverage
- "packages/rs-drive/src/error/**"
- "packages/rs-drive-abci/src/error/**"
- "packages/rs-dpp/src/errors/**"
- "packages/rs-dpp/src/state_transition/errors/**"
# State transition boilerplate — trait interfaces, accessors, field constants,
# type metadata, version dispatch, and factory patterns
- "packages/rs-dpp/src/state_transition/traits/**"
- "packages/rs-dpp/src/state_transition/state_transitions/**/accessors/**"
- "packages/rs-dpp/src/state_transition/state_transitions/**/fields.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/**/common_fields.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/**/types.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/**/version.rs"
- "packages/rs-dpp/src/state_transition/state_transition_types.rs"
- "packages/rs-dpp/src/state_transition/state_transition_factory.rs"
# Generated gRPC bindings — no hand-written logic to test
- "packages/dapi-grpc/**"
# Data contract crates — these are JSON schema definitions with only
# auto-generated load_* boilerplate, not testable application logic
- "packages/dashpay-contract/src/**"
- "packages/data-contracts/src/**"
- "packages/dpns-contract/src/**"
- "packages/keyword-search-contract/src/**"
- "packages/masternode-reward-shares-contract/src/**"
- "packages/token-history-contract/src/**"
- "packages/wallet-utils-contract/src/**"
- "packages/withdrawals-contract/src/**"
# Version tables — large const structs, not logic
- "packages/rs-platform-version/**"
# Simple signer — thin test-only wrapper
- "packages/simple-signer/src/**"
# SDK — requires a running platform node for integration, not unit-testable
- "packages/rs-sdk/src/**"
# DAPI server — requires running Core + Tenderdash nodes
- "packages/rs-dapi/src/**"
# DAPI client — network transport requiring live gRPC endpoints
- "packages/rs-dapi-client/**"
# WASM bindings — cannot run in Rust unit test harness
- "packages/wasm-drive-verify/**"
# Proc-macro crates — tested indirectly through usage
- "packages/rs-platform-serialization-derive/**"
- "packages/rs-dpp-json-convertible-derive/**"
- "packages/rs-dash-platform-macros/**"
- "packages/rs-platform-value-convertible/**"
- "packages/rs-platform-versioning/**"
# CLI tools — not unit-testable
- "packages/dash-platform-balance-checker/**"
- "packages/check-features/**"
- "packages/rs-scripts/**"
# Context provider interface — tested through consumers
- "packages/rs-context-provider/**"
# Unified SDK FFI — placeholder crate
- "packages/rs-unified-sdk-ffi/**"
# Proof verifier boilerplate — response type definitions, not logic
- "packages/rs-drive-proof-verifier/src/types/evonode_status.rs"
# Drive internals — internal size estimation helpers
- "packages/rs-drive/src/util/object_size_info/path_key_info.rs"
# (wallet, dapi, sdk, and proof-verifier types covered by broader patterns above)
# Accessor boilerplate — pure getter/setter trait implementations across all crates
- "packages/rs-dpp/src/**/accessors/**"
- "packages/rs-dpp/src/**/accessors.rs"
- "packages/rs-drive/src/**/accessors/**"
- "packages/rs-drive-abci/src/**/accessors/**"
- "packages/rs-drive-abci/src/**/accessors.rs"
# Enum type definitions — TryFrom/Display/conversion boilerplate
- "packages/rs-dpp/src/identity/identity_public_key/security_level.rs"
- "packages/rs-dpp/src/identity/identity_public_key/purpose.rs"
- "packages/rs-dpp/src/identity/identity_public_key/key_type.rs"
- "packages/rs-dpp/src/tokens/gas_fees_paid_by.rs"
# Value Display and string encoding — trivial formatting, not logic
- "packages/rs-platform-value/src/display.rs"
- "packages/rs-platform-value/src/string_encoding.rs"
# Batch transition signing factories — repetitive struct construction + signing
- "packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/methods/mod.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/methods/v1/**"
- "packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/**/v0_methods.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/**/v1_methods.rs"
# Platform wallet — requires Core wallet integration, not unit-testable
- "packages/rs-platform-wallet/src/**"
# Proof-verifier response types and unproved handling
- "packages/rs-drive-proof-verifier/src/types.rs"
- "packages/rs-drive-proof-verifier/src/unproved.rs"
- "packages/rs-drive-proof-verifier/src/error.rs"
# JSON schema compatibility validator — static rule definitions
- "packages/rs-json-schema-compatibility-validator/**"
# Core chain type wrappers — masternode entry structs, deserialization
# boilerplate, thin type aliases
- "packages/rs-dpp/src/core_types/**"
# Random data generators — test-only helpers, not production logic
- "packages/rs-dpp/src/**/random.rs"
- "packages/rs-dpp/src/**/random_*.rs"
# Batch transition resolvers — From/TryFrom conversion boilerplate
- "packages/rs-dpp/src/state_transition/state_transitions/document/batch_transition/batched_transition/resolvers.rs"
# State transition mechanical trait implementations — StateTransitionLike dispatch,
# value/JSON conversion, identity_signed delegation, fee strategy constants
- "packages/rs-dpp/src/state_transition/state_transitions/**/state_transition_like.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/**/value_conversion.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/**/json_conversion.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/**/identity_signed.rs"
- "packages/rs-dpp/src/state_transition/state_transitions/**/state_transition_fee_strategy.rs"
# State transition estimated fee validation — mechanical fee calculation dispatch
- "packages/rs-dpp/src/state_transition/state_transitions/**/state_transition_estimated_fee_validation.rs"
# Drive-ABCI infrastructure — binary entrypoints, query service dispatch,
# RPC wrappers, metrics, logging, runtime context providers, replay tooling
- "packages/rs-drive-abci/src/main.rs"
- "packages/rs-drive-abci/src/query/service.rs"
- "packages/rs-drive-abci/src/rpc/**"
- "packages/rs-drive-abci/src/metrics.rs"
- "packages/rs-drive-abci/src/logging/**"
- "packages/rs-drive-abci/src/mimic/**"
- "packages/rs-sdk-trusted-context-provider/**"
- "packages/rs-drive-abci/src/replay/**"
# DPP signing test module — integration tests, not unit-testable
- "packages/rs-dpp/src/state_transition/state_transitions/address_funds/**/signing_tests.rs"
# Drive extra tests — integration tests in production code tree
- "packages/rs-dpp/src/data_contract/extra/drive_api_tests.rs"
# Versioned dispatch methods — pure version routing with no logic
- "packages/rs-dpp/src/data_contract/document_type/methods/versioned_methods.rs"
coverage:
status:
project:
default:
target: auto
threshold: 2%
patch:
default:
target: 50%
comment:
layout: "condensed_header, diff, components, condensed_files"
behavior: default
require_changes: true
component_management:
individual_components:
- component_id: dpp
name: dpp
paths:
- packages/rs-dpp/
- component_id: drive
name: drive
paths:
- packages/rs-drive/
- component_id: drive-abci
name: drive-abci
paths:
- packages/rs-drive-abci/
- component_id: sdk
name: sdk
paths:
- packages/rs-sdk/
- component_id: dapi-client
name: dapi-client
paths:
- packages/rs-dapi-client/
- component_id: platform-version
name: platform-version
paths:
- packages/rs-platform-version/
- component_id: platform-value
name: platform-value
paths:
- packages/rs-platform-value/
- component_id: platform-wallet
name: platform-wallet
paths:
- packages/rs-platform-wallet/
- component_id: drive-proof-verifier
name: drive-proof-verifier
paths:
- packages/rs-drive-proof-verifier/