Skip to content

chore: coverage measurement in CI + README badges, test-count reconcile, all extra - #60

Merged
Therealdk8890 merged 2 commits into
mainfrom
chore/polish-pass
Jul 22, 2026
Merged

chore: coverage measurement in CI + README badges, test-count reconcile, all extra#60
Therealdk8890 merged 2 commits into
mainfrom
chore/polish-pass

Conversation

@Therealdk8890

Copy link
Copy Markdown
Owner

A low-risk packaging/docs polish pass — no library source changes.

Changes

  • Coverage is now measured on every PR (non-gating). The test job runs pytest --cov=dprovenancekit --cov-report=term-missing:skip-covered on each matrix leg, and pytest-cov is added to the dev extra. There is deliberately no --cov-fail-under, so coverage is visible in the log but never blocks a merge.
  • README badges: added Python versions and License badges (both from PyPI metadata), rounding out the badge row.
  • Test-count reconcile: README's 380+ and CONTRIBUTING's ~430 now both read ~440, keeping the honest "a default run skips uninstalled adapters; CI's full matrix runs them all" nuance.
  • all extra: a convenience aggregate that installs every framework adapter at once. Documented inline that it requires Python ≥ 3.10 (openai-agents / llama-index / crewai declare that floor) and is heavy (crewai pulls chromadb/onnxruntime); 3.9 users pick specific extras.

Verification (local, Python 3.13)

  • 514 passed, 2 skipped (crewai / openai-agents not installed → correctly skipped).
  • Total line coverage: 63% — this is the number the roadmap's "improve if below 90%" asks for. Integration adapters are well covered (86–96%); the thin areas are CLI/benchmark/UI-viewmodel plumbing. Raising this toward a target is a separate, larger effort (see PR discussion).
  • pip install -e ".[dev]" resolves with the new pytest-cov; [all] parses and resolves.

Not done (deliberately)

  • No otel extra: OTLP ingestion (otel_ingest.py) is pure standard library, so an opentelemetry-* dependency would have no consumer. The 8 existing framework adapters already each ship an extra.

…an `all` extra

- ci.yml: run pytest with --cov (no --cov-fail-under, so coverage is measured
  and printed on every leg but never gates the build); pytest-cov added to dev.
- README: add Python-versions and License badges; reconcile the test-count
  claim (~440, matching CONTRIBUTING) with the default-vs-full-matrix nuance.
- CONTRIBUTING: ~430 -> ~440 tests.
- pyproject: add an `all` convenience extra (every framework adapter; requires
  Python >=3.10 and is heavy — documented inline).

Local: 514 passed, 2 skipped; total line coverage 63%.
@Therealdk8890
Therealdk8890 merged commit 11f4a2e into main Jul 22, 2026
9 checks passed
@Therealdk8890
Therealdk8890 deleted the chore/polish-pass branch July 22, 2026 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant