[codex] stop printing error message when --output-last-message is not specified (#1828)

Previously, `codex exec` was printing `Warning: no file to write last
message to` as a warning to stderr even though `--output-last-message`
was not specified, which is wrong. This fixes the code and changes
`handle_last_message()` so that it is only called when
`last_message_path` is `Some`.
This commit is contained in:
Michael Bolin
2025-08-04 15:56:32 -07:00
committed by GitHub
parent 7279080edd
commit 3f13ebce10
3 changed files with 14 additions and 22 deletions

View File

@@ -170,10 +170,9 @@ impl EventProcessor for EventProcessorWithHumanOutput {
// Ignore.
}
EventMsg::TaskComplete(TaskCompleteEvent { last_agent_message }) => {
handle_last_message(
last_agent_message.as_deref(),
self.last_message_path.as_deref(),
);
if let Some(output_file) = self.last_message_path.as_deref() {
handle_last_message(last_agent_message.as_deref(), output_file);
}
return CodexStatus::InitiateShutdown;
}
EventMsg::TokenCount(TokenUsage { total_tokens, .. }) => {