#![allow(missing_docs)]
use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
use uuid::Uuid;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TaskRecord {
pub id: Uuid,
pub status: String,
pub task_input: String,
pub config_name: Option<String>,
pub result: Option<String>,
pub error: Option<String>,
pub token_usage: Option<serde_json::Value>,
pub created_at: DateTime<Utc>,
pub completed_at: Option<DateTime<Utc>>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct AuditEntry {
pub id: i64,
pub task_id: Uuid,
pub agent_name: String,
pub event_type: String,
pub payload: serde_json::Value,
pub tokens_in: Option<i32>,
pub tokens_out: Option<i32>,
pub created_at: DateTime<Utc>,
#[serde(default)]
pub tenant_id: Option<String>,
#[serde(default)]
pub user_id: Option<String>,
}