- Restructure from Modular MVC to Clean Architecture with 4 strict layers - Domain: entities (anime/komik/proxy), Repository traits, typed errors - Application: use case classes with proper error propagation - Infrastructure: repository impls, parsers, Redis cache, HTTP/scraping, browser - Presentation: Axum handlers, DTOs, AppState, router, AppError+IntoResponse - Migrate all parsers (otakudesu, alqanime, komik) to native infra implementations - Replace once_cell::sync::Lazy/OnceCell with std::sync::LazyLock/OnceLock - Remove 150+ old files in modules/ and shared/ directories - Remove once_cell from Cargo.toml dependencies - Fix test/debug binaries to use new import paths - Zero new clippy warnings Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
15 lines
440 B
Rust
15 lines
440 B
Rust
use utoipa::OpenApi;
|
|
|
|
/// Bridge for the auto-generated OpenAPI documentation.
|
|
/// This allows merging manual schema definitions with the auto-discovered handlers and schemas.
|
|
#[derive(OpenApi)]
|
|
#[openapi(
|
|
// Discovered routes are merged at runtime in bootstrap/mod.rs
|
|
info(
|
|
title = "Scraper API",
|
|
version = "1.0.0",
|
|
description = "High-performance scraping and CDN microservice"
|
|
)
|
|
)]
|
|
pub struct ApiDoc;
|