opencode-antigravity-auth 1.2.6 → 1.2.7-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +224 -153
- package/dist/src/constants.d.ts +8 -0
- package/dist/src/constants.d.ts.map +1 -1
- package/dist/src/constants.js +8 -0
- package/dist/src/constants.js.map +1 -1
- package/dist/src/plugin/config/schema.d.ts +12 -0
- package/dist/src/plugin/config/schema.d.ts.map +1 -1
- package/dist/src/plugin/config/schema.js +14 -0
- package/dist/src/plugin/config/schema.js.map +1 -1
- package/dist/src/plugin/core/streaming/index.d.ts +3 -0
- package/dist/src/plugin/core/streaming/index.d.ts.map +1 -0
- package/dist/src/plugin/core/streaming/index.js +3 -0
- package/dist/src/plugin/core/streaming/index.js.map +1 -0
- package/dist/src/plugin/core/streaming/transformer.d.ts +9 -0
- package/dist/src/plugin/core/streaming/transformer.d.ts.map +1 -0
- package/dist/src/plugin/core/streaming/transformer.js +134 -0
- package/dist/src/plugin/core/streaming/transformer.js.map +1 -0
- package/dist/src/plugin/core/streaming/types.d.ts +26 -0
- package/dist/src/plugin/core/streaming/types.d.ts.map +1 -0
- package/dist/src/plugin/core/streaming/types.js +1 -0
- package/dist/src/plugin/core/streaming/types.js.map +1 -0
- package/dist/src/plugin/logger.d.ts.map +1 -1
- package/dist/src/plugin/logger.js +3 -2
- package/dist/src/plugin/logger.js.map +1 -1
- package/dist/src/plugin/recovery.d.ts.map +1 -1
- package/dist/src/plugin/recovery.js +42 -14
- package/dist/src/plugin/recovery.js.map +1 -1
- package/dist/src/plugin/request-helpers.d.ts +38 -0
- package/dist/src/plugin/request-helpers.d.ts.map +1 -1
- package/dist/src/plugin/request-helpers.js +250 -19
- package/dist/src/plugin/request-helpers.js.map +1 -1
- package/dist/src/plugin/request.d.ts +50 -3
- package/dist/src/plugin/request.d.ts.map +1 -1
- package/dist/src/plugin/request.js +89 -177
- package/dist/src/plugin/request.js.map +1 -1
- package/dist/src/plugin/storage.d.ts +1 -0
- package/dist/src/plugin/storage.d.ts.map +1 -1
- package/dist/src/plugin/storage.js +70 -5
- package/dist/src/plugin/storage.js.map +1 -1
- package/dist/src/plugin/stores/signature-store.d.ts +5 -0
- package/dist/src/plugin/stores/signature-store.d.ts.map +1 -0
- package/dist/src/plugin/stores/signature-store.js +25 -0
- package/dist/src/plugin/stores/signature-store.js.map +1 -0
- package/dist/src/plugin/transform/claude.d.ts.map +1 -1
- package/dist/src/plugin/transform/claude.js +30 -8
- package/dist/src/plugin/transform/claude.js.map +1 -1
- package/dist/src/plugin/transform/model-resolver.d.ts +12 -5
- package/dist/src/plugin/transform/model-resolver.d.ts.map +1 -1
- package/dist/src/plugin/transform/model-resolver.js +73 -20
- package/dist/src/plugin/transform/model-resolver.js.map +1 -1
- package/dist/src/plugin/transform/types.d.ts +3 -5
- package/dist/src/plugin/transform/types.d.ts.map +1 -1
- package/dist/src/plugin/transform/types.js +0 -5
- package/dist/src/plugin/transform/types.js.map +1 -1
- package/dist/src/plugin.d.ts.map +1 -1
- package/dist/src/plugin.js +113 -44
- package/dist/src/plugin.js.map +1 -1
- package/package.json +7 -3
|
@@ -1,22 +1,18 @@
|
|
|
1
1
|
import crypto from "node:crypto";
|
|
2
|
-
import { ANTIGRAVITY_HEADERS, GEMINI_CLI_HEADERS, ANTIGRAVITY_ENDPOINT, } from "../constants";
|
|
2
|
+
import { ANTIGRAVITY_HEADERS, GEMINI_CLI_HEADERS, ANTIGRAVITY_ENDPOINT, GEMINI_CLI_ENDPOINT, EMPTY_SCHEMA_PLACEHOLDER_NAME, EMPTY_SCHEMA_PLACEHOLDER_DESCRIPTION, } from "../constants";
|
|
3
3
|
import { cacheSignature, getCachedSignature } from "./cache";
|
|
4
|
+
import { createStreamingTransformer, transformSseLine, transformStreamingPayload, } from "./core/streaming";
|
|
5
|
+
import { defaultSignatureStore } from "./stores/signature-store";
|
|
4
6
|
import { DEBUG_MESSAGE_PREFIX, isDebugEnabled, logAntigravityDebugResponse, } from "./debug";
|
|
5
7
|
import { createLogger } from "./logger";
|
|
6
|
-
import { cleanJSONSchemaForAntigravity, DEFAULT_THINKING_BUDGET, deepFilterThinkingBlocks, extractThinkingConfig, extractUsageFromSsePayload, extractUsageMetadata, fixToolResponseGrouping, validateAndFixClaudeToolPairing, injectParameterSignatures, injectToolHardeningInstruction, isThinkingCapableModel, normalizeThinkingConfig, parseAntigravityApiBody, resolveThinkingConfig, rewriteAntigravityPreviewAccessError, transformThinkingParts, } from "./request-helpers";
|
|
8
|
+
import { cleanJSONSchemaForAntigravity, DEFAULT_THINKING_BUDGET, deepFilterThinkingBlocks, extractThinkingConfig, extractUsageFromSsePayload, extractUsageMetadata, fixToolResponseGrouping, validateAndFixClaudeToolPairing, applyToolPairingFixes, injectParameterSignatures, injectToolHardeningInstruction, isThinkingCapableModel, normalizeThinkingConfig, parseAntigravityApiBody, resolveThinkingConfig, rewriteAntigravityPreviewAccessError, transformThinkingParts, } from "./request-helpers";
|
|
7
9
|
import { CLAUDE_TOOL_SYSTEM_INSTRUCTION, CLAUDE_DESCRIPTION_PROMPT, } from "../constants";
|
|
8
10
|
import { analyzeConversationState, closeToolLoopForThinking, needsThinkingRecovery, } from "./thinking-recovery";
|
|
9
|
-
import { resolveModelWithTier, isClaudeModel, isClaudeThinkingModel,
|
|
11
|
+
import { resolveModelWithTier, isClaudeModel, isClaudeThinkingModel, CLAUDE_THINKING_MAX_OUTPUT_TOKENS, } from "./transform";
|
|
10
12
|
import { detectErrorType } from "./recovery";
|
|
11
13
|
const log = createLogger("request");
|
|
12
|
-
/**
|
|
13
|
-
* Stable session ID for the plugin's lifetime.
|
|
14
|
-
* This is used for caching thinking signatures across multi-turn conversations.
|
|
15
|
-
* Generated once at plugin load time and reused for all requests.
|
|
16
|
-
*/
|
|
17
14
|
const PLUGIN_SESSION_ID = `-${crypto.randomUUID()}`;
|
|
18
15
|
const MIN_SIGNATURE_LENGTH = 50;
|
|
19
|
-
const lastSignedThinkingBySessionKey = new Map();
|
|
20
16
|
function buildSignatureSessionKey(sessionId, model, conversationKey, projectKey) {
|
|
21
17
|
const modelKey = typeof model === "string" && model.trim() ? model.toLowerCase() : "unknown";
|
|
22
18
|
const projectPart = typeof projectKey === "string" && projectKey.trim()
|
|
@@ -279,7 +275,7 @@ function ensureThinkingBeforeToolUseInContents(contents, signatureSessionKey) {
|
|
|
279
275
|
if (hasSignedThinking) {
|
|
280
276
|
return { ...content, parts: [...thinkingParts, ...otherParts] };
|
|
281
277
|
}
|
|
282
|
-
const lastThinking =
|
|
278
|
+
const lastThinking = defaultSignatureStore.get(signatureSessionKey);
|
|
283
279
|
if (!lastThinking) {
|
|
284
280
|
return content;
|
|
285
281
|
}
|
|
@@ -368,7 +364,7 @@ function ensureThinkingBeforeToolUseInMessages(messages, signatureSessionKey) {
|
|
|
368
364
|
if (hasSignedThinking) {
|
|
369
365
|
return { ...message, content: [...thinkingBlocks, ...otherBlocks] };
|
|
370
366
|
}
|
|
371
|
-
const lastThinking =
|
|
367
|
+
const lastThinking = defaultSignatureStore.get(signatureSessionKey);
|
|
372
368
|
if (!lastThinking) {
|
|
373
369
|
return message;
|
|
374
370
|
}
|
|
@@ -401,151 +397,7 @@ const STREAM_ACTION = "streamGenerateContent";
|
|
|
401
397
|
export function isGenerativeLanguageRequest(input) {
|
|
402
398
|
return typeof input === "string" && input.includes("generativelanguage.googleapis.com");
|
|
403
399
|
}
|
|
404
|
-
|
|
405
|
-
* Rewrites SSE payloads so downstream consumers see only the inner `response` objects,
|
|
406
|
-
* with thinking/reasoning blocks transformed to OpenCode's expected format.
|
|
407
|
-
*/
|
|
408
|
-
function transformStreamingPayload(payload) {
|
|
409
|
-
return payload
|
|
410
|
-
.split("\n")
|
|
411
|
-
.map((line) => {
|
|
412
|
-
if (!line.startsWith("data:")) {
|
|
413
|
-
return line;
|
|
414
|
-
}
|
|
415
|
-
const json = line.slice(5).trim();
|
|
416
|
-
if (!json) {
|
|
417
|
-
return line;
|
|
418
|
-
}
|
|
419
|
-
try {
|
|
420
|
-
const parsed = JSON.parse(json);
|
|
421
|
-
if (parsed.response !== undefined) {
|
|
422
|
-
const transformed = transformThinkingParts(parsed.response);
|
|
423
|
-
return `data: ${JSON.stringify(transformed)}`;
|
|
424
|
-
}
|
|
425
|
-
}
|
|
426
|
-
catch (_) { }
|
|
427
|
-
return line;
|
|
428
|
-
})
|
|
429
|
-
.join("\n");
|
|
430
|
-
}
|
|
431
|
-
/**
|
|
432
|
-
* Creates a TransformStream that processes SSE chunks incrementally,
|
|
433
|
-
* transforming each line as it arrives for true real-time streaming support.
|
|
434
|
-
* Optionally caches thinking signatures for Claude multi-turn conversations.
|
|
435
|
-
*/
|
|
436
|
-
function createStreamingTransformer(signatureSessionKey, debugText, cacheSignatures = false) {
|
|
437
|
-
const decoder = new TextDecoder();
|
|
438
|
-
const encoder = new TextEncoder();
|
|
439
|
-
let buffer = "";
|
|
440
|
-
// Buffer for accumulating thinking text per candidate index (for signature caching)
|
|
441
|
-
const thoughtBuffer = new Map();
|
|
442
|
-
const debugState = { injected: false };
|
|
443
|
-
return new TransformStream({
|
|
444
|
-
transform(chunk, controller) {
|
|
445
|
-
// Decode chunk with stream: true to handle multi-byte characters correctly
|
|
446
|
-
buffer += decoder.decode(chunk, { stream: true });
|
|
447
|
-
// Process complete lines immediately for real-time streaming
|
|
448
|
-
const lines = buffer.split("\n");
|
|
449
|
-
// Keep the last incomplete line in buffer
|
|
450
|
-
buffer = lines.pop() || "";
|
|
451
|
-
for (const line of lines) {
|
|
452
|
-
// Transform and forward each line immediately
|
|
453
|
-
const transformedLine = transformSseLine(line, signatureSessionKey, thoughtBuffer, debugText, debugState, cacheSignatures);
|
|
454
|
-
controller.enqueue(encoder.encode(transformedLine + "\n"));
|
|
455
|
-
}
|
|
456
|
-
},
|
|
457
|
-
flush(controller) {
|
|
458
|
-
// Flush any remaining bytes from TextDecoder
|
|
459
|
-
buffer += decoder.decode();
|
|
460
|
-
// Process any remaining data in buffer
|
|
461
|
-
if (buffer) {
|
|
462
|
-
const transformedLine = transformSseLine(buffer, signatureSessionKey, thoughtBuffer, debugText, debugState, cacheSignatures);
|
|
463
|
-
controller.enqueue(encoder.encode(transformedLine));
|
|
464
|
-
}
|
|
465
|
-
},
|
|
466
|
-
});
|
|
467
|
-
}
|
|
468
|
-
/**
|
|
469
|
-
* Transforms a single SSE line, extracting and transforming the inner response.
|
|
470
|
-
* Optionally caches thinking signatures for Claude multi-turn support.
|
|
471
|
-
*/
|
|
472
|
-
function transformSseLine(line, signatureSessionKey, thoughtBuffer, debugText, debugState, cacheSignatures = false) {
|
|
473
|
-
if (!line.startsWith("data:")) {
|
|
474
|
-
return line;
|
|
475
|
-
}
|
|
476
|
-
const json = line.slice(5).trim();
|
|
477
|
-
if (!json) {
|
|
478
|
-
return line;
|
|
479
|
-
}
|
|
480
|
-
try {
|
|
481
|
-
const parsed = JSON.parse(json);
|
|
482
|
-
if (parsed.response !== undefined) {
|
|
483
|
-
if (cacheSignatures && signatureSessionKey && thoughtBuffer) {
|
|
484
|
-
cacheThinkingSignatures(parsed.response, signatureSessionKey, thoughtBuffer);
|
|
485
|
-
}
|
|
486
|
-
let response = parsed.response;
|
|
487
|
-
if (debugText && debugState && !debugState.injected) {
|
|
488
|
-
response = injectDebugThinking(response, debugText);
|
|
489
|
-
debugState.injected = true;
|
|
490
|
-
}
|
|
491
|
-
const transformed = transformThinkingParts(response);
|
|
492
|
-
return `data: ${JSON.stringify(transformed)}`;
|
|
493
|
-
}
|
|
494
|
-
}
|
|
495
|
-
catch (_) { }
|
|
496
|
-
return line;
|
|
497
|
-
}
|
|
498
|
-
/**
|
|
499
|
-
* Extracts and caches thinking signatures from a response for Claude multi-turn support.
|
|
500
|
-
*/
|
|
501
|
-
function cacheThinkingSignatures(response, signatureSessionKey, thoughtBuffer) {
|
|
502
|
-
if (!response || typeof response !== "object")
|
|
503
|
-
return;
|
|
504
|
-
const resp = response;
|
|
505
|
-
// Handle Gemini-style candidates array (Claude through Antigravity uses this format)
|
|
506
|
-
if (Array.isArray(resp.candidates)) {
|
|
507
|
-
resp.candidates.forEach((candidate, index) => {
|
|
508
|
-
if (!candidate?.content?.parts)
|
|
509
|
-
return;
|
|
510
|
-
candidate.content.parts.forEach((part) => {
|
|
511
|
-
// Collect thinking text
|
|
512
|
-
if (part.thought === true || part.type === "thinking") {
|
|
513
|
-
const text = part.text || part.thinking || "";
|
|
514
|
-
if (text) {
|
|
515
|
-
const current = thoughtBuffer.get(index) ?? "";
|
|
516
|
-
thoughtBuffer.set(index, current + text);
|
|
517
|
-
}
|
|
518
|
-
}
|
|
519
|
-
// Cache signature when we receive it
|
|
520
|
-
if (part.thoughtSignature) {
|
|
521
|
-
const fullText = thoughtBuffer.get(index) ?? "";
|
|
522
|
-
if (fullText) {
|
|
523
|
-
cacheSignature(signatureSessionKey, fullText, part.thoughtSignature);
|
|
524
|
-
lastSignedThinkingBySessionKey.set(signatureSessionKey, { text: fullText, signature: part.thoughtSignature });
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
});
|
|
528
|
-
});
|
|
529
|
-
}
|
|
530
|
-
// Handle Anthropic-style content array
|
|
531
|
-
if (Array.isArray(resp.content)) {
|
|
532
|
-
let thinkingText = "";
|
|
533
|
-
resp.content.forEach((block) => {
|
|
534
|
-
if (block?.type === "thinking") {
|
|
535
|
-
thinkingText += block.thinking || block.text || "";
|
|
536
|
-
}
|
|
537
|
-
if (block?.signature && thinkingText) {
|
|
538
|
-
cacheSignature(signatureSessionKey, thinkingText, block.signature);
|
|
539
|
-
lastSignedThinkingBySessionKey.set(signatureSessionKey, { text: thinkingText, signature: block.signature });
|
|
540
|
-
}
|
|
541
|
-
});
|
|
542
|
-
}
|
|
543
|
-
}
|
|
544
|
-
/**
|
|
545
|
-
* Rewrites OpenAI-style requests into Antigravity shape, normalizing model, headers,
|
|
546
|
-
* optional cached_content, and thinking config. Also toggles streaming mode for SSE actions.
|
|
547
|
-
*/
|
|
548
|
-
export function prepareAntigravityRequest(input, init, accessToken, projectId, endpointOverride, headerStyle = "antigravity", forceThinkingRecovery = false) {
|
|
400
|
+
export function prepareAntigravityRequest(input, init, accessToken, projectId, endpointOverride, headerStyle = "antigravity", forceThinkingRecovery = false, options) {
|
|
549
401
|
const baseInit = { ...init };
|
|
550
402
|
const headers = new Headers(init?.headers ?? {});
|
|
551
403
|
let resolvedProjectId = projectId?.trim() || "";
|
|
@@ -580,7 +432,8 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
580
432
|
const resolved = resolveModelWithTier(rawModel);
|
|
581
433
|
const effectiveModel = resolved.actualModel;
|
|
582
434
|
const streaming = rawAction === STREAM_ACTION;
|
|
583
|
-
const
|
|
435
|
+
const defaultEndpoint = headerStyle === "gemini-cli" ? GEMINI_CLI_ENDPOINT : ANTIGRAVITY_ENDPOINT;
|
|
436
|
+
const baseEndpoint = endpointOverride ?? defaultEndpoint;
|
|
584
437
|
const transformedUrl = `${baseEndpoint}/v1internal:${rawAction}${streaming ? "?alt=sse" : ""}`;
|
|
585
438
|
const isClaude = isClaudeModel(effectiveModel);
|
|
586
439
|
const isClaudeThinking = isClaudeThinkingModel(effectiveModel);
|
|
@@ -611,7 +464,10 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
611
464
|
}
|
|
612
465
|
}
|
|
613
466
|
const conversationKey = resolveConversationKeyFromRequests(requestObjects);
|
|
614
|
-
|
|
467
|
+
// Strip tier suffix from model for cache key to prevent cache misses on tier change
|
|
468
|
+
// e.g., "claude-opus-4-5-thinking-high" -> "claude-opus-4-5-thinking"
|
|
469
|
+
const modelForCacheKey = effectiveModel.replace(/-(minimal|low|medium|high)$/i, "");
|
|
470
|
+
signatureSessionKey = buildSignatureSessionKey(PLUGIN_SESSION_ID, modelForCacheKey, conversationKey, resolveProjectKey(parsedBody.project));
|
|
615
471
|
if (requestObjects.length > 0) {
|
|
616
472
|
sessionId = signatureSessionKey;
|
|
617
473
|
}
|
|
@@ -629,6 +485,8 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
629
485
|
if (isClaudeThinking && Array.isArray(req.messages)) {
|
|
630
486
|
req.messages = ensureThinkingBeforeToolUseInMessages(req.messages, signatureSessionKey);
|
|
631
487
|
}
|
|
488
|
+
// Step 3: Apply tool pairing fixes (ID assignment, response matching, orphan recovery)
|
|
489
|
+
applyToolPairingFixes(req, true);
|
|
632
490
|
}
|
|
633
491
|
}
|
|
634
492
|
if (isClaudeThinking && sessionId) {
|
|
@@ -636,7 +494,7 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
636
494
|
(Array.isArray(req.messages) && hasToolUseInMessages(req.messages)));
|
|
637
495
|
const hasSignedThinking = requestObjects.some((req) => (Array.isArray(req.contents) && hasSignedThinkingInContents(req.contents)) ||
|
|
638
496
|
(Array.isArray(req.messages) && hasSignedThinkingInMessages(req.messages)));
|
|
639
|
-
const hasCachedThinking =
|
|
497
|
+
const hasCachedThinking = defaultSignatureStore.has(signatureSessionKey);
|
|
640
498
|
needsSignedThinkingWarmup = hasToolUse && !hasSignedThinking && !hasCachedThinking;
|
|
641
499
|
}
|
|
642
500
|
body = JSON.stringify(wrappedBody);
|
|
@@ -663,7 +521,11 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
663
521
|
const userThinkingConfig = extractThinkingConfig(requestPayload, rawGenerationConfig, extraBody);
|
|
664
522
|
const hasAssistantHistory = Array.isArray(requestPayload.contents) &&
|
|
665
523
|
requestPayload.contents.some((c) => c?.role === "model" || c?.role === "assistant");
|
|
666
|
-
|
|
524
|
+
// For claude-sonnet-4-5 (without -thinking suffix), ignore client's thinkingConfig
|
|
525
|
+
// Only claude-sonnet-4-5-thinking-* variants should have thinking enabled
|
|
526
|
+
const isClaudeSonnetNonThinking = effectiveModel.toLowerCase() === "claude-sonnet-4-5";
|
|
527
|
+
const effectiveUserThinkingConfig = isClaudeSonnetNonThinking ? undefined : userThinkingConfig;
|
|
528
|
+
const finalThinkingConfig = resolveThinkingConfig(effectiveUserThinkingConfig, isClaudeSonnetNonThinking ? false : (resolved.isThinkingModel ?? isThinkingCapableModel(effectiveModel)), isClaude, hasAssistantHistory);
|
|
667
529
|
const normalizedThinking = normalizeThinkingConfig(finalThinkingConfig);
|
|
668
530
|
if (normalizedThinking) {
|
|
669
531
|
// Use tier-based thinking budget if specified via model suffix, otherwise fall back to user config
|
|
@@ -795,12 +657,12 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
795
657
|
...base,
|
|
796
658
|
type: "object",
|
|
797
659
|
properties: {
|
|
798
|
-
|
|
799
|
-
type: "
|
|
800
|
-
description:
|
|
660
|
+
[EMPTY_SCHEMA_PLACEHOLDER_NAME]: {
|
|
661
|
+
type: "boolean",
|
|
662
|
+
description: EMPTY_SCHEMA_PLACEHOLDER_DESCRIPTION,
|
|
801
663
|
},
|
|
802
664
|
},
|
|
803
|
-
required: [
|
|
665
|
+
required: [EMPTY_SCHEMA_PLACEHOLDER_NAME],
|
|
804
666
|
});
|
|
805
667
|
if (!schema || typeof schema !== "object" || Array.isArray(schema)) {
|
|
806
668
|
toolDebugMissing += 1;
|
|
@@ -819,29 +681,33 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
819
681
|
cleaned.type = "object";
|
|
820
682
|
if (!hasProperties) {
|
|
821
683
|
cleaned.properties = {
|
|
822
|
-
|
|
823
|
-
type: "
|
|
824
|
-
description:
|
|
684
|
+
[EMPTY_SCHEMA_PLACEHOLDER_NAME]: {
|
|
685
|
+
type: "boolean",
|
|
686
|
+
description: EMPTY_SCHEMA_PLACEHOLDER_DESCRIPTION,
|
|
825
687
|
},
|
|
826
688
|
};
|
|
827
689
|
cleaned.required = Array.isArray(cleaned.required)
|
|
828
|
-
? Array.from(new Set([...cleaned.required,
|
|
829
|
-
: [
|
|
690
|
+
? Array.from(new Set([...cleaned.required, EMPTY_SCHEMA_PLACEHOLDER_NAME]))
|
|
691
|
+
: [EMPTY_SCHEMA_PLACEHOLDER_NAME];
|
|
830
692
|
}
|
|
831
693
|
return cleaned;
|
|
832
694
|
};
|
|
833
|
-
requestPayload.tools.forEach((tool
|
|
695
|
+
requestPayload.tools.forEach((tool) => {
|
|
834
696
|
const pushDeclaration = (decl, source) => {
|
|
835
697
|
const schema = decl?.parameters ||
|
|
698
|
+
decl?.parametersJsonSchema ||
|
|
836
699
|
decl?.input_schema ||
|
|
837
700
|
decl?.inputSchema ||
|
|
838
701
|
tool.parameters ||
|
|
702
|
+
tool.parametersJsonSchema ||
|
|
839
703
|
tool.input_schema ||
|
|
840
704
|
tool.inputSchema ||
|
|
841
705
|
tool.function?.parameters ||
|
|
706
|
+
tool.function?.parametersJsonSchema ||
|
|
842
707
|
tool.function?.input_schema ||
|
|
843
708
|
tool.function?.inputSchema ||
|
|
844
709
|
tool.custom?.parameters ||
|
|
710
|
+
tool.custom?.parametersJsonSchema ||
|
|
845
711
|
tool.custom?.input_schema;
|
|
846
712
|
let name = decl?.name ||
|
|
847
713
|
tool.name ||
|
|
@@ -943,7 +809,9 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
943
809
|
}
|
|
944
810
|
// Apply Claude tool hardening (ported from LLM-API-Key-Proxy)
|
|
945
811
|
// Injects parameter signatures into descriptions and adds system instruction
|
|
946
|
-
|
|
812
|
+
// Can be disabled via config.claude_tool_hardening = false to reduce context size
|
|
813
|
+
const enableToolHardening = options?.claudeToolHardening ?? true;
|
|
814
|
+
if (enableToolHardening && isClaude && Array.isArray(requestPayload.tools) && requestPayload.tools.length > 0) {
|
|
947
815
|
// Inject parameter signatures into tool descriptions
|
|
948
816
|
requestPayload.tools = injectParameterSignatures(requestPayload.tools, CLAUDE_DESCRIPTION_PROMPT);
|
|
949
817
|
// Inject tool hardening system instruction
|
|
@@ -971,7 +839,7 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
971
839
|
(Array.isArray(requestPayload.messages) && hasToolUseInMessages(requestPayload.messages));
|
|
972
840
|
const hasSignedThinking = (Array.isArray(requestPayload.contents) && hasSignedThinkingInContents(requestPayload.contents)) ||
|
|
973
841
|
(Array.isArray(requestPayload.messages) && hasSignedThinkingInMessages(requestPayload.messages));
|
|
974
|
-
const hasCachedThinking =
|
|
842
|
+
const hasCachedThinking = defaultSignatureStore.has(signatureSessionKey);
|
|
975
843
|
needsSignedThinkingWarmup = hasToolUse && !hasSignedThinking && !hasCachedThinking;
|
|
976
844
|
}
|
|
977
845
|
}
|
|
@@ -1062,8 +930,7 @@ export function prepareAntigravityRequest(input, init, accessToken, projectId, e
|
|
|
1062
930
|
? "Thinking recovery: retrying with fresh turn (API error)"
|
|
1063
931
|
: "Thinking recovery: restarting turn (corrupted context)";
|
|
1064
932
|
requestPayload.contents = closeToolLoopForThinking(requestPayload.contents);
|
|
1065
|
-
|
|
1066
|
-
lastSignedThinkingBySessionKey.delete(signatureSessionKey);
|
|
933
|
+
defaultSignatureStore.delete(signatureSessionKey);
|
|
1067
934
|
}
|
|
1068
935
|
}
|
|
1069
936
|
if ("model" in requestPayload) {
|
|
@@ -1205,9 +1072,16 @@ export async function transformAntigravityResponse(response, streaming, debugCon
|
|
|
1205
1072
|
logAntigravityDebugResponse(debugContext, response, {
|
|
1206
1073
|
note: "Streaming SSE response (real-time transform)",
|
|
1207
1074
|
});
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1075
|
+
const streamingTransformer = createStreamingTransformer(defaultSignatureStore, {
|
|
1076
|
+
onCacheSignature: cacheSignature,
|
|
1077
|
+
onInjectDebug: injectDebugThinking,
|
|
1078
|
+
transformThinkingParts,
|
|
1079
|
+
}, {
|
|
1080
|
+
signatureSessionKey: sessionId,
|
|
1081
|
+
debugText,
|
|
1082
|
+
cacheSignatures,
|
|
1083
|
+
});
|
|
1084
|
+
return new Response(response.body.pipeThrough(streamingTransformer), {
|
|
1211
1085
|
status: response.status,
|
|
1212
1086
|
statusText: response.statusText,
|
|
1213
1087
|
headers,
|
|
@@ -1238,6 +1112,20 @@ export async function transformAntigravityResponse(response, streaming, debugCon
|
|
|
1238
1112
|
recoveryError.debugInfo = debugInfo;
|
|
1239
1113
|
throw recoveryError;
|
|
1240
1114
|
}
|
|
1115
|
+
// Detect context length / prompt too long errors - signal to caller for toast
|
|
1116
|
+
const errorMessage = errorBody.error.message?.toLowerCase() || "";
|
|
1117
|
+
if (errorMessage.includes("prompt is too long") ||
|
|
1118
|
+
errorMessage.includes("context length exceeded") ||
|
|
1119
|
+
errorMessage.includes("context_length_exceeded") ||
|
|
1120
|
+
errorMessage.includes("maximum context length")) {
|
|
1121
|
+
headers.set("x-antigravity-context-error", "prompt_too_long");
|
|
1122
|
+
}
|
|
1123
|
+
// Detect tool pairing errors - signal to caller for toast
|
|
1124
|
+
if (errorMessage.includes("tool_use") &&
|
|
1125
|
+
errorMessage.includes("tool_result") &&
|
|
1126
|
+
(errorMessage.includes("without") || errorMessage.includes("immediately after"))) {
|
|
1127
|
+
headers.set("x-antigravity-context-error", "tool_pairing");
|
|
1128
|
+
}
|
|
1241
1129
|
return new Response(JSON.stringify(errorBody), {
|
|
1242
1130
|
status: response.status,
|
|
1243
1131
|
statusText: response.statusText,
|
|
@@ -1310,4 +1198,28 @@ export async function transformAntigravityResponse(response, streaming, debugCon
|
|
|
1310
1198
|
return response;
|
|
1311
1199
|
}
|
|
1312
1200
|
}
|
|
1201
|
+
export const __testExports = {
|
|
1202
|
+
buildSignatureSessionKey,
|
|
1203
|
+
hashConversationSeed,
|
|
1204
|
+
extractTextFromContent,
|
|
1205
|
+
extractConversationSeedFromMessages,
|
|
1206
|
+
extractConversationSeedFromContents,
|
|
1207
|
+
resolveConversationKey,
|
|
1208
|
+
resolveProjectKey,
|
|
1209
|
+
isGeminiToolUsePart,
|
|
1210
|
+
isGeminiThinkingPart,
|
|
1211
|
+
ensureThoughtSignature,
|
|
1212
|
+
hasSignedThinkingPart,
|
|
1213
|
+
hasSignedThinkingInContents,
|
|
1214
|
+
hasSignedThinkingInMessages,
|
|
1215
|
+
hasToolUseInContents,
|
|
1216
|
+
hasToolUseInMessages,
|
|
1217
|
+
ensureThinkingBeforeToolUseInContents,
|
|
1218
|
+
ensureThinkingBeforeToolUseInMessages,
|
|
1219
|
+
generateSyntheticProjectId,
|
|
1220
|
+
MIN_SIGNATURE_LENGTH,
|
|
1221
|
+
transformSseLine,
|
|
1222
|
+
transformStreamingPayload,
|
|
1223
|
+
createStreamingTransformer,
|
|
1224
|
+
};
|
|
1313
1225
|
//# sourceMappingURL=request.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/plugin/request.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/plugin/request.ts"],"names":[],"mappings":"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"}
|