Testing · rule lineage-dataset-unasserted
OpenLineage datasets with no quality assertion
A Metacenta review checks this under the rule Written datasets carry data-quality assertions. Everything below applies whether or not you ever commission one.
What this rule checks
From an export of OpenLineage events, this rule flags datasets that a recorded job writes but that carry no dataQualityAssertions facet. When more than half are unasserted, we report it once rather than once per dataset.
Why it matters
A bad write reaches its readers without a failing check on record. Tests may well run elsewhere, but the lineage record cannot show which outputs were checked, so nobody can answer that question from it.
How to fix it
Record data-quality assertions in lineage. Emit the dataQualityAssertions facet from the tools that already test your data, such as dbt or Great Expectations, through their OpenLineage integrations.
When it is fine to leave
If your tests run in a tool with no OpenLineage integration, the gap is in the record rather than in the testing. Say so, and the finding comes out of your report.
What we need to check it
An export of OpenLineage events, such as a JSON Lines file from your lineage backend. We read job, run and dataset names and facets, never the data.