pub async fn fetch_with_retry( client: &Client, url: &str, retry_attempts: u32, max_backoff_secs: u64, ) -> Result<String, AppError>
HTTP GETによるデータ取得をリトライ+指数バックオフ付きで行う 失敗時はAppError::Other(…)を返す