aeat.domain.calculations.registry._validate module

Fail-fast validation for registry definitions.

Validates ModeloDefinition instances and their constituent ModeloRevision records against the legal and source catalogues.

The validator owns catalogue checks, EvidenceValidator source-tier checks, per-revision dispatch through aeat.domain.calculations.registry._validate_revision_sections.validate_revision_definition(), and cross-model scope validation.

See also

aeat.domain.calculations.registry.ValidatedRegistryAuthority

Production authority that loads registry material before validation.

aeat.domain.calculations.registry._validate_registry_scope.validate_registry_scope()

Cross-model relation and registry-scope validation invoked here.

aeat.domain.calculations.registry._validate_cache

Identity-keyed failure caches used by this validator.

class RegistryValidator(catalogues, *, source_root=None, justificante_corpus_root=None, user_profile_schema=None, source_evidence_fingerprint=None)[source]

Bases: object

Validate legal/source closure and calculability for registry modelos.

The validator accepts RegistryCatalogues, checks each ModeloDefinition, and delegates each ModeloRevision to the section-level dispatcher.

Parameters:
  • catalogues (RegistryCatalogues)

  • source_root (Path | None)

  • justificante_corpus_root (Path | None)

  • user_profile_schema (ProfileSchemaDefinition | None)

  • source_evidence_fingerprint (SourceEvidenceFingerprint | None)

validate_modelo(modelo)[source]

Validate one modelo definition and raise on accumulated failures.

Parameters:

modelo (ModeloDefinition) – The ModeloDefinition whose catalogue refs, revisions, user-profile contract, and revision windows are validated.

Return type:

None

property justificante_corpus_root: Path | None
validate_registry(modelos)[source]

Validate every modelo and the cross-model relation graph.

Parameters:

modelos (Iterable[ModeloDefinition]) – Iterable of ModeloDefinition instances to validate together before aeat.domain.calculations.registry._validate_registry_scope.validate_registry_scope() checks cross-model closure.

Return type:

None