winx_code_agent/utils/
mod.rs1pub mod bash_parser;
7pub mod command_safety;
8pub mod display_tree;
9pub mod encoder;
10pub mod file_cache;
11pub mod mmap;
12pub mod path;
13pub mod path_prob;
14pub mod repo;
15pub mod syntax;
16pub mod workspace_stats;
17
18use crate::types::Initialize;
19use serde_json::Value;
20use tracing::debug;
21
22pub fn test_json_parsing(json_str: &str) -> Result<(), String> {
24 let raw_json_result = serde_json::from_str::<Value>(json_str);
26 if let Err(e) = raw_json_result {
27 return Err(format!("Invalid JSON format: {e}"));
28 }
29
30 let init_result = serde_json::from_str::<Initialize>(json_str);
32 match init_result {
33 Ok(init) => {
34 debug!(
35 init_type = ?init.init_type,
36 mode_name = ?init.mode_name,
37 code_writer_config = ?init.code_writer_config,
38 task_id_to_resume = init.task_id_to_resume,
39 "Successfully parsed JSON into Initialize struct"
40 );
41 Ok(())
42 }
43 Err(e) => Err(format!("Failed to parse JSON into Initialize struct: {e}")),
44 }
45}