Files
OmniRoute/tests/unit/executor-codex-gpt56.test.ts
backryun 67a0b99240 feat(providers): add GPT-5.6 model family (#6862)
* feat(providers): add GPT-5.6 model family

* fix(chatgpt-web): resume temporary chat handoffs

* fix(codex): auto-merge discovery, filter denylist, revalidate on lifecycle

Restore live/GitHub auto-merge for Codex catalogs, drop models via
explicit denylist (GPT-5.4 family), and run scrub+live re-sync once on
first-start, app upgrade, or setup completion. Success log:
kill deprecated models complete.

* fix(codex): preserve live catalog reconciliation

Expose remote-only Codex models without dropping user custom entries, and complete lifecycle revalidation only after a successful internal sync. Keep credentialed self-fetches pinned to the active dashboard listener.

---------

Co-authored-by: backryun <backryun@daonlab.local>
2026-07-12 03:30:47 -03:00

53 lines
1.5 KiB
TypeScript

import test from "node:test";
import assert from "node:assert/strict";
import { CodexExecutor } from "../../open-sse/executors/codex.ts";
test("CodexExecutor.transformRequest preserves max effort for GPT-5.6", () => {
const executor = new CodexExecutor();
const result = executor.transformRequest(
"gpt-5.6-sol",
{
model: "gpt-5.6-sol",
input: [],
reasoning_effort: "max",
},
false,
{ requestEndpointPath: "/responses" }
);
assert.equal(result.model, "gpt-5.6-sol");
assert.equal(result.reasoning.effort, "max");
assert.equal(result.reasoning_effort, undefined);
});
test("CodexExecutor.transformRequest maps GPT-5.6 ultra aliases to max wire effort", () => {
const executor = new CodexExecutor();
for (const model of ["gpt-5.6-sol-ultra", "gpt-5.6-terra-ultra"]) {
const result = executor.transformRequest(model, { model, input: [] }, false, {
requestEndpointPath: "/responses",
});
assert.equal(result.model, model.replace(/-ultra$/, ""));
assert.equal(result.reasoning.effort, "max");
}
});
test("CodexExecutor.transformRequest clamps Luna ultra requests to its max effort", () => {
const executor = new CodexExecutor();
const result = executor.transformRequest(
"gpt-5.6-luna",
{
model: "gpt-5.6-luna",
input: [],
reasoning_effort: "ultra",
},
false,
{ requestEndpointPath: "/responses" }
);
assert.equal(result.model, "gpt-5.6-luna");
assert.equal(result.reasoning.effort, "max");
});