refactor(open-sse): add reasoningDelta helper, dedup thinking deltas (B4)

Centralize the reasoning_content delta shape (optional assistant role) used by
claude/gemini/kiro/codex/commandcode response translators. Keeps the cross-format
convention consistent for future translators. Output byte-for-byte identical;
golden + gate clean. Ollama left as-is (mutates existing delta object).

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
decolua
2026-06-13 18:21:46 +07:00
parent 997860aa1f
commit 6597b81e5e
7 changed files with 18 additions and 12 deletions

View File

@@ -7,6 +7,7 @@ import { FORMATS } from "../formats.js";
import { buildChunk } from "../helpers/chunkBuilder.js";
import { buildUsage } from "../helpers/usageHelper.js";
import { fallbackToolCallId } from "../helpers/toolCallHelper.js";
import { reasoningDelta } from "../helpers/reasoningHelper.js";
/**
* Translate OpenAI chunk to Responses API events
@@ -519,7 +520,7 @@ export function openaiResponsesToOpenAIResponse(chunk, state) {
if (!delta) return null;
return buildChunk(
{ id: state.chatId, created: state.created, model: state.model || "unknown" },
{ reasoning_content: delta }
reasoningDelta(delta)
);
}