Documentation Index

Fetch the complete documentation index at: https://docs.aifabrix.ai/llms.txt

Use this file to discover all available pages before exploring further.

Configure data quality

Prev Next

Declare reject rules and quality gates so sync and enrichment surface bad records before they reach search, Content Review, or Role Assistant context.

Prerequisites

Where it lives

Layer Location
Quality band <datasourceKey>.jsonquality.rejectIf[]
UI Business Entity Quality tab (?tab=quality)

Manifest section: datasource.dataQuality.

Builder MCP

Manifest section datasource.dataQuality
UI tab Quality (?tab=quality)
Help topics section, goldenExample
Repair hooks

Quality rules reference normalized field names from metadataSchema, not vendor JSON paths.

How to set

  1. Validate metadata bands — rules must target mapped, indexed fields:
aifabrix repair <systemKey> --dry-run
aifabrix datasource validate <datasourceKey>
  1. Add reject rules for empty or invalid governed fields:
{
  "quality": {
    "rejectIf": [
      {
        "field": "externalId",
        "operator": "empty",
        "message": "External id cannot be empty"
      },
      {
        "field": "name",
        "operator": "empty",
        "message": "Display name cannot be empty"
      },
      {
        "field": "country",
        "operator": "empty",
        "message": "Country required for regional policy"
      }
    ]
  }
}
  1. Align operators with platform-supported set for your schema version.
  2. Validate system after rule changes:
aifabrix validate <systemKey>
aifabrix test-integration <systemKey>

Defaults and examples

Element Purpose Example
field Normalized metadata key externalId, name
operator Reject condition empty, supported comparators
message Operator-facing reason Plain language — not vendor codes

Example quality band on document storage:

{
  "quality": {
    "rejectIf": [
      {
        "field": "externalId",
        "operator": "empty",
        "message": "Document external id required"
      },
      {
        "field": "title",
        "operator": "empty",
        "message": "Document title required for review queues"
      }
    ]
  }
}

Illustrative quality goals:

  • reject before bad rows enter search indexes
  • messages reference business field names operators recognize
  • rules align with Content Review dimensions — not a substitute for human approval

Validate

aifabrix datasource validate <datasourceKey>
aifabrix validate <systemKey>
aifabrix test-integration <systemKey>

See CLI workflow for full ladder. Failed quality during sync surfaces in integration test evidence. Add rules incrementally — start with required identity fields, then domain-specific checks once vocabulary mapping is stable.

Common mistakes

Mistake Fix
Rule on unmapped vendor field Map in fieldMappings.attributes first
Quality without indexed schema property Add property to metadataSchema
Using quality instead of Content Review Human approval uses documentStorage + dimensions
Over-broad reject rules Target fields that block governance only
Reject on optional marketing fields Gate only identity and policy-critical attributes

Limits

Quality operators vary by schema version — validate after platform upgrades. Reject rules do not replace ABAC or protection; they filter ingest only. Complex validation logic may require CIP transform steps in Configure data flow. Start with externalId and display-name rules before adding domain-specific checks — most certification failures trace to missing join identity rather than optional attribute gaps. Pair quality rules with integration test evidence so reject messages are visible before production sync schedules activate. When adding country or region rules, confirm the field is indexed in metadataSchema and bound in top-level dimensions for policy consistency. Quality rejections appear in sync logs and integration test output — treat them as early signals before records reach search indexes or Role Assistant context windows.