Skip to main content

orchestral_runtime/api/
dto.rs

1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct ThreadView {
6    pub id: String,
7    pub created_at: DateTime<Utc>,
8    pub updated_at: DateTime<Utc>,
9}
10
11#[derive(Debug, Clone, Serialize, Deserialize)]
12pub struct InteractionSubmitRequest {
13    pub request_id: Option<String>,
14    pub input: String,
15}
16
17#[derive(Debug, Clone, Serialize, Deserialize)]
18pub enum SubmitStatus {
19    Started,
20    Merged,
21    Rejected,
22    Queued,
23}
24
25#[derive(Debug, Clone, Serialize, Deserialize)]
26pub struct InteractionSubmitResponse {
27    pub status: SubmitStatus,
28    pub interaction_id: Option<String>,
29    pub task_id: Option<String>,
30    pub message: Option<String>,
31}
32
33#[derive(Debug, Clone, Serialize, Deserialize)]
34pub struct HistoryEventView {
35    pub event_type: String,
36    pub timestamp: DateTime<Utc>,
37    pub role: String,
38    pub content: String,
39}