use crate::models::common::{ConversationType, JsonValue, Status, Visibility}; use chrono::{DateTime, Utc}; use serde::{Deserialize, Serialize}; use uuid::Uuid; #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow)] pub struct Conversation { pub id: Uuid, pub workspace_id: Option, pub repo_id: Option, pub issue_id: Option, pub pull_request_id: Option, pub agent_id: Option, pub created_by: Uuid, pub title: String, pub description: Option, pub conversation_type: ConversationType, pub status: Status, pub visibility: Visibility, pub pinned: bool, pub archived: bool, pub metadata: Option, pub last_message_id: Option, pub last_message_at: Option>, pub archived_at: Option>, pub created_at: DateTime, pub updated_at: DateTime, pub deleted_at: Option>, }