openai/codex · error · anyhow::Error
inference request payload {} did not contain input
Error message
inference request payload {} did not contain input What it means
Error "inference request payload {} did not contain input" thrown in openai/codex.
Source
Thrown at codex-rs/rollout-trace/src/reducer/conversation.rs:44
mod normalize;
impl TraceReducer {
/// Reduces an inference request input snapshot into model-visible conversation items.
///
/// Request snapshots are reconciled by position against the previous model-visible
/// snapshot for the thread so repeated history reuses ids while newly inserted
/// items remain distinct.
pub(super) fn reduce_inference_request(
&mut self,
wall_time_unix_ms: i64,
inference_call_id: &InferenceCallId,
thread_id: &str,
codex_turn_id: &str,
request_payload: &RawPayloadRef,
) -> Result<Vec<String>> {
let payload = self.read_payload_json(request_payload)?;
let Some(input) = payload.get("input") else {
bail!(
"inference request payload {} did not contain input",
request_payload.raw_payload_id
);
};
let Some(request_items) = input.as_array() else {
bail!(
"inference request payload {} had non-array input",
request_payload.raw_payload_id
);
};
let items = normalize::normalize_model_items(request_items, request_payload)?;
let previous_response_id = payload.get("previous_response_id").and_then(Value::as_str);
// After compaction, the next full request is compared against the installed replacement
// history, not the pre-compaction prompt. Any repeated developer/context prefix that Codex
// reinjects must therefore become a fresh post-compaction conversation item.
let post_compaction_snapshot = if previous_response_id.is_none() {View on GitHub (pinned to 339751715c)
When it happens
Trigger: Thrown at codex-rs/rollout-trace/src/reducer/conversation.rs:44 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of openai/codex@339751715c (2026-08-25).
Data as JSON: /api/errors/0a8340bc1395b63d.
Report an issue: GitHub.