Skip to content

Commit 70f1ea0

Browse files
authored
fix(tui): keep chat processing during combo prompt (#193)
1 parent 3870afd commit 70f1ea0

1 file changed

Lines changed: 15 additions & 1 deletion

File tree

  • crates/coco-tui/src/components

crates/coco-tui/src/components/chat.rs

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -588,7 +588,7 @@ impl Chat<'static> {
588588
self.set_pending_combo_feedback_action(id.clone());
589589
}
590590
self.set_combo_thinking_active(thinking.as_ref().is_some_and(|cfg| cfg.enabled));
591-
self.set_ready();
591+
self.set_processing();
592592
}
593593
ComboEvent::ReplyToolUse { offload: false, .. } => {
594594
self.set_combo_thinking_active(false);
@@ -4268,6 +4268,20 @@ mod tests {
42684268
assert_eq!(chat.messages.selected_idx(), Some(idx_b));
42694269
}
42704270

4271+
#[test]
4272+
fn combo_prompt_keeps_chat_processing_for_non_interactive_reply() {
4273+
let mut chat = Chat::new(Config::default());
4274+
chat.handle_combo_event(&ComboEvent::Prompt {
4275+
id: "combo-1".to_string(),
4276+
name: "demo".to_string(),
4277+
prompt: "need feedback".to_string(),
4278+
thinking: None,
4279+
session_sock: Some("/tmp/combo.sock".to_string()),
4280+
});
4281+
4282+
assert!(matches!(chat.state.state, ChatState::Processing));
4283+
}
4284+
42714285
#[test]
42724286
fn truncate_with_suffix_appends_marker() {
42734287
let text = "a".repeat(200);

0 commit comments

Comments
 (0)