Workerの自動キャッシュロック
This commit is contained in:
@@ -53,7 +53,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
}
|
||||
|
||||
// 5. Extract the assistant's reply from history
|
||||
let history = pod.session_mut().worker.history();
|
||||
let history = pod.session_mut().worker().history();
|
||||
if let Some(text) = history
|
||||
.iter()
|
||||
.rev()
|
||||
|
||||
@@ -85,7 +85,7 @@ impl PodController {
|
||||
|
||||
// Register event bridge callbacks on the worker
|
||||
{
|
||||
let worker = &mut pod.session_mut().worker;
|
||||
let worker = pod.session_mut().worker_mut();
|
||||
|
||||
let tx = event_tx.clone();
|
||||
worker.on_turn_start(move |turn| {
|
||||
@@ -158,7 +158,7 @@ impl PodController {
|
||||
}
|
||||
|
||||
// Clone cancel sender before moving pod
|
||||
let cancel_tx = pod.session_mut().worker.cancel_sender();
|
||||
let cancel_tx = pod.session_mut().worker_mut().cancel_sender();
|
||||
|
||||
tokio::spawn(async move {
|
||||
// Hold socket server alive for the lifetime of the controller task
|
||||
@@ -191,7 +191,7 @@ impl PodController {
|
||||
)
|
||||
.await;
|
||||
|
||||
let items = pod.session_mut().worker.history().to_vec();
|
||||
let items = pod.session_mut().worker_mut().history().to_vec();
|
||||
shared_state.update_history(items);
|
||||
shared_state.set_status(new_status);
|
||||
let _ = runtime_dir.write_status(&shared_state).await;
|
||||
@@ -218,7 +218,7 @@ impl PodController {
|
||||
)
|
||||
.await;
|
||||
|
||||
let items = pod.session_mut().worker.history().to_vec();
|
||||
let items = pod.session_mut().worker_mut().history().to_vec();
|
||||
shared_state.update_history(items);
|
||||
shared_state.set_status(new_status);
|
||||
let _ = runtime_dir.write_status(&shared_state).await;
|
||||
|
||||
@@ -144,7 +144,7 @@ impl<C: LlmClient, St: Store> Pod<C, St> {
|
||||
let builder = std::mem::take(&mut self.hook_builder);
|
||||
let registry = Arc::new(builder.build());
|
||||
let interceptor = HookInterceptor::new(registry);
|
||||
self.session.worker.set_interceptor(interceptor);
|
||||
self.session.worker_mut().set_interceptor(interceptor);
|
||||
self.interceptor_installed = true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user