Class: OpenAI::Models::Responses::ResponseSteerPendingEvent

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/openai/models/responses/response_steer_pending_event.rb,
sig/openai/models/responses/response_steer_pending_event.rbs

Defined Under Namespace

Classes: Steer

Instance Attribute Summary collapse

Attributes inherited from Internal::Type::BaseModel

#last_response

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], #_request_id, #_set_last_response, coerce, #deconstruct_keys, #deep_to_h, dump, #encode_with, fields, hash, #hash, inherited, #inspect, inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, coerce_with_error, dump, #dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(reason:, required_input:, sequence_number:, steer:, stream_id: nil, type: :"response.steer.pending") ⇒ Object

Emitted when accepted steering input remains queued after the target response completes. The server still owns the input. Do not resend it. The successor's response.created event is the commit point.

When reason is waiting_for_required_input, this event follows response.completed while the response waits for the tool results or approval decisions identified by required_input. Copy those stubs, fill their result fields using the ordinary response.create input schemas, and submit one continuation per parent with the same previous_response_id and WebSocket lane. Use saved results without rerunning tools. The queued steering input is prepended in submission order to the continuation's input. That explicit request retains its own settings.

This notification is emitted at most once per steering submission. Multiple submissions for the same parent can report the same required inputs; they do not each require a separate continuation.

Parameters:



# File 'lib/openai/models/responses/response_steer_pending_event.rb', line 54

Instance Attribute Details

#reasonSymbol, ...

An extensible enum describing why accepted steering input is still queued. Clients should handle unknown values because additional reasons may be introduced. Known values include:

  • waiting_for_required_input: The response is waiting for the tool results or approval decisions identified by required_input.

Parameters:

  • value (OpenAI::Models::Responses::response_steer_pending_reason)

Returns:

  • (Symbol, :waiting_for_required_input, String)


16
# File 'lib/openai/models/responses/response_steer_pending_event.rb', line 16

required :reason, union: -> { OpenAI::Responses::ResponseSteerPendingReason }

#required_inputArray<OpenAI::Models::Responses::ResponseSteerRequiredInput::FunctionCallOutput, OpenAI::Models::Responses::ResponseSteerRequiredInput::CustomToolCallOutput, OpenAI::Models::Responses::ResponseSteerRequiredInput::ComputerCallOutput, OpenAI::Models::Responses::ResponseSteerRequiredInput::ShellCallOutput, OpenAI::Models::Responses::ResponseSteerRequiredInput::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseSteerRequiredInput::ToolSearchOutput, OpenAI::Models::Responses::ResponseSteerRequiredInput::McpApprovalResponse>

Input stubs identifying outstanding client-owned tool results or approval decisions. Each stub contains identifying fields only; the client supplies the result before including it in response.create.



24
25
26
27
# File 'lib/openai/models/responses/response_steer_pending_event.rb', line 24

required(
  :required_input,
  -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseSteerRequiredInput] }
)

#sequence_numberInteger

The sequence number for this event.

Parameters:

  • value (Integer)

Returns:

  • (Integer)


33
# File 'lib/openai/models/responses/response_steer_pending_event.rb', line 33

required :sequence_number, Integer

#steerOpenAI::Models::Responses::ResponseSteerPendingEvent::Steer

The steering submission that remains queued.

Parameters:

  • value (OpenAI::Responses::ResponseSteerPendingEvent::Steer)

Returns:



39
# File 'lib/openai/models/responses/response_steer_pending_event.rb', line 39

required :steer, -> { OpenAI::Responses::ResponseSteerPendingEvent::Steer }

#stream_idString?

The WebSocket lane that emitted this event. This field is present when the target response's response.create event supplied a stream_id.

Parameters:

  • (String)

Returns:

  • (String, nil)


52
# File 'lib/openai/models/responses/response_steer_pending_event.rb', line 52

optional :stream_id, String

#typeSymbol, :"response.steer.pending"

The event discriminator. Always response.steer.pending.

Parameters:

  • value (:"response.steer.pending")

Returns:

  • (Symbol, :"response.steer.pending")


45
# File 'lib/openai/models/responses/response_steer_pending_event.rb', line 45

required :type, const: :"response.steer.pending"

Instance Method Details

#to_hash{

Returns:

  • ({)


38
# File 'sig/openai/models/responses/response_steer_pending_event.rbs', line 38

def to_hash: -> {