torchcell.datamodels.ontology_checks.experiment_closure

experiment_closure() → frozenset[type[BaseModel]][source]

Models reachable from Experiment / ExperimentReference.

Reachability is composition PLUS inheritance in both directions: a union slot typed on a leaf makes the leaf’s abstract bases part of the ontology, and a slot typed on a base admits every subclass. Composition alone would call every abstract base an orphan, which is noise rather than a finding.