torchcell.datamodels.schema.BiologicPerturbation

class BiologicPerturbation(*, provenance_gaps: list[~torchcell.verification.sourced.ProvenanceGap] = <factory>, perturbation_type: ~typing.Literal['biologic'] = 'biologic', description: str = 'Biologic (peptide/protein/antibody/toxin) agent added to the medium', agent_class: ~torchcell.datamodels.schema.BiologicAgentClass, name: str, uniprot_id: str | None = None, sequence: str | None = None, concentration: ~torchcell.datamodels.schema.Concentration)[source]

Bases: EnvironmentPerturbation, ModelStrict

An added BIOLOGIC agent (peptide / protein / antibody / toxin).

Use when the medium-borne agent is proteinaceous rather than a small molecule: its identity is a sequence / UniProt accession, not an InChIKey, so a Compound (keyed by InChIKey) cannot represent it. Names the EDIT (the agent ADDED); whether the strain is sensitive or tolerant is an EnvironmentResponsePhenotype property, never part of the edit (M1). Mirrors SmallMoleculePerturbation on the biologic axis.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].