Files
action-gateway/src/models.rs
T
2026-03-08 23:33:41 -07:00

40 lines
962 B
Rust

use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Clone)]
pub struct Action {
pub id: String,
pub chain_id: Option<String>,
pub sequence: i64,
pub description: String,
pub command: String,
pub run_as: Option<String>,
pub status: String,
pub result: Option<String>,
pub approve_token: String,
pub submitted_at: String,
pub resolved_at: Option<String>,
}
#[derive(Debug, Deserialize)]
pub struct SubmitAction {
pub description: String,
pub command: String,
pub chain_id: Option<String>,
pub sequence: Option<i64>,
/// Who to run the command as: "oc", "openclaw", "root", or omit for service user
pub run_as: Option<String>,
}
#[derive(Debug, Serialize)]
pub struct ActionResult {
pub id: String,
pub status: String,
pub result: Option<String>,
}
#[derive(Debug, Deserialize)]
pub struct LoginForm {
pub username: String,
pub password: String,
}