6.4.2.14 IngestionSkip
6.4.2.14.1 Purpose¶
Counts the source values that were not published as canonical data, per parse job, field and reason, with a row-by-row log next to the raw file. A missing observation can mean "not publishable" rather than "not measured"; this is where to check.
6.4.2.14.2 Questions it answers¶
- Why is a value missing from the canonical data?
- Which fields of a source cannot be mapped yet?
- How many values were skipped, and where are the row-level details?
6.4.2.14.3 Fields¶
| Field | Type | Cardinality | Description |
|---|---|---|---|
id |
string (uuid) |
1..1 |
Key. |
raw_metadata |
RawMetadata | 1..1 |
|
source_field |
string |
1..1 |
|
reason |
enum | 1..1 |
Values: unit_unknown, semantic_basis_unknown, unmapped_field, out_of_range, not_measured_marker, invalid_format, unresolved_subject, invalid_identifier, out_of_scope, unsupported_result_form, proprietary_index. |
count |
integer |
1..1 |
Default: 1. |
mapping_version |
string |
1..1 |
|
detail_path |
string |
1..1 |
Row-level log in the bucket next to the raw file (JSONL: record/field locator, source_record_key, time, animal only if safely resolved, raw value). Summary counts alone are not row-level evidence; this file is. |
parse_job |
ParseJob | 1..1 |
|
created_at |
datetime |
1..1 |
6.4.2.14.4 Relationships¶
References
IngestionSkip.raw_metadata→ RawMetadata (1..1)IngestionSkip.parse_job→ ParseJob (1..1)
6.4.2.14.5 Rules & constraints¶
- A result not published canonically; raw remains retrievable. Not synonymous with not measured.
- One row per (
parse_job,source_field, reason): counts in the database, detail in the bucket, technical errors in Cloud Logging (hybrid log). - An unknown subject is never assigned to an arbitrary animal.
- A row present in raw but skipped during parsing is still present at the source; never infer its deletion.
- Invalid analytical test outcomes belong in a typed result category when reported, not in ingestion errors.