refactor: remove unused error types

Andrey Nering created

Change summary

errors.go | 155 ---------------------------------------------------------
1 file changed, 155 deletions(-)

Detailed changes

errors.go 🔗

@@ -71,21 +71,6 @@ func NewAPICallError(message, url string, requestDump string, statusCode int, re
 	}
 }
 
-// EmptyResponseBodyError represents an empty response body error.
-type EmptyResponseBodyError struct {
-	*AIError
-}
-
-// NewEmptyResponseBodyError creates a new empty response body error.
-func NewEmptyResponseBodyError(message string) *EmptyResponseBodyError {
-	if message == "" {
-		message = "Empty response body"
-	}
-	return &EmptyResponseBodyError{
-		AIError: NewAIError("AI_EmptyResponseBodyError", message, nil),
-	}
-}
-
 // InvalidArgumentError represents an invalid function argument error.
 type InvalidArgumentError struct {
 	*AIError
@@ -132,146 +117,6 @@ func NewInvalidResponseDataError(data any, message string) *InvalidResponseDataE
 	}
 }
 
-// JSONParseError represents a JSON parsing error.
-type JSONParseError struct {
-	*AIError
-	Text string
-}
-
-// NewJSONParseError creates a new JSON parse error.
-func NewJSONParseError(text string, cause error) *JSONParseError {
-	message := fmt.Sprintf("JSON parsing failed: Text: %s.\nError message: %s", text, GetErrorMessage(cause))
-	return &JSONParseError{
-		AIError: NewAIError("AI_JSONParseError", message, cause),
-		Text:    text,
-	}
-}
-
-// LoadAPIKeyError represents an error loading an API key.
-type LoadAPIKeyError struct {
-	*AIError
-}
-
-// NewLoadAPIKeyError creates a new load API key error.
-func NewLoadAPIKeyError(message string) *LoadAPIKeyError {
-	return &LoadAPIKeyError{
-		AIError: NewAIError("AI_LoadAPIKeyError", message, nil),
-	}
-}
-
-// LoadSettingError represents an error loading a setting.
-type LoadSettingError struct {
-	*AIError
-}
-
-// NewLoadSettingError creates a new load setting error.
-func NewLoadSettingError(message string) *LoadSettingError {
-	return &LoadSettingError{
-		AIError: NewAIError("AI_LoadSettingError", message, nil),
-	}
-}
-
-// NoContentGeneratedError is thrown when the AI provider fails to generate any content.
-type NoContentGeneratedError struct {
-	*AIError
-}
-
-// NewNoContentGeneratedError creates a new no content generated error.
-func NewNoContentGeneratedError(message string) *NoContentGeneratedError {
-	if message == "" {
-		message = "No content generated."
-	}
-	return &NoContentGeneratedError{
-		AIError: NewAIError("AI_NoContentGeneratedError", message, nil),
-	}
-}
-
-// ModelType represents the type of model.
-type ModelType string
-
-const (
-	// ModelTypeLanguage represents a language model.
-	ModelTypeLanguage ModelType = "languageModel"
-	// ModelTypeTextEmbedding represents a text embedding model.
-	ModelTypeTextEmbedding ModelType = "textEmbeddingModel"
-	// ModelTypeImage represents an image model.
-	ModelTypeImage ModelType = "imageModel"
-	// ModelTypeTranscription represents a transcription model.
-	ModelTypeTranscription ModelType = "transcriptionModel"
-	// ModelTypeSpeech represents a speech model.
-	ModelTypeSpeech ModelType = "speechModel"
-)
-
-// NoSuchModelError represents an error when a model is not found.
-type NoSuchModelError struct {
-	*AIError
-	ModelID   string
-	ModelType ModelType
-}
-
-// NewNoSuchModelError creates a new no such model error.
-func NewNoSuchModelError(modelID string, modelType ModelType, message string) *NoSuchModelError {
-	if message == "" {
-		message = fmt.Sprintf("No such %s: %s", modelType, modelID)
-	}
-	return &NoSuchModelError{
-		AIError:   NewAIError("AI_NoSuchModelError", message, nil),
-		ModelID:   modelID,
-		ModelType: modelType,
-	}
-}
-
-// TooManyEmbeddingValuesForCallError represents an error when too many values are provided for embedding.
-type TooManyEmbeddingValuesForCallError struct {
-	*AIError
-	Provider             string
-	ModelID              string
-	MaxEmbeddingsPerCall int
-	Values               []any
-}
-
-// NewTooManyEmbeddingValuesForCallError creates a new too many embedding values error.
-func NewTooManyEmbeddingValuesForCallError(provider, modelID string, maxEmbeddingsPerCall int, values []any) *TooManyEmbeddingValuesForCallError {
-	message := fmt.Sprintf(
-		"Too many values for a single embedding call. The %s model \"%s\" can only embed up to %d values per call, but %d values were provided.",
-		provider, modelID, maxEmbeddingsPerCall, len(values),
-	)
-	return &TooManyEmbeddingValuesForCallError{
-		AIError:              NewAIError("AI_TooManyEmbeddingValuesForCallError", message, nil),
-		Provider:             provider,
-		ModelID:              modelID,
-		MaxEmbeddingsPerCall: maxEmbeddingsPerCall,
-		Values:               values,
-	}
-}
-
-// TypeValidationError represents a type validation error.
-type TypeValidationError struct {
-	*AIError
-	Value any
-}
-
-// NewTypeValidationError creates a new type validation error.
-func NewTypeValidationError(value any, cause error) *TypeValidationError {
-	valueJSON, _ := json.Marshal(value)
-	message := fmt.Sprintf(
-		"Type validation failed: Value: %s.\nError message: %s",
-		string(valueJSON), GetErrorMessage(cause),
-	)
-	return &TypeValidationError{
-		AIError: NewAIError("AI_TypeValidationError", message, cause),
-		Value:   value,
-	}
-}
-
-// WrapTypeValidationError wraps an error into a TypeValidationError.
-func WrapTypeValidationError(value any, cause error) *TypeValidationError {
-	if tvErr, ok := cause.(*TypeValidationError); ok && tvErr.Value == value {
-		return tvErr
-	}
-	return NewTypeValidationError(value, cause)
-}
-
 // UnsupportedFunctionalityError represents an unsupported functionality error.
 type UnsupportedFunctionalityError struct {
 	*AIError