refactor(open-sse): DRY SSE primitives into utils/sseConstants.js

Gom SSE_DONE + SSE_HEADERS + SSE_HEADERS_NO_BUFFER vào 1 file không
phụ thuộc (tránh kéo usageDb vào executor). Áp cho kiro, cursor, qoder,
github, commandcode, perplexity-web, grok-web. Byte-for-byte verified
(headers/DONE giữ nguyên; biến thể no-buffer dùng const riêng).

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
decolua
2026-06-13 21:42:59 +07:00
co-authored by Cursor
parent 0a8d92a6ba
commit 6ee4555821
9 changed files with 42 additions and 25 deletions
+2 -1
View File
@@ -2,6 +2,7 @@ import { randomUUID } from "crypto";
import { BaseExecutor } from "./base.js";
import { PROVIDERS } from "../config/providers.js";
import { convertCommandCodeToOpenAI } from "../translator/response/commandcode-to-openai.js";
import { SSE_DONE } from "../utils/sseConstants.js";
/**
* CommandCodeExecutor — talks to https://api.commandcode.ai/alpha/generate
@@ -78,7 +79,7 @@ function wrapNdjsonAsOpenAISse(originalResponse, model) {
if (trimmed) {
emitChunks(convertCommandCodeToOpenAI(trimmed, state), controller);
}
controller.enqueue(encoder.encode("data: [DONE]\n\n"));
controller.enqueue(encoder.encode(SSE_DONE));
},
});