agtrace_types/domain/
context.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize, Default)]
5pub struct GitContext {
6 #[serde(skip_serializing_if = "Option::is_none")]
7 pub branch: Option<String>,
8 #[serde(skip_serializing_if = "Option::is_none")]
9 pub commit: Option<String>,
10 #[serde(skip_serializing_if = "Option::is_none")]
11 pub is_dirty: Option<bool>,
12}
13
14#[derive(Debug, Clone, Serialize, Deserialize, Default)]
16pub struct RunContext {
17 #[serde(skip_serializing_if = "Option::is_none")]
18 pub cwd: Option<String>,
19 #[serde(skip_serializing_if = "Option::is_none")]
20 pub git: Option<GitContext>,
21 #[serde(skip_serializing_if = "Option::is_none")]
22 pub runtime: Option<String>,
23}
24
25#[derive(Debug, Clone, Serialize, Deserialize, Default)]
27pub struct AgentPolicy {
28 #[serde(skip_serializing_if = "Option::is_none")]
29 pub sandbox_mode: Option<String>,
30 #[serde(skip_serializing_if = "Option::is_none")]
31 pub network_access: Option<String>,
32 #[serde(skip_serializing_if = "Option::is_none")]
33 pub approval_policy: Option<String>,
34}