SDK de OpenAI 7.17: progreso de compactación y fixes de streaming
Suma eventos para seguir el progreso de compactación y corrige varios bugs de manejo de errores en runners, WebSocket y streaming SSE.
Eventos de progreso de compactación
La API ahora emite eventos que reportan el avance de un proceso de compactación. Si tu integración depende de saber en qué estado está esa operación, podés escuchar estos eventos en vez de sondear el resultado final.
Errores y abort reasons más confiables
El chat runner ahora preserva la razón original de un abort en vez de perderla en el camino, así que si cancelás una ejecución vas a poder inspeccionar por qué se canceló. En paralelo, el cliente realtime deja de tapar la causa nativa de los errores de WebSocket, lo que ayuda a debuggear fallas de conexión sin adivinar.
Validaciones y streaming más estrictos
El constructor de WebSocket para Responses ahora rechaza API keys basadas en funciones, algo que antes pasaba sin aviso. Los runners de streaming con runTools rechazan turnos que quedaron sin terminar en vez de dejarlos pasar silenciosamente. Además, se corrigió un caso donde los eventos SSE terminales se emitían sin la línea en blanco final que exige el protocolo.
Ajuste en schemas Zod estrictos
Se corrigió un caso donde los schemas Zod en modo estricto incluían una rama opcional que en la práctica era imposible de alcanzar. Si generás schemas estrictos con Zod a partir de este SDK, el resultado ahora es más ajustado a lo que realmente puede ocurrir.
Qué te llevas
Si usás compactación, ahora podés seguir su progreso con eventos en vez de esperar a ciegas.
Los abort de chat runner y los errores de WebSocket en realtime ya no pierden información al propagarse.
Los runners de streaming son más estrictos con turnos incompletos, lo que puede exponer bugs que antes pasaban desapercibidos.
No hay cambios de API que rompan compatibilidad; son correcciones puntuales y una feature nueva de eventos.
¿Quieres una clase de esto?
Si varias personas lo piden, entra al programa. No hace falta dejar mail ni nombre.