Spaces:
Sleeping
Sleeping
| """ | |
| Base exception classes for consistent error handling across the application. | |
| Provides a standardized way to distinguish between bugs, recoverable errors, | |
| and configuration issues. | |
| """ | |
| from typing import Any, Dict, Optional | |
| class DeepTutorError(Exception): | |
| """Base class for all application errors in DeepTutor.""" | |
| def __init__(self, message: str, details: Optional[Dict[str, Any]] = None): | |
| super().__init__(message) | |
| self.message = message | |
| self.details = details or {} | |
| def __str__(self) -> str: | |
| if self.details: | |
| return f"{self.message} (details: {self.details})" | |
| return self.message | |
| class ConfigurationError(DeepTutorError): | |
| """Raised when there's a configuration-related error.""" | |
| pass | |
| class ValidationError(DeepTutorError): | |
| """Raised when input validation fails.""" | |
| pass | |
| class ServiceError(DeepTutorError): | |
| """Base class for service layer errors.""" | |
| pass | |
| class LLMServiceError(ServiceError): | |
| """Base class for LLM service-related errors.""" | |
| pass | |
| class LLMContextError(LLMServiceError): | |
| """Raised when prompt exceeds model context window.""" | |
| pass | |
| class EnvironmentConfigError(ConfigurationError): | |
| """Raised when there's an environment-related configuration error.""" | |
| pass | |