openai 0.84.0 → 0.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/README.md +1 -1
  4. data/SECURITY.md +10 -0
  5. data/docs/architecture/security-model.md +267 -0
  6. data/lib/openai/client.rb +4 -0
  7. data/lib/openai/helpers/streaming/chat_completion_stream.rb +17 -8
  8. data/lib/openai/helpers/streaming/response_stream.rb +13 -8
  9. data/lib/openai/helpers/structured_output/array_of.rb +2 -2
  10. data/lib/openai/helpers/structured_output/base_model.rb +19 -5
  11. data/lib/openai/helpers/structured_output/chat_completion_parser.rb +6 -3
  12. data/lib/openai/helpers/structured_output/json_schema_converter.rb +34 -11
  13. data/lib/openai/internal/vector_store_file_uploader.rb +1 -1
  14. data/lib/openai/models/admin/organization/usage_costs_params.rb +1 -1
  15. data/lib/openai/models/batch.rb +2 -2
  16. data/lib/openai/models/beta/beta_custom_tool.rb +13 -1
  17. data/lib/openai/models/beta/beta_function_tool.rb +8 -1
  18. data/lib/openai/models/beta/beta_namespace_tool.rb +10 -1
  19. data/lib/openai/models/beta/beta_response.rb +20 -9
  20. data/lib/openai/models/beta/beta_response_configuration_update_item.rb +103 -0
  21. data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +104 -0
  22. data/lib/openai/models/beta/beta_response_custom_tool_call.rb +9 -1
  23. data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +3 -1
  24. data/lib/openai/models/beta/beta_response_error.rb +96 -1
  25. data/lib/openai/models/beta/beta_response_function_tool_call.rb +9 -1
  26. data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +3 -1
  27. data/lib/openai/models/beta/beta_response_incomplete_event.rb +4 -0
  28. data/lib/openai/models/beta/beta_response_inject_event.rb +2 -2
  29. data/lib/openai/models/beta/beta_response_inject_failed_event.rb +2 -2
  30. data/lib/openai/models/beta/beta_response_input_item.rb +6 -1
  31. data/lib/openai/models/beta/beta_response_item.rb +5 -1
  32. data/lib/openai/models/beta/beta_response_steer_accepted_event.rb +81 -0
  33. data/lib/openai/models/beta/beta_response_steer_error_code.rb +61 -0
  34. data/lib/openai/models/beta/beta_response_steer_event.rb +75 -0
  35. data/lib/openai/models/beta/beta_response_steer_failed_event.rb +151 -0
  36. data/lib/openai/models/beta/beta_response_steer_input.rb +360 -0
  37. data/lib/openai/models/beta/beta_response_steer_input_content.rb +28 -0
  38. data/lib/openai/models/beta/beta_response_steer_pending_event.rb +113 -0
  39. data/lib/openai/models/beta/beta_response_steer_pending_reason.rb +26 -0
  40. data/lib/openai/models/beta/beta_response_steer_required_input.rb +215 -0
  41. data/lib/openai/models/beta/beta_response_stream_event.rb +4 -0
  42. data/lib/openai/models/beta/beta_responses_client_event.rb +40 -7
  43. data/lib/openai/models/beta/beta_responses_server_event.rb +164 -2
  44. data/lib/openai/models/beta/response_compact_params.rb +9 -6
  45. data/lib/openai/models/beta/response_create_params.rb +9 -6
  46. data/lib/openai/models/beta/responses/beta_response_item_list.rb +2 -2
  47. data/lib/openai/models/beta/responses/input_token_count_params.rb +3 -3
  48. data/lib/openai/models/chat/completion_create_params.rb +4 -4
  49. data/lib/openai/models/chat_model.rb +1 -0
  50. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  51. data/lib/openai/models/conversations/conversation_item.rb +5 -1
  52. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  53. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  54. data/lib/openai/models/error_object.rb +90 -1
  55. data/lib/openai/models/eval_create_response.rb +1 -1
  56. data/lib/openai/models/eval_list_response.rb +1 -1
  57. data/lib/openai/models/eval_retrieve_response.rb +1 -1
  58. data/lib/openai/models/eval_update_response.rb +1 -1
  59. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +2 -2
  60. data/lib/openai/models/responses/custom_tool.rb +13 -1
  61. data/lib/openai/models/responses/function_tool.rb +8 -1
  62. data/lib/openai/models/responses/input_token_count_params.rb +3 -3
  63. data/lib/openai/models/responses/namespace_tool.rb +10 -1
  64. data/lib/openai/models/responses/response.rb +16 -8
  65. data/lib/openai/models/responses/response_compact_params.rb +9 -6
  66. data/lib/openai/models/responses/response_configuration_update_item.rb +56 -0
  67. data/lib/openai/models/responses/response_configuration_update_item_param.rb +57 -0
  68. data/lib/openai/models/responses/response_create_params.rb +5 -5
  69. data/lib/openai/models/responses/response_custom_tool_call.rb +9 -1
  70. data/lib/openai/models/responses/response_custom_tool_call_item.rb +3 -1
  71. data/lib/openai/models/responses/response_error.rb +96 -1
  72. data/lib/openai/models/responses/response_function_tool_call.rb +9 -1
  73. data/lib/openai/models/responses/response_function_tool_call_item.rb +3 -1
  74. data/lib/openai/models/responses/response_incomplete_event.rb +4 -0
  75. data/lib/openai/models/responses/response_input_item.rb +6 -1
  76. data/lib/openai/models/responses/response_item.rb +5 -1
  77. data/lib/openai/models/responses/response_item_list.rb +2 -2
  78. data/lib/openai/models/responses/response_steer_accepted_event.rb +79 -0
  79. data/lib/openai/models/responses/response_steer_error_code.rb +59 -0
  80. data/lib/openai/models/responses/response_steer_event.rb +73 -0
  81. data/lib/openai/models/responses/response_steer_failed_event.rb +149 -0
  82. data/lib/openai/models/responses/response_steer_input.rb +304 -0
  83. data/lib/openai/models/responses/response_steer_input_content.rb +26 -0
  84. data/lib/openai/models/responses/response_steer_pending_event.rb +111 -0
  85. data/lib/openai/models/responses/response_steer_pending_reason.rb +24 -0
  86. data/lib/openai/models/responses/response_steer_required_input.rb +213 -0
  87. data/lib/openai/models/responses/response_stream_event.rb +4 -0
  88. data/lib/openai/models/responses/responses_client_event.rb +872 -769
  89. data/lib/openai/models/responses/responses_server_event.rb +162 -2
  90. data/lib/openai/models/safety/alert_retrieve_params.rb +24 -0
  91. data/lib/openai/models/safety/safety_alert.rb +96 -0
  92. data/lib/openai/models/video_create_error.rb +93 -1
  93. data/lib/openai/models/webhooks/safety_alert_created_webhook_event.rb +63 -0
  94. data/lib/openai/models/webhooks/safety_org_alert_created_webhook_event.rb +63 -0
  95. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +7 -1
  96. data/lib/openai/models.rb +2 -0
  97. data/lib/openai/net_http_client.rb +1 -1
  98. data/lib/openai/providers/bedrock.rb +20 -12
  99. data/lib/openai/resources/beta/responses/input_items.rb +1 -1
  100. data/lib/openai/resources/beta/responses/input_tokens.rb +1 -1
  101. data/lib/openai/resources/beta/responses.rb +6 -6
  102. data/lib/openai/resources/chat/completions.rb +2 -2
  103. data/lib/openai/resources/conversations/items.rb +3 -3
  104. data/lib/openai/resources/conversations.rb +1 -1
  105. data/lib/openai/resources/responses/input_items.rb +1 -1
  106. data/lib/openai/resources/responses/input_tokens.rb +1 -1
  107. data/lib/openai/resources/responses.rb +6 -6
  108. data/lib/openai/resources/safety/alerts.rb +37 -0
  109. data/lib/openai/resources/safety.rb +18 -0
  110. data/lib/openai/resources/webhooks.rb +1 -1
  111. data/lib/openai/version.rb +1 -1
  112. data/lib/openai.rb +28 -0
  113. data/rbi/openai/client.rbi +3 -0
  114. data/rbi/openai/models/admin/organization/usage_costs_params.rbi +2 -2
  115. data/rbi/openai/models/batch.rbi +2 -2
  116. data/rbi/openai/models/beta/beta_custom_tool.rbi +15 -0
  117. data/rbi/openai/models/beta/beta_function_tool.rbi +11 -0
  118. data/rbi/openai/models/beta/beta_namespace_tool.rbi +15 -0
  119. data/rbi/openai/models/beta/beta_response.rbi +14 -6
  120. data/rbi/openai/models/beta/beta_response_configuration_update_item.rbi +200 -0
  121. data/rbi/openai/models/beta/beta_response_configuration_update_item_param.rbi +207 -0
  122. data/rbi/openai/models/beta/beta_response_custom_tool_call.rbi +13 -0
  123. data/rbi/openai/models/beta/beta_response_custom_tool_call_item.rbi +6 -0
  124. data/rbi/openai/models/beta/beta_response_error.rbi +161 -3
  125. data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +13 -0
  126. data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +6 -0
  127. data/rbi/openai/models/beta/beta_response_incomplete_event.rbi +4 -0
  128. data/rbi/openai/models/beta/beta_response_inject_event.rbi +3 -0
  129. data/rbi/openai/models/beta/beta_response_inject_failed_event.rbi +3 -0
  130. data/rbi/openai/models/beta/beta_response_input_item.rbi +1 -0
  131. data/rbi/openai/models/beta/beta_response_item.rbi +1 -0
  132. data/rbi/openai/models/beta/beta_response_steer_accepted_event.rbi +148 -0
  133. data/rbi/openai/models/beta/beta_response_steer_error_code.rbi +65 -0
  134. data/rbi/openai/models/beta/beta_response_steer_event.rbi +118 -0
  135. data/rbi/openai/models/beta/beta_response_steer_failed_event.rbi +267 -0
  136. data/rbi/openai/models/beta/beta_response_steer_input.rbi +602 -0
  137. data/rbi/openai/models/beta/beta_response_steer_input_content.rbi +31 -0
  138. data/rbi/openai/models/beta/beta_response_steer_pending_event.rbi +222 -0
  139. data/rbi/openai/models/beta/beta_response_steer_pending_reason.rbi +35 -0
  140. data/rbi/openai/models/beta/beta_response_steer_required_input.rbi +379 -0
  141. data/rbi/openai/models/beta/beta_responses_client_event.rbi +8 -3
  142. data/rbi/openai/models/beta/beta_responses_server_event.rbi +206 -3
  143. data/rbi/openai/models/beta/response_compact_params.rbi +4 -3
  144. data/rbi/openai/models/beta/response_create_params.rbi +4 -3
  145. data/rbi/openai/models/beta/responses/beta_response_item_list.rbi +1 -0
  146. data/rbi/openai/models/chat/completion_create_params.rbi +3 -3
  147. data/rbi/openai/models/chat_model.rbi +1 -0
  148. data/rbi/openai/models/conversations/conversation_create_params.rbi +3 -0
  149. data/rbi/openai/models/conversations/conversation_item.rbi +1 -0
  150. data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
  151. data/rbi/openai/models/conversations/item_create_params.rbi +3 -0
  152. data/rbi/openai/models/error_object.rbi +156 -3
  153. data/rbi/openai/models/eval_create_response.rbi +1 -1
  154. data/rbi/openai/models/eval_list_response.rbi +1 -1
  155. data/rbi/openai/models/eval_retrieve_response.rbi +1 -1
  156. data/rbi/openai/models/eval_update_response.rbi +1 -1
  157. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +2 -2
  158. data/rbi/openai/models/responses/custom_tool.rbi +15 -0
  159. data/rbi/openai/models/responses/function_tool.rbi +11 -0
  160. data/rbi/openai/models/responses/namespace_tool.rbi +15 -0
  161. data/rbi/openai/models/responses/response.rbi +12 -5
  162. data/rbi/openai/models/responses/response_compact_params.rbi +4 -3
  163. data/rbi/openai/models/responses/response_configuration_update_item.rbi +112 -0
  164. data/rbi/openai/models/responses/response_configuration_update_item_param.rbi +117 -0
  165. data/rbi/openai/models/responses/response_create_params.rbi +2 -2
  166. data/rbi/openai/models/responses/response_custom_tool_call.rbi +13 -0
  167. data/rbi/openai/models/responses/response_custom_tool_call_item.rbi +6 -0
  168. data/rbi/openai/models/responses/response_error.rbi +161 -3
  169. data/rbi/openai/models/responses/response_function_tool_call.rbi +13 -0
  170. data/rbi/openai/models/responses/response_function_tool_call_item.rbi +6 -0
  171. data/rbi/openai/models/responses/response_incomplete_event.rbi +4 -0
  172. data/rbi/openai/models/responses/response_input_item.rbi +1 -0
  173. data/rbi/openai/models/responses/response_item.rbi +1 -0
  174. data/rbi/openai/models/responses/response_item_list.rbi +1 -0
  175. data/rbi/openai/models/responses/response_steer_accepted_event.rbi +146 -0
  176. data/rbi/openai/models/responses/response_steer_error_code.rbi +63 -0
  177. data/rbi/openai/models/responses/response_steer_event.rbi +119 -0
  178. data/rbi/openai/models/responses/response_steer_failed_event.rbi +268 -0
  179. data/rbi/openai/models/responses/response_steer_input.rbi +474 -0
  180. data/rbi/openai/models/responses/response_steer_input_content.rbi +29 -0
  181. data/rbi/openai/models/responses/response_steer_pending_event.rbi +220 -0
  182. data/rbi/openai/models/responses/response_steer_pending_reason.rbi +33 -0
  183. data/rbi/openai/models/responses/response_steer_required_input.rbi +377 -0
  184. data/rbi/openai/models/responses/responses_client_event.rbi +1204 -1036
  185. data/rbi/openai/models/responses/responses_server_event.rbi +202 -3
  186. data/rbi/openai/models/safety/alert_retrieve_params.rbi +55 -0
  187. data/rbi/openai/models/safety/safety_alert.rbi +147 -0
  188. data/rbi/openai/models/video_create_error.rbi +149 -3
  189. data/rbi/openai/models/webhooks/safety_alert_created_webhook_event.rbi +130 -0
  190. data/rbi/openai/models/webhooks/safety_org_alert_created_webhook_event.rbi +130 -0
  191. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +3 -1
  192. data/rbi/openai/models.rbi +2 -0
  193. data/rbi/openai/resources/admin/organization/usage.rbi +1 -1
  194. data/rbi/openai/resources/beta/responses.rbi +3 -3
  195. data/rbi/openai/resources/chat/completions.rbi +2 -2
  196. data/rbi/openai/resources/conversations/items.rbi +1 -0
  197. data/rbi/openai/resources/conversations.rbi +1 -0
  198. data/rbi/openai/resources/responses.rbi +3 -3
  199. data/rbi/openai/resources/safety/alerts.rbi +30 -0
  200. data/rbi/openai/resources/safety.rbi +18 -0
  201. data/rbi/openai/resources/webhooks.rbi +3 -1
  202. data/sig/openai/client.rbs +2 -0
  203. data/sig/openai/models/beta/beta_custom_tool.rbs +7 -0
  204. data/sig/openai/models/beta/beta_function_tool.rbs +7 -0
  205. data/sig/openai/models/beta/beta_namespace_tool.rbs +7 -0
  206. data/sig/openai/models/beta/beta_response.rbs +6 -2
  207. data/sig/openai/models/beta/beta_response_configuration_update_item.rbs +91 -0
  208. data/sig/openai/models/beta/beta_response_configuration_update_item_param.rbs +87 -0
  209. data/sig/openai/models/beta/beta_response_custom_tool_call.rbs +7 -0
  210. data/sig/openai/models/beta/beta_response_custom_tool_call_item.rbs +3 -0
  211. data/sig/openai/models/beta/beta_response_error.rbs +82 -3
  212. data/sig/openai/models/beta/beta_response_function_tool_call.rbs +7 -0
  213. data/sig/openai/models/beta/beta_response_function_tool_call_item.rbs +3 -0
  214. data/sig/openai/models/beta/beta_response_input_item.rbs +1 -0
  215. data/sig/openai/models/beta/beta_response_item.rbs +1 -0
  216. data/sig/openai/models/beta/beta_response_steer_accepted_event.rbs +53 -0
  217. data/sig/openai/models/beta/beta_response_steer_error_code.rbs +31 -0
  218. data/sig/openai/models/beta/beta_response_steer_event.rbs +34 -0
  219. data/sig/openai/models/beta/beta_response_steer_failed_event.rbs +102 -0
  220. data/sig/openai/models/beta/beta_response_steer_input.rbs +214 -0
  221. data/sig/openai/models/beta/beta_response_steer_input_content.rbs +18 -0
  222. data/sig/openai/models/beta/beta_response_steer_pending_event.rbs +63 -0
  223. data/sig/openai/models/beta/beta_response_steer_pending_reason.rbs +16 -0
  224. data/sig/openai/models/beta/beta_response_steer_required_input.rbs +161 -0
  225. data/sig/openai/models/beta/beta_responses_client_event.rbs +4 -1
  226. data/sig/openai/models/beta/beta_responses_server_event.rbs +80 -3
  227. data/sig/openai/models/beta/response_compact_params.rbs +3 -1
  228. data/sig/openai/models/beta/response_create_params.rbs +3 -1
  229. data/sig/openai/models/chat_model.rbs +3 -1
  230. data/sig/openai/models/conversations/conversation_item.rbs +1 -0
  231. data/sig/openai/models/error_object.rbs +82 -3
  232. data/sig/openai/models/responses/custom_tool.rbs +7 -0
  233. data/sig/openai/models/responses/function_tool.rbs +7 -0
  234. data/sig/openai/models/responses/namespace_tool.rbs +7 -0
  235. data/sig/openai/models/responses/response.rbs +3 -1
  236. data/sig/openai/models/responses/response_compact_params.rbs +3 -1
  237. data/sig/openai/models/responses/response_configuration_update_item.rbs +46 -0
  238. data/sig/openai/models/responses/response_configuration_update_item_param.rbs +46 -0
  239. data/sig/openai/models/responses/response_custom_tool_call.rbs +7 -0
  240. data/sig/openai/models/responses/response_custom_tool_call_item.rbs +3 -0
  241. data/sig/openai/models/responses/response_error.rbs +79 -3
  242. data/sig/openai/models/responses/response_function_tool_call.rbs +7 -0
  243. data/sig/openai/models/responses/response_function_tool_call_item.rbs +3 -0
  244. data/sig/openai/models/responses/response_input_item.rbs +1 -0
  245. data/sig/openai/models/responses/response_item.rbs +1 -0
  246. data/sig/openai/models/responses/response_steer_accepted_event.rbs +51 -0
  247. data/sig/openai/models/responses/response_steer_error_code.rbs +29 -0
  248. data/sig/openai/models/responses/response_steer_event.rbs +32 -0
  249. data/sig/openai/models/responses/response_steer_failed_event.rbs +100 -0
  250. data/sig/openai/models/responses/response_steer_input.rbs +182 -0
  251. data/sig/openai/models/responses/response_steer_input_content.rbs +16 -0
  252. data/sig/openai/models/responses/response_steer_pending_event.rbs +61 -0
  253. data/sig/openai/models/responses/response_steer_pending_reason.rbs +13 -0
  254. data/sig/openai/models/responses/response_steer_required_input.rbs +159 -0
  255. data/sig/openai/models/responses/responses_client_event.rbs +355 -344
  256. data/sig/openai/models/responses/responses_server_event.rbs +80 -3
  257. data/sig/openai/models/safety/alert_retrieve_params.rbs +22 -0
  258. data/sig/openai/models/safety/safety_alert.rbs +81 -0
  259. data/sig/openai/models/video_create_error.rbs +87 -3
  260. data/sig/openai/models/webhooks/safety_alert_created_webhook_event.rbs +52 -0
  261. data/sig/openai/models/webhooks/safety_org_alert_created_webhook_event.rbs +52 -0
  262. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +2 -0
  263. data/sig/openai/models.rbs +2 -0
  264. data/sig/openai/resources/safety/alerts.rbs +14 -0
  265. data/sig/openai/resources/safety.rbs +9 -0
  266. data/sig/openai/resources/webhooks.rbs +3 -1
  267. metadata +86 -1
@@ -1,7 +1,13 @@
1
1
  module OpenAI
2
2
  module Models
3
3
  type error_object =
4
- { code: String?, message: String, param: String?, type: String }
4
+ {
5
+ code: String?,
6
+ message: String,
7
+ param: String?,
8
+ type: String,
9
+ misalignment: OpenAI::ErrorObject::Misalignment
10
+ }
5
11
 
6
12
  class ErrorObject < OpenAI::Internal::Type::BaseModel
7
13
  attr_accessor code: String?
@@ -12,19 +18,92 @@ module OpenAI
12
18
 
13
19
  attr_accessor type: String
14
20
 
21
+ attr_reader misalignment: OpenAI::ErrorObject::Misalignment?
22
+
23
+ def misalignment=: (
24
+ OpenAI::ErrorObject::Misalignment
25
+ ) -> OpenAI::ErrorObject::Misalignment
26
+
15
27
  def initialize: (
16
28
  code: String?,
17
29
  message: String,
18
30
  param: String?,
19
- type: String
31
+ type: String,
32
+ ?misalignment: OpenAI::ErrorObject::Misalignment
20
33
  ) -> void
21
34
 
22
35
  def to_hash: -> {
23
36
  code: String?,
24
37
  message: String,
25
38
  param: String?,
26
- type: String
39
+ type: String,
40
+ misalignment: OpenAI::ErrorObject::Misalignment
27
41
  }
42
+
43
+ type misalignment =
44
+ {
45
+ detailed_explanation: String,
46
+ error_type: OpenAI::Models::ErrorObject::Misalignment::error_type,
47
+ steer: OpenAI::ErrorObject::Misalignment::Steer
48
+ }
49
+
50
+ class Misalignment < OpenAI::Internal::Type::BaseModel
51
+ attr_reader detailed_explanation: String?
52
+
53
+ def detailed_explanation=: (String) -> String
54
+
55
+ attr_reader error_type: OpenAI::Models::ErrorObject::Misalignment::error_type?
56
+
57
+ def error_type=: (
58
+ OpenAI::Models::ErrorObject::Misalignment::error_type
59
+ ) -> OpenAI::Models::ErrorObject::Misalignment::error_type
60
+
61
+ attr_reader steer: OpenAI::ErrorObject::Misalignment::Steer?
62
+
63
+ def steer=: (
64
+ OpenAI::ErrorObject::Misalignment::Steer
65
+ ) -> OpenAI::ErrorObject::Misalignment::Steer
66
+
67
+ def initialize: (
68
+ ?detailed_explanation: String,
69
+ ?error_type: OpenAI::Models::ErrorObject::Misalignment::error_type,
70
+ ?steer: OpenAI::ErrorObject::Misalignment::Steer
71
+ ) -> void
72
+
73
+ def to_hash: -> {
74
+ detailed_explanation: String,
75
+ error_type: OpenAI::Models::ErrorObject::Misalignment::error_type,
76
+ steer: OpenAI::ErrorObject::Misalignment::Steer
77
+ }
78
+
79
+ type error_type =
80
+ String
81
+ | :potentially_unintended_data_transfer
82
+ | :potentially_unintended_data_access
83
+ | :potentially_unintended_destructive_activity
84
+ | :other
85
+
86
+ module ErrorType
87
+ extend OpenAI::Internal::Type::Union
88
+
89
+ def self?.variants: -> ::Array[OpenAI::Models::ErrorObject::Misalignment::error_type]
90
+
91
+ POTENTIALLY_UNINTENDED_DATA_TRANSFER: :potentially_unintended_data_transfer
92
+ POTENTIALLY_UNINTENDED_DATA_ACCESS: :potentially_unintended_data_access
93
+ POTENTIALLY_UNINTENDED_DESTRUCTIVE_ACTIVITY: :potentially_unintended_destructive_activity
94
+ OTHER: :other
95
+ end
96
+
97
+ type steer = { message: String }
98
+
99
+ class Steer < OpenAI::Internal::Type::BaseModel
100
+ attr_accessor message: String
101
+
102
+ def initialize: (message: String) -> void
103
+
104
+ def to_hash: -> { message: String }
105
+ end
106
+ end
28
107
  end
29
108
  end
30
109
  end
@@ -6,6 +6,7 @@ module OpenAI
6
6
  name: String,
7
7
  type: :custom,
8
8
  allowed_callers: ::Array[OpenAI::Models::Responses::CustomTool::allowed_caller]?,
9
+ async: bool,
9
10
  defer_loading: bool,
10
11
  description: String,
11
12
  format_: OpenAI::Models::custom_tool_input_format
@@ -18,6 +19,10 @@ module OpenAI
18
19
 
19
20
  attr_accessor allowed_callers: ::Array[OpenAI::Models::Responses::CustomTool::allowed_caller]?
20
21
 
22
+ attr_reader async: bool?
23
+
24
+ def async=: (bool) -> bool
25
+
21
26
  attr_reader defer_loading: bool?
22
27
 
23
28
  def defer_loading=: (bool) -> bool
@@ -35,6 +40,7 @@ module OpenAI
35
40
  def initialize: (
36
41
  name: String,
37
42
  ?allowed_callers: ::Array[OpenAI::Models::Responses::CustomTool::allowed_caller]?,
43
+ ?async: bool,
38
44
  ?defer_loading: bool,
39
45
  ?description: String,
40
46
  ?format_: OpenAI::Models::custom_tool_input_format,
@@ -45,6 +51,7 @@ module OpenAI
45
51
  name: String,
46
52
  type: :custom,
47
53
  allowed_callers: ::Array[OpenAI::Models::Responses::CustomTool::allowed_caller]?,
54
+ async: bool,
48
55
  defer_loading: bool,
49
56
  description: String,
50
57
  format_: OpenAI::Models::custom_tool_input_format
@@ -8,6 +8,7 @@ module OpenAI
8
8
  strict: bool?,
9
9
  type: :function,
10
10
  allowed_callers: ::Array[OpenAI::Models::Responses::FunctionTool::allowed_caller]?,
11
+ async: bool,
11
12
  defer_loading: bool,
12
13
  description: String?,
13
14
  output_schema: ::Hash[Symbol, top]?
@@ -24,6 +25,10 @@ module OpenAI
24
25
 
25
26
  attr_accessor allowed_callers: ::Array[OpenAI::Models::Responses::FunctionTool::allowed_caller]?
26
27
 
28
+ attr_reader async: bool?
29
+
30
+ def async=: (bool) -> bool
31
+
27
32
  attr_reader defer_loading: bool?
28
33
 
29
34
  def defer_loading=: (bool) -> bool
@@ -37,6 +42,7 @@ module OpenAI
37
42
  parameters: ::Hash[Symbol, top]?,
38
43
  strict: bool?,
39
44
  ?allowed_callers: ::Array[OpenAI::Models::Responses::FunctionTool::allowed_caller]?,
45
+ ?async: bool,
40
46
  ?defer_loading: bool,
41
47
  ?description: String?,
42
48
  ?output_schema: ::Hash[Symbol, top]?,
@@ -49,6 +55,7 @@ module OpenAI
49
55
  strict: bool?,
50
56
  type: :function,
51
57
  allowed_callers: ::Array[OpenAI::Models::Responses::FunctionTool::allowed_caller]?,
58
+ async: bool,
52
59
  defer_loading: bool,
53
60
  description: String?,
54
61
  output_schema: ::Hash[Symbol, top]?
@@ -44,6 +44,7 @@ module OpenAI
44
44
  name: String,
45
45
  type: :function,
46
46
  allowed_callers: ::Array[OpenAI::Models::Responses::NamespaceTool::Tool::Function::allowed_caller]?,
47
+ async: bool,
47
48
  defer_loading: bool,
48
49
  description: String?,
49
50
  output_schema: ::Hash[Symbol, top]?,
@@ -58,6 +59,10 @@ module OpenAI
58
59
 
59
60
  attr_accessor allowed_callers: ::Array[OpenAI::Models::Responses::NamespaceTool::Tool::Function::allowed_caller]?
60
61
 
62
+ attr_reader async: bool?
63
+
64
+ def async=: (bool) -> bool
65
+
61
66
  attr_reader defer_loading: bool?
62
67
 
63
68
  def defer_loading=: (bool) -> bool
@@ -73,6 +78,7 @@ module OpenAI
73
78
  def initialize: (
74
79
  name: String,
75
80
  ?allowed_callers: ::Array[OpenAI::Models::Responses::NamespaceTool::Tool::Function::allowed_caller]?,
81
+ ?async: bool,
76
82
  ?defer_loading: bool,
77
83
  ?description: String?,
78
84
  ?output_schema: ::Hash[Symbol, top]?,
@@ -85,6 +91,7 @@ module OpenAI
85
91
  name: String,
86
92
  type: :function,
87
93
  allowed_callers: ::Array[OpenAI::Models::Responses::NamespaceTool::Tool::Function::allowed_caller]?,
94
+ async: bool,
88
95
  defer_loading: bool,
89
96
  description: String?,
90
97
  output_schema: ::Hash[Symbol, top]?,
@@ -222,7 +222,8 @@ module OpenAI
222
222
  reason: OpenAI::Models::Responses::Response::IncompleteDetails::reason
223
223
  }
224
224
 
225
- type reason = :max_output_tokens | :max_messages | :content_filter
225
+ type reason =
226
+ :max_output_tokens | :max_messages | :content_filter | :steered
226
227
 
227
228
  module Reason
228
229
  extend OpenAI::Internal::Type::Enum
@@ -230,6 +231,7 @@ module OpenAI
230
231
  MAX_OUTPUT_TOKENS: :max_output_tokens
231
232
  MAX_MESSAGES: :max_messages
232
233
  CONTENT_FILTER: :content_filter
234
+ STEERED: :steered
233
235
 
234
236
  def self?.values: -> ::Array[OpenAI::Models::Responses::Response::IncompleteDetails::reason]
235
237
  end
@@ -59,7 +59,8 @@ module OpenAI
59
59
  }
60
60
 
61
61
  type model =
62
- :"gpt-5.6-sol"
62
+ :"gpt-6-astra"
63
+ | :"gpt-5.6-sol"
63
64
  | :"gpt-5.6-terra"
64
65
  | :"gpt-5.6-luna"
65
66
  | :"gpt-5.5"
@@ -168,6 +169,7 @@ module OpenAI
168
169
 
169
170
  def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseCompactParams::model]
170
171
 
172
+ GPT_6_ASTRA: :"gpt-6-astra"
171
173
  GPT_5_6_SOL: :"gpt-5.6-sol"
172
174
  GPT_5_6_TERRA: :"gpt-5.6-terra"
173
175
  GPT_5_6_LUNA: :"gpt-5.6-luna"
@@ -0,0 +1,46 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_configuration_update_item =
5
+ {
6
+ id: String,
7
+ type: :configuration_update,
8
+ reasoning: OpenAI::Responses::ResponseConfigurationUpdateItem::Reasoning
9
+ }
10
+
11
+ class ResponseConfigurationUpdateItem < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor id: String
13
+
14
+ attr_accessor type: :configuration_update
15
+
16
+ attr_reader reasoning: OpenAI::Responses::ResponseConfigurationUpdateItem::Reasoning?
17
+
18
+ def reasoning=: (
19
+ OpenAI::Responses::ResponseConfigurationUpdateItem::Reasoning
20
+ ) -> OpenAI::Responses::ResponseConfigurationUpdateItem::Reasoning
21
+
22
+ def initialize: (
23
+ id: String,
24
+ ?reasoning: OpenAI::Responses::ResponseConfigurationUpdateItem::Reasoning,
25
+ ?type: :configuration_update
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ id: String,
30
+ type: :configuration_update,
31
+ reasoning: OpenAI::Responses::ResponseConfigurationUpdateItem::Reasoning
32
+ }
33
+
34
+ type reasoning = { effort: OpenAI::Models::reasoning_effort? }
35
+
36
+ class Reasoning < OpenAI::Internal::Type::BaseModel
37
+ attr_accessor effort: OpenAI::Models::reasoning_effort?
38
+
39
+ def initialize: (?effort: OpenAI::Models::reasoning_effort?) -> void
40
+
41
+ def to_hash: -> { effort: OpenAI::Models::reasoning_effort? }
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,46 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_configuration_update_item_param =
5
+ {
6
+ type: :configuration_update,
7
+ id: String?,
8
+ reasoning: OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning
9
+ }
10
+
11
+ class ResponseConfigurationUpdateItemParam < OpenAI::Internal::Type::BaseModel
12
+ attr_accessor type: :configuration_update
13
+
14
+ attr_accessor id: String?
15
+
16
+ attr_reader reasoning: OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning?
17
+
18
+ def reasoning=: (
19
+ OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning
20
+ ) -> OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning
21
+
22
+ def initialize: (
23
+ ?id: String?,
24
+ ?reasoning: OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning,
25
+ ?type: :configuration_update
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ type: :configuration_update,
30
+ id: String?,
31
+ reasoning: OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning
32
+ }
33
+
34
+ type reasoning = { effort: OpenAI::Models::reasoning_effort? }
35
+
36
+ class Reasoning < OpenAI::Internal::Type::BaseModel
37
+ attr_accessor effort: OpenAI::Models::reasoning_effort?
38
+
39
+ def initialize: (?effort: OpenAI::Models::reasoning_effort?) -> void
40
+
41
+ def to_hash: -> { effort: OpenAI::Models::reasoning_effort? }
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -8,6 +8,7 @@ module OpenAI
8
8
  name: String,
9
9
  type: :custom_tool_call,
10
10
  id: String,
11
+ async: bool,
11
12
  caller_: OpenAI::Models::Responses::ResponseCustomToolCall::caller_?,
12
13
  namespace: String
13
14
  }
@@ -25,6 +26,10 @@ module OpenAI
25
26
 
26
27
  def id=: (String) -> String
27
28
 
29
+ attr_reader async: bool?
30
+
31
+ def async=: (bool) -> bool
32
+
28
33
  attr_accessor caller_: OpenAI::Models::Responses::ResponseCustomToolCall::caller_?
29
34
 
30
35
  attr_reader namespace: String?
@@ -36,6 +41,7 @@ module OpenAI
36
41
  input: String,
37
42
  name: String,
38
43
  ?id: String,
44
+ ?async: bool,
39
45
  ?caller_: OpenAI::Models::Responses::ResponseCustomToolCall::caller_?,
40
46
  ?namespace: String,
41
47
  ?type: :custom_tool_call
@@ -47,6 +53,7 @@ module OpenAI
47
53
  name: String,
48
54
  type: :custom_tool_call,
49
55
  id: String,
56
+ async: bool,
50
57
  caller_: OpenAI::Models::Responses::ResponseCustomToolCall::caller_?,
51
58
  namespace: String
52
59
  }
@@ -9,6 +9,7 @@ module OpenAI
9
9
  id: String,
10
10
  status: OpenAI::Models::Responses::ResponseCustomToolCallItem::status,
11
11
  type: :custom_tool_call,
12
+ async: bool,
12
13
  caller_: OpenAI::Models::Responses::ResponseCustomToolCall::caller_?,
13
14
  namespace: String,
14
15
  created_by: String
@@ -35,6 +36,7 @@ module OpenAI
35
36
  name: String,
36
37
  id: String,
37
38
  status: OpenAI::Models::Responses::ResponseCustomToolCallItem::status,
39
+ ?async: bool,
38
40
  ?caller_: OpenAI::Models::Responses::ResponseCustomToolCall::caller_?,
39
41
  ?namespace: String,
40
42
  ?created_by: String,
@@ -48,6 +50,7 @@ module OpenAI
48
50
  id: String,
49
51
  status: OpenAI::Models::Responses::ResponseCustomToolCallItem::status,
50
52
  type: :custom_tool_call,
53
+ async: bool,
51
54
  caller_: OpenAI::Models::Responses::ResponseCustomToolCall::caller_?,
52
55
  namespace: String,
53
56
  created_by: String
@@ -4,7 +4,8 @@ module OpenAI
4
4
  type response_error =
5
5
  {
6
6
  code: OpenAI::Models::Responses::ResponseError::code,
7
- message: String
7
+ message: String,
8
+ misalignment: OpenAI::Responses::ResponseError::Misalignment
8
9
  }
9
10
 
10
11
  class ResponseError < OpenAI::Internal::Type::BaseModel
@@ -12,14 +13,22 @@ module OpenAI
12
13
 
13
14
  attr_accessor message: String
14
15
 
16
+ attr_reader misalignment: OpenAI::Responses::ResponseError::Misalignment?
17
+
18
+ def misalignment=: (
19
+ OpenAI::Responses::ResponseError::Misalignment
20
+ ) -> OpenAI::Responses::ResponseError::Misalignment
21
+
15
22
  def initialize: (
16
23
  code: OpenAI::Models::Responses::ResponseError::code,
17
- message: String
24
+ message: String,
25
+ ?misalignment: OpenAI::Responses::ResponseError::Misalignment
18
26
  ) -> void
19
27
 
20
28
  def to_hash: -> {
21
29
  code: OpenAI::Models::Responses::ResponseError::code,
22
- message: String
30
+ message: String,
31
+ misalignment: OpenAI::Responses::ResponseError::Misalignment
23
32
  }
24
33
 
25
34
  type code =
@@ -28,6 +37,7 @@ module OpenAI
28
37
  | :invalid_prompt
29
38
  | :data_residency_mismatch
30
39
  | :bio_policy
40
+ | :misalignment_policy_violation
31
41
  | :vector_store_timeout
32
42
  | :invalid_image
33
43
  | :invalid_image_format
@@ -52,6 +62,7 @@ module OpenAI
52
62
  INVALID_PROMPT: :invalid_prompt
53
63
  DATA_RESIDENCY_MISMATCH: :data_residency_mismatch
54
64
  BIO_POLICY: :bio_policy
65
+ MISALIGNMENT_POLICY_VIOLATION: :misalignment_policy_violation
55
66
  VECTOR_STORE_TIMEOUT: :vector_store_timeout
56
67
  INVALID_IMAGE: :invalid_image
57
68
  INVALID_IMAGE_FORMAT: :invalid_image_format
@@ -70,6 +81,71 @@ module OpenAI
70
81
 
71
82
  def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseError::code]
72
83
  end
84
+
85
+ type misalignment =
86
+ {
87
+ detailed_explanation: String,
88
+ error_type: OpenAI::Models::Responses::ResponseError::Misalignment::error_type,
89
+ steer: OpenAI::Responses::ResponseError::Misalignment::Steer
90
+ }
91
+
92
+ class Misalignment < OpenAI::Internal::Type::BaseModel
93
+ attr_reader detailed_explanation: String?
94
+
95
+ def detailed_explanation=: (String) -> String
96
+
97
+ attr_reader error_type: OpenAI::Models::Responses::ResponseError::Misalignment::error_type?
98
+
99
+ def error_type=: (
100
+ OpenAI::Models::Responses::ResponseError::Misalignment::error_type
101
+ ) -> OpenAI::Models::Responses::ResponseError::Misalignment::error_type
102
+
103
+ attr_reader steer: OpenAI::Responses::ResponseError::Misalignment::Steer?
104
+
105
+ def steer=: (
106
+ OpenAI::Responses::ResponseError::Misalignment::Steer
107
+ ) -> OpenAI::Responses::ResponseError::Misalignment::Steer
108
+
109
+ def initialize: (
110
+ ?detailed_explanation: String,
111
+ ?error_type: OpenAI::Models::Responses::ResponseError::Misalignment::error_type,
112
+ ?steer: OpenAI::Responses::ResponseError::Misalignment::Steer
113
+ ) -> void
114
+
115
+ def to_hash: -> {
116
+ detailed_explanation: String,
117
+ error_type: OpenAI::Models::Responses::ResponseError::Misalignment::error_type,
118
+ steer: OpenAI::Responses::ResponseError::Misalignment::Steer
119
+ }
120
+
121
+ type error_type =
122
+ String
123
+ | :potentially_unintended_data_transfer
124
+ | :potentially_unintended_data_access
125
+ | :potentially_unintended_destructive_activity
126
+ | :other
127
+
128
+ module ErrorType
129
+ extend OpenAI::Internal::Type::Union
130
+
131
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseError::Misalignment::error_type]
132
+
133
+ POTENTIALLY_UNINTENDED_DATA_TRANSFER: :potentially_unintended_data_transfer
134
+ POTENTIALLY_UNINTENDED_DATA_ACCESS: :potentially_unintended_data_access
135
+ POTENTIALLY_UNINTENDED_DESTRUCTIVE_ACTIVITY: :potentially_unintended_destructive_activity
136
+ OTHER: :other
137
+ end
138
+
139
+ type steer = { message: String }
140
+
141
+ class Steer < OpenAI::Internal::Type::BaseModel
142
+ attr_accessor message: String
143
+
144
+ def initialize: (message: String) -> void
145
+
146
+ def to_hash: -> { message: String }
147
+ end
148
+ end
73
149
  end
74
150
  end
75
151
  end
@@ -8,6 +8,7 @@ module OpenAI
8
8
  name: String,
9
9
  type: :function_call,
10
10
  id: String,
11
+ async: bool,
11
12
  caller_: OpenAI::Models::Responses::ResponseFunctionToolCall::caller_?,
12
13
  namespace: String,
13
14
  status: OpenAI::Models::Responses::ResponseFunctionToolCall::status
@@ -26,6 +27,10 @@ module OpenAI
26
27
 
27
28
  def id=: (String) -> String
28
29
 
30
+ attr_reader async: bool?
31
+
32
+ def async=: (bool) -> bool
33
+
29
34
  attr_accessor caller_: OpenAI::Models::Responses::ResponseFunctionToolCall::caller_?
30
35
 
31
36
  attr_reader namespace: String?
@@ -43,6 +48,7 @@ module OpenAI
43
48
  call_id: String,
44
49
  name: String,
45
50
  ?id: String,
51
+ ?async: bool,
46
52
  ?caller_: OpenAI::Models::Responses::ResponseFunctionToolCall::caller_?,
47
53
  ?namespace: String,
48
54
  ?status: OpenAI::Models::Responses::ResponseFunctionToolCall::status,
@@ -55,6 +61,7 @@ module OpenAI
55
61
  name: String,
56
62
  type: :function_call,
57
63
  id: String,
64
+ async: bool,
58
65
  caller_: OpenAI::Models::Responses::ResponseFunctionToolCall::caller_?,
59
66
  namespace: String,
60
67
  status: OpenAI::Models::Responses::ResponseFunctionToolCall::status
@@ -9,6 +9,7 @@ module OpenAI
9
9
  id: String,
10
10
  status: OpenAI::Models::Responses::ResponseFunctionToolCallItem::status,
11
11
  type: :function_call,
12
+ async: bool,
12
13
  caller_: OpenAI::Models::Responses::ResponseFunctionToolCall::caller_?,
13
14
  namespace: String,
14
15
  created_by: String
@@ -35,6 +36,7 @@ module OpenAI
35
36
  name: String,
36
37
  id: String,
37
38
  status: OpenAI::Models::Responses::ResponseFunctionToolCallItem::status,
39
+ ?async: bool,
38
40
  ?caller_: OpenAI::Models::Responses::ResponseFunctionToolCall::caller_?,
39
41
  ?namespace: String,
40
42
  ?created_by: String,
@@ -48,6 +50,7 @@ module OpenAI
48
50
  id: String,
49
51
  status: OpenAI::Models::Responses::ResponseFunctionToolCallItem::status,
50
52
  type: :function_call,
53
+ async: bool,
51
54
  caller_: OpenAI::Models::Responses::ResponseFunctionToolCall::caller_?,
52
55
  namespace: String,
53
56
  created_by: String
@@ -14,6 +14,7 @@ module OpenAI
14
14
  | OpenAI::Responses::ResponseInputItem::ToolSearchCall
15
15
  | OpenAI::Responses::ResponseToolSearchOutputItemParam
16
16
  | OpenAI::Responses::ResponseInputItem::AdditionalTools
17
+ | OpenAI::Responses::ResponseConfigurationUpdateItemParam
17
18
  | OpenAI::Responses::ResponseReasoningItem
18
19
  | OpenAI::Responses::ResponseCompactionItemParam
19
20
  | OpenAI::Responses::ResponseInputItem::ImageGenerationCall
@@ -13,6 +13,7 @@ module OpenAI
13
13
  | OpenAI::Responses::ResponseToolSearchCall
14
14
  | OpenAI::Responses::ResponseToolSearchOutputItem
15
15
  | OpenAI::Responses::ResponseItem::AdditionalTools
16
+ | OpenAI::Responses::ResponseConfigurationUpdateItem
16
17
  | OpenAI::Responses::ResponseReasoningItem
17
18
  | OpenAI::Responses::ResponseItem::Program
18
19
  | OpenAI::Responses::ResponseItem::ProgramOutput
@@ -0,0 +1,51 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_steer_accepted_event =
5
+ {
6
+ sequence_number: Integer,
7
+ steer: OpenAI::Responses::ResponseSteerAcceptedEvent::Steer,
8
+ type: :"response.steer.accepted",
9
+ stream_id: String
10
+ }
11
+
12
+ class ResponseSteerAcceptedEvent < OpenAI::Internal::Type::BaseModel
13
+ attr_accessor sequence_number: Integer
14
+
15
+ attr_accessor steer: OpenAI::Responses::ResponseSteerAcceptedEvent::Steer
16
+
17
+ attr_accessor type: :"response.steer.accepted"
18
+
19
+ attr_reader stream_id: String?
20
+
21
+ def stream_id=: (String) -> String
22
+
23
+ def initialize: (
24
+ sequence_number: Integer,
25
+ steer: OpenAI::Responses::ResponseSteerAcceptedEvent::Steer,
26
+ ?stream_id: String,
27
+ ?type: :"response.steer.accepted"
28
+ ) -> void
29
+
30
+ def to_hash: -> {
31
+ sequence_number: Integer,
32
+ steer: OpenAI::Responses::ResponseSteerAcceptedEvent::Steer,
33
+ type: :"response.steer.accepted",
34
+ stream_id: String
35
+ }
36
+
37
+ type steer = { id: String, previous_response_id: String }
38
+
39
+ class Steer < OpenAI::Internal::Type::BaseModel
40
+ attr_accessor id: String
41
+
42
+ attr_accessor previous_response_id: String
43
+
44
+ def initialize: (id: String, previous_response_id: String) -> void
45
+
46
+ def to_hash: -> { id: String, previous_response_id: String }
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,29 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_steer_error_code =
5
+ :response_not_found
6
+ | :invalid_input
7
+ | :steering_not_supported
8
+ | :too_many_pending_steers
9
+ | :response_already_completed
10
+ | :response_not_active
11
+ | :successor_creation_failed
12
+ | String
13
+
14
+ module ResponseSteerErrorCode
15
+ extend OpenAI::Internal::Type::Union
16
+
17
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::response_steer_error_code]
18
+
19
+ RESPONSE_NOT_FOUND: :response_not_found
20
+ INVALID_INPUT: :invalid_input
21
+ STEERING_NOT_SUPPORTED: :steering_not_supported
22
+ TOO_MANY_PENDING_STEERS: :too_many_pending_steers
23
+ RESPONSE_ALREADY_COMPLETED: :response_already_completed
24
+ RESPONSE_NOT_ACTIVE: :response_not_active
25
+ SUCCESSOR_CREATION_FAILED: :successor_creation_failed
26
+ end
27
+ end
28
+ end
29
+ end