Skip to main content

flow_domain/
execution.rs

1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct ExecutionRequest {
6    pub graph_id: String,
7    pub input: Option<serde_json::Value>,
8}
9
10#[derive(Debug, Clone, Serialize, Deserialize)]
11pub struct ExecutionResult {
12    pub execution_id: String,
13    pub status: ExecutionStatus,
14    pub started_at: DateTime<Utc>,
15    pub ended_at: Option<DateTime<Utc>>,
16}
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
19#[serde(rename_all = "snake_case")]
20pub enum ExecutionStatus {
21    Queued,
22    Running,
23    Succeeded,
24    Failed,
25    Partial,
26}