Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ PY ?= python
# cannot be .PHONY; the delegated targets are .PHONY inside training/Makefile).
.PHONY: help benchmark benchmark-ci benchmark-report benchmark-fixtures benchmark-test \
cleanbench-full truthbench-release truthbench-pr performance-ci \
performance-baseline performance-profile performance-report
performance-baseline performance-profile performance-report coverage-report

help:
@echo "Targets:"
Expand All @@ -22,8 +22,14 @@ help:
@echo " performance-baseline Run the performance investigation matrix"
@echo " performance-profile Profile one 100k-row performance case"
@echo " performance-report Analyze and render compact performance evidence"
@echo " coverage-report Show per-module coverage for the fast test lane"
@echo " training-* Phase-5 training pipeline (see training/Makefile)"

# Run the same test scope as the required PR lane and print uncovered lines for
# every measured module so contributors can identify useful testing targets.
coverage-report:
$(PY) -m pytest -m "not online and not large" --cov-report=term-missing

# Full release-gating CleanBench run.
cleanbench-full:
$(PY) -m benchmarks.cleanbench --tracks T1,T2,T3,T4,T5 --report site --check-gates
Expand Down
6 changes: 6 additions & 0 deletions docs/community/contributor-roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,12 @@ Docs changes are the fastest way to make a real, mergeable contribution.
freshdata enforces a 93% coverage gate, so tests are always welcome — especially
"does not fire when it shouldn't" cases and fixtures.

- Run `make coverage-report` to execute the fast test lane and print a per-module
table of missed lines. Modules with the lowest coverage are good places to
look for valuable new tests. The semantic-consistency and execution-abstraction
modules are current priorities; use the live report rather than a hard-coded
percentage, and check their existing tests before choosing a case so you add
behavioral coverage rather than duplicate assertions.
- Add [benchmark preservation / trust-monotonicity / export tests (#82)](https://github.com/FreshCode-Org/freshdata/issues/82).
- Add synthetic fixture generators:
[CRM & finance (#77)](https://github.com/FreshCode-Org/freshdata/issues/77),
Expand Down
Loading