models

alchemiscale.models — common data models

exception alchemiscale.models.InvalidGufeKeyError

Bases: ValueError

exception alchemiscale.models.InvalidScopeError

Bases: ValueError

class alchemiscale.models.Scope(org=None, campaign=None, project=None)

Bases: BaseModel

is_superset(other: Scope) bool

Return True if this Scope is a superset of another.

Check for a superset (not a proper superset) so that two equal scopes also return True.

model_config = {'frozen': True}

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

specific() bool

Return True if this Scope has no unspecified elements.

class alchemiscale.models.ScopedKey(*, gufe_key: GufeKey, org: str, campaign: str, project: str)

Bases: BaseModel

Unique identifier for GufeTokenizables in state store.

For this object, org, campaign, and project cannot contain wildcards. In other words, the Scope of a ScopedKey must be specific.

model_config = {'arbitrary_types_allowed': True, 'frozen': True}

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