Coverage for src/secchi/errors.py: 100%

6 statements  

« prev     ^ index     » next       coverage.py v7.15.2, created at 2026-08-04 22:15 +0000

1"""Stable exception types exposed by Secchi application boundaries.""" 

2 

3from __future__ import annotations 

4 

5 

6class SecchiError(Exception): 

7 """Base class for expected, user-actionable Secchi failures.""" 

8 

9 

10class PackageNotFoundError(SecchiError): 

11 """No package or exact registry match could be resolved.""" 

12 

13 

14class RegistryUnavailableError(SecchiError): 

15 """A registry or enrichment service could not be reached or used.""" 

16 

17 

18class ConfigError(SecchiError): 

19 """The requested Secchi configuration is missing or invalid.""" 

20 

21 

22class ReportError(SecchiError): 

23 """A report could not be rendered or its format is unsupported."""