feat: add turn_events to ToolCtx and implement live state updates in spawn tool

This commit is contained in:
asepharyana
2026-07-12 17:50:38 +07:00
parent 53b0cb271f
commit a59feb23c4
4 changed files with 42 additions and 2 deletions
+4
View File
@@ -50,6 +50,7 @@ pub struct ToolCtx {
pub origin: crate::app::state::types::Origin,
pub graduated_checks: Vec<GraduatedCheck>,
pub lsp_manager: Arc<Mutex<crate::app::lsp::LspManager>>,
pub turn_events: Option<Arc<Mutex<std::collections::VecDeque<crate::app::state::runtime::TurnEvent>>>>,
}
/// Find which graduated checks apply to a given file path/content pair.
@@ -86,6 +87,7 @@ pub struct ToolCtxBuilder {
pub origin: crate::app::state::types::Origin,
pub graduated_checks: Vec<GraduatedCheck>,
pub lsp_manager: Arc<Mutex<crate::app::lsp::LspManager>>,
pub turn_events: Option<Arc<Mutex<std::collections::VecDeque<crate::app::state::runtime::TurnEvent>>>>,
}
impl Default for ToolCtxBuilder {
@@ -100,6 +102,7 @@ impl Default for ToolCtxBuilder {
origin: crate::app::state::types::Origin::Main,
graduated_checks: Vec::new(),
lsp_manager: Arc::new(Mutex::new(crate::app::lsp::LspManager::new())),
turn_events: None,
}
}
}
@@ -124,6 +127,7 @@ impl ToolCtxBuilder {
origin: self.origin,
graduated_checks: self.graduated_checks,
lsp_manager: self.lsp_manager,
turn_events: self.turn_events,
}
}
}