torchcell.datamodels.ontology_checks.lane_membership
- lane_membership() dict[str, frozenset[type[BaseModel]]][source]
The three record lanes, each closed under inheritance AND composition.
A lane is what an experiment’s three slots point at: the genotype it applied, the environment it applied it in, and the phenotype it observed. Keeping these disjoint is what makes a persistent entity separable from a contingent observation: a medium that could also be reached from a phenotype would mean the observation carries part of the thing observed.