//! Error types for handle resolution operations. //! //! This module defines all error types used throughout the handle resolver components, //! following the QuickDID error format conventions. use thiserror::Error; /// Errors that can occur during handle resolution #[derive(Error, Debug)] pub enum HandleResolverError { /// Failed to resolve subject through DNS or HTTP #[error("error-quickdid-resolve-1 Failed to resolve subject: {0}")] ResolutionFailed(String), /// Handle not found in cache with specific error message #[error("error-quickdid-resolve-2 Handle not found (cached): {0}")] HandleNotFoundCached(String), /// Handle not found in cache (generic) #[error("error-quickdid-resolve-3 Handle not found (cached)")] HandleNotFound, /// Mock resolver failure for testing #[error("error-quickdid-resolve-4 Mock resolution failure")] MockResolutionFailure, #[error("error-quickdid-resolve-5 Invalid subject: {0}")] InvalidSubject(String), }