[Model Routing] claude-sonnet-5 swallows streaming assistant.reasoning_delta; flushes all thinkingContent at completion
- Lenguaje dominante
- Java
- Estrellas
- 10.5k
- Forks
- 1.5k
- Merge medio
- 1 d 11 h
- PR fusionados (30 d)
- 128
Descripción
Environment Details:
Working Model: claude-sonnet-4.5 (streams perfectly)
Failing Model: claude-sonnet-5
Integration: GitHub Copilot SDK (subscribe('assistant.reasoning_delta'))
Observed Behavior:
When routing requests to claude-sonnet-5, the SDK emits zero assistant.reasoning_delta events during the generation lifecycle. Instead, it accumulates them in the background, resulting in a ~25,000ms Time-to-First-Token (TTFT) and blocking client-side UI rendering. A complete, non-empty thinkingContent block is delivered atomically only when the final text stream buffer flushes or the file completes.
Expected Behavior:
The SDK should map Anthropic's streaming reasoning frames into real-time assistant.reasoning_delta events immediately upon receiving them from the upstream model router, preserving low operational TTFT just as it successfully does for claude-sonnet-4.5.
Guía de contribución
Línea de trabajo
Start at the implementation behind subscribe('assistant.reasoning_delta') and follow the model-routing path for claude-sonnet-5. Compare its handling with claude-sonnet-4.5 and verify whether upstream reasoning frames are emitted immediately rather than buffered. Done means real-time reasoning_delta events and low TTFT for claude-sonnet-5, without waiting for final completion.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github, java
- Área
- ai, api, performance
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Activo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 55/100