[codex] Surface runtime warnings in codex exec (#27415)

## Why

`codex exec` drops thread-scoped warning notifications. Warnings
discovered while a thread starts, including unreadable or invalid UTF-8
project `AGENTS.md` files, therefore become silent.

## What changed

- Process global and primary-thread warning notifications while
continuing to ignore warnings from unrelated threads.
- Render runtime warnings in human output and expose them through the
existing non-fatal error item in JSONL output.
- Add focused routing, rendering, and malformed project-instruction
coverage.
This commit is contained in:
Adam Perry @ OpenAI
2026-06-11 14:01:16 -04:00
committed by GitHub
parent cc97839068
commit 7fbbc9f033
6 changed files with 137 additions and 0 deletions
+5
View File
@@ -1256,6 +1256,11 @@ fn should_process_notification(
) -> bool {
match notification {
ServerNotification::ConfigWarning(_) | ServerNotification::DeprecationNotice(_) => true,
// TODO(anp) resolve duplicate startup warnings
ServerNotification::Warning(notification) => notification
.thread_id
.as_deref()
.is_none_or(|candidate| candidate == thread_id),
ServerNotification::Error(notification) => {
notification.thread_id == thread_id && notification.turn_id == turn_id
}