AuDQ: Auditable Data Quality through Agentic Rule Discovery
Organizations: Domyn, Milan, Italy · Domyn, Gurugram, India · Domyn, New York City, USA
Abstract
High-stakes tabular pipelines rely on scattered, static quality checks that are hard to evolve and audit against policy intent. Regulated domains particularly suffer as the LLM-era automation raises expectations for traceability and accountability. We propose a vision for an ontology-grounded, repository-native data quality layer in which rules are first-class artifacts: versioned, provenance-linked to governance texts, and re-playable through immutable execution traces. As a first step toward validating this vision, we present a concrete implementation of its agentic rule-discovery core with two rule acquisition modes (Full-Agentic and Guided) and a human-in-the-loop (HITL) review interface. We define an evaluation framework and run experiments addressing whether our fully autonomous, divide-and-conquer agentic rule discovery produces rules of the same quality and diversity as those specified by a human expert, reporting preliminary results on two real world industry datasets in the finance and retail domains.
Figures & tables
| Requirement | What it enforces / example |
|---|---|
| Syntactic validity | Types, ranges, formats across flat files and joins; referential integrity via keys/views. |
| Semantic correctness | Ontology-grounded invariants; e.g., notional consistent with product type in finance via trade instrument client, or a medication dose within an age-adjusted safe range in healthcare. |
| Temporal consistency | No future-dated events relative to ingestion; consistent time-series snapshots across grains. |
| Cross-table reconciliation | Aggregates align with primaries; e.g., ledger totals vs. front-office trades, or risk vs. accounting views. |
| Dataset | Mode | |
|---|---|---|
| Berka | Full agentic | 0.890 |
| Guided | 0.880 | |
| H&M | Full agentic | 0.922 |
| Guided | 0.850 | |
| Overall | Full agentic | 0.906 |
| Guided | 0.865 |
| Comparison | HL | 90% CI | Power | |
|---|---|---|---|---|
| Berka | ||||
| H&M | ||||
| Overall | ||||
| Matched-scope control | ||||
| Overall | ||||
| Subset | Exact | [95% CI] | AC2 [95% CI] | |
|---|---|---|---|---|
| Overall | 541 | 77.3 | 0.174 [.074,.279] | 0.812 [.770,.851] |
| Berka | 317 | 76.0 | 0.165 [.035,.292] | 0.810 [.754,.858] |
| H&M | 224 | 79.0 | 0.189 [.021,.350] | 0.815 [.747,.872] |
| Agentic | 340 | 76.8 | 0.061 [ .056,.187] | 0.816 [.764,.864] |
| Guided | 201 | 78.1 | 0.326 [.150,.484] | 0.805 [.730,.868] |
| Weight config | ||
|---|---|---|
| Equal | 0.732 | 0.729 |
| Sem.-heavy | 0.648 | 0.648 |
| Syn.-heavy | 0.749 | 0.750 |
| Scope-heavy | 0.798 | 0.788 |
| Weights | HL | 90% CI | Power | |
|---|---|---|---|---|
| Equal | ||||
| Semantic | ||||
| Syntax | ||||
| Scope |
Appendix figures & tables10 assets
Supplementary material from the paper’s appendix.
Appendix
| Rule type | Finance example | Grounding |
|---|---|---|
| Calendar and market hours | No equity trades on Sunday. Trades outside market hours must be flagged or explained. | Market calendar, policy |
| Temporal consistency | Settlement date must be after trade date. For many products it follows a fixed lag such as T plus 2, with exceptions. | Policy, product spec |
| Cross field meaning | Notional should match quantity times price within tolerance and currency scaling. | Domain math, evidence |
| Entity state | Counterparty must be active on trade date. Trades for blocked accounts must be rejected. | Reference data, policy |
| Cross table reconciliation | Trade totals must reconcile with positions and ledger aggregates at the portfolio level. | Reporting definition |
| Agent | Descriptive | Diagnostic | Predictive | Prescriptive |
|---|---|---|---|---|
| Ontology Gen. | Grounds columns into entities, measures, and units. | Adds semantic context for anomaly explanation. | Marks forecastable measures and derived metrics. | Enables domain-aware imputation and unit normalization. |
| Rule Discovery | Drafts checks with clear summaries and coverage metrics. | Encodes conditional/composite rules for diagnosis. | Proposes drift-sensitive and stability-aware rules. | Suggests adaptive thresholds and remediation-aware rules. |
| Implementer | Translates approved rules into executable code. | Generates diagnostic checks capturing failure evidence. | Produces code artifacts that accumulate execution history for forecasting. | Emits validated, controlled fixes to apply safeguards/remediation. |
| Human review | Confirms expected vs. concerning signals. | Confirms or rejects proposed causes. | Decides which predicted risks are actionable. | Approves, edits, or blocks remediation strategies. |
| EDRA | Executes checks and visualizes quality metrics and trends. | Captures failure evidence and supports drill-down/lineage views. | Collects execution history and displays risk scores and drift forecasts. | Presents recommended actions for review. |
| RCADA | Consumes descriptive trace summaries. | Produces ranked RCA hypotheses with evidence. | Forecasts future failures from recurring patterns. | Suggests targeted interventions and rule updates. |
| Node type | Purpose |
|---|---|
| Dataset | Represents a table, file, or view as a whole. |
| Entity | Represents a real-world object described by rows. |
| Attribute | Represents a column or derived field. |
| Relationship | Represents row-to-row or table-to-table linkage. |
| Vocabulary | Represents a value space or code system. |
| Field | Meaning |
|---|---|
| node_id | Stable unique identifier. |
| node_type | One of the five exhaustive types. |
| name | Human-readable label. |
| semantic_role | Open-ended semantic classification. |
| confidence | Belief score in correctness, from 0 to 1. |
| sources | Provenance of semantic evidence. |
| Module | What it outputs |
|---|---|
| Structural | Schema facts such as column names, physical types, counts, declared keys, partitions. |
| Distributional | Global numeric and categorical summaries from full scan or distributed aggregation. |
| Temporal | Frequency, gaps, weekday or holiday patterns, rolling rates with confidence. |
| Relationship | Dependencies, candidate foreign keys, correlations, ordering constraints. |
| Quality signals | Null rates, duplicates, declared constraint counts, drift indicators. |
| Category | Applied to | Share |
|---|---|---|
| Range / statistical | numeric bounds, thresholds, sign, outlier bounds | 24.2% |
| Key / uniqueness | primary-key or unique-column assertions | 23.2% |
| Categorical domain / vocabulary | enumerated valid-value list | 22.1% |
| Syntactic format | regex, length, type, encoding, calendar-validity of a date string | 10.5% |
| Completeness / NOT NULL | presence assertions | 9.5% |
| Functional dependency | within a table | 6.3% |
| Dataset | Mode | Accept | Modify | Reject | ||
|---|---|---|---|---|---|---|
| Berka | Full agentic | 216 | 432 | 363 (84.0%) | 42 (9.7%) | 27 (6.2%) |
| Guided | 101 | 202 | 168 (83.2%) | 18 (8.9%) | 16 (7.9%) | |
| H&M | Full agentic | 124 | 248 | 222 (89.5%) | 13 (5.2%) | 13 (5.2%) |
| Guided | 100 | 200 | 164 (82.0%) | 12 (6.0%) | 24 (12.0%) | |
| Overall | Full agentic | 340 | 680 | 585 (86.0%) | 55 (8.1%) | 40 (5.9%) |
| Guided | 201 | 402 | 332 (82.6%) | 30 (7.5%) | 40 (10.0%) |