"""Why a profile custody capsule was published.One vocabulary, previously written out at ten annotation sites across seven modules intwo layers: the custody capsule records and their writers, the profile aggregate andsummary views, and the custody service and ports between them. They agreed onlybecause nobody had changed one of them.The custody adapters and the profile application code both reach ``core``, so thedefinition lives here rather than in either of them."""from__future__importannotationsfromenumimportStrEnumfromtypingimportLiteral__all__=["ProfilePublicationKind","ProfilePublicationKindValue"]
[docs]classProfilePublicationKind(StrEnum):"""Which act published this generation of a profile's custody capsule."""ENROLL="enroll""""First publication, establishing custody for a profile that had none."""RESTORE="restore""""Republication of custody for a profile that already had it. A restore says the capsule was re-established, and deliberately not what authorised it -- that is a separate axis, and the two must not be merged. """
ProfilePublicationKindValue=Literal[ProfilePublicationKind.ENROLL,ProfilePublicationKind.RESTORE,]"""The same vocabulary for a strict model field or a boundary parameter.A bare enum under strict validation refuses the plain token a serialised capsulerecord carries, so those fields take this literal over the members above rather thanrestating the pair."""