diff --git a/codex-rs/core/src/codex.rs b/codex-rs/core/src/codex.rs index 365969ac..8443c534 100644 --- a/codex-rs/core/src/codex.rs +++ b/codex-rs/core/src/codex.rs @@ -1884,6 +1884,12 @@ async fn run_compact_task( } sess.remove_task(&sub_id); + + { + let mut state = sess.state.lock_unchecked(); + state.history.keep_last_messages(1); + } + let event = Event { id: sub_id.clone(), msg: EventMsg::AgentMessage(AgentMessageEvent { @@ -1898,9 +1904,6 @@ async fn run_compact_task( }), }; sess.send_event(event).await; - - let mut state = sess.state.lock_unchecked(); - state.history.keep_last_messages(1); } async fn handle_response_item(