oscerd opened a new pull request, #26110: URL: https://github.com/apache/camel/pull/26110
## Issue [CAMEL-24539](https://issues.apache.org/jira/browse/CAMEL-24539) ## Problem With `storeFullResponse=true`, the embeddings and audio operations store their full SDK response under `CamelOpenAIResponse`. That exchange property is typed as the chat-completion response (`com.openai.models.chat.completions.ChatCompletion`), so a downstream reader that expects that type receives an incompatible object — for example `OpenAIToolExecutionProducer` reads `CamelOpenAIResponse` as a `ChatCompletion`. The chat, responses, moderation and image operations already use their own operation-specific properties (`CamelOpenAIResponsesResponse`, `CamelOpenAIModerationResponse`, `CamelOpenAIImageResponse`). ## Fix Add operation-specific properties and store each response under the matching one: - embeddings → `CamelOpenAIEmbeddingsResponse` (`CreateEmbeddingResponse`) - audio transcription → `CamelOpenAIAudioTranscriptionResponse` (`TranscriptionCreateResponse`) - audio translation → `CamelOpenAIAudioTranslationResponse` (`TranslationCreateResponse`) The `storeFullResponse` option documentation and the 4.23 upgrade guide are updated to list the new properties. Generated catalog and endpoint-DSL metadata regenerated. ## Testing - `OpenAIEmbeddingsMockTest.storeFullResponseStoresEmbeddingResponse` now asserts the response is stored under `CamelOpenAIEmbeddingsResponse` and is **not** set under the chat-completion `CamelOpenAIResponse`. - Full `camel-openai` unit suite green. - `mvn -Psourcecheck validate` green. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
