#[derive(Debug, thiserror::Error)]
pub enum OpenAIExtractorError {
    #[error(transparent)]
    OpenAIError(#[from] async_openai::error::OpenAIError),

    #[error(transparent)]
    SerdeJsonError(#[from] serde_json::Error),

    #[error("Missing OpenAI API key — set OPENAI_API_KEY at compile time")]
    MissingApiKey,

    #[error("Batch output was truncated — too many items in one request")]
    OutputTruncated,
}
