module Responses

Applies the Codex-specific settings while preserving the Responses API payload.

Nested Classes and Modules

class Collector

Rebuilds output items from streamed events when the terminal Codex response omits them (some Codex responses return an empty output array).

Definitions

def prepare(payload)

Apply stateless and streaming options to a native Responses payload.

Signature

parameter payload Hash

The Responses request object.

returns Hash

A copied request configured for the Codex backend.

raises ArgumentError

If the request refers to stored prior state.

Implementation

def prepare(payload)
	if payload["previous_response_id"]
		raise ArgumentError, "Codex stateless mode requires the client to send full input history"
	end
	
	result = payload.dup
	result["store"] = false
	result["stream"] = true
	
	include_items = Array(result["include"])
	include_items << "reasoning.encrypted_content" unless include_items.include?("reasoning.encrypted_content")
	result["include"] = include_items
	
	return result
end