aeat.application.modelo._verification_actions module¶
Verification actions and predicates for modelo filings.
verify_modelo_revision() evaluates a draft
CalculationRevision against its RegistrySnapshot, workflow
TaxpayerProfile, ledger diagnostics, registry verification predicates,
and cross-period clean-state verdicts before persisting a
VerificationReport.
Verification findings are the operator-facing gate vocabulary. BLOCKING-severity
findings refuse the verified-complete transition; WARNING-severity ADVISORY
findings remain visible in the report without bricking verify, file, or export.
Calculate-path source diagnostics are separate
CalculationSourceDiagnostic advisories;
this module converts only verify-time registry, profile, provenance, and
cross-period facts into ModeloVerificationFinding records.
Verification emits bucket-history entries through
BucketEventHistoryRepository, stores casilla-level
CasillaObservation provenance, and uses
TransactionCatalogueRepository only for evidence advisories over source
transactions.
See also
evaluate_cross_period_clean_state():Shared cross-period gate used by verify, file, and export.
_calculation_diagnostics:Calculate-path diagnostics that feed advisory observations before verify.
modelos:Finding kind, severity, and completeness-status authority.
- verify_modelo_revision(calculation_revision_id, *, actor, workflow_profile, work_unit_repository=None, calculation_repository=None, filing_repository=None, transaction_repository=None, verification_repository=None, bucket_event_repository=None, iva_compensation_decision_repository=None, calculation_observation_repository=None, participation_index_repository=None, cross_period_expected_member_sets=(), workflow_engine=None, workflow_runs_dir=None, settings=None, clock=None)[source]¶
Evaluate a draft revision against registry, clean-state, provenance, and workflow gates.
The verifier loads the draft
CalculationRevision, resolves its work unit andRegistrySnapshot, builds verify-time findings, classifies the outcome, persists aVerificationReport, records bucket history, and updates theCalculationRevisiononly when the verified-complete transition is granted.The supplied
TaxpayerProfilescopes deadline/applicability decisions, whileTransactionCatalogueRepositorysupplies non-blocking transaction-evidence advisories for source rows attached to the revision. WARNING-severity advisories remain report content; only BLOCKING severity can refuse the transition.- Parameters:
calculation_revision_id (
str) – Stable id of the draftCalculationRevisionto verify.actor (
str) – Operator label recorded on the verification report and bucket history event.workflow_profile (
TaxpayerProfile) –TaxpayerProfilesupplying profile facts for workflow, deadline, applicability, and registry predicate gates.work_unit_repository (
WorkUnitCatalogueRepositoryProtocol|None) – Optional work-unit repository port.calculation_repository (
CalculationRevisionCatalogueRepositoryProtocol|None) – Optional calculation-revision repository port.filing_repository (
ModeloRecordCatalogueRepositoryProtocol|None) – Optional modelo-record repository port for filed-state and cross-period checks.transaction_repository (
TransactionCatalogueRepository|None) – OptionalTransactionCatalogueRepositoryused for transaction-evidence advisories.verification_repository (
VerificationReportCatalogueRepositoryProtocol|None) – Optional verification-report repository port.bucket_event_repository (
BucketEventHistoryRepositoryProtocol|None) – Optional bucket-event history repository port.iva_compensation_decision_repository (
IvaWalletDecisionRepository|None) – Optional IVA-wallet decision repository used by Modelo 303 verification gates.calculation_observation_repository (
CalculationObservationRepository|None) – Optional calculation-observation repository used by cross-period clean-state checks.participation_index_repository (
TransactionParticipationIndexRepository|None) – Optional transaction participation-index repository co-emitted with verified revisions.cross_period_expected_member_sets (
Iterable[CrossPeriodExpectedMemberSet]) – Optional expected-member overrides for the cross-period clean-state gate.workflow_engine (
WorkflowEngine|None) – OptionalWorkflowEngineoverride for tests and controlled workflow runs.workflow_runs_dir (
Path|None) – Optional workflow-runs directory override.settings (
Settings|None) – Optional runtime settings for workflow-engine construction.clock (
datetime|None) – Optional timestamp override for deterministic verification.
- Return type:
- Returns:
The persisted
VerificationReport.- Raises:
CalculationRevisionNotFoundError – The requested calculation revision does not exist in the active catalogue.
CalculationRevisionStateError – The revision is not in
BORRADORstate.WorkUnitNotFoundError – The owning work unit is missing.
ModeloCrossPeriodCleanStateError – A required cross-period dependency has a blocking clean-state finding.
- missing_required_casilla_finding(casilla_id, work_unit_id, *, casilla_def=None)¶
- Return type:
- Parameters:
casilla_id (CasillaId)
work_unit_id (str)
casilla_def (CasillaDefinition | None)
- iva_wallet_blocking_verification_finding(decision)¶
- Return type:
- Parameters:
decision (IvaCompensationReconciliationDecision)