//! Red team API methods. use serde::Serialize; use uuid::Uuid; use super::client::{ApiClient, ApiError}; use super::supervisor::JsonValue; /// Request body for red team notify endpoint. #[derive(Serialize)] #[serde(rename_all = "camelCase")] pub struct RedTeamNotifyRequest { /// The issue message pub message: String, /// Severity level: low, medium, high, critical pub severity: String, /// The specific task this relates to (optional) #[serde(skip_serializing_if = "Option::is_none")] pub related_task_id: Option, /// The file path where the issue was detected (optional) #[serde(skip_serializing_if = "Option::is_none")] pub file_path: Option, /// Additional context about the issue (optional) #[serde(skip_serializing_if = "Option::is_none")] pub context: Option, } impl ApiClient { /// Send a red team notification about an issue found during adversarial review. /// /// POST /api/v1/mesh/red-team/notify pub async fn red_team_notify(&self, req: RedTeamNotifyRequest) -> Result { self.post("/api/v1/mesh/red-team/notify", &req).await } }