diff --git a/codex-rs/app-server/src/message_processor.rs b/codex-rs/app-server/src/message_processor.rs index aebfcff355..67bdb58991 100644 --- a/codex-rs/app-server/src/message_processor.rs +++ b/codex-rs/app-server/src/message_processor.rs @@ -69,6 +69,7 @@ impl MessageProcessor { auth_manager.clone(), SessionSource::VSCode, )); + // Watch for on-disk skill changes and reinject the updated skills into // subsequent requests. let initialized_flag = Arc::new(AtomicBool::new(false)); diff --git a/codex-rs/core/src/rollout/truncation.rs b/codex-rs/core/src/rollout/truncation.rs index a16928dae6..4be4d0684b 100644 --- a/codex-rs/core/src/rollout/truncation.rs +++ b/codex-rs/core/src/rollout/truncation.rs @@ -192,6 +192,7 @@ mod tests { async fn ignores_session_prefix_messages_when_truncating_rollout_from_start() { let (session, turn_context) = make_session_and_context().await; let mut items = session.build_initial_context(&turn_context).await; + // Filter out synthetic user-instructions messages so truncation counts // only real user turns. items.retain(|item| match item { @@ -200,6 +201,7 @@ mod tests { } _ => true, }); + items.push(user_msg("feature request")); items.push(assistant_msg("ack")); items.push(user_msg("second question")); diff --git a/codex-rs/core/src/thread_manager.rs b/codex-rs/core/src/thread_manager.rs index a905332e86..e648e3d3fa 100644 --- a/codex-rs/core/src/thread_manager.rs +++ b/codex-rs/core/src/thread_manager.rs @@ -587,6 +587,7 @@ mod tests { async fn ignores_session_prefix_messages_when_truncating() { let (session, turn_context) = make_session_and_context().await; let mut items = session.build_initial_context(&turn_context).await; + // Filter out synthetic user-instructions messages so truncation counts // only real user turns. items.retain(|item| match item { @@ -595,6 +596,7 @@ mod tests { } _ => true, }); + items.push(user_msg("feature request")); items.push(assistant_msg("ack")); items.push(user_msg("second question"));