use serde::{Deserialize, Serialize}; /// Article shape sent to the browser — a trimmed view of /// `feedsignal_core::Article`, kept separate so the wire format can evolve /// independently of the storage model. #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] pub struct ArticleView { pub id: String, pub title: String, pub url: String, pub summary: String, pub topics: Vec, pub final_score: Option, }