decision_cockpit 0.1.0

Layer — product decision memory with MCP tools and an embedded review dashboard
Documentation
use chrono::{DateTime, Utc};
use serde::Serialize;
use sqlx::FromRow;
use uuid::Uuid;

#[derive(Debug, Clone, Serialize, FromRow)]
pub struct Document {
    pub id: Uuid,
    pub title: String,
    pub source_type: String,
    pub raw_text: String,
    /// Processing state: `new` (not yet mined), `extracted` (candidates created),
    /// or `archived` (kept for context but hidden from extraction queues).
    pub status: String,
    pub created_at: DateTime<Utc>,
}

/// A lightweight projection without the (potentially large) raw text.
#[derive(Debug, Clone, Serialize, FromRow)]
pub struct DocumentSummary {
    pub id: Uuid,
    pub title: String,
    pub source_type: String,
    pub status: String,
    pub created_at: DateTime<Utc>,
}