1use agtrace_types::ProjectHash;
2
3#[derive(Debug, Clone)]
4pub struct ProjectRecord {
5 pub hash: ProjectHash,
6 pub root_path: Option<String>,
7 pub last_scanned_at: Option<String>,
8}
9
10#[derive(Debug, Clone)]
11pub struct SessionRecord {
12 pub id: String,
13 pub project_hash: ProjectHash,
14 pub provider: String,
15 pub start_ts: Option<String>,
16 pub end_ts: Option<String>,
17 pub snippet: Option<String>,
18 pub is_valid: bool,
19}
20
21#[derive(Debug, Clone)]
22pub struct LogFileRecord {
23 pub path: String,
24 pub session_id: String,
25 pub role: String,
26 pub file_size: Option<i64>,
27 pub mod_time: Option<String>,
28}
29
30#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
31pub struct SessionSummary {
32 pub id: String,
33 pub provider: String,
34 pub project_hash: ProjectHash,
35 pub start_ts: Option<String>,
36 pub snippet: Option<String>,
37}