mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-06 15:22:12 +03:00
* 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>
37 lines
1.1 KiB
TypeScript
37 lines
1.1 KiB
TypeScript
import test from "node:test";
|
|
import assert from "node:assert/strict";
|
|
|
|
import { cliModelConfigSchema } from "../../src/shared/validation/schemas.ts";
|
|
|
|
test("cliModelConfigSchema accepts Codex xhigh reasoning effort", () => {
|
|
const result = cliModelConfigSchema.safeParse({
|
|
baseUrl: "http://localhost:20128/api/v1",
|
|
apiKey: "sk_omniroute",
|
|
model: "gpt-5.5",
|
|
reasoningEffort: "xhigh",
|
|
wireApi: "responses",
|
|
});
|
|
|
|
assert.equal(result.success, true);
|
|
if (result.success) {
|
|
assert.equal(result.data.reasoningEffort, "xhigh");
|
|
}
|
|
});
|
|
|
|
test("cliModelConfigSchema accepts Codex max and ultra reasoning efforts", () => {
|
|
for (const reasoningEffort of ["max", "ultra"] as const) {
|
|
const result = cliModelConfigSchema.safeParse({
|
|
baseUrl: "http://localhost:20128/api/v1",
|
|
apiKey: "sk_omniroute",
|
|
model: "gpt-5.6-sol",
|
|
reasoningEffort,
|
|
wireApi: "responses",
|
|
});
|
|
|
|
assert.equal(result.success, true, reasoningEffort);
|
|
if (result.success) {
|
|
assert.equal(result.data.reasoningEffort, reasoningEffort);
|
|
}
|
|
}
|
|
});
|