Files
OmniRoute/tests/unit/responses-state-policy.test.ts
backryun 8d388912a7 feat(providers): refresh vendored ChatGPT Web connector to v4.0.7 (#12181)
Refresh the existing MIT-licensed miuuyy/codex-chatgpt-web vendor snapshot and its OmniRoute integration as one reviewable change.

Co-authored-by: backryun <backryun@daonlab.local>
2026-09-01 00:50:15 -03:00

94 lines
3.0 KiB
TypeScript

import test from "node:test";
import assert from "node:assert/strict";
import {
applyResponsesPreviousResponseIdPolicy,
normalizeResponsesPreviousResponseIdMode,
shouldStripPreviousResponseId,
} from "../../open-sse/utils/responsesStatePolicy.ts";
test("responses previous_response_id policy defaults to auto", () => {
assert.equal(normalizeResponsesPreviousResponseIdMode(undefined), "auto");
assert.equal(normalizeResponsesPreviousResponseIdMode("invalid"), "auto");
assert.equal(normalizeResponsesPreviousResponseIdMode("strip"), "strip");
assert.equal(normalizeResponsesPreviousResponseIdMode("preserve"), "preserve");
});
test("auto strips previous_response_id for stateless Responses upstreams", () => {
const result = applyResponsesPreviousResponseIdPolicy(
{ model: "gpt-5.5", previous_response_id: "resp_prev_123", input: [] },
{ mode: "auto", sourceFormat: "openai-responses", targetFormat: "openai-responses" }
);
assert.equal(result.stripped, true);
assert.equal((result.body as Record<string, unknown>).previous_response_id, undefined);
});
test("auto preserves previous_response_id when Responses storage is explicitly enabled", () => {
const result = applyResponsesPreviousResponseIdPolicy(
{ model: "gpt-5.5", previous_response_id: "resp_prev_123", input: [] },
{
mode: "auto",
sourceFormat: "openai-responses",
targetFormat: "openai-responses",
credentials: { providerSpecificData: { openaiStoreEnabled: true } },
}
);
assert.equal(result.stripped, false);
assert.equal((result.body as Record<string, unknown>).previous_response_id, "resp_prev_123");
});
test("auto preserves previous_response_id for provider-owned ChatGPT Web Codex state", () => {
const result = applyResponsesPreviousResponseIdPolicy(
{
model: "chatgpt-web-codex/instant",
previous_response_id: "resp_chatgpt_web_codex",
input: [],
},
{
mode: "auto",
provider: "chatgpt-web-codex",
sourceFormat: "openai-responses",
targetFormat: "openai-responses",
}
);
assert.equal(result.stripped, false);
assert.equal(
(result.body as Record<string, unknown>).previous_response_id,
"resp_chatgpt_web_codex"
);
});
test("strip and preserve modes override auto detection", () => {
assert.equal(
shouldStripPreviousResponseId({
mode: "strip",
sourceFormat: "openai",
targetFormat: "openai",
}),
true
);
assert.equal(
shouldStripPreviousResponseId({
mode: "preserve",
sourceFormat: "openai-responses",
targetFormat: "openai-responses",
}),
false
);
});
test("auto leaves unrelated non-Responses requests untouched", () => {
const body = { model: "gpt-4o-mini", previous_response_id: "client-extra-field" };
const result = applyResponsesPreviousResponseIdPolicy(body, {
mode: "auto",
sourceFormat: "openai",
targetFormat: "openai",
});
assert.equal(result.body, body);
assert.equal(result.stripped, false);
});