aether_core/events/
sub_agent_progress.rs1use super::AgentMessage;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
12pub struct SubAgentProgressPayload {
13 pub task_id: String,
14 pub agent_name: String,
15 pub event: AgentMessage,
16}
17
18#[cfg(test)]
19mod tests {
20 use super::SubAgentProgressPayload;
21 use crate::events::AgentMessage;
22
23 #[test]
24 fn test_sub_agent_progress_payload_roundtrip() {
25 let payload = SubAgentProgressPayload {
26 task_id: "task_123".to_string(),
27 agent_name: "explorer".to_string(),
28 event: AgentMessage::Done,
29 };
30
31 let json = serde_json::to_string(&payload).expect("serializable");
32 let parsed: SubAgentProgressPayload = serde_json::from_str(&json).expect("deserializable");
33
34 assert_eq!(payload, parsed);
35 }
36}