Source code for cadrumo.application.calculations.verification_report_gate
"""Registry-coordinate gate for persisted verification-report catalogues."""from__future__importannotationsfrom...domain.calculations.registry.authorityimportPinnedAuthorityOperationfrom...domain.modelos.errorsimportModeloValidationErrorfrom...domain.modelos.verification_reportimportVerificationReportCataloguefrom.revision_carry_gateimportrevision_carry_outcome
[docs]defrequire_verification_report_coordinates_current(catalogue:VerificationReportCatalogue,*,operation:PinnedAuthorityOperation,)->VerificationReportCatalogue:"""Return ``catalogue`` only when every report's producing revision re-confirms."""forreportincatalogue.values():outcome=revision_carry_outcome(report.registry_snapshot_ref,operation=operation)ifoutcome.refused:raiseModeloValidationError("verification report registry coordinate cannot be re-confirmed: "f"{report.registry_snapshot_ref.revision_id}: {outcome.detail}")returncatalogue