torchcell.verification.ProvenanceGap
- class ProvenanceGap(*, field: str, reason: ~torchcell.verification.sourced.ProvenanceGapReason, looked_in: ~torchcell.verification.report.Provenance | None = None, resolve_with: ~torchcell.verification.report.Provenance | None = None, note: str | None = None, keys: list[str] = <factory>)[source]
Bases:
BaseModelThe complement of
SourcedValue: a documented, typed ABSENCE.SourcedValuebinds a value to(citation_key, sha256, quote).ProvenanceGapbinds a MISSING value to a typedreason, so an unfilled field (n_samples, an uncertainty, a replicate design) is an HONEST typed absence – never a guess, never a silentNonethe reader cannot tell apart from “not applicable”. The set of gaps across a build is a queryable worklist (seeprovenance_gap_census()).Consuming a secondary curation layer (YeastPhenome, SPELL) is the motivating case: we capture the whole record as presented and gap-mark every field the curation does not carry, rather than dropping the record or fabricating a value.
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].