Data Quality & Observability
Test cases, incidents and the reporting surface all change shape in 2.0.Incidents move onto the Task entity
The test case resolution status time series is unchanged — it still drives incident state. What
changed is the task that hangs off it.
POST /v1/feed still accepts test-case-failure-resolution task types, so existing integrations keep
working. New work should target /v1/tasks.incidentStatus is inlined on TestCase
Additive. Removes a lookup per test case.
Incident auto-close on test pass
Additive and opt-in per test case.
TestCaseResolution task
for the test case, rehydrates it so workflow transitions are available, and resolves it as Completed
with reason AutoResolved, acting as the governance bot.
Multi-status test case filtering
GET /v1/dataQuality/testCases binds testCaseStatus as a repeated parameter:
400 listing the allowed
values. Previously an invalid status was tolerated.
In the UI, the Test Cases, Test Suites, Test Definitions, Incidents and Data Quality Dashboard pages
all move to the shared filter-chip pattern, with multi-select on Platform, Status and Tags,
searchable Table, Tags, Service and Data Product filters, and a date control for
Last Run.
Batch data quality reporting
Additive. Replaces N sequential report calls.
key used to correlate it with its result in the response.
Data Insights no longer computes data quality
moduleConfiguration is additionalProperties: false, so any persisted configuration still
carrying the dataQuality key makes DataInsightsApplication fail to deserialise on startup. The
migration strips it from installed_apps, apps_marketplace and every application version row.
What replaces it: test case results and resolution statuses are read straight from their live search
indexes, which search indexing now owns. This also drops the previous 30-day cap on incident
data in Data Insights — incident history is no longer truncated.
Related Data Insights fixes in 2.0:
- A chart metric with no function or formula returns
400, not500. - Chart formulas are validated by the Data Insights formula evaluator, not the policy validator.
entityStatusis snapshotted so charts can filter by lifecycle status.classificationTagsandglossaryTagsare projected into the snapshot.- Nested subfields are no longer advertised as chart fields.
- Enricher step failures are isolated, with per-step entity statistics.
Custom SQL test definitions — documentation correction
Not a behaviour change — a corrected description.
sqlExpression description was rewritten in 2.0:
- 1.13 description (incorrect)
- 2.0 description (accurate)
Supports substitution variables:
{table} and {column} for runtime entity references, and
{{paramName}} for user-defined parameters.{table}, your test was already producing invalid SQL.
Profiler & sampling
The profiler workflow samples dynamically by default rather than reading 100% of rows.
sampleConfigType defaults to DYNAMIC, which sizes the sample from the table’s row count. Set a
static sample explicitly if you need full-table profiling. The sampling configuration schemas are
unchanged between 1.13 and 2.0.- Progress tracking for the profiler and auto-classification workflows.
- The sample configuration is used for data quality sample data ingestion.
tableCustomSQLQueryhonourscomputePassedFailedRowCount.- The sampler interface collapses to a single typed configuration object — relevant if you maintain a custom sampler.
columnProfile.cardinalityDistribution moves from an inline object to a named schema definition. The
wire shape is unchanged; regenerate specification-derived models.
Test suite & test case search
Additive. Test suites and test cases are vectorised for hybrid search,
search_metadata can search
them, and orphan test cases no longer break search indexing.Observability UI
Behavioural. Affects forks and plugin authors.
ObservabilityRouterClassBasereplaces the shared router utilities for data quality and observability navigation paths, making them overridable by downstream distributions.- Test case and bundle-suite forms migrate from AntD
Formto react-hook-form with reusable field docs.EditTestCaseModal,EditTestCaseModalV1,TestCaseForm,TestCaseFormV1andBundleSuiteFormare removed. - Incident test-case status and severity components move to the shared core components.
- Data quality dashboard hooks and presentational components are extracted and shared.