diff --git a/apps/ai-game-creator-shell/src-tauri/src/agent/thread_manager/turn_completion.rs b/apps/ai-game-creator-shell/src-tauri/src/agent/thread_manager/turn_completion.rs index b84b6665c..594268d65 100644 --- a/apps/ai-game-creator-shell/src-tauri/src/agent/thread_manager/turn_completion.rs +++ b/apps/ai-game-creator-shell/src-tauri/src/agent/thread_manager/turn_completion.rs @@ -84,7 +84,8 @@ pub(crate) fn turn_terminal( ) -> TurnCompletion { let error = match (host_failure, collect_outcome) { (Some(failure), _) => Some(failure.clone()), - (None, Err(error)) => Some(error.clone()), + // `collect_outcome` 按值匹配,`Err(error)` 已经把 `TurnError` 移出来,不必再 clone。 + (None, Err(error)) => Some(error), // 账本读不出来时(`session_status == "failed"`)没有 typed 原因可用:报告文本就是这一轮 // 唯一的收口依据,按未分类失败发出去,不能让界面停在"已结束、没原因"。 (None, Ok(report)) if session_status == "failed" => {