Fix AG, Kiro, Xiaomi Provider

This commit is contained in:
decolua
2026-06-18 14:58:00 +07:00
parent 9ab14e7714
commit 3f9382dee4
7 changed files with 149 additions and 8 deletions

View File

@@ -18,6 +18,9 @@ function sanitizeFunctionName(name) {
const MAX_RETRY_AFTER_MS = 10000;
const MAX_ANTIGRAVITY_OUTPUT_TOKENS = 16384;
// Fields Google generateContent rejects (e.g. Claude adaptive output_config) — stripped from antigravity request envelope
const ANTIGRAVITY_REQUEST_BLACKLIST = ["output_config"];
export class AntigravityExecutor extends BaseExecutor {
constructor() {
super("antigravity", PROVIDERS.antigravity);
@@ -83,7 +86,9 @@ export class AntigravityExecutor extends BaseExecutor {
tools = allDeclarations.length > 0 ? [{ functionDeclarations: allDeclarations }] : [];
}
// Strip tools/toolConfig (handled separately) and blacklisted fields that Google rejects
const { tools: _originalTools, toolConfig: _originalToolConfig, ...requestWithoutTools } = body.request || {};
for (const key of ANTIGRAVITY_REQUEST_BLACKLIST) delete requestWithoutTools[key];
const generationConfig = { ...(requestWithoutTools.generationConfig || {}) };
if (generationConfig.maxOutputTokens > MAX_ANTIGRAVITY_OUTPUT_TOKENS) {
generationConfig.maxOutputTokens = MAX_ANTIGRAVITY_OUTPUT_TOKENS;