kowalski_web_agent/
error.rs

1use kowalski_core::error::KowalskiError;
2use thiserror::Error;
3
4#[derive(Error, Debug)]
5pub enum WebAgentError {
6    #[error("Core error: {0}")]
7    Core(#[from] KowalskiError),
8
9    #[error("Web scraping error: {0}")]
10    Scraping(String),
11
12    #[error("Web browser error: {0}")]
13    Browser(String),
14
15    #[error("Search error: {0}")]
16    Search(String),
17
18    #[error("Invalid URL: {0}")]
19    InvalidUrl(String),
20
21    #[error("Network error: {0}")]
22    Network(String),
23
24    #[error("Content processing error: {0}")]
25    ContentProcessing(String),
26}
27
28impl From<reqwest::Error> for WebAgentError {
29    fn from(err: reqwest::Error) -> Self {
30        WebAgentError::Network(err.to_string())
31    }
32}
33
34impl From<url::ParseError> for WebAgentError {
35    fn from(err: url::ParseError) -> Self {
36        WebAgentError::InvalidUrl(err.to_string())
37    }
38}