🧪 Testing
What's covered and how to run the gates.
📁 Layout
| Path | Content |
|---|---|
tests/unit/ |
Pure unit tests (domain, extraction stages, enrichment helpers) |
tests/domain/ |
Domain sub-suites: resources, enrichment, fetch pipeline |
tests/ (integration) |
Mongo-backed repo/service integration tests |
🚀 Running
Current health: 1190 passed, 1 skipped; all *.pyi lint-clean after the F821 fixes in the enrichment pipeline stubs.
🧩 What's Heavily Tested
- Enrichment — identity/fingerprint edge cases, tag flag computation, pipeline wiring.
- Extraction — CSV/XLSX/PDF tabular parsing against golden fixtures, ambiguity detection.
- Repos — cache invalidation and
x-fkpopulation against an in-memory Mongo.
⚠️ Stub Checks
Stubs mirror public signatures exactly. When a signature changes, the .pyi must change with it or the type gate breaks. Two stubs import dagpipe.Pipeline instead of a rogue string forward-ref: