(
self,
messages: Vec<Message>,
)
| 220 | } |
| 221 | |
| 222 | pub(super) fn spawn_from_messages( |
| 223 | self, |
| 224 | messages: Vec<Message>, |
| 225 | ) -> (mpsc::Receiver<AgentEvent>, JoinHandle<()>) { |
| 226 | let Self { |
| 227 | agent_loop, |
| 228 | runtime_tx, |
| 229 | session_id, |
| 230 | cancel_token, |
| 231 | worker_state, |
| 232 | forwarder, |
| 233 | lifecycle, |
| 234 | rx, |
| 235 | } = self; |
| 236 | let handle = tokio::spawn(async move { |
| 237 | let result = agent_loop |
| 238 | .execute_from_messages( |
| 239 | messages, |
| 240 | Some(&session_id), |
| 241 | Some(runtime_tx), |
| 242 | Some(&cancel_token), |
| 243 | ) |
| 244 | .await; |
| 245 | worker_state.complete(result).await; |
| 246 | }); |
| 247 | (rx, lifecycle.wrap(handle, forwarder)) |
| 248 | } |
| 249 | } |
no test coverage detected