diff --git a/agent/transports/codex_app_server.py b/agent/transports/codex_app_server.py index ee39918276..055d0b6aba 100644 --- a/agent/transports/codex_app_server.py +++ b/agent/transports/codex_app_server.py @@ -281,6 +281,9 @@ class CodexAppServerClient: def stderr_tail(self, n: int = 20) -> list[str]: """Return last n lines of codex's stderr (for error reports).""" + if self._proc.poll() is not None: + # The reader can still hold the crash text when the exit is first observed (#121467). + self._stderr_reader.join(timeout=1.0) with self._stderr_lock: return list(self._stderr_lines[-n:])