Lab identity is stored inside JSON today:
• Builds: misc.lab
• Tests: misc.runtime (KCIDB naming)
Ingester
• On ingest, populate lab when the submission provides it (misc.lab for builds, misc.runtime for tests).
• Reuse existing standardize_labs() behavior (automatic lab names → automatic_lab, fallback to origin when missing).
• Write the resolved value to the column, not only the raw JSON field.
Acceptance criteria
• New ingestion populates lab on builds and tests when data is available.
• Hot-path queries use the column, not JSON extraction, for lab filtering/grouping.
Lab identity is stored inside JSON today:
• Builds: misc.lab
• Tests: misc.runtime (KCIDB naming)
Ingester
• On ingest, populate lab when the submission provides it (misc.lab for builds, misc.runtime for tests).
• Reuse existing standardize_labs() behavior (automatic lab names → automatic_lab, fallback to origin when missing).
• Write the resolved value to the column, not only the raw JSON field.
Acceptance criteria
• New ingestion populates lab on builds and tests when data is available.
• Hot-path queries use the column, not JSON extraction, for lab filtering/grouping.