nl2sql-copilot / app /errors.py
github-actions[bot]
Sync from GitHub main
82e122c
from __future__ import annotations
from dataclasses import dataclass
@dataclass
class AppError(Exception):
"""Base class for domain-level errors."""
message: str
def __str__(self) -> str:
return self.message
# 4xx-ish
@dataclass
class DbNotFound(AppError):
"""Requested DB (or db_id) does not exist."""
@dataclass
class InvalidRequest(AppError):
"""User input is invalid or cannot be processed."""
@dataclass
class SchemaRequired(AppError):
"""Caller must provide schema_preview (e.g. postgres mode)."""
@dataclass
class SchemaDeriveError(AppError):
"""Failed to derive schema preview from DB."""
# 5xx-ish
@dataclass
class PipelineConfigError(AppError):
"""Pipeline/YAML/config is missing or malformed."""
@dataclass
class PipelineRunError(AppError):
"""Unexpected failure while running the pipeline."""