Ingest Quality Policy Schema¶
Reference for ingest_quality.toml used by:
honestroles ingest sync --quality-policy ingest_quality.tomlhonestroles ingest validate --quality-policy ingest_quality.tomlingest.tomldefaults/source overrides viaquality_policy_file
If --quality-policy (or manifest quality_policy_file) is omitted, HonestRoles
uses the built-in default quality policy.
Schema¶
Top-level keys:
schema_version(optional, default"1.0")min_rows(optional integer,>= 1)required_columns(optional non-empty string array)location_or_remote_signal_min(optional number in[0, 1], default0.85)null_thresholds(optional table, values in[0, 1])freshness(optional table)
freshness keys:
posted_at_max_age_days(optional integer,>= 0)source_updated_at_max_age_days(optional integer,>= 0)
Full Example¶
schema_version = "1.0"
min_rows = 100
required_columns = [
"id",
"title",
"apply_url",
"posted_at",
"source",
"source_ref",
"source_job_id",
"source_payload_hash",
]
location_or_remote_signal_min = 0.85
[null_thresholds]
id = 0.00
title = 0.00
apply_url = 0.00
source_job_id = 0.00
company = 0.05
description_text = 0.10
posted_at = 0.10
[freshness]
posted_at_max_age_days = 365
source_updated_at_max_age_days = 730
Check Codes¶
Quality checks emit stable codes:
INGEST_QUALITY_REQUIRED_COLUMNSINGEST_QUALITY_MIN_ROWSINGEST_QUALITY_NULL_RATE_IDINGEST_QUALITY_NULL_RATE_TITLEINGEST_QUALITY_NULL_RATE_APPLY_URLINGEST_QUALITY_NULL_RATE_SOURCE_JOB_IDINGEST_QUALITY_NULL_RATE_COMPANYINGEST_QUALITY_NULL_RATE_DESCRIPTION_TEXTINGEST_QUALITY_NULL_RATE_POSTED_ATINGEST_QUALITY_LOCATION_OR_REMOTE_SIGNALINGEST_QUALITY_POSTED_AT_PARSEABLEINGEST_QUALITY_POSTED_AT_FRESHNESSINGEST_QUALITY_SOURCE_UPDATED_AT_PARSEABLEINGEST_QUALITY_SOURCE_UPDATED_AT_FRESHNESS
Default behavior treats quality findings as warnings. --strict-quality upgrades
non-pass quality outcomes to command failure (exit 1) without changing emitted
check severities/codes.