cherry-studio/packages
zane 711f805a5b
fix(aiCore): omit empty content in assistant messages with tool_calls (#11818)
* fix(aiCore): omit empty content in assistant messages with tool_calls

When an assistant message contains tool_calls but no text content,
the content field was being set to undefined or empty string.
This caused API errors on strict OpenAI-compatible endpoints like CherryIn:
"messages: text content blocks must be non-empty"

The fix conditionally includes the content field only when there is
actual text content, which conforms to the OpenAI API specification.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(aiCore): omit empty assistant message in new aiCore StreamEventManager

When building recursive params after tool execution, only add the assistant
message when textBuffer has content. This avoids sending empty/invalid
assistant messages to strict OpenAI-compatible APIs like CherryIn, which
causes "text content blocks must be non-empty" errors.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* revert: remove legacy OpenAIApiClient fix (legacy is deprecated)

The legacy aiCore code is no longer used. Only the fix in the new aiCore
architecture (StreamEventManager.ts) is needed.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 10:46:13 +08:00
..
ai-sdk-provider fix: update deepseek logic to match deepseek v3.2 (#11648) 2025-12-04 19:13:51 +08:00
aiCore fix(aiCore): omit empty content in assistant messages with tool_calls (#11818) 2025-12-11 10:46:13 +08:00
extension-table-plus chore[lint]: add import type lint (#11091) 2025-11-01 10:40:02 +08:00
mcp-trace chore[lint]: add import type lint (#11091) 2025-11-01 10:40:02 +08:00
shared fix: restore API version control with trailing # delimiter (addresses #11750) (#11773) 2025-12-10 13:42:15 +08:00