Definition of Done¶
The project is complete only when every criterion is demonstrable by a stranger
from a clean clone. ☑ means proven, ◐ means partially proven, and ☐ means
open.
| # | Criterion | Status 2026-07-29 |
|---|---|---|
| 1 | Demo builds from a clean clone with documented commands | ◐ Local build is proven; the clean-clone GitHub run is pending the first push. |
| 2 | Unit, contract, integration, and end-to-end tests pass | ◐ Full local suite passes; the 3-OS CI matrix is defined but has not run remotely. |
| 3 | Critical quality failures stop publication | ☑ A poisoned-fixture e2e test proves no marts are published, exit code 3 is returned, and evidence is stored. |
| 4 | Dashboard metrics trace to curated records and sources | ☑ Mart → fact → source run → SHA-256 → exact raw bytes is an automated e2e test; dashboard detail sections expose source and run context. |
| 5 | Data sources and licenses are documented | ☑ The catalogue records source status, access method, terms, and integration limits; TED live terms are documented. |
| 6 | Synthetic and fixture data is visibly labelled | ☑ data_class travels through the pipeline, exports, reports, and dashboard banner/tags. |
| 7 | Three core modules work end to end | ☑ All three data layers, 14 marts, 35 quality rules, exports, report, and dashboard run on labelled demo data. |
| 8 | API is documented and tested | ☐ No API is claimed or implemented. |
| 9 | Dashboard includes data-quality status | ☑ It shows gate state, rule count, data composition, filters, record/source details, and a complete English/German UI switch. |
| 10 | Exports are reproducible | ☑ XLSX/CSV and the weekly report regenerate from stored runs; the report is byte-reproducible by test. |
| 11 | CI runs successfully | ☐ CI and Pages workflows are committed locally; no remote run exists yet. |
| 12 | Security and secrets checks pass | ◐ No secrets are required for the demo or TED collector; a dedicated automated secret/dependency scan is still open. |
| 13 | Analysis separates observation from inference | ☑ The analysis report labels findings and carries lineage paths. |
| 14 | Limitations are prominent | ☑ README, dashboard, source catalogue, and this documentation state coverage and data-class limits. |
| 15 | README matches implementation | ☑ Checked against the runnable CLI and generated artifacts on 2026-07-29. |
| 16 | No claimed feature is only a stub | ☑ Unbuilt API/backend options are named as open; make serve fails explicitly. |
| 17 | At least one official source runs live | ☑ TED Search API executed successfully on 2026-07-29 through the production collector and quality gate. |
| 18 | Public demo is deployed and opened | ☐ GitHub Pages workflow is ready; a repository remote and first deployment are still required. |
Phase acceptance criteria live in the backlog. Historical review
records remain in docs/reviews/; later evidence supersedes only the dated
status, not what those reviews observed at the time.