haiku.rag/haiku_rag_slim/haiku/rag/ingester/exceptions.py
2026-05-26 11:41:54 +03:00

12 lines
484 B
Python

class IngesterError(Exception):
"""Base class for ingester errors that the worker classifies on."""
class PermanentError(IngesterError):
"""The job will never succeed without intervention (bad URI, unsupported
content type, 410 Gone, etc.). Goes straight to dead — no retry."""
class TransientError(IngesterError):
"""The job might succeed on a future attempt (network hiccup, 5xx, DB
busy). Worker reschedules with backoff up to max_attempts, then dead."""