1use serde_json;
5
6use crate::dev_runtime::AgentEvent;
7
8pub fn load_agent_trace(path: &str) -> Vec<AgentEvent> {
10 let data = std::fs::read_to_string(path)
11 .unwrap_or_else(|_| panic!("Failed to read agent trace file: {}", path));
12 serde_json::from_str(&data)
13 .unwrap_or_else(|_| panic!("Failed to parse agent trace JSON from: {}", path))
14}
15
16pub fn replay_agent_trace<F>(events: Vec<AgentEvent>, mut inject_event: F)
18where
19 F: FnMut(AgentEvent),
20{
21 for event in events {
22 inject_event(event);
23 }
26}