Merge remote-tracking branch 'origin/master' into gitea/feature/end

Resolved conflicts taking origin/master (v0.5.55) as canonical, with local
features re-applied:
- runtime log level (LOG_LEVEL env + dashboard Settings → Logging, applied
  immediately and persisted across restarts)
- free/noAuth provider enable/disable toggle via providerStrategies.enabled
- parallel model testing (Test All Models / Test Selected Keys)
This commit is contained in:
2026-08-17 00:38:31 +07:00
parent e7470e955e
commit 7e45ead2ac
557 changed files with 53396 additions and 6935 deletions

View File

@@ -54,6 +54,45 @@ describe("GOLDEN request: OpenAI → Gemini", () => {
const out = translateRequest(FORMATS.OPENAI, FORMATS.GEMINI, "gemini-3-pro", baseBody(), true, { apiKey: "k" }, "gemini");
expect(clean(out)).toMatchSnapshot();
});
it("Gemini CLI tool requests include validated toolConfig and enough output for high thinking", () => {
const body = {
messages: [{ role: "user", content: "Call add with 7 and 35." }],
tools: [
{
type: "function",
function: {
name: "add",
description: "Add two numbers",
parameters: {
type: "object",
properties: {
a: { type: "number" },
b: { type: "number" },
},
required: ["a", "b"],
},
},
},
],
reasoning_effort: "high",
max_tokens: 128,
};
const out = translateRequest(
FORMATS.OPENAI,
FORMATS.GEMINI_CLI,
"gemini-3.1-pro-preview",
body,
true,
{ accessToken: "t", projectId: "p" },
"gemini-cli"
);
expect(out.request.toolConfig).toEqual({ functionCallingConfig: { mode: "VALIDATED" } });
expect(out.request.safetySettings).toBeDefined();
expect(out.request.generationConfig.thinkingConfig).toEqual({ thinkingLevel: "high", includeThoughts: true });
expect(out.request.generationConfig.maxOutputTokens).toBe(65535);
});
});
describe("GOLDEN request: OpenAI → Kiro", () => {