@@ -71,13 +71,13 @@ pub async fn run_navigation_loop(
7171 max_rounds = config. max_rounds,
7272 "Navigation round: calling LLM..."
7373 ) ;
74- let llm_output =
75- llm . complete ( & system, & user)
76- . await
77- . map_err ( |e| Error :: LlmReasoning {
78- stage : "worker/navigation" . to_string ( ) ,
79- detail : format ! ( "Nav loop LLM call failed (round {round_num}): {e}" ) ,
80- } ) ?;
74+ let llm_output = llm
75+ . complete ( & system, & user)
76+ . await
77+ . map_err ( |e| Error :: LlmReasoning {
78+ stage : "worker/navigation" . to_string ( ) ,
79+ detail : format ! ( "Nav loop LLM call failed (round {round_num}): {e}" ) ,
80+ } ) ?;
8181 * llm_calls += 1 ;
8282
8383 // Parse command
@@ -91,28 +91,11 @@ pub async fn run_navigation_loop(
9191 let is_check = matches ! ( command, Command :: Check ) ;
9292
9393 // Execute
94- let step = execute_command (
95- & command,
96- ctx,
97- state,
98- query,
99- llm,
100- llm_calls,
101- emitter,
102- )
103- . await ;
94+ let step = execute_command ( & command, ctx, state, query, llm, llm_calls, emitter) . await ;
10495
10596 // Dynamic re-planning after insufficient check
10697 handle_replan (
107- is_check,
108- query,
109- task,
110- ctx,
111- llm,
112- state,
113- emitter,
114- llm_calls,
115- max_llm,
98+ is_check, query, task, ctx, llm, state, emitter, llm_calls, max_llm,
11699 )
117100 . await ?;
118101
@@ -250,7 +233,10 @@ async fn handle_replan(
250233 return Ok ( ( ) ) ;
251234 }
252235
253- if !state. missing_info . is_empty ( ) && state. remaining >= 3 && ( max_llm == 0 || * llm_calls < max_llm) {
236+ if !state. missing_info . is_empty ( )
237+ && state. remaining >= 3
238+ && ( max_llm == 0 || * llm_calls < max_llm)
239+ {
254240 let missing = state. missing_info . clone ( ) ;
255241 info ! ( doc = ctx. doc_name, missing = %missing, "Re-planning navigation..." ) ;
256242 let replan = build_replan_prompt ( query, task, state, ctx) ;
@@ -323,7 +309,8 @@ mod tests {
323309 } ;
324310 let mut state = WorkerState :: new ( root, 10 ) ;
325311
326- let ( _cmd, is_failure) = handle_parse_failure ( "random garbage text" , ctx. doc_name , & mut state) ;
312+ let ( _cmd, is_failure) =
313+ handle_parse_failure ( "random garbage text" , ctx. doc_name , & mut state) ;
327314 assert ! ( is_failure) ;
328315 assert ! ( state. last_feedback. contains( "not recognized" ) ) ;
329316 assert ! ( state. history. last( ) . unwrap( ) . contains( "unrecognized" ) ) ;
0 commit comments