openai 0.85.0 → 0.87.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 (1207) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +89 -0
  3. data/README.md +104 -13
  4. data/docs/architecture/security-model.md +28 -2
  5. data/examples/audio/record_and_play.rb +19 -0
  6. data/examples/responses/websocket_workflows.rb +159 -0
  7. data/lib/openai/auth/workload_identity_auth.rb +2 -2
  8. data/lib/openai/auth/x509_token_exchange.rb +7 -1
  9. data/lib/openai/auth/x509_transport.rb +21 -3
  10. data/lib/openai/client.rb +4 -2
  11. data/lib/openai/errors.rb +28 -9
  12. data/lib/openai/file_part.rb +35 -2
  13. data/lib/openai/helpers/local_audio/errors.rb +27 -0
  14. data/lib/openai/helpers/local_audio/process.rb +158 -0
  15. data/lib/openai/helpers/local_audio.rb +157 -0
  16. data/lib/openai/helpers/realtime/client_extension.rb +37 -121
  17. data/lib/openai/helpers/realtime/connection.rb +32 -91
  18. data/lib/openai/helpers/realtime/connection_manager.rb +22 -77
  19. data/lib/openai/helpers/realtime/connection_resources.rb +3 -1
  20. data/lib/openai/helpers/realtime/errors.rb +18 -24
  21. data/lib/openai/helpers/realtime/recovery.rb +489 -0
  22. data/lib/openai/helpers/realtime/resources/realtime_extension.rb +26 -1
  23. data/lib/openai/helpers/realtime/transports/async_websocket.rb +25 -368
  24. data/lib/openai/helpers/realtime.rb +1 -0
  25. data/lib/openai/helpers/responses_websocket/client_extension.rb +62 -0
  26. data/lib/openai/helpers/responses_websocket/connection.rb +288 -0
  27. data/lib/openai/helpers/responses_websocket/connection_manager.rb +34 -0
  28. data/lib/openai/helpers/responses_websocket/connection_resources.rb +22 -0
  29. data/lib/openai/helpers/responses_websocket/errors.rb +56 -0
  30. data/lib/openai/helpers/responses_websocket/resources/responses_extension.rb +31 -0
  31. data/lib/openai/helpers/responses_websocket/transports/async_websocket.rb +29 -0
  32. data/lib/openai/helpers/responses_websocket/unknown_server_event.rb +54 -0
  33. data/lib/openai/helpers/responses_websocket.rb +12 -0
  34. data/lib/openai/helpers/sorbet.rb +7 -1
  35. data/lib/openai/helpers/streaming/chat_completion_stream.rb +53 -12
  36. data/lib/openai/helpers/streaming/chat_events.rb +9 -7
  37. data/lib/openai/helpers/streaming/response_stream.rb +68 -62
  38. data/lib/openai/helpers/structured_output/json_schema_converter.rb +1 -1
  39. data/lib/openai/helpers/structured_output/response_parser.rb +125 -2
  40. data/lib/openai/helpers/websocket/async_websocket_transport.rb +422 -0
  41. data/lib/openai/helpers/websocket/client_request.rb +131 -0
  42. data/lib/openai/helpers/websocket/connection.rb +104 -0
  43. data/lib/openai/helpers/websocket/connection_manager.rb +104 -0
  44. data/lib/openai/helpers/websocket/errors.rb +32 -0
  45. data/lib/openai/helpers/websocket/protocol.rb +26 -0
  46. data/lib/openai/helpers/websocket.rb +10 -0
  47. data/lib/openai/internal/conversation_cursor_page.rb +1 -1
  48. data/lib/openai/internal/cursor_page.rb +1 -1
  49. data/lib/openai/internal/next_cursor_page.rb +1 -1
  50. data/lib/openai/internal/page.rb +1 -1
  51. data/lib/openai/internal/transport/base_client.rb +45 -8
  52. data/lib/openai/internal/transport/request_body_merge.rb +71 -0
  53. data/lib/openai/internal/type/base_page.rb +2 -2
  54. data/lib/openai/internal/type/base_stream.rb +8 -0
  55. data/lib/openai/internal/type/converter.rb +10 -2
  56. data/lib/openai/internal/type/duplicable_response_carrier.rb +23 -0
  57. data/lib/openai/internal/type/file_input.rb +3 -3
  58. data/lib/openai/internal/type/union.rb +24 -4
  59. data/lib/openai/internal/util.rb +139 -20
  60. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rb +9 -1
  61. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rb +14 -1
  62. data/lib/openai/models/audio/transcription_create_response.rb +5 -5
  63. data/lib/openai/models/beta/beta_response.rb +130 -2
  64. data/lib/openai/models/beta/beta_response_function_call_arguments_done_event.rb +1 -9
  65. data/lib/openai/models/beta/beta_response_function_web_search.rb +1 -0
  66. data/lib/openai/models/beta/beta_response_input_item.rb +84 -1
  67. data/lib/openai/models/beta/beta_response_item.rb +72 -1
  68. data/lib/openai/models/beta/beta_response_output_item.rb +84 -1
  69. data/lib/openai/models/beta/beta_responses_client_event.rb +13 -1
  70. data/lib/openai/models/beta/beta_responses_server_event.rb +1 -3
  71. data/lib/openai/models/beta/beta_tool.rb +69 -37
  72. data/lib/openai/models/beta/response_compact_params.rb +14 -12
  73. data/lib/openai/models/beta/response_create_params.rb +13 -1
  74. data/lib/openai/models/conversations/conversation_item.rb +82 -1
  75. data/lib/openai/models/image_edit_completed_event.rb +34 -8
  76. data/lib/openai/models/image_edit_params.rb +64 -44
  77. data/lib/openai/models/image_edit_partial_image_event.rb +34 -8
  78. data/lib/openai/models/image_gen_completed_event.rb +34 -8
  79. data/lib/openai/models/image_gen_partial_image_event.rb +34 -8
  80. data/lib/openai/models/image_generate_params.rb +51 -35
  81. data/lib/openai/models/image_model.rb +4 -0
  82. data/lib/openai/models/images_response.rb +37 -13
  83. data/lib/openai/models/responses/response.rb +135 -6
  84. data/lib/openai/models/responses/response_compact_params.rb +14 -12
  85. data/lib/openai/models/responses/response_create_params.rb +13 -1
  86. data/lib/openai/models/responses/response_function_call_arguments_done_event.rb +1 -9
  87. data/lib/openai/models/responses/response_function_web_search.rb +1 -0
  88. data/lib/openai/models/responses/response_input_item.rb +84 -1
  89. data/lib/openai/models/responses/response_item.rb +72 -1
  90. data/lib/openai/models/responses/response_output_item.rb +84 -1
  91. data/lib/openai/models/responses/responses_client_event.rb +13 -1
  92. data/lib/openai/models/responses/responses_server_event.rb +1 -3
  93. data/lib/openai/models/responses/tool.rb +69 -37
  94. data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +3 -3
  95. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +5 -3
  96. data/lib/openai/net_http_client.rb +16 -2
  97. data/lib/openai/providers/bedrock.rb +2 -1
  98. data/lib/openai/request_options.rb +18 -4
  99. data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +3 -1
  100. data/lib/openai/resources/containers/files.rb +1 -0
  101. data/lib/openai/resources/images.rb +12 -14
  102. data/lib/openai/resources/responses.rb +36 -4
  103. data/lib/openai/response_carrier.rb +42 -0
  104. data/lib/openai/version.rb +1 -1
  105. data/lib/openai.rb +4 -0
  106. data/local-audio.md +146 -0
  107. data/rbi/openai/auth/subject_token_providers.rbi +72 -0
  108. data/rbi/openai/errors.rbi +53 -4
  109. data/rbi/openai/file_part.rbi +5 -0
  110. data/rbi/openai/helpers/local_audio/interface.rbi +110 -0
  111. data/rbi/openai/helpers/realtime/connection.rbi +18 -2
  112. data/rbi/openai/helpers/realtime/extensions.rbi +11 -3
  113. data/rbi/openai/helpers/realtime/recovery.rbi +27 -0
  114. data/rbi/openai/helpers/responses_websocket/connection.rbi +82 -0
  115. data/rbi/openai/helpers/responses_websocket/connection_manager.rbi +39 -0
  116. data/rbi/openai/helpers/responses_websocket/connection_resources.rbi +17 -0
  117. data/rbi/openai/helpers/responses_websocket/extensions.rbi +108 -0
  118. data/rbi/openai/helpers/responses_websocket/transports/async_websocket.rbi +28 -0
  119. data/rbi/openai/helpers/responses_websocket/unknown_server_event.rbi +29 -0
  120. data/rbi/openai/helpers/streaming/chat_completion_stream.rbi +214 -0
  121. data/rbi/openai/helpers/streaming/events.rbi +61 -4
  122. data/rbi/openai/helpers/streaming/exceptions.rbi +30 -0
  123. data/rbi/openai/helpers/streaming/response_stream.rbi +7 -3
  124. data/rbi/openai/helpers/structured_output/response_parser.rbi +23 -0
  125. data/rbi/openai/helpers/websocket.rbi +33 -0
  126. data/rbi/openai/internal/transport/base_client.rbi +11 -0
  127. data/rbi/openai/internal/type/base_stream.rbi +4 -0
  128. data/rbi/openai/internal/util.rbi +1 -0
  129. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbi +10 -0
  130. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbi +19 -1
  131. data/rbi/openai/models/beta/beta_response.rbi +287 -3
  132. data/rbi/openai/models/beta/beta_response_function_call_arguments_done_event.rbi +0 -10
  133. data/rbi/openai/models/beta/beta_response_function_web_search.rbi +1 -0
  134. data/rbi/openai/models/beta/beta_response_inject_created_event.rbi +1 -1
  135. data/rbi/openai/models/beta/beta_response_inject_failed_event.rbi +1 -1
  136. data/rbi/openai/models/beta/beta_response_input_item.rbi +86 -1
  137. data/rbi/openai/models/beta/beta_response_item.rbi +78 -1
  138. data/rbi/openai/models/beta/beta_response_output_item.rbi +84 -1
  139. data/rbi/openai/models/beta/beta_response_steer_accepted_event.rbi +1 -1
  140. data/rbi/openai/models/beta/beta_response_steer_failed_event.rbi +6 -2
  141. data/rbi/openai/models/beta/beta_response_steer_pending_event.rbi +1 -1
  142. data/rbi/openai/models/beta/beta_responses_client_event.rbi +70 -40
  143. data/rbi/openai/models/beta/beta_responses_server_event.rbi +82 -82
  144. data/rbi/openai/models/beta/beta_tool.rbi +90 -51
  145. data/rbi/openai/models/beta/response_compact_params.rbi +21 -18
  146. data/rbi/openai/models/beta/response_create_params.rbi +18 -0
  147. data/rbi/openai/models/conversations/conversation_item.rbi +88 -1
  148. data/rbi/openai/models/image_edit_completed_event.rbi +20 -9
  149. data/rbi/openai/models/image_edit_params.rbi +89 -60
  150. data/rbi/openai/models/image_edit_partial_image_event.rbi +20 -9
  151. data/rbi/openai/models/image_gen_completed_event.rbi +20 -9
  152. data/rbi/openai/models/image_gen_partial_image_event.rbi +20 -9
  153. data/rbi/openai/models/image_generate_params.rbi +71 -48
  154. data/rbi/openai/models/image_model.rbi +4 -0
  155. data/rbi/openai/models/images_response.rbi +27 -16
  156. data/rbi/openai/models/realtime/conversation_created_event.rbi +4 -1
  157. data/rbi/openai/models/realtime/conversation_item_create_event.rbi +2 -2
  158. data/rbi/openai/models/realtime/conversation_item_delete_event.rbi +1 -1
  159. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbi +5 -3
  160. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +2 -2
  161. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rbi +1 -1
  162. data/rbi/openai/models/realtime/conversation_item_retrieve_event.rbi +1 -1
  163. data/rbi/openai/models/realtime/conversation_item_truncate_event.rbi +1 -1
  164. data/rbi/openai/models/realtime/input_audio_buffer_append_event.rbi +1 -1
  165. data/rbi/openai/models/realtime/input_audio_buffer_clear_event.rbi +1 -1
  166. data/rbi/openai/models/realtime/input_audio_buffer_commit_event.rbi +1 -1
  167. data/rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi +1 -1
  168. data/rbi/openai/models/realtime/rate_limits_updated_event.rbi +4 -4
  169. data/rbi/openai/models/realtime/response_cancel_event.rbi +1 -1
  170. data/rbi/openai/models/realtime/response_content_part_added_event.rbi +4 -4
  171. data/rbi/openai/models/realtime/response_content_part_done_event.rbi +4 -4
  172. data/rbi/openai/models/realtime/response_create_event.rbi +5 -1
  173. data/rbi/openai/models/realtime/session_update_event.rbi +1 -1
  174. data/rbi/openai/models/responses/response.rbi +287 -3
  175. data/rbi/openai/models/responses/response_compact_params.rbi +21 -18
  176. data/rbi/openai/models/responses/response_create_params.rbi +18 -0
  177. data/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi +1 -17
  178. data/rbi/openai/models/responses/response_function_web_search.rbi +1 -0
  179. data/rbi/openai/models/responses/response_input_item.rbi +88 -1
  180. data/rbi/openai/models/responses/response_item.rbi +80 -1
  181. data/rbi/openai/models/responses/response_output_item.rbi +84 -1
  182. data/rbi/openai/models/responses/response_steer_accepted_event.rbi +1 -1
  183. data/rbi/openai/models/responses/response_steer_failed_event.rbi +6 -2
  184. data/rbi/openai/models/responses/response_steer_pending_event.rbi +1 -1
  185. data/rbi/openai/models/responses/responses_client_event.rbi +68 -38
  186. data/rbi/openai/models/responses/responses_server_event.rbi +213 -77
  187. data/rbi/openai/models/responses/tool.rbi +90 -51
  188. data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +4 -4
  189. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +8 -4
  190. data/rbi/openai/resources/admin/organization/projects/service_accounts/api_keys.rbi +3 -0
  191. data/rbi/openai/resources/audio/speech.rbi +1 -1
  192. data/rbi/openai/resources/beta/responses.rbi +13 -8
  193. data/rbi/openai/resources/containers/files/content.rbi +1 -1
  194. data/rbi/openai/resources/files.rbi +5 -1
  195. data/rbi/openai/resources/images.rbi +106 -76
  196. data/rbi/openai/resources/responses.rbi +158 -6
  197. data/rbi/openai/resources/skills/content.rbi +5 -1
  198. data/rbi/openai/resources/skills/versions/content.rbi +3 -1
  199. data/rbi/openai/resources/videos.rbi +1 -1
  200. data/rbi/openai/response_carrier.rbi +25 -0
  201. data/realtime.md +101 -0
  202. data/responses-websocket.md +182 -0
  203. data/sig/openai/auth/subject_token_providers.rbs +42 -0
  204. data/sig/openai/errors.rbs +36 -2
  205. data/sig/openai/file_part.rbs +3 -0
  206. data/sig/openai/helpers/local_audio/interface.rbs +62 -0
  207. data/sig/openai/helpers/realtime/connection.rbs +9 -1
  208. data/sig/openai/helpers/realtime/extensions.rbs +6 -2
  209. data/sig/openai/helpers/realtime/recovery.rbs +19 -0
  210. data/sig/openai/helpers/responses_websocket/connection.rbs +48 -0
  211. data/sig/openai/helpers/responses_websocket/connection_manager.rbs +19 -0
  212. data/sig/openai/helpers/responses_websocket/connection_resources.rbs +12 -0
  213. data/sig/openai/helpers/responses_websocket/extensions.rbs +55 -0
  214. data/sig/openai/helpers/responses_websocket/transports/async_websocket.rbs +19 -0
  215. data/sig/openai/helpers/responses_websocket/unknown_server_event.rbs +15 -0
  216. data/sig/openai/helpers/streaming/exceptions.rbs +24 -0
  217. data/sig/openai/helpers/streaming/response_stream.rbs +103 -0
  218. data/sig/openai/helpers/structured_output/response_parser.rbs +10 -0
  219. data/sig/openai/helpers/websocket.rbs +18 -0
  220. data/sig/openai/internal/transport/base_client.rbs +5 -0
  221. data/sig/openai/internal/type/base_stream.rbs +2 -0
  222. data/sig/openai/internal/type/request_parameters.rbs +1 -1
  223. data/sig/openai/internal/util.rbs +1 -0
  224. data/sig/openai/models/admin/organization/admin_api_key.rbs +18 -18
  225. data/sig/openai/models/admin/organization/admin_api_key_create_params.rbs +7 -4
  226. data/sig/openai/models/admin/organization/admin_api_key_create_response.rbs +6 -6
  227. data/sig/openai/models/admin/organization/admin_api_key_delete_params.rbs +2 -2
  228. data/sig/openai/models/admin/organization/admin_api_key_delete_response.rbs +2 -2
  229. data/sig/openai/models/admin/organization/admin_api_key_list_params.rbs +8 -8
  230. data/sig/openai/models/admin/organization/admin_api_key_retrieve_params.rbs +2 -2
  231. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +27 -27
  232. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +428 -423
  233. data/sig/openai/models/admin/organization/certificate.rbs +6 -6
  234. data/sig/openai/models/admin/organization/certificate_activate_params.rbs +5 -3
  235. data/sig/openai/models/admin/organization/certificate_activate_response.rbs +5 -4
  236. data/sig/openai/models/admin/organization/certificate_create_params.rbs +7 -4
  237. data/sig/openai/models/admin/organization/certificate_deactivate_params.rbs +5 -3
  238. data/sig/openai/models/admin/organization/certificate_deactivate_response.rbs +5 -4
  239. data/sig/openai/models/admin/organization/certificate_delete_params.rbs +2 -3
  240. data/sig/openai/models/admin/organization/certificate_delete_response.rbs +2 -2
  241. data/sig/openai/models/admin/organization/certificate_list_params.rbs +8 -8
  242. data/sig/openai/models/admin/organization/certificate_list_response.rbs +5 -4
  243. data/sig/openai/models/admin/organization/certificate_retrieve_params.rbs +4 -4
  244. data/sig/openai/models/admin/organization/certificate_update_params.rbs +7 -4
  245. data/sig/openai/models/admin/organization/data_retention_retrieve_params.rbs +2 -2
  246. data/sig/openai/models/admin/organization/data_retention_update_params.rbs +3 -3
  247. data/sig/openai/models/admin/organization/group_create_params.rbs +2 -2
  248. data/sig/openai/models/admin/organization/group_delete_params.rbs +2 -2
  249. data/sig/openai/models/admin/organization/group_delete_response.rbs +2 -2
  250. data/sig/openai/models/admin/organization/group_list_params.rbs +8 -8
  251. data/sig/openai/models/admin/organization/group_retrieve_params.rbs +2 -2
  252. data/sig/openai/models/admin/organization/group_update_params.rbs +6 -3
  253. data/sig/openai/models/admin/organization/groups/role_create_params.rbs +6 -3
  254. data/sig/openai/models/admin/organization/groups/role_create_response.rbs +4 -4
  255. data/sig/openai/models/admin/organization/groups/role_delete_params.rbs +6 -3
  256. data/sig/openai/models/admin/organization/groups/role_list_params.rbs +8 -8
  257. data/sig/openai/models/admin/organization/groups/role_retrieve_params.rbs +6 -3
  258. data/sig/openai/models/admin/organization/groups/user_create_params.rbs +6 -3
  259. data/sig/openai/models/admin/organization/groups/user_create_response.rbs +2 -2
  260. data/sig/openai/models/admin/organization/groups/user_delete_params.rbs +6 -3
  261. data/sig/openai/models/admin/organization/groups/user_delete_response.rbs +2 -2
  262. data/sig/openai/models/admin/organization/groups/user_list_params.rbs +8 -8
  263. data/sig/openai/models/admin/organization/groups/user_retrieve_params.rbs +6 -3
  264. data/sig/openai/models/admin/organization/invite.rbs +6 -6
  265. data/sig/openai/models/admin/organization/invite_create_params.rbs +4 -4
  266. data/sig/openai/models/admin/organization/invite_delete_params.rbs +2 -2
  267. data/sig/openai/models/admin/organization/invite_delete_response.rbs +2 -2
  268. data/sig/openai/models/admin/organization/invite_list_params.rbs +8 -5
  269. data/sig/openai/models/admin/organization/invite_retrieve_params.rbs +2 -2
  270. data/sig/openai/models/admin/organization/organization_data_retention.rbs +2 -2
  271. data/sig/openai/models/admin/organization/organization_spend_alert.rbs +6 -6
  272. data/sig/openai/models/admin/organization/organization_spend_alert_deleted.rbs +2 -2
  273. data/sig/openai/models/admin/organization/organization_spend_limit.rbs +2 -2
  274. data/sig/openai/models/admin/organization/organization_spend_limit_deleted.rbs +2 -2
  275. data/sig/openai/models/admin/organization/organization_user.rbs +46 -46
  276. data/sig/openai/models/admin/organization/project.rbs +12 -12
  277. data/sig/openai/models/admin/organization/project_archive_params.rbs +2 -2
  278. data/sig/openai/models/admin/organization/project_create_params.rbs +8 -8
  279. data/sig/openai/models/admin/organization/project_list_params.rbs +10 -6
  280. data/sig/openai/models/admin/organization/project_retrieve_params.rbs +2 -2
  281. data/sig/openai/models/admin/organization/project_update_params.rbs +8 -8
  282. data/sig/openai/models/admin/organization/projects/api_key_delete_params.rbs +6 -3
  283. data/sig/openai/models/admin/organization/projects/api_key_delete_response.rbs +2 -2
  284. data/sig/openai/models/admin/organization/projects/api_key_list_params.rbs +8 -8
  285. data/sig/openai/models/admin/organization/projects/api_key_retrieve_params.rbs +6 -3
  286. data/sig/openai/models/admin/organization/projects/certificate_activate_params.rbs +6 -3
  287. data/sig/openai/models/admin/organization/projects/certificate_activate_response.rbs +4 -4
  288. data/sig/openai/models/admin/organization/projects/certificate_deactivate_params.rbs +6 -3
  289. data/sig/openai/models/admin/organization/projects/certificate_deactivate_response.rbs +4 -4
  290. data/sig/openai/models/admin/organization/projects/certificate_list_params.rbs +8 -8
  291. data/sig/openai/models/admin/organization/projects/certificate_list_response.rbs +4 -4
  292. data/sig/openai/models/admin/organization/projects/data_retention_retrieve_params.rbs +2 -2
  293. data/sig/openai/models/admin/organization/projects/data_retention_update_params.rbs +3 -3
  294. data/sig/openai/models/admin/organization/projects/group_create_params.rbs +7 -3
  295. data/sig/openai/models/admin/organization/projects/group_delete_params.rbs +6 -3
  296. data/sig/openai/models/admin/organization/projects/group_delete_response.rbs +2 -2
  297. data/sig/openai/models/admin/organization/projects/group_list_params.rbs +8 -8
  298. data/sig/openai/models/admin/organization/projects/group_retrieve_params.rbs +4 -4
  299. data/sig/openai/models/admin/organization/projects/groups/role_create_params.rbs +7 -3
  300. data/sig/openai/models/admin/organization/projects/groups/role_create_response.rbs +4 -4
  301. data/sig/openai/models/admin/organization/projects/groups/role_delete_params.rbs +7 -3
  302. data/sig/openai/models/admin/organization/projects/groups/role_list_params.rbs +8 -8
  303. data/sig/openai/models/admin/organization/projects/groups/role_retrieve_params.rbs +7 -3
  304. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbs +2 -2
  305. data/sig/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbs +12 -12
  306. data/sig/openai/models/admin/organization/projects/model_permission_delete_params.rbs +2 -2
  307. data/sig/openai/models/admin/organization/projects/model_permission_retrieve_params.rbs +2 -2
  308. data/sig/openai/models/admin/organization/projects/model_permission_update_params.rbs +3 -3
  309. data/sig/openai/models/admin/organization/projects/project_api_key.rbs +8 -8
  310. data/sig/openai/models/admin/organization/projects/project_data_retention.rbs +2 -2
  311. data/sig/openai/models/admin/organization/projects/project_group.rbs +2 -2
  312. data/sig/openai/models/admin/organization/projects/project_model_permissions.rbs +2 -2
  313. data/sig/openai/models/admin/organization/projects/project_model_permissions_deleted.rbs +2 -2
  314. data/sig/openai/models/admin/organization/projects/project_rate_limit.rbs +10 -10
  315. data/sig/openai/models/admin/organization/projects/project_service_account.rbs +2 -2
  316. data/sig/openai/models/admin/organization/projects/project_spend_alert.rbs +6 -6
  317. data/sig/openai/models/admin/organization/projects/project_spend_alert_deleted.rbs +2 -2
  318. data/sig/openai/models/admin/organization/projects/project_spend_limit.rbs +2 -2
  319. data/sig/openai/models/admin/organization/projects/project_spend_limit_deleted.rbs +2 -2
  320. data/sig/openai/models/admin/organization/projects/project_user.rbs +6 -6
  321. data/sig/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rbs +8 -8
  322. data/sig/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rbs +14 -14
  323. data/sig/openai/models/admin/organization/projects/role_create_params.rbs +4 -4
  324. data/sig/openai/models/admin/organization/projects/role_delete_params.rbs +6 -3
  325. data/sig/openai/models/admin/organization/projects/role_delete_response.rbs +2 -2
  326. data/sig/openai/models/admin/organization/projects/role_list_params.rbs +8 -8
  327. data/sig/openai/models/admin/organization/projects/role_retrieve_params.rbs +6 -3
  328. data/sig/openai/models/admin/organization/projects/role_update_params.rbs +8 -8
  329. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +4 -4
  330. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +4 -4
  331. data/sig/openai/models/admin/organization/projects/service_account_delete_params.rbs +6 -3
  332. data/sig/openai/models/admin/organization/projects/service_account_delete_response.rbs +2 -2
  333. data/sig/openai/models/admin/organization/projects/service_account_list_params.rbs +9 -5
  334. data/sig/openai/models/admin/organization/projects/service_account_retrieve_params.rbs +6 -3
  335. data/sig/openai/models/admin/organization/projects/service_account_update_params.rbs +6 -6
  336. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbs +11 -6
  337. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbs +9 -4
  338. data/sig/openai/models/admin/organization/projects/spend_alert_create_params.rbs +7 -7
  339. data/sig/openai/models/admin/organization/projects/spend_alert_delete_params.rbs +6 -3
  340. data/sig/openai/models/admin/organization/projects/spend_alert_list_params.rbs +10 -10
  341. data/sig/openai/models/admin/organization/projects/spend_alert_retrieve_params.rbs +6 -3
  342. data/sig/openai/models/admin/organization/projects/spend_alert_update_params.rbs +7 -7
  343. data/sig/openai/models/admin/organization/projects/spend_limit_delete_params.rbs +2 -2
  344. data/sig/openai/models/admin/organization/projects/spend_limit_retrieve_params.rbs +2 -2
  345. data/sig/openai/models/admin/organization/projects/spend_limit_update_params.rbs +3 -3
  346. data/sig/openai/models/admin/organization/projects/user_create_params.rbs +6 -6
  347. data/sig/openai/models/admin/organization/projects/user_delete_params.rbs +6 -3
  348. data/sig/openai/models/admin/organization/projects/user_delete_response.rbs +2 -2
  349. data/sig/openai/models/admin/organization/projects/user_list_params.rbs +9 -5
  350. data/sig/openai/models/admin/organization/projects/user_retrieve_params.rbs +6 -3
  351. data/sig/openai/models/admin/organization/projects/user_update_params.rbs +8 -4
  352. data/sig/openai/models/admin/organization/projects/users/role_create_params.rbs +7 -3
  353. data/sig/openai/models/admin/organization/projects/users/role_create_response.rbs +2 -2
  354. data/sig/openai/models/admin/organization/projects/users/role_delete_params.rbs +7 -3
  355. data/sig/openai/models/admin/organization/projects/users/role_list_params.rbs +8 -8
  356. data/sig/openai/models/admin/organization/projects/users/role_retrieve_params.rbs +7 -3
  357. data/sig/openai/models/admin/organization/role.rbs +2 -2
  358. data/sig/openai/models/admin/organization/role_create_params.rbs +4 -4
  359. data/sig/openai/models/admin/organization/role_delete_params.rbs +2 -2
  360. data/sig/openai/models/admin/organization/role_delete_response.rbs +6 -2
  361. data/sig/openai/models/admin/organization/role_list_params.rbs +8 -8
  362. data/sig/openai/models/admin/organization/role_retrieve_params.rbs +2 -2
  363. data/sig/openai/models/admin/organization/role_update_params.rbs +8 -8
  364. data/sig/openai/models/admin/organization/spend_alert_create_params.rbs +7 -7
  365. data/sig/openai/models/admin/organization/spend_alert_delete_params.rbs +2 -2
  366. data/sig/openai/models/admin/organization/spend_alert_list_params.rbs +10 -10
  367. data/sig/openai/models/admin/organization/spend_alert_retrieve_params.rbs +2 -2
  368. data/sig/openai/models/admin/organization/spend_alert_update_params.rbs +7 -7
  369. data/sig/openai/models/admin/organization/spend_limit_delete_params.rbs +2 -2
  370. data/sig/openai/models/admin/organization/spend_limit_retrieve_params.rbs +2 -2
  371. data/sig/openai/models/admin/organization/spend_limit_update_params.rbs +3 -3
  372. data/sig/openai/models/admin/organization/usage_audio_speeches_params.rbs +20 -20
  373. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +142 -142
  374. data/sig/openai/models/admin/organization/usage_audio_transcriptions_params.rbs +20 -20
  375. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +142 -142
  376. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_params.rbs +14 -14
  377. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +142 -142
  378. data/sig/openai/models/admin/organization/usage_completions_params.rbs +22 -22
  379. data/sig/openai/models/admin/organization/usage_completions_response.rbs +142 -142
  380. data/sig/openai/models/admin/organization/usage_costs_params.rbs +18 -18
  381. data/sig/openai/models/admin/organization/usage_costs_response.rbs +142 -142
  382. data/sig/openai/models/admin/organization/usage_embeddings_params.rbs +20 -20
  383. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +142 -142
  384. data/sig/openai/models/admin/organization/usage_file_search_calls_params.rbs +20 -20
  385. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +142 -142
  386. data/sig/openai/models/admin/organization/usage_images_params.rbs +24 -24
  387. data/sig/openai/models/admin/organization/usage_images_response.rbs +142 -142
  388. data/sig/openai/models/admin/organization/usage_moderations_params.rbs +20 -20
  389. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +142 -142
  390. data/sig/openai/models/admin/organization/usage_vector_stores_params.rbs +14 -14
  391. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +142 -142
  392. data/sig/openai/models/admin/organization/usage_web_search_calls_params.rbs +22 -22
  393. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +142 -142
  394. data/sig/openai/models/admin/organization/user_delete_params.rbs +2 -2
  395. data/sig/openai/models/admin/organization/user_delete_response.rbs +2 -2
  396. data/sig/openai/models/admin/organization/user_list_params.rbs +10 -6
  397. data/sig/openai/models/admin/organization/user_retrieve_params.rbs +2 -2
  398. data/sig/openai/models/admin/organization/user_update_params.rbs +10 -10
  399. data/sig/openai/models/admin/organization/users/role_create_params.rbs +6 -3
  400. data/sig/openai/models/admin/organization/users/role_create_response.rbs +2 -2
  401. data/sig/openai/models/admin/organization/users/role_delete_params.rbs +6 -3
  402. data/sig/openai/models/admin/organization/users/role_list_params.rbs +8 -8
  403. data/sig/openai/models/admin/organization/users/role_retrieve_params.rbs +6 -3
  404. data/sig/openai/models/audio/speech_create_params.rbs +10 -10
  405. data/sig/openai/models/audio/transcription.rbs +19 -18
  406. data/sig/openai/models/audio/transcription_create_params.rbs +30 -30
  407. data/sig/openai/models/audio/transcription_diarized.rbs +12 -12
  408. data/sig/openai/models/audio/transcription_diarized_segment.rbs +2 -2
  409. data/sig/openai/models/audio/transcription_text_delta_event.rbs +10 -10
  410. data/sig/openai/models/audio/transcription_text_done_event.rbs +18 -18
  411. data/sig/openai/models/audio/transcription_text_segment_event.rbs +2 -2
  412. data/sig/openai/models/audio/transcription_verbose.rbs +8 -8
  413. data/sig/openai/models/audio/translation_create_params.rbs +8 -8
  414. data/sig/openai/models/audio/translation_verbose.rbs +2 -2
  415. data/sig/openai/models/auto_file_chunking_strategy_param.rbs +2 -2
  416. data/sig/openai/models/batch.rbs +34 -34
  417. data/sig/openai/models/batch_cancel_params.rbs +2 -2
  418. data/sig/openai/models/batch_create_params.rbs +8 -8
  419. data/sig/openai/models/batch_error.rbs +5 -5
  420. data/sig/openai/models/batch_list_params.rbs +8 -5
  421. data/sig/openai/models/batch_retrieve_params.rbs +2 -2
  422. data/sig/openai/models/beta/assistant.rbs +18 -18
  423. data/sig/openai/models/beta/assistant_create_params.rbs +42 -42
  424. data/sig/openai/models/beta/assistant_delete_params.rbs +2 -2
  425. data/sig/openai/models/beta/assistant_deleted.rbs +2 -2
  426. data/sig/openai/models/beta/assistant_list_params.rbs +10 -10
  427. data/sig/openai/models/beta/assistant_retrieve_params.rbs +2 -2
  428. data/sig/openai/models/beta/assistant_stream_event.rbs +53 -50
  429. data/sig/openai/models/beta/assistant_tool_choice.rbs +2 -2
  430. data/sig/openai/models/beta/assistant_update_params.rbs +32 -32
  431. data/sig/openai/models/beta/beta_apply_patch_tool.rbs +4 -4
  432. data/sig/openai/models/beta/beta_compacted_response.rbs +2 -2
  433. data/sig/openai/models/beta/beta_computer_action.rbs +25 -25
  434. data/sig/openai/models/beta/beta_computer_tool.rbs +2 -2
  435. data/sig/openai/models/beta/beta_computer_use_preview_tool.rbs +2 -2
  436. data/sig/openai/models/beta/beta_container_auto.rbs +10 -10
  437. data/sig/openai/models/beta/beta_container_network_policy_allowlist.rbs +4 -4
  438. data/sig/openai/models/beta/beta_container_network_policy_disabled.rbs +2 -2
  439. data/sig/openai/models/beta/beta_container_reference.rbs +2 -2
  440. data/sig/openai/models/beta/beta_custom_tool.rbs +16 -16
  441. data/sig/openai/models/beta/beta_easy_input_message.rbs +4 -4
  442. data/sig/openai/models/beta/beta_file_search_tool.rbs +14 -14
  443. data/sig/openai/models/beta/beta_function_shell_tool.rbs +6 -6
  444. data/sig/openai/models/beta/beta_function_tool.rbs +12 -12
  445. data/sig/openai/models/beta/beta_inline_skill.rbs +2 -2
  446. data/sig/openai/models/beta/beta_inline_skill_source.rbs +3 -3
  447. data/sig/openai/models/beta/beta_local_environment.rbs +3 -3
  448. data/sig/openai/models/beta/beta_mcp_tool_call_error.rbs +6 -6
  449. data/sig/openai/models/beta/beta_namespace_tool.rbs +18 -18
  450. data/sig/openai/models/beta/beta_response.rbs +185 -67
  451. data/sig/openai/models/beta/beta_response_apply_patch_tool_call.rbs +18 -18
  452. data/sig/openai/models/beta/beta_response_apply_patch_tool_call_output.rbs +14 -14
  453. data/sig/openai/models/beta/beta_response_audio_delta_event.rbs +4 -4
  454. data/sig/openai/models/beta/beta_response_audio_done_event.rbs +4 -4
  455. data/sig/openai/models/beta/beta_response_audio_transcript_delta_event.rbs +4 -4
  456. data/sig/openai/models/beta/beta_response_audio_transcript_done_event.rbs +4 -4
  457. data/sig/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rbs +4 -4
  458. data/sig/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rbs +4 -4
  459. data/sig/openai/models/beta/beta_response_code_interpreter_call_completed_event.rbs +4 -4
  460. data/sig/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbs +4 -4
  461. data/sig/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbs +4 -4
  462. data/sig/openai/models/beta/beta_response_code_interpreter_tool_call.rbs +8 -8
  463. data/sig/openai/models/beta/beta_response_compaction_item.rbs +6 -6
  464. data/sig/openai/models/beta/beta_response_compaction_item_param.rbs +6 -6
  465. data/sig/openai/models/beta/beta_response_completed_event.rbs +4 -4
  466. data/sig/openai/models/beta/beta_response_computer_tool_call.rbs +8 -8
  467. data/sig/openai/models/beta/beta_response_computer_tool_call_output_item.rbs +10 -10
  468. data/sig/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rbs +4 -4
  469. data/sig/openai/models/beta/beta_response_configuration_update_item.rbs +8 -8
  470. data/sig/openai/models/beta/beta_response_configuration_update_item_param.rbs +10 -10
  471. data/sig/openai/models/beta/beta_response_container_reference.rbs +2 -2
  472. data/sig/openai/models/beta/beta_response_content.rbs +2 -2
  473. data/sig/openai/models/beta/beta_response_content_part_added_event.rbs +6 -6
  474. data/sig/openai/models/beta/beta_response_content_part_done_event.rbs +6 -6
  475. data/sig/openai/models/beta/beta_response_created_event.rbs +4 -4
  476. data/sig/openai/models/beta/beta_response_custom_tool_call.rbs +16 -16
  477. data/sig/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rbs +4 -4
  478. data/sig/openai/models/beta/beta_response_custom_tool_call_input_done_event.rbs +4 -4
  479. data/sig/openai/models/beta/beta_response_custom_tool_call_item.rbs +12 -12
  480. data/sig/openai/models/beta/beta_response_custom_tool_call_output.rbs +12 -12
  481. data/sig/openai/models/beta/beta_response_custom_tool_call_output_item.rbs +8 -8
  482. data/sig/openai/models/beta/beta_response_error.rbs +8 -8
  483. data/sig/openai/models/beta/beta_response_error_event.rbs +4 -4
  484. data/sig/openai/models/beta/beta_response_failed_event.rbs +4 -4
  485. data/sig/openai/models/beta/beta_response_file_search_call_completed_event.rbs +4 -4
  486. data/sig/openai/models/beta/beta_response_file_search_call_in_progress_event.rbs +4 -4
  487. data/sig/openai/models/beta/beta_response_file_search_call_searching_event.rbs +4 -4
  488. data/sig/openai/models/beta/beta_response_file_search_tool_call.rbs +16 -16
  489. data/sig/openai/models/beta/beta_response_format_text_config.rbs +4 -4
  490. data/sig/openai/models/beta/beta_response_format_text_json_schema_config.rbs +6 -6
  491. data/sig/openai/models/beta/beta_response_function_call_arguments_delta_event.rbs +4 -4
  492. data/sig/openai/models/beta/beta_response_function_call_arguments_done_event.rbs +4 -9
  493. data/sig/openai/models/beta/beta_response_function_shell_call_output_content.rbs +4 -4
  494. data/sig/openai/models/beta/beta_response_function_shell_tool_call.rbs +12 -12
  495. data/sig/openai/models/beta/beta_response_function_shell_tool_call_output.rbs +18 -18
  496. data/sig/openai/models/beta/beta_response_function_tool_call.rbs +18 -18
  497. data/sig/openai/models/beta/beta_response_function_tool_call_item.rbs +12 -12
  498. data/sig/openai/models/beta/beta_response_function_tool_call_output_item.rbs +18 -18
  499. data/sig/openai/models/beta/beta_response_function_web_search.rbs +21 -19
  500. data/sig/openai/models/beta/beta_response_image_gen_call_completed_event.rbs +4 -4
  501. data/sig/openai/models/beta/beta_response_image_gen_call_generating_event.rbs +4 -4
  502. data/sig/openai/models/beta/beta_response_image_gen_call_in_progress_event.rbs +4 -4
  503. data/sig/openai/models/beta/beta_response_image_gen_call_partial_image_event.rbs +12 -12
  504. data/sig/openai/models/beta/beta_response_in_progress_event.rbs +4 -4
  505. data/sig/openai/models/beta/beta_response_incomplete_event.rbs +4 -4
  506. data/sig/openai/models/beta/beta_response_inject_created_event.rbs +4 -4
  507. data/sig/openai/models/beta/beta_response_inject_event.rbs +2 -2
  508. data/sig/openai/models/beta/beta_response_inject_failed_event.rbs +4 -4
  509. data/sig/openai/models/beta/beta_response_input_audio.rbs +2 -2
  510. data/sig/openai/models/beta/beta_response_input_file.rbs +16 -16
  511. data/sig/openai/models/beta/beta_response_input_file_content.rbs +16 -16
  512. data/sig/openai/models/beta/beta_response_input_image.rbs +10 -10
  513. data/sig/openai/models/beta/beta_response_input_image_content.rbs +12 -12
  514. data/sig/openai/models/beta/beta_response_input_item.rbs +273 -228
  515. data/sig/openai/models/beta/beta_response_input_message_item.rbs +6 -6
  516. data/sig/openai/models/beta/beta_response_input_text.rbs +6 -6
  517. data/sig/openai/models/beta/beta_response_input_text_content.rbs +6 -6
  518. data/sig/openai/models/beta/beta_response_item.rbs +129 -92
  519. data/sig/openai/models/beta/beta_response_local_environment.rbs +2 -2
  520. data/sig/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rbs +4 -4
  521. data/sig/openai/models/beta/beta_response_mcp_call_arguments_done_event.rbs +4 -4
  522. data/sig/openai/models/beta/beta_response_mcp_call_completed_event.rbs +4 -4
  523. data/sig/openai/models/beta/beta_response_mcp_call_failed_event.rbs +4 -4
  524. data/sig/openai/models/beta/beta_response_mcp_call_in_progress_event.rbs +4 -4
  525. data/sig/openai/models/beta/beta_response_mcp_list_tools_completed_event.rbs +4 -4
  526. data/sig/openai/models/beta/beta_response_mcp_list_tools_failed_event.rbs +4 -4
  527. data/sig/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rbs +4 -4
  528. data/sig/openai/models/beta/beta_response_output_audio.rbs +2 -2
  529. data/sig/openai/models/beta/beta_response_output_item.rbs +129 -92
  530. data/sig/openai/models/beta/beta_response_output_item_added_event.rbs +4 -4
  531. data/sig/openai/models/beta/beta_response_output_item_done_event.rbs +4 -4
  532. data/sig/openai/models/beta/beta_response_output_message.rbs +8 -8
  533. data/sig/openai/models/beta/beta_response_output_refusal.rbs +2 -2
  534. data/sig/openai/models/beta/beta_response_output_text.rbs +13 -12
  535. data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +13 -12
  536. data/sig/openai/models/beta/beta_response_prompt.rbs +4 -4
  537. data/sig/openai/models/beta/beta_response_queued_event.rbs +4 -4
  538. data/sig/openai/models/beta/beta_response_reasoning_item.rbs +14 -14
  539. data/sig/openai/models/beta/beta_response_reasoning_summary_part_added_event.rbs +6 -6
  540. data/sig/openai/models/beta/beta_response_reasoning_summary_part_done_event.rbs +8 -8
  541. data/sig/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rbs +4 -4
  542. data/sig/openai/models/beta/beta_response_reasoning_summary_text_done_event.rbs +4 -4
  543. data/sig/openai/models/beta/beta_response_reasoning_text_delta_event.rbs +4 -4
  544. data/sig/openai/models/beta/beta_response_reasoning_text_done_event.rbs +4 -4
  545. data/sig/openai/models/beta/beta_response_refusal_delta_event.rbs +4 -4
  546. data/sig/openai/models/beta/beta_response_refusal_done_event.rbs +4 -4
  547. data/sig/openai/models/beta/beta_response_shell_call_command_added_event.rbs +4 -4
  548. data/sig/openai/models/beta/beta_response_shell_call_command_delta_event.rbs +6 -6
  549. data/sig/openai/models/beta/beta_response_shell_call_command_done_event.rbs +4 -4
  550. data/sig/openai/models/beta/beta_response_shell_call_output_content_delta_event.rbs +6 -6
  551. data/sig/openai/models/beta/beta_response_shell_call_output_content_done_event.rbs +10 -10
  552. data/sig/openai/models/beta/beta_response_steer_accepted_event.rbs +4 -4
  553. data/sig/openai/models/beta/beta_response_steer_event.rbs +2 -2
  554. data/sig/openai/models/beta/beta_response_steer_failed_event.rbs +8 -8
  555. data/sig/openai/models/beta/beta_response_steer_input.rbs +30 -30
  556. data/sig/openai/models/beta/beta_response_steer_pending_event.rbs +4 -4
  557. data/sig/openai/models/beta/beta_response_steer_required_input.rbs +14 -14
  558. data/sig/openai/models/beta/beta_response_text_config.rbs +4 -4
  559. data/sig/openai/models/beta/beta_response_text_delta_event.rbs +8 -8
  560. data/sig/openai/models/beta/beta_response_text_done_event.rbs +8 -8
  561. data/sig/openai/models/beta/beta_response_tool_search_call.rbs +6 -6
  562. data/sig/openai/models/beta/beta_response_tool_search_output_item.rbs +6 -6
  563. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +12 -12
  564. data/sig/openai/models/beta/beta_response_web_search_call_completed_event.rbs +4 -4
  565. data/sig/openai/models/beta/beta_response_web_search_call_in_progress_event.rbs +4 -4
  566. data/sig/openai/models/beta/beta_response_web_search_call_searching_event.rbs +4 -4
  567. data/sig/openai/models/beta/beta_responses_client_event.rbs +104 -96
  568. data/sig/openai/models/beta/beta_responses_server_event.rbs +374 -377
  569. data/sig/openai/models/beta/beta_skill_reference.rbs +3 -3
  570. data/sig/openai/models/beta/beta_tool.rbs +91 -75
  571. data/sig/openai/models/beta/beta_tool_choice_allowed.rbs +2 -2
  572. data/sig/openai/models/beta/beta_tool_choice_apply_patch.rbs +2 -2
  573. data/sig/openai/models/beta/beta_tool_choice_custom.rbs +2 -2
  574. data/sig/openai/models/beta/beta_tool_choice_function.rbs +2 -2
  575. data/sig/openai/models/beta/beta_tool_choice_mcp.rbs +2 -2
  576. data/sig/openai/models/beta/beta_tool_choice_shell.rbs +2 -2
  577. data/sig/openai/models/beta/beta_tool_search_tool.rbs +8 -8
  578. data/sig/openai/models/beta/beta_web_search_preview_tool.rbs +16 -16
  579. data/sig/openai/models/beta/beta_web_search_tool.rbs +20 -20
  580. data/sig/openai/models/beta/chatkit/chat_session.rbs +2 -2
  581. data/sig/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbs +14 -14
  582. data/sig/openai/models/beta/chatkit/chat_session_expires_after_param.rbs +2 -2
  583. data/sig/openai/models/beta/chatkit/chat_session_rate_limits_param.rbs +2 -2
  584. data/sig/openai/models/beta/chatkit/chat_session_workflow_param.rbs +8 -8
  585. data/sig/openai/models/beta/chatkit/chatkit_response_output_text.rbs +10 -10
  586. data/sig/openai/models/beta/chatkit/chatkit_thread.rbs +8 -8
  587. data/sig/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbs +4 -4
  588. data/sig/openai/models/beta/chatkit/chatkit_thread_item_list.rbs +14 -14
  589. data/sig/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbs +8 -8
  590. data/sig/openai/models/beta/chatkit/chatkit_widget_item.rbs +4 -4
  591. data/sig/openai/models/beta/chatkit/session_cancel_params.rbs +2 -2
  592. data/sig/openai/models/beta/chatkit/session_create_params.rbs +8 -8
  593. data/sig/openai/models/beta/chatkit/thread_delete_params.rbs +2 -2
  594. data/sig/openai/models/beta/chatkit/thread_delete_response.rbs +2 -2
  595. data/sig/openai/models/beta/chatkit/thread_list_items_params.rbs +10 -10
  596. data/sig/openai/models/beta/chatkit/thread_list_params.rbs +12 -12
  597. data/sig/openai/models/beta/chatkit/thread_retrieve_params.rbs +2 -2
  598. data/sig/openai/models/beta/code_interpreter_tool.rbs +2 -2
  599. data/sig/openai/models/beta/file_search_tool.rbs +10 -10
  600. data/sig/openai/models/beta/function_tool.rbs +2 -2
  601. data/sig/openai/models/beta/message_stream_event.rbs +10 -10
  602. data/sig/openai/models/beta/response_cancel_params.rbs +4 -4
  603. data/sig/openai/models/beta/response_compact_params.rbs +22 -22
  604. data/sig/openai/models/beta/response_create_params.rbs +99 -94
  605. data/sig/openai/models/beta/response_delete_params.rbs +4 -4
  606. data/sig/openai/models/beta/response_retrieve_params.rbs +10 -10
  607. data/sig/openai/models/beta/responses/beta_response_item_list.rbs +2 -2
  608. data/sig/openai/models/beta/responses/input_item_list_params.rbs +12 -12
  609. data/sig/openai/models/beta/responses/input_token_count_params.rbs +44 -44
  610. data/sig/openai/models/beta/responses/input_token_count_response.rbs +2 -2
  611. data/sig/openai/models/beta/run_step_stream_event.rbs +14 -14
  612. data/sig/openai/models/beta/run_stream_event.rbs +23 -20
  613. data/sig/openai/models/beta/thread.rbs +10 -10
  614. data/sig/openai/models/beta/thread_create_and_run_params.rbs +76 -76
  615. data/sig/openai/models/beta/thread_create_params.rbs +38 -38
  616. data/sig/openai/models/beta/thread_delete_params.rbs +2 -2
  617. data/sig/openai/models/beta/thread_deleted.rbs +6 -2
  618. data/sig/openai/models/beta/thread_retrieve_params.rbs +2 -2
  619. data/sig/openai/models/beta/thread_stream_event.rbs +7 -3
  620. data/sig/openai/models/beta/thread_update_params.rbs +14 -14
  621. data/sig/openai/models/beta/threads/file_citation_annotation.rbs +2 -2
  622. data/sig/openai/models/beta/threads/file_citation_delta_annotation.rbs +12 -12
  623. data/sig/openai/models/beta/threads/file_path_annotation.rbs +2 -2
  624. data/sig/openai/models/beta/threads/file_path_delta_annotation.rbs +12 -12
  625. data/sig/openai/models/beta/threads/image_file.rbs +2 -2
  626. data/sig/openai/models/beta/threads/image_file_content_block.rbs +2 -2
  627. data/sig/openai/models/beta/threads/image_file_delta.rbs +4 -4
  628. data/sig/openai/models/beta/threads/image_file_delta_block.rbs +4 -4
  629. data/sig/openai/models/beta/threads/image_url.rbs +2 -2
  630. data/sig/openai/models/beta/threads/image_url_content_block.rbs +2 -2
  631. data/sig/openai/models/beta/threads/image_url_delta.rbs +4 -4
  632. data/sig/openai/models/beta/threads/image_url_delta_block.rbs +4 -4
  633. data/sig/openai/models/beta/threads/message.rbs +8 -8
  634. data/sig/openai/models/beta/threads/message_create_params.rbs +12 -12
  635. data/sig/openai/models/beta/threads/message_delete_params.rbs +6 -3
  636. data/sig/openai/models/beta/threads/message_deleted.rbs +2 -2
  637. data/sig/openai/models/beta/threads/message_delta.rbs +4 -4
  638. data/sig/openai/models/beta/threads/message_delta_event.rbs +2 -2
  639. data/sig/openai/models/beta/threads/message_list_params.rbs +12 -12
  640. data/sig/openai/models/beta/threads/message_retrieve_params.rbs +6 -3
  641. data/sig/openai/models/beta/threads/message_update_params.rbs +4 -4
  642. data/sig/openai/models/beta/threads/refusal_content_block.rbs +2 -2
  643. data/sig/openai/models/beta/threads/refusal_delta_block.rbs +2 -2
  644. data/sig/openai/models/beta/threads/required_action_function_tool_call.rbs +2 -2
  645. data/sig/openai/models/beta/threads/run.rbs +12 -12
  646. data/sig/openai/models/beta/threads/run_cancel_params.rbs +6 -3
  647. data/sig/openai/models/beta/threads/run_create_params.rbs +46 -46
  648. data/sig/openai/models/beta/threads/run_list_params.rbs +10 -10
  649. data/sig/openai/models/beta/threads/run_retrieve_params.rbs +6 -3
  650. data/sig/openai/models/beta/threads/run_submit_tool_outputs_params.rbs +5 -5
  651. data/sig/openai/models/beta/threads/run_update_params.rbs +4 -4
  652. data/sig/openai/models/beta/threads/runs/code_interpreter_logs.rbs +2 -2
  653. data/sig/openai/models/beta/threads/runs/code_interpreter_output_image.rbs +6 -6
  654. data/sig/openai/models/beta/threads/runs/code_interpreter_tool_call.rbs +6 -6
  655. data/sig/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbs +10 -10
  656. data/sig/openai/models/beta/threads/runs/file_search_tool_call.rbs +12 -12
  657. data/sig/openai/models/beta/threads/runs/file_search_tool_call_delta.rbs +8 -3
  658. data/sig/openai/models/beta/threads/runs/function_tool_call.rbs +2 -2
  659. data/sig/openai/models/beta/threads/runs/function_tool_call_delta.rbs +11 -10
  660. data/sig/openai/models/beta/threads/runs/message_creation_step_details.rbs +2 -2
  661. data/sig/openai/models/beta/threads/runs/run_step.rbs +2 -2
  662. data/sig/openai/models/beta/threads/runs/run_step_delta.rbs +2 -2
  663. data/sig/openai/models/beta/threads/runs/run_step_delta_event.rbs +2 -2
  664. data/sig/openai/models/beta/threads/runs/run_step_delta_message_delta.rbs +6 -6
  665. data/sig/openai/models/beta/threads/runs/step_list_params.rbs +12 -12
  666. data/sig/openai/models/beta/threads/runs/step_retrieve_params.rbs +4 -4
  667. data/sig/openai/models/beta/threads/runs/tool_call_delta_object.rbs +4 -4
  668. data/sig/openai/models/beta/threads/runs/tool_calls_step_details.rbs +2 -2
  669. data/sig/openai/models/beta/threads/text_content_block.rbs +2 -2
  670. data/sig/openai/models/beta/threads/text_content_block_param.rbs +2 -2
  671. data/sig/openai/models/beta/threads/text_delta.rbs +4 -4
  672. data/sig/openai/models/beta/threads/text_delta_block.rbs +4 -4
  673. data/sig/openai/models/chat/chat_completion.rbs +24 -24
  674. data/sig/openai/models/chat/chat_completion_allowed_tool_choice.rbs +2 -2
  675. data/sig/openai/models/chat/chat_completion_assistant_message_param.rbs +14 -14
  676. data/sig/openai/models/chat/chat_completion_chunk.rbs +46 -46
  677. data/sig/openai/models/chat/chat_completion_content_part.rbs +11 -10
  678. data/sig/openai/models/chat/chat_completion_content_part_image.rbs +8 -8
  679. data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +6 -6
  680. data/sig/openai/models/chat/chat_completion_content_part_refusal.rbs +2 -2
  681. data/sig/openai/models/chat/chat_completion_content_part_text.rbs +6 -6
  682. data/sig/openai/models/chat/chat_completion_custom_tool.rbs +10 -10
  683. data/sig/openai/models/chat/chat_completion_deleted.rbs +2 -2
  684. data/sig/openai/models/chat/chat_completion_developer_message_param.rbs +4 -4
  685. data/sig/openai/models/chat/chat_completion_function_message_param.rbs +2 -2
  686. data/sig/openai/models/chat/chat_completion_function_tool.rbs +2 -2
  687. data/sig/openai/models/chat/chat_completion_message.rbs +12 -12
  688. data/sig/openai/models/chat/chat_completion_message_custom_tool_call.rbs +2 -2
  689. data/sig/openai/models/chat/chat_completion_message_function_tool_call.rbs +2 -2
  690. data/sig/openai/models/chat/chat_completion_named_tool_choice.rbs +2 -2
  691. data/sig/openai/models/chat/chat_completion_named_tool_choice_custom.rbs +2 -2
  692. data/sig/openai/models/chat/chat_completion_prediction_content.rbs +2 -2
  693. data/sig/openai/models/chat/chat_completion_store_message.rbs +12 -12
  694. data/sig/openai/models/chat/chat_completion_stream_options.rbs +2 -2
  695. data/sig/openai/models/chat/chat_completion_system_message_param.rbs +4 -4
  696. data/sig/openai/models/chat/chat_completion_tool_message_param.rbs +2 -2
  697. data/sig/openai/models/chat/chat_completion_user_message_param.rbs +4 -4
  698. data/sig/openai/models/chat/completion_create_params.rbs +98 -98
  699. data/sig/openai/models/chat/completion_delete_params.rbs +2 -2
  700. data/sig/openai/models/chat/completion_list_params.rbs +12 -12
  701. data/sig/openai/models/chat/completion_retrieve_params.rbs +2 -2
  702. data/sig/openai/models/chat/completion_update_params.rbs +6 -3
  703. data/sig/openai/models/chat/completions/message_list_params.rbs +8 -8
  704. data/sig/openai/models/completion.rbs +6 -6
  705. data/sig/openai/models/completion_choice.rbs +8 -8
  706. data/sig/openai/models/completion_create_params.rbs +32 -32
  707. data/sig/openai/models/completion_usage.rbs +24 -24
  708. data/sig/openai/models/container_create_params.rbs +12 -12
  709. data/sig/openai/models/container_create_response.rbs +14 -14
  710. data/sig/openai/models/container_delete_params.rbs +2 -2
  711. data/sig/openai/models/container_list_params.rbs +10 -10
  712. data/sig/openai/models/container_list_response.rbs +14 -14
  713. data/sig/openai/models/container_retrieve_params.rbs +2 -2
  714. data/sig/openai/models/container_retrieve_response.rbs +14 -14
  715. data/sig/openai/models/containers/file_create_params.rbs +6 -6
  716. data/sig/openai/models/containers/file_create_response.rbs +2 -2
  717. data/sig/openai/models/containers/file_delete_params.rbs +6 -3
  718. data/sig/openai/models/containers/file_list_params.rbs +8 -8
  719. data/sig/openai/models/containers/file_list_response.rbs +2 -2
  720. data/sig/openai/models/containers/file_retrieve_params.rbs +6 -3
  721. data/sig/openai/models/containers/file_retrieve_response.rbs +2 -2
  722. data/sig/openai/models/containers/files/content_retrieve_params.rbs +6 -3
  723. data/sig/openai/models/content_provenance_check.rbs +4 -4
  724. data/sig/openai/models/content_provenance_check_create_params.rbs +5 -3
  725. data/sig/openai/models/conversations/computer_screenshot_content.rbs +6 -6
  726. data/sig/openai/models/conversations/conversation.rbs +2 -2
  727. data/sig/openai/models/conversations/conversation_create_params.rbs +6 -6
  728. data/sig/openai/models/conversations/conversation_delete_params.rbs +2 -2
  729. data/sig/openai/models/conversations/conversation_deleted.rbs +2 -2
  730. data/sig/openai/models/conversations/conversation_deleted_resource.rbs +2 -2
  731. data/sig/openai/models/conversations/conversation_item.rbs +83 -46
  732. data/sig/openai/models/conversations/conversation_item_list.rbs +2 -2
  733. data/sig/openai/models/conversations/conversation_retrieve_params.rbs +2 -2
  734. data/sig/openai/models/conversations/conversation_update_params.rbs +6 -3
  735. data/sig/openai/models/conversations/item_create_params.rbs +4 -4
  736. data/sig/openai/models/conversations/item_delete_params.rbs +6 -3
  737. data/sig/openai/models/conversations/item_list_params.rbs +10 -10
  738. data/sig/openai/models/conversations/item_retrieve_params.rbs +4 -4
  739. data/sig/openai/models/conversations/message.rbs +6 -6
  740. data/sig/openai/models/conversations/summary_text_content.rbs +2 -2
  741. data/sig/openai/models/conversations/text_content.rbs +2 -2
  742. data/sig/openai/models/create_embedding_response.rbs +2 -2
  743. data/sig/openai/models/custom_tool_input_format.rbs +4 -4
  744. data/sig/openai/models/deleted_skill.rbs +3 -2
  745. data/sig/openai/models/embedding.rbs +2 -2
  746. data/sig/openai/models/embedding_create_params.rbs +8 -8
  747. data/sig/openai/models/error_object.rbs +8 -8
  748. data/sig/openai/models/eval_create_params.rbs +40 -40
  749. data/sig/openai/models/eval_create_response.rbs +22 -22
  750. data/sig/openai/models/eval_custom_data_source_config.rbs +2 -2
  751. data/sig/openai/models/eval_delete_params.rbs +2 -2
  752. data/sig/openai/models/eval_list_params.rbs +10 -10
  753. data/sig/openai/models/eval_list_response.rbs +22 -22
  754. data/sig/openai/models/eval_retrieve_params.rbs +2 -2
  755. data/sig/openai/models/eval_retrieve_response.rbs +22 -22
  756. data/sig/openai/models/eval_stored_completions_data_source_config.rbs +4 -4
  757. data/sig/openai/models/eval_update_params.rbs +9 -5
  758. data/sig/openai/models/eval_update_response.rbs +22 -22
  759. data/sig/openai/models/evals/create_eval_completions_run_data_source.rbs +49 -49
  760. data/sig/openai/models/evals/create_eval_jsonl_run_data_source.rbs +8 -8
  761. data/sig/openai/models/evals/run_cancel_params.rbs +6 -3
  762. data/sig/openai/models/evals/run_cancel_response.rbs +66 -66
  763. data/sig/openai/models/evals/run_create_params.rbs +68 -68
  764. data/sig/openai/models/evals/run_create_response.rbs +66 -66
  765. data/sig/openai/models/evals/run_delete_params.rbs +6 -3
  766. data/sig/openai/models/evals/run_delete_response.rbs +2 -2
  767. data/sig/openai/models/evals/run_list_params.rbs +10 -10
  768. data/sig/openai/models/evals/run_list_response.rbs +66 -66
  769. data/sig/openai/models/evals/run_retrieve_params.rbs +6 -3
  770. data/sig/openai/models/evals/run_retrieve_response.rbs +66 -66
  771. data/sig/openai/models/evals/runs/output_item_list_params.rbs +10 -10
  772. data/sig/openai/models/evals/runs/output_item_list_response.rbs +8 -8
  773. data/sig/openai/models/evals/runs/output_item_retrieve_params.rbs +7 -3
  774. data/sig/openai/models/evals/runs/output_item_retrieve_response.rbs +8 -8
  775. data/sig/openai/models/file_content_params.rbs +2 -2
  776. data/sig/openai/models/file_create_params.rbs +6 -6
  777. data/sig/openai/models/file_delete_params.rbs +2 -2
  778. data/sig/openai/models/file_deleted.rbs +2 -2
  779. data/sig/openai/models/file_list_params.rbs +10 -10
  780. data/sig/openai/models/file_object.rbs +6 -6
  781. data/sig/openai/models/file_retrieve_params.rbs +2 -2
  782. data/sig/openai/models/fine_tuning/alpha/grader_run_params.rbs +4 -4
  783. data/sig/openai/models/fine_tuning/alpha/grader_validate_params.rbs +3 -3
  784. data/sig/openai/models/fine_tuning/alpha/grader_validate_response.rbs +2 -2
  785. data/sig/openai/models/fine_tuning/checkpoints/permission_create_params.rbs +6 -3
  786. data/sig/openai/models/fine_tuning/checkpoints/permission_create_response.rbs +2 -2
  787. data/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs +6 -3
  788. data/sig/openai/models/fine_tuning/checkpoints/permission_delete_response.rbs +2 -2
  789. data/sig/openai/models/fine_tuning/checkpoints/permission_list_params.rbs +10 -10
  790. data/sig/openai/models/fine_tuning/checkpoints/permission_list_response.rbs +2 -2
  791. data/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbs +10 -10
  792. data/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbs +8 -8
  793. data/sig/openai/models/fine_tuning/dpo_hyperparameters.rbs +8 -8
  794. data/sig/openai/models/fine_tuning/dpo_method.rbs +2 -2
  795. data/sig/openai/models/fine_tuning/fine_tuning_job.rbs +22 -22
  796. data/sig/openai/models/fine_tuning/fine_tuning_job_event.rbs +6 -6
  797. data/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbs +6 -6
  798. data/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbs +2 -2
  799. data/sig/openai/models/fine_tuning/job_cancel_params.rbs +2 -3
  800. data/sig/openai/models/fine_tuning/job_create_params.rbs +36 -36
  801. data/sig/openai/models/fine_tuning/job_list_events_params.rbs +9 -5
  802. data/sig/openai/models/fine_tuning/job_list_params.rbs +10 -6
  803. data/sig/openai/models/fine_tuning/job_pause_params.rbs +2 -3
  804. data/sig/openai/models/fine_tuning/job_resume_params.rbs +2 -3
  805. data/sig/openai/models/fine_tuning/job_retrieve_params.rbs +2 -3
  806. data/sig/openai/models/fine_tuning/jobs/checkpoint_list_params.rbs +9 -5
  807. data/sig/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbs +16 -16
  808. data/sig/openai/models/fine_tuning/reinforcement_hyperparameters.rbs +14 -14
  809. data/sig/openai/models/fine_tuning/reinforcement_method.rbs +2 -2
  810. data/sig/openai/models/fine_tuning/supervised_hyperparameters.rbs +6 -6
  811. data/sig/openai/models/fine_tuning/supervised_method.rbs +2 -2
  812. data/sig/openai/models/function_definition.rbs +6 -6
  813. data/sig/openai/models/graders/grader_input_item.rbs +5 -5
  814. data/sig/openai/models/graders/label_model_grader.rbs +9 -9
  815. data/sig/openai/models/graders/multi_grader.rbs +2 -2
  816. data/sig/openai/models/graders/python_grader.rbs +3 -3
  817. data/sig/openai/models/graders/score_model_grader.rbs +23 -23
  818. data/sig/openai/models/graders/string_check_grader.rbs +2 -2
  819. data/sig/openai/models/graders/text_similarity_grader.rbs +2 -2
  820. data/sig/openai/models/image.rbs +4 -4
  821. data/sig/openai/models/image_create_variation_params.rbs +12 -12
  822. data/sig/openai/models/image_edit_completed_event.rbs +13 -6
  823. data/sig/openai/models/image_edit_params.rbs +29 -27
  824. data/sig/openai/models/image_edit_partial_image_event.rbs +13 -6
  825. data/sig/openai/models/image_gen_completed_event.rbs +13 -6
  826. data/sig/openai/models/image_gen_partial_image_event.rbs +13 -6
  827. data/sig/openai/models/image_generate_params.rbs +30 -27
  828. data/sig/openai/models/image_input_reference_param.rbs +2 -2
  829. data/sig/openai/models/image_model.rbs +8 -0
  830. data/sig/openai/models/images_response.rbs +24 -18
  831. data/sig/openai/models/model.rbs +4 -4
  832. data/sig/openai/models/model_delete_params.rbs +5 -2
  833. data/sig/openai/models/model_list_params.rbs +2 -2
  834. data/sig/openai/models/model_retrieve_params.rbs +5 -2
  835. data/sig/openai/models/moderation_create_params.rbs +4 -4
  836. data/sig/openai/models/moderation_image_url_input.rbs +5 -2
  837. data/sig/openai/models/moderation_text_input.rbs +2 -2
  838. data/sig/openai/models/other_file_chunking_strategy_object.rbs +2 -2
  839. data/sig/openai/models/realtime/audio_transcription.rbs +12 -12
  840. data/sig/openai/models/realtime/call_accept_params.rbs +30 -30
  841. data/sig/openai/models/realtime/call_create_params.rbs +7 -4
  842. data/sig/openai/models/realtime/call_hangup_params.rbs +2 -2
  843. data/sig/openai/models/realtime/call_refer_params.rbs +6 -3
  844. data/sig/openai/models/realtime/call_reject_params.rbs +7 -4
  845. data/sig/openai/models/realtime/client_secret_create_params.rbs +10 -10
  846. data/sig/openai/models/realtime/conversation_created_event.rbs +6 -6
  847. data/sig/openai/models/realtime/conversation_item_added.rbs +4 -4
  848. data/sig/openai/models/realtime/conversation_item_create_event.rbs +6 -6
  849. data/sig/openai/models/realtime/conversation_item_created_event.rbs +4 -4
  850. data/sig/openai/models/realtime/conversation_item_delete_event.rbs +7 -3
  851. data/sig/openai/models/realtime/conversation_item_deleted_event.rbs +2 -2
  852. data/sig/openai/models/realtime/conversation_item_done.rbs +4 -4
  853. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbs +14 -14
  854. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +8 -8
  855. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rbs +7 -7
  856. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_segment.rbs +2 -2
  857. data/sig/openai/models/realtime/conversation_item_retrieve_event.rbs +4 -4
  858. data/sig/openai/models/realtime/conversation_item_truncate_event.rbs +4 -4
  859. data/sig/openai/models/realtime/conversation_item_truncated_event.rbs +2 -2
  860. data/sig/openai/models/realtime/conversation_item_with_reference.rbs +30 -30
  861. data/sig/openai/models/realtime/input_audio_buffer_append_event.rbs +7 -3
  862. data/sig/openai/models/realtime/input_audio_buffer_clear_event.rbs +5 -2
  863. data/sig/openai/models/realtime/input_audio_buffer_cleared_event.rbs +2 -2
  864. data/sig/openai/models/realtime/input_audio_buffer_commit_event.rbs +5 -2
  865. data/sig/openai/models/realtime/input_audio_buffer_committed_event.rbs +4 -4
  866. data/sig/openai/models/realtime/input_audio_buffer_dtmf_event_received_event.rbs +2 -2
  867. data/sig/openai/models/realtime/input_audio_buffer_speech_started_event.rbs +2 -2
  868. data/sig/openai/models/realtime/input_audio_buffer_speech_stopped_event.rbs +2 -2
  869. data/sig/openai/models/realtime/input_audio_buffer_timeout_triggered.rbs +2 -2
  870. data/sig/openai/models/realtime/mcp_list_tools_completed.rbs +6 -2
  871. data/sig/openai/models/realtime/mcp_list_tools_failed.rbs +2 -2
  872. data/sig/openai/models/realtime/mcp_list_tools_in_progress.rbs +2 -2
  873. data/sig/openai/models/realtime/output_audio_buffer_clear_event.rbs +5 -2
  874. data/sig/openai/models/realtime/rate_limits_updated_event.rbs +10 -10
  875. data/sig/openai/models/realtime/realtime_audio_config.rbs +4 -4
  876. data/sig/openai/models/realtime/realtime_audio_config_input.rbs +10 -10
  877. data/sig/openai/models/realtime/realtime_audio_config_output.rbs +6 -6
  878. data/sig/openai/models/realtime/realtime_audio_formats.rbs +8 -8
  879. data/sig/openai/models/realtime/realtime_audio_input_turn_detection.rbs +22 -22
  880. data/sig/openai/models/realtime/realtime_conversation_item_assistant_message.rbs +18 -18
  881. data/sig/openai/models/realtime/realtime_conversation_item_function_call.rbs +10 -10
  882. data/sig/openai/models/realtime/realtime_conversation_item_function_call_output.rbs +8 -8
  883. data/sig/openai/models/realtime/realtime_conversation_item_system_message.rbs +14 -14
  884. data/sig/openai/models/realtime/realtime_conversation_item_user_message.rbs +22 -22
  885. data/sig/openai/models/realtime/realtime_error.rbs +6 -6
  886. data/sig/openai/models/realtime/realtime_error_event.rbs +2 -2
  887. data/sig/openai/models/realtime/realtime_function_tool.rbs +8 -8
  888. data/sig/openai/models/realtime/realtime_mcp_approval_request.rbs +2 -2
  889. data/sig/openai/models/realtime/realtime_mcp_approval_response.rbs +4 -4
  890. data/sig/openai/models/realtime/realtime_mcp_list_tools.rbs +8 -8
  891. data/sig/openai/models/realtime/realtime_mcp_protocol_error.rbs +2 -2
  892. data/sig/openai/models/realtime/realtime_mcp_tool_call.rbs +8 -8
  893. data/sig/openai/models/realtime/realtime_mcp_tool_execution_error.rbs +2 -2
  894. data/sig/openai/models/realtime/realtime_mcphttp_error.rbs +2 -2
  895. data/sig/openai/models/realtime/realtime_reasoning.rbs +2 -2
  896. data/sig/openai/models/realtime/realtime_response.rbs +28 -28
  897. data/sig/openai/models/realtime/realtime_response_create_audio_output.rbs +6 -6
  898. data/sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs +32 -32
  899. data/sig/openai/models/realtime/realtime_response_create_params.rbs +24 -24
  900. data/sig/openai/models/realtime/realtime_response_status.rbs +8 -8
  901. data/sig/openai/models/realtime/realtime_response_usage.rbs +10 -10
  902. data/sig/openai/models/realtime/realtime_response_usage_input_token_details.rbs +18 -14
  903. data/sig/openai/models/realtime/realtime_response_usage_output_token_details.rbs +2 -2
  904. data/sig/openai/models/realtime/realtime_server_event.rbs +8 -8
  905. data/sig/openai/models/realtime/realtime_session.rbs +68 -68
  906. data/sig/openai/models/realtime/realtime_session_create_request.rbs +28 -28
  907. data/sig/openai/models/realtime/realtime_session_create_response.rbs +113 -110
  908. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +38 -32
  909. data/sig/openai/models/realtime/realtime_tracing_config.rbs +4 -4
  910. data/sig/openai/models/realtime/realtime_transcription_session_audio.rbs +2 -2
  911. data/sig/openai/models/realtime/realtime_transcription_session_audio_input.rbs +10 -10
  912. data/sig/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbs +22 -22
  913. data/sig/openai/models/realtime/realtime_transcription_session_create_request.rbs +6 -6
  914. data/sig/openai/models/realtime/realtime_transcription_session_create_response.rbs +20 -20
  915. data/sig/openai/models/realtime/realtime_transcription_session_turn_detection.rbs +8 -8
  916. data/sig/openai/models/realtime/realtime_translation_client_secret_create_request.rbs +6 -6
  917. data/sig/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbs +4 -4
  918. data/sig/openai/models/realtime/realtime_translation_input_transcript_delta_event.rbs +4 -4
  919. data/sig/openai/models/realtime/realtime_translation_output_audio_delta_event.rbs +10 -10
  920. data/sig/openai/models/realtime/realtime_translation_output_transcript_delta_event.rbs +4 -4
  921. data/sig/openai/models/realtime/realtime_translation_session.rbs +12 -12
  922. data/sig/openai/models/realtime/realtime_translation_session_close_event.rbs +2 -2
  923. data/sig/openai/models/realtime/realtime_translation_session_closed_event.rbs +2 -2
  924. data/sig/openai/models/realtime/realtime_translation_session_create_request.rbs +12 -12
  925. data/sig/openai/models/realtime/realtime_translation_session_created_event.rbs +2 -2
  926. data/sig/openai/models/realtime/realtime_translation_session_update_event.rbs +4 -4
  927. data/sig/openai/models/realtime/realtime_translation_session_update_request.rbs +12 -12
  928. data/sig/openai/models/realtime/realtime_translation_session_updated_event.rbs +2 -2
  929. data/sig/openai/models/realtime/realtime_truncation_retention_ratio.rbs +6 -6
  930. data/sig/openai/models/realtime/response_audio_delta_event.rbs +2 -2
  931. data/sig/openai/models/realtime/response_audio_done_event.rbs +2 -2
  932. data/sig/openai/models/realtime/response_audio_transcript_delta_event.rbs +2 -2
  933. data/sig/openai/models/realtime/response_audio_transcript_done_event.rbs +2 -2
  934. data/sig/openai/models/realtime/response_cancel_event.rbs +4 -4
  935. data/sig/openai/models/realtime/response_content_part_added_event.rbs +10 -10
  936. data/sig/openai/models/realtime/response_content_part_done_event.rbs +10 -10
  937. data/sig/openai/models/realtime/response_create_event.rbs +6 -6
  938. data/sig/openai/models/realtime/response_created_event.rbs +2 -2
  939. data/sig/openai/models/realtime/response_done_event.rbs +2 -2
  940. data/sig/openai/models/realtime/response_function_call_arguments_delta_event.rbs +2 -2
  941. data/sig/openai/models/realtime/response_function_call_arguments_done_event.rbs +2 -2
  942. data/sig/openai/models/realtime/response_mcp_call_arguments_delta.rbs +4 -4
  943. data/sig/openai/models/realtime/response_mcp_call_arguments_done.rbs +2 -2
  944. data/sig/openai/models/realtime/response_mcp_call_completed.rbs +2 -2
  945. data/sig/openai/models/realtime/response_mcp_call_failed.rbs +2 -2
  946. data/sig/openai/models/realtime/response_mcp_call_in_progress.rbs +2 -2
  947. data/sig/openai/models/realtime/response_output_item_added_event.rbs +2 -2
  948. data/sig/openai/models/realtime/response_output_item_done_event.rbs +2 -2
  949. data/sig/openai/models/realtime/response_text_delta_event.rbs +2 -2
  950. data/sig/openai/models/realtime/response_text_done_event.rbs +2 -2
  951. data/sig/openai/models/realtime/session_created_event.rbs +2 -2
  952. data/sig/openai/models/realtime/session_update_event.rbs +4 -4
  953. data/sig/openai/models/realtime/session_updated_event.rbs +2 -2
  954. data/sig/openai/models/realtime/transcription_session_update.rbs +24 -24
  955. data/sig/openai/models/realtime/transcription_session_updated_event.rbs +18 -18
  956. data/sig/openai/models/reasoning.rbs +10 -10
  957. data/sig/openai/models/response_format_json_object.rbs +2 -2
  958. data/sig/openai/models/response_format_json_schema.rbs +8 -8
  959. data/sig/openai/models/response_format_text.rbs +2 -2
  960. data/sig/openai/models/response_format_text_grammar.rbs +2 -2
  961. data/sig/openai/models/response_format_text_python.rbs +2 -2
  962. data/sig/openai/models/responses/apply_patch_tool.rbs +4 -4
  963. data/sig/openai/models/responses/compacted_response.rbs +2 -2
  964. data/sig/openai/models/responses/computer_action.rbs +25 -25
  965. data/sig/openai/models/responses/computer_tool.rbs +2 -2
  966. data/sig/openai/models/responses/computer_use_preview_tool.rbs +2 -2
  967. data/sig/openai/models/responses/container_auto.rbs +10 -10
  968. data/sig/openai/models/responses/container_network_policy_allowlist.rbs +4 -4
  969. data/sig/openai/models/responses/container_network_policy_disabled.rbs +2 -2
  970. data/sig/openai/models/responses/container_reference.rbs +2 -2
  971. data/sig/openai/models/responses/custom_tool.rbs +12 -12
  972. data/sig/openai/models/responses/easy_input_message.rbs +4 -4
  973. data/sig/openai/models/responses/file_search_tool.rbs +14 -14
  974. data/sig/openai/models/responses/function_shell_tool.rbs +6 -6
  975. data/sig/openai/models/responses/function_tool.rbs +12 -12
  976. data/sig/openai/models/responses/inline_skill.rbs +2 -2
  977. data/sig/openai/models/responses/inline_skill_source.rbs +3 -3
  978. data/sig/openai/models/responses/input_item_list_params.rbs +10 -10
  979. data/sig/openai/models/responses/input_token_count_params.rbs +32 -32
  980. data/sig/openai/models/responses/input_token_count_response.rbs +2 -2
  981. data/sig/openai/models/responses/local_environment.rbs +3 -3
  982. data/sig/openai/models/responses/mcp_tool_call_error.rbs +6 -6
  983. data/sig/openai/models/responses/namespace_tool.rbs +18 -18
  984. data/sig/openai/models/responses/response.rbs +175 -57
  985. data/sig/openai/models/responses/response_apply_patch_tool_call.rbs +16 -16
  986. data/sig/openai/models/responses/response_apply_patch_tool_call_output.rbs +12 -12
  987. data/sig/openai/models/responses/response_audio_delta_event.rbs +2 -2
  988. data/sig/openai/models/responses/response_audio_done_event.rbs +2 -2
  989. data/sig/openai/models/responses/response_audio_transcript_delta_event.rbs +2 -2
  990. data/sig/openai/models/responses/response_audio_transcript_done_event.rbs +2 -2
  991. data/sig/openai/models/responses/response_cancel_params.rbs +2 -2
  992. data/sig/openai/models/responses/response_code_interpreter_call_code_delta_event.rbs +2 -2
  993. data/sig/openai/models/responses/response_code_interpreter_call_code_done_event.rbs +2 -2
  994. data/sig/openai/models/responses/response_code_interpreter_call_completed_event.rbs +2 -2
  995. data/sig/openai/models/responses/response_code_interpreter_call_in_progress_event.rbs +2 -2
  996. data/sig/openai/models/responses/response_code_interpreter_call_interpreting_event.rbs +2 -2
  997. data/sig/openai/models/responses/response_code_interpreter_tool_call.rbs +6 -6
  998. data/sig/openai/models/responses/response_compact_params.rbs +20 -20
  999. data/sig/openai/models/responses/response_compaction_item.rbs +4 -4
  1000. data/sig/openai/models/responses/response_compaction_item_param.rbs +3 -3
  1001. data/sig/openai/models/responses/response_completed_event.rbs +2 -2
  1002. data/sig/openai/models/responses/response_computer_tool_call.rbs +31 -31
  1003. data/sig/openai/models/responses/response_computer_tool_call_output_item.rbs +8 -8
  1004. data/sig/openai/models/responses/response_computer_tool_call_output_screenshot.rbs +4 -4
  1005. data/sig/openai/models/responses/response_configuration_update_item.rbs +6 -6
  1006. data/sig/openai/models/responses/response_configuration_update_item_param.rbs +8 -8
  1007. data/sig/openai/models/responses/response_container_reference.rbs +2 -2
  1008. data/sig/openai/models/responses/response_content.rbs +2 -2
  1009. data/sig/openai/models/responses/response_content_part_added_event.rbs +4 -4
  1010. data/sig/openai/models/responses/response_content_part_done_event.rbs +4 -4
  1011. data/sig/openai/models/responses/response_create_params.rbs +83 -78
  1012. data/sig/openai/models/responses/response_created_event.rbs +2 -2
  1013. data/sig/openai/models/responses/response_custom_tool_call.rbs +14 -14
  1014. data/sig/openai/models/responses/response_custom_tool_call_input_delta_event.rbs +2 -2
  1015. data/sig/openai/models/responses/response_custom_tool_call_input_done_event.rbs +2 -2
  1016. data/sig/openai/models/responses/response_custom_tool_call_item.rbs +10 -10
  1017. data/sig/openai/models/responses/response_custom_tool_call_output.rbs +10 -10
  1018. data/sig/openai/models/responses/response_custom_tool_call_output_item.rbs +6 -6
  1019. data/sig/openai/models/responses/response_delete_params.rbs +2 -2
  1020. data/sig/openai/models/responses/response_error.rbs +8 -8
  1021. data/sig/openai/models/responses/response_error_event.rbs +2 -2
  1022. data/sig/openai/models/responses/response_failed_event.rbs +2 -2
  1023. data/sig/openai/models/responses/response_file_search_call_completed_event.rbs +2 -2
  1024. data/sig/openai/models/responses/response_file_search_call_in_progress_event.rbs +2 -2
  1025. data/sig/openai/models/responses/response_file_search_call_searching_event.rbs +2 -2
  1026. data/sig/openai/models/responses/response_file_search_tool_call.rbs +14 -14
  1027. data/sig/openai/models/responses/response_format_text_json_schema_config.rbs +6 -6
  1028. data/sig/openai/models/responses/response_function_call_arguments_delta_event.rbs +2 -2
  1029. data/sig/openai/models/responses/response_function_call_arguments_done_event.rbs +2 -7
  1030. data/sig/openai/models/responses/response_function_shell_call_output_content.rbs +4 -4
  1031. data/sig/openai/models/responses/response_function_shell_tool_call.rbs +10 -10
  1032. data/sig/openai/models/responses/response_function_shell_tool_call_output.rbs +16 -16
  1033. data/sig/openai/models/responses/response_function_tool_call.rbs +16 -16
  1034. data/sig/openai/models/responses/response_function_tool_call_item.rbs +10 -10
  1035. data/sig/openai/models/responses/response_function_tool_call_output_item.rbs +16 -16
  1036. data/sig/openai/models/responses/response_function_web_search.rbs +19 -17
  1037. data/sig/openai/models/responses/response_image_gen_call_completed_event.rbs +2 -2
  1038. data/sig/openai/models/responses/response_image_gen_call_generating_event.rbs +2 -2
  1039. data/sig/openai/models/responses/response_image_gen_call_in_progress_event.rbs +2 -2
  1040. data/sig/openai/models/responses/response_image_gen_call_partial_image_event.rbs +10 -10
  1041. data/sig/openai/models/responses/response_in_progress_event.rbs +2 -2
  1042. data/sig/openai/models/responses/response_incomplete_event.rbs +2 -2
  1043. data/sig/openai/models/responses/response_input_audio.rbs +2 -2
  1044. data/sig/openai/models/responses/response_input_file.rbs +16 -16
  1045. data/sig/openai/models/responses/response_input_file_content.rbs +16 -16
  1046. data/sig/openai/models/responses/response_input_image.rbs +10 -10
  1047. data/sig/openai/models/responses/response_input_image_content.rbs +12 -12
  1048. data/sig/openai/models/responses/response_input_item.rbs +203 -158
  1049. data/sig/openai/models/responses/response_input_message_item.rbs +4 -4
  1050. data/sig/openai/models/responses/response_input_text.rbs +6 -6
  1051. data/sig/openai/models/responses/response_input_text_content.rbs +6 -6
  1052. data/sig/openai/models/responses/response_item.rbs +83 -46
  1053. data/sig/openai/models/responses/response_item_list.rbs +2 -2
  1054. data/sig/openai/models/responses/response_local_environment.rbs +2 -2
  1055. data/sig/openai/models/responses/response_mcp_call_arguments_delta_event.rbs +2 -2
  1056. data/sig/openai/models/responses/response_mcp_call_arguments_done_event.rbs +2 -2
  1057. data/sig/openai/models/responses/response_mcp_call_completed_event.rbs +2 -2
  1058. data/sig/openai/models/responses/response_mcp_call_failed_event.rbs +2 -2
  1059. data/sig/openai/models/responses/response_mcp_call_in_progress_event.rbs +2 -2
  1060. data/sig/openai/models/responses/response_mcp_list_tools_completed_event.rbs +2 -2
  1061. data/sig/openai/models/responses/response_mcp_list_tools_failed_event.rbs +2 -2
  1062. data/sig/openai/models/responses/response_mcp_list_tools_in_progress_event.rbs +2 -2
  1063. data/sig/openai/models/responses/response_output_audio.rbs +2 -2
  1064. data/sig/openai/models/responses/response_output_item.rbs +83 -46
  1065. data/sig/openai/models/responses/response_output_item_added_event.rbs +2 -2
  1066. data/sig/openai/models/responses/response_output_item_done_event.rbs +2 -2
  1067. data/sig/openai/models/responses/response_output_message.rbs +6 -6
  1068. data/sig/openai/models/responses/response_output_refusal.rbs +2 -2
  1069. data/sig/openai/models/responses/response_output_text.rbs +13 -12
  1070. data/sig/openai/models/responses/response_output_text_annotation_added_event.rbs +11 -10
  1071. data/sig/openai/models/responses/response_prompt.rbs +4 -4
  1072. data/sig/openai/models/responses/response_queued_event.rbs +2 -2
  1073. data/sig/openai/models/responses/response_reasoning_item.rbs +12 -12
  1074. data/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs +4 -4
  1075. data/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs +6 -6
  1076. data/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs +2 -2
  1077. data/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs +2 -2
  1078. data/sig/openai/models/responses/response_reasoning_text_delta_event.rbs +2 -2
  1079. data/sig/openai/models/responses/response_reasoning_text_done_event.rbs +2 -2
  1080. data/sig/openai/models/responses/response_refusal_delta_event.rbs +2 -2
  1081. data/sig/openai/models/responses/response_refusal_done_event.rbs +2 -2
  1082. data/sig/openai/models/responses/response_retrieve_params.rbs +8 -8
  1083. data/sig/openai/models/responses/response_shell_call_command_added_event.rbs +2 -2
  1084. data/sig/openai/models/responses/response_shell_call_command_delta_event.rbs +4 -4
  1085. data/sig/openai/models/responses/response_shell_call_command_done_event.rbs +2 -2
  1086. data/sig/openai/models/responses/response_shell_call_output_content_delta_event.rbs +4 -4
  1087. data/sig/openai/models/responses/response_shell_call_output_content_done_event.rbs +8 -8
  1088. data/sig/openai/models/responses/response_steer_accepted_event.rbs +4 -4
  1089. data/sig/openai/models/responses/response_steer_event.rbs +2 -2
  1090. data/sig/openai/models/responses/response_steer_failed_event.rbs +8 -8
  1091. data/sig/openai/models/responses/response_steer_input.rbs +26 -26
  1092. data/sig/openai/models/responses/response_steer_pending_event.rbs +4 -4
  1093. data/sig/openai/models/responses/response_steer_required_input.rbs +14 -14
  1094. data/sig/openai/models/responses/response_text_config.rbs +4 -4
  1095. data/sig/openai/models/responses/response_text_delta_event.rbs +6 -6
  1096. data/sig/openai/models/responses/response_text_done_event.rbs +6 -6
  1097. data/sig/openai/models/responses/response_tool_search_call.rbs +4 -4
  1098. data/sig/openai/models/responses/response_tool_search_output_item.rbs +4 -4
  1099. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +10 -10
  1100. data/sig/openai/models/responses/response_web_search_call_completed_event.rbs +2 -2
  1101. data/sig/openai/models/responses/response_web_search_call_in_progress_event.rbs +2 -2
  1102. data/sig/openai/models/responses/response_web_search_call_searching_event.rbs +2 -2
  1103. data/sig/openai/models/responses/responses_client_event.rbs +87 -82
  1104. data/sig/openai/models/responses/responses_server_event.rbs +258 -261
  1105. data/sig/openai/models/responses/skill_reference.rbs +3 -3
  1106. data/sig/openai/models/responses/tool.rbs +91 -75
  1107. data/sig/openai/models/responses/tool_choice_allowed.rbs +2 -2
  1108. data/sig/openai/models/responses/tool_choice_apply_patch.rbs +2 -2
  1109. data/sig/openai/models/responses/tool_choice_custom.rbs +2 -2
  1110. data/sig/openai/models/responses/tool_choice_function.rbs +2 -2
  1111. data/sig/openai/models/responses/tool_choice_mcp.rbs +3 -2
  1112. data/sig/openai/models/responses/tool_choice_shell.rbs +2 -2
  1113. data/sig/openai/models/responses/tool_search_tool.rbs +8 -8
  1114. data/sig/openai/models/responses/web_search_preview_tool.rbs +16 -16
  1115. data/sig/openai/models/responses/web_search_tool.rbs +20 -20
  1116. data/sig/openai/models/safety/alert_retrieve_params.rbs +2 -2
  1117. data/sig/openai/models/safety/safety_alert.rbs +2 -2
  1118. data/sig/openai/models/skill.rbs +2 -2
  1119. data/sig/openai/models/skill_create_params.rbs +6 -4
  1120. data/sig/openai/models/skill_delete_params.rbs +2 -2
  1121. data/sig/openai/models/skill_list.rbs +2 -2
  1122. data/sig/openai/models/skill_list_params.rbs +8 -8
  1123. data/sig/openai/models/skill_retrieve_params.rbs +2 -2
  1124. data/sig/openai/models/skill_update_params.rbs +6 -3
  1125. data/sig/openai/models/skills/content_retrieve_params.rbs +2 -2
  1126. data/sig/openai/models/skills/deleted_skill_version.rbs +2 -2
  1127. data/sig/openai/models/skills/skill_version.rbs +2 -2
  1128. data/sig/openai/models/skills/skill_version_list.rbs +2 -2
  1129. data/sig/openai/models/skills/version_create_params.rbs +6 -6
  1130. data/sig/openai/models/skills/version_delete_params.rbs +6 -3
  1131. data/sig/openai/models/skills/version_list_params.rbs +8 -8
  1132. data/sig/openai/models/skills/version_retrieve_params.rbs +6 -3
  1133. data/sig/openai/models/skills/versions/content_retrieve_params.rbs +6 -3
  1134. data/sig/openai/models/static_file_chunking_strategy_object.rbs +2 -2
  1135. data/sig/openai/models/static_file_chunking_strategy_object_param.rbs +2 -2
  1136. data/sig/openai/models/upload.rbs +4 -4
  1137. data/sig/openai/models/upload_cancel_params.rbs +2 -2
  1138. data/sig/openai/models/upload_complete_params.rbs +8 -4
  1139. data/sig/openai/models/upload_create_params.rbs +6 -6
  1140. data/sig/openai/models/uploads/part_create_params.rbs +6 -3
  1141. data/sig/openai/models/uploads/upload_part.rbs +2 -2
  1142. data/sig/openai/models/vector_store.rbs +8 -8
  1143. data/sig/openai/models/vector_store_create_params.rbs +16 -16
  1144. data/sig/openai/models/vector_store_delete_params.rbs +2 -2
  1145. data/sig/openai/models/vector_store_deleted.rbs +2 -2
  1146. data/sig/openai/models/vector_store_list_params.rbs +10 -10
  1147. data/sig/openai/models/vector_store_retrieve_params.rbs +2 -2
  1148. data/sig/openai/models/vector_store_search_params.rbs +14 -14
  1149. data/sig/openai/models/vector_store_update_params.rbs +10 -10
  1150. data/sig/openai/models/vector_stores/file_batch_cancel_params.rbs +6 -3
  1151. data/sig/openai/models/vector_stores/file_batch_create_params.rbs +14 -14
  1152. data/sig/openai/models/vector_stores/file_batch_list_files_params.rbs +12 -12
  1153. data/sig/openai/models/vector_stores/file_batch_retrieve_params.rbs +6 -3
  1154. data/sig/openai/models/vector_stores/file_content_params.rbs +6 -3
  1155. data/sig/openai/models/vector_stores/file_content_response.rbs +2 -2
  1156. data/sig/openai/models/vector_stores/file_create_params.rbs +6 -6
  1157. data/sig/openai/models/vector_stores/file_delete_params.rbs +6 -3
  1158. data/sig/openai/models/vector_stores/file_list_params.rbs +12 -12
  1159. data/sig/openai/models/vector_stores/file_retrieve_params.rbs +6 -3
  1160. data/sig/openai/models/vector_stores/file_update_params.rbs +3 -3
  1161. data/sig/openai/models/vector_stores/vector_store_file.rbs +6 -6
  1162. data/sig/openai/models/vector_stores/vector_store_file_batch.rbs +2 -2
  1163. data/sig/openai/models/vector_stores/vector_store_file_deleted.rbs +2 -2
  1164. data/sig/openai/models/video.rbs +2 -2
  1165. data/sig/openai/models/video_create_character_params.rbs +6 -3
  1166. data/sig/openai/models/video_create_error.rbs +8 -8
  1167. data/sig/openai/models/video_create_params.rbs +10 -10
  1168. data/sig/openai/models/video_delete_params.rbs +2 -2
  1169. data/sig/openai/models/video_delete_response.rbs +2 -2
  1170. data/sig/openai/models/video_download_content_params.rbs +4 -4
  1171. data/sig/openai/models/video_edit_params.rbs +6 -3
  1172. data/sig/openai/models/video_extend_params.rbs +3 -3
  1173. data/sig/openai/models/video_get_character_params.rbs +2 -2
  1174. data/sig/openai/models/video_list_params.rbs +8 -8
  1175. data/sig/openai/models/video_remix_params.rbs +6 -3
  1176. data/sig/openai/models/video_retrieve_params.rbs +2 -2
  1177. data/sig/openai/models/webhooks/batch_cancelled_webhook_event.rbs +4 -4
  1178. data/sig/openai/models/webhooks/batch_completed_webhook_event.rbs +4 -4
  1179. data/sig/openai/models/webhooks/batch_expired_webhook_event.rbs +4 -4
  1180. data/sig/openai/models/webhooks/batch_failed_webhook_event.rbs +4 -4
  1181. data/sig/openai/models/webhooks/eval_run_canceled_webhook_event.rbs +4 -4
  1182. data/sig/openai/models/webhooks/eval_run_failed_webhook_event.rbs +4 -4
  1183. data/sig/openai/models/webhooks/eval_run_succeeded_webhook_event.rbs +4 -4
  1184. data/sig/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbs +4 -4
  1185. data/sig/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbs +4 -4
  1186. data/sig/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbs +4 -4
  1187. data/sig/openai/models/webhooks/live_call_incoming_webhook_event.rbs +4 -4
  1188. data/sig/openai/models/webhooks/realtime_call_incoming_webhook_event.rbs +4 -4
  1189. data/sig/openai/models/webhooks/response_cancelled_webhook_event.rbs +4 -4
  1190. data/sig/openai/models/webhooks/response_completed_webhook_event.rbs +4 -4
  1191. data/sig/openai/models/webhooks/response_failed_webhook_event.rbs +4 -4
  1192. data/sig/openai/models/webhooks/response_incomplete_webhook_event.rbs +4 -4
  1193. data/sig/openai/models/webhooks/safety_alert_created_webhook_event.rbs +4 -4
  1194. data/sig/openai/models/webhooks/safety_org_alert_created_webhook_event.rbs +4 -4
  1195. data/sig/openai/models/webhooks/webhook_unwrap_params.rbs +2 -3
  1196. data/sig/openai/request_options.rbs +7 -7
  1197. data/sig/openai/resources/admin/organization/projects/service_accounts/api_keys.rbs +1 -0
  1198. data/sig/openai/resources/audio/speech.rbs +1 -1
  1199. data/sig/openai/resources/containers/files/content.rbs +1 -1
  1200. data/sig/openai/resources/files.rbs +1 -1
  1201. data/sig/openai/resources/responses.rbs +51 -2
  1202. data/sig/openai/resources/skills/content.rbs +1 -1
  1203. data/sig/openai/resources/skills/versions/content.rbs +1 -1
  1204. data/sig/openai/resources/videos.rbs +1 -1
  1205. data/sig/openai/response_carrier.rbs +13 -0
  1206. data/sig/openai/streaming.rbs +10 -0
  1207. metadata +56 -1
@@ -0,0 +1,489 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Realtime
5
+ # Owns successive block-scoped sockets on one Async reactor. Calls from other
6
+ # fibers or threads use mailboxes; the physical socket never leaves its owner.
7
+ # No incoming events are prefetched: a receive request drives each read.
8
+ #
9
+ # @api private
10
+ class Recovery
11
+ def self.validate_options!(max_reconnect_attempts:, max_queue_bytes:, on_reconnected:)
12
+ {max_reconnect_attempts: max_reconnect_attempts, max_queue_bytes: max_queue_bytes}.each do |name, value|
13
+ unless value.is_a?(Integer) && value >= 0
14
+ raise ArgumentError, "`#{name}` must be a nonnegative Integer."
15
+ end
16
+ end
17
+
18
+ unless on_reconnected.nil? || on_reconnected.respond_to?(:call)
19
+ raise ArgumentError, "`on_reconnected` must respond to `call`."
20
+ end
21
+ end
22
+
23
+ def initialize(manager:, max_reconnect_attempts:, max_queue_bytes:, on_reconnected:)
24
+ @manager = manager
25
+ @max_attempts = max_reconnect_attempts
26
+ @max_queue_bytes = max_queue_bytes
27
+ @on_reconnected = on_reconnected
28
+ @mutex = Mutex.new
29
+ @commands = Queue.new
30
+ @reads = Queue.new
31
+ @stop_requests = Queue.new
32
+ @ready = Queue.new
33
+ @waiters = {}
34
+ @pending = []
35
+ @pending_bytes = 0
36
+ @state = :connecting
37
+ @generation = 0
38
+ @attempts = 0
39
+ @flushing = false
40
+ end
41
+
42
+ def inspect = "#<#{self.class.name}>"
43
+
44
+ def open
45
+ load_async
46
+ ::Kernel.Sync() do |root|
47
+ stopper = root.async do
48
+ @stop_requests.pop
49
+ @lifecycle&.stop
50
+ end
51
+
52
+ @lifecycle = root.async { run }
53
+ begin
54
+ kind, value = @ready.pop
55
+ raise value, cause: nil if kind == :error
56
+
57
+ result = yield(value)
58
+ raise @error, cause: nil if @error
59
+
60
+ result
61
+ ensure
62
+ $! ? abort : close
63
+ @lifecycle.wait
64
+ stopper.stop
65
+ end
66
+ end
67
+ end
68
+
69
+ def closed? = @mutex.synchronize { @state == :closed }
70
+
71
+ def reconnecting?
72
+ @mutex.synchronize { @state == :recovering || @state == :restoring }
73
+ end
74
+
75
+ def pending_messages = @mutex.synchronize { @pending.dup }
76
+
77
+ def take_pending_messages
78
+ @mutex.synchronize do
79
+ raise state_error("Cannot remove queued events while flushing.") if @flushing
80
+
81
+ messages = @pending
82
+ @pending = []
83
+ @pending_bytes = 0
84
+ messages
85
+ end
86
+ end
87
+
88
+ def read
89
+ return @physical.receive_raw if Fiber.current.equal?(@owner_fiber)
90
+
91
+ reply = @mutex.synchronize do
92
+ raise @error, cause: nil if @error
93
+ return nil if @state == :closed
94
+
95
+ register(:read).tap { @reads << _1 }
96
+ end
97
+
98
+ await_reply(reply)
99
+ end
100
+
101
+ def write(text)
102
+ return write_once(text) if Fiber.current.equal?(@owner_fiber)
103
+
104
+ reply = @mutex.synchronize do
105
+ raise write_error(text), cause: nil if @error || [:closed, :ending].include?(@state)
106
+
107
+ if @state != :open || @flushing
108
+ if @max_queue_bytes.zero? || @pending_bytes + [text.bytesize, 1].max > @max_queue_bytes
109
+ raise OpenAI::Errors::RealtimeQueueFullError
110
+ end
111
+
112
+ @pending << text.dup.freeze
113
+ @pending_bytes += [text.bytesize, 1].max
114
+ return nil
115
+ end
116
+
117
+ encoded = text.dup.freeze
118
+ register(:write, encoded).tap { @commands << [:write, encoded, _1, @generation] }
119
+ end
120
+
121
+ await_reply(reply)
122
+ nil
123
+ end
124
+
125
+ def flush_pending
126
+ if Fiber.current.equal?(@owner_fiber)
127
+ raise state_error("Queue flush interrupted; remaining events were not sent.") unless flush
128
+ return nil
129
+ end
130
+
131
+ reply = @mutex.synchronize do
132
+ raise @error, cause: nil if @error
133
+ raise state_error("Cannot flush until the replacement connection is ready.") unless @state == :open
134
+
135
+ register(:flush).tap { @commands << [:flush, nil, _1, @generation] }
136
+ end
137
+
138
+ await_reply(reply)
139
+ nil
140
+ end
141
+
142
+ # Cancel outstanding work and make a bounded attempt to send the close frame.
143
+ def close(code: 1000, reason: "")
144
+ stop({code: code, reason: reason})
145
+ end
146
+
147
+ def abort = stop(nil)
148
+
149
+ private def stop(close_options)
150
+ changed = @mutex.synchronize do
151
+ next false if @state == :closed
152
+ if @inflight
153
+ fail_locked(
154
+ "Realtime connection closed during a send; delivery is uncertain.",
155
+ uncertain_message: @inflight
156
+ )
157
+ else
158
+ @close_options = close_options
159
+ finish_locked
160
+ end
161
+
162
+ true
163
+ end
164
+
165
+ @stop_requests << true if changed
166
+ nil
167
+ end
168
+
169
+ private def register(kind, text = nil)
170
+ Queue.new.tap { @waiters[_1] = [kind, text] }
171
+ end
172
+
173
+ private def load_async
174
+ require "async"
175
+
176
+ rescue LoadError => e
177
+ raise(
178
+ LoadError.new(
179
+ "Realtime reconnect requires Async. Add `gem \"async\"` (or `gem \"async-websocket\"`) to your Gemfile."
180
+ ),
181
+ cause: e
182
+ )
183
+ end
184
+
185
+ private def await_reply(reply)
186
+ kind, value = reply.pop
187
+ raise value, cause: nil if kind == :error
188
+
189
+ value
190
+ ensure
191
+ # Cancellation must not leave a read consuming an event for an abandoned
192
+ # caller, or a write happening later without an observable outcome.
193
+ abort if @mutex.synchronize { @waiters.key?(reply) }
194
+ end
195
+
196
+ private def respond(reply, value = nil, error: nil)
197
+ return unless reply
198
+
199
+ @mutex.synchronize { respond_locked(reply, value, error: error) }
200
+ end
201
+
202
+ private def respond_locked(reply, value = nil, error: nil)
203
+ if (waiter = @waiters.delete(reply))
204
+ failure = if error && waiter.first == :write
205
+ write_error(waiter.last, attempted: reply.equal?(@write_reply))
206
+ else
207
+ error
208
+ end
209
+
210
+ reply << [failure ? :error : :ok, failure || value]
211
+ end
212
+ end
213
+
214
+ private def run
215
+ loop do
216
+ break if closed?
217
+
218
+ begin
219
+ @manager.open { |physical| serve(physical) }
220
+ break
221
+ rescue StandardError, LoadError => e
222
+ break if closed?
223
+ if @callback_failed || e.is_a?(OpenAI::Errors::RealtimeReconnectError) || e.is_a?(LoadError)
224
+ finish(e)
225
+ break
226
+ end
227
+
228
+ unless recoverable?(e) && @attempts < @max_attempts
229
+ @mutex.synchronize { fail_locked("Realtime reconnect stopped; the connection could not be recovered.") }
230
+ break
231
+ end
232
+
233
+ @mutex.synchronize { @state = :recovering unless @state == :closed }
234
+ @attempts += 1
235
+ sleep(retry_delay)
236
+ end
237
+ end
238
+
239
+ ensure
240
+ finish
241
+ @ready << [:error, @error || state_error("Realtime connection closed before opening.")] unless @connection
242
+ end
243
+
244
+ private def serve(physical)
245
+ @owner_fiber = Fiber.current
246
+ @physical = physical
247
+ @mutex.synchronize do
248
+ return if @state == :closed
249
+
250
+ @generation += 1
251
+ @state = @connection ? :restoring : :open
252
+ end
253
+
254
+ if @connection
255
+ begin
256
+ @on_reconnected&.call(@connection)
257
+ rescue StandardError, LoadError
258
+ @callback_failed = true
259
+ raise
260
+ end
261
+ else
262
+ @connection = OpenAI::Realtime::Connection.new(socket: self, url: physical.url, recovery: self)
263
+ @ready << [:ok, @connection]
264
+ end
265
+
266
+ return if closed?
267
+
268
+ @mutex.synchronize { @state = :open unless @state == :closed }
269
+ reader = ::Async::Task.current.async { read_loop }
270
+ until closed?
271
+ kind, data, reply, generation = @commands.pop
272
+ case kind
273
+ when :lost
274
+ raise data
275
+ when :end
276
+ break
277
+ else
278
+ writable = @mutex.synchronize { @state == :open && generation == @generation }
279
+ unless writable
280
+ respond(reply, error: state_error("Connection interrupted before sending; event was not sent."))
281
+ next
282
+ end
283
+
284
+ if kind == :write
285
+ write_once(data, reply: reply)
286
+ elsif flush
287
+ respond(reply)
288
+ else
289
+ respond(reply, error: state_error("Queue flush interrupted; remaining events were not sent."))
290
+ end
291
+ end
292
+ end
293
+
294
+ ensure
295
+ begin
296
+ reader&.stop
297
+ ensure
298
+ begin
299
+ if @close_options
300
+ ::Async::Task.current.with_timeout(1) { physical.close(**@close_options) }
301
+ end
302
+
303
+ rescue StandardError
304
+ # Shutdown must not mask the operation's result or prevent cleanup.
305
+ nil
306
+ ensure
307
+ physical.abort
308
+ @physical = nil
309
+ end
310
+ end
311
+ end
312
+
313
+ private def read_loop
314
+ loop do
315
+ @read_reply ||= @reads.pop
316
+ value = @physical.receive_raw
317
+ if value.nil?
318
+ @mutex.synchronize do
319
+ if @inflight || !@pending.empty?
320
+ fail_locked(
321
+ "Realtime connection closed with pending sends; in-flight delivery is uncertain.",
322
+ uncertain_message: @inflight
323
+ )
324
+ elsif @state != :closed
325
+ @state = :ending
326
+ end
327
+ end
328
+
329
+ if closed?
330
+ @stop_requests << true
331
+ return
332
+ end
333
+ end
334
+
335
+ respond(@read_reply, value)
336
+ @read_reply = nil
337
+ if value.nil?
338
+ @commands << [:end]
339
+ break
340
+ end
341
+ end
342
+
343
+ rescue StandardError => e
344
+ @mutex.synchronize do
345
+ if @inflight
346
+ fail_locked(
347
+ "Realtime connection interrupted during a send; delivery is uncertain.",
348
+ uncertain_message: @inflight
349
+ )
350
+ elsif @state != :closed
351
+ @state = :recovering
352
+ end
353
+ end
354
+
355
+ if closed?
356
+ @stop_requests << true
357
+ else
358
+ @commands << [:lost, e]
359
+ end
360
+ end
361
+
362
+ private def write_once(text, queued: false, reply: nil)
363
+ @mutex.synchronize do
364
+ raise write_error(text), cause: nil if @state == :closed
365
+ @inflight = text.dup.freeze
366
+ @write_reply = reply
367
+ end
368
+
369
+ begin
370
+ @physical.send_raw(text)
371
+ sent = true
372
+ rescue StandardError
373
+ error = @mutex.synchronize do
374
+ global_error = fail_locked(
375
+ "Realtime send failed; delivery is uncertain and the event was not retried.",
376
+ uncertain_message: text
377
+ )
378
+ queued ? global_error : write_error(text, attempted: true)
379
+ end
380
+
381
+ raise error, cause: nil
382
+ ensure
383
+ @mutex.synchronize do
384
+ respond_locked(reply) if sent && reply
385
+ @inflight = nil
386
+ @write_reply = nil
387
+ if queued && @pending.first.equal?(text)
388
+ @pending.shift
389
+ @pending_bytes -= [text.bytesize, 1].max
390
+ end
391
+ end
392
+ end
393
+ end
394
+
395
+ private def flush
396
+ @mutex.synchronize { @flushing = true }
397
+ loop do
398
+ text = @mutex.synchronize do
399
+ return false unless [:open, :restoring].include?(@state)
400
+ @pending.first
401
+ end
402
+
403
+ break unless text
404
+
405
+ write_once(text, queued: true)
406
+ end
407
+
408
+ true
409
+ ensure
410
+ @mutex.synchronize { @flushing = false }
411
+ end
412
+
413
+ private def finish(error = nil)
414
+ @mutex.synchronize { finish_locked(error) }
415
+ end
416
+
417
+ private def finish_locked(error = nil)
418
+ return if @state == :closed
419
+
420
+ @error = error
421
+ @state = :closed
422
+ @waiters.each do |reply, (kind, text)|
423
+ failure = if kind == :write
424
+ write_error(text, attempted: reply.equal?(@write_reply))
425
+ else
426
+ error || (kind == :read ? nil : state_error("Realtime connection closed before completing the operation."))
427
+ end
428
+
429
+ reply << [failure ? :error : :ok, failure]
430
+ end
431
+
432
+ @waiters.clear
433
+ @commands.clear
434
+ @reads.clear
435
+ @read_reply = nil
436
+ end
437
+
438
+ private def write_error(text, attempted: false)
439
+ encoded = text.dup.freeze
440
+ OpenAI::Errors::RealtimeReconnectError.new(
441
+ message: attempted ? "Realtime send interrupted; delivery is uncertain." : "Realtime send interrupted; event was not sent.",
442
+ unsent_messages: attempted ? [] : [encoded],
443
+ uncertain_message: attempted ? encoded : nil
444
+ )
445
+ end
446
+
447
+ private def fail_locked(message, uncertain_message: nil)
448
+ return @error if @state == :closed && @error
449
+
450
+ if @flushing && uncertain_message && @pending.first == uncertain_message
451
+ @pending.shift
452
+ @pending_bytes -= [uncertain_message.bytesize, 1].max
453
+ end
454
+
455
+ error = OpenAI::Errors::RealtimeReconnectError.new(
456
+ message: message,
457
+ unsent_messages: @pending,
458
+ uncertain_message: uncertain_message&.dup&.freeze
459
+ )
460
+ finish_locked(error)
461
+ error
462
+ end
463
+
464
+ private def state_error(message)
465
+ OpenAI::Errors::RealtimeReconnectError.new(message: message)
466
+ end
467
+
468
+ private def retry_delay = [0.5 * (2 ** [@attempts - 1, 4].min), 8.0].min * (0.75 + (rand * 0.25))
469
+
470
+ private def recoverable?(error)
471
+ return false unless error.is_a?(OpenAI::Errors::RealtimeConnectionError)
472
+ return [408, 429, 500, 502, 503, 504].include?(error.http_status) if error.http_status
473
+
474
+ cause = error.cause
475
+ if defined?(::Protocol::WebSocket::ClosedError) && cause.is_a?(::Protocol::WebSocket::ClosedError)
476
+ return [1001, 1005, 1006, 1011, 1012, 1013].include?(cause.code)
477
+ end
478
+
479
+ cause.is_a?(EOFError) ||
480
+ cause.is_a?(Errno::ECONNRESET) ||
481
+ cause.is_a?(Errno::ECONNREFUSED) ||
482
+ cause.is_a?(Errno::ETIMEDOUT) ||
483
+ cause.is_a?(Errno::EPIPE) ||
484
+ cause.is_a?(Timeout::Error) ||
485
+ cause.is_a?(::Async::TimeoutError)
486
+ end
487
+ end
488
+ end
489
+ end
@@ -14,9 +14,25 @@ module OpenAI
14
14
  request_options: nil,
15
15
  transport: nil,
16
16
  transport_options: {},
17
+ reconnect: false,
18
+ max_reconnect_attempts: 5,
19
+ max_queue_bytes: 0,
20
+ on_reconnected: nil,
17
21
  &block
18
22
  )
19
23
  raise ArgumentError, "A block is required to open a Realtime WebSocket." unless block
24
+ unless reconnect == true || reconnect == false
25
+ raise ArgumentError, "`reconnect` must be true or false."
26
+ end
27
+
28
+ OpenAI::Realtime::Recovery.validate_options!(
29
+ max_reconnect_attempts: max_reconnect_attempts,
30
+ max_queue_bytes: max_queue_bytes,
31
+ on_reconnected: on_reconnected
32
+ )
33
+ if !reconnect && (max_queue_bytes.positive? || on_reconnected)
34
+ raise ArgumentError, "Queueing and recovery callbacks require `reconnect: true`."
35
+ end
20
36
 
21
37
  manager = OpenAI::Realtime::ConnectionManager.new(
22
38
  client: @client,
@@ -26,7 +42,16 @@ module OpenAI
26
42
  request_options: request_options,
27
43
  transport_options: transport_options
28
44
  )
29
- manager.open(&block)
45
+ return manager.open(&block) unless reconnect
46
+
47
+ OpenAI::Realtime::Recovery
48
+ .new(
49
+ manager: manager,
50
+ max_reconnect_attempts: max_reconnect_attempts,
51
+ max_queue_bytes: max_queue_bytes,
52
+ on_reconnected: on_reconnected
53
+ )
54
+ .open(&block)
30
55
  end
31
56
 
32
57
  # Attach a server-side control WebSocket to an existing WebRTC or SIP call.