Source code for cadrumo.core.corpus_manifest.errors
"""Typed error hierarchy for corpus-manifest validation.Defines the leaf exceptions raised by the corpus-manifest loader andverifier. All inherit from :class:`core.errors.hierarchy.CadrumoError` so anycaller catching the framework's base error type also catches manifestfailures."""from__future__importannotationsfrom..errors.hierarchyimportCadrumoError
[docs]classCorpusManifestError(CadrumoError):"""Base error for any failure in corpus-manifest parsing or validation. Concrete failure modes derive from this class; callers can catch :class:`CorpusManifestError` to handle every manifest failure uniformly, or catch a leaf such as :class:`CorpusManifestTamperError` to react to a specific condition. """
[docs]classCorpusManifestTamperError(CorpusManifestError):"""Raised when a manifest's self-attesting digest does not match its body. Indicates the manifest body has been edited without recomputing the embedded checksum — usually a sign of corruption or tampering rather than legitimate drift between the manifest and the on-disk corpus. """
[docs]classCorpusBundleError(CorpusManifestError):"""Base error for corpus bundle build/verify failures. Raised for structural bundle problems (not a zip archive, missing or structurally invalid embedded manifest, unsupported manifest version). """