@google/gemini-cli-core 0.61.0-preview.0 → 0.61.0
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/dist/docs/reference/configuration.md +88 -25
- package/dist/src/availability/autoRoutingFallback.integration.test.js +84 -14
- package/dist/src/availability/autoRoutingFallback.integration.test.js.map +1 -1
- package/dist/src/availability/policyCatalog.d.ts +2 -0
- package/dist/src/availability/policyCatalog.js +16 -27
- package/dist/src/availability/policyCatalog.js.map +1 -1
- package/dist/src/availability/policyCatalog.test.js +11 -3
- package/dist/src/availability/policyCatalog.test.js.map +1 -1
- package/dist/src/availability/policyHelpers.js +18 -12
- package/dist/src/availability/policyHelpers.js.map +1 -1
- package/dist/src/availability/policyHelpers.test.js +19 -13
- package/dist/src/availability/policyHelpers.test.js.map +1 -1
- package/dist/src/code_assist/experiments/flagNames.d.ts +3 -0
- package/dist/src/code_assist/experiments/flagNames.js +3 -0
- package/dist/src/code_assist/experiments/flagNames.js.map +1 -1
- package/dist/src/config/config.d.ts +7 -3
- package/dist/src/config/config.js +44 -19
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +112 -13
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/defaultModelConfigs.js +88 -27
- package/dist/src/config/defaultModelConfigs.js.map +1 -1
- package/dist/src/config/models.d.ts +38 -6
- package/dist/src/config/models.js +132 -45
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +80 -29
- package/dist/src/config/models.test.js.map +1 -1
- package/dist/src/context/chatCompressionService.js +7 -2
- package/dist/src/context/chatCompressionService.js.map +1 -1
- package/dist/src/context/chatCompressionService.test.js +5 -0
- package/dist/src/context/chatCompressionService.test.js.map +1 -1
- package/dist/src/core/contentGenerator.js +3 -3
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +4 -5
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +2 -2
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/core/geminiChat_network_retry.test.js +1 -1
- package/dist/src/core/geminiChat_network_retry.test.js.map +1 -1
- package/dist/src/core/modelMappingContentGenerator.d.ts +1 -1
- package/dist/src/core/modelMappingContentGenerator.js +4 -3
- package/dist/src/core/modelMappingContentGenerator.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/routing/strategies/approvalModeStrategy.js +4 -3
- package/dist/src/routing/strategies/approvalModeStrategy.js.map +1 -1
- package/dist/src/routing/strategies/approvalModeStrategy.test.js +7 -4
- package/dist/src/routing/strategies/approvalModeStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.js +3 -2
- package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.test.js +7 -4
- package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/defaultStrategy.js +1 -1
- package/dist/src/routing/strategies/defaultStrategy.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
- package/dist/src/routing/strategies/gemmaClassifierStrategy.js +3 -2
- package/dist/src/routing/strategies/gemmaClassifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/gemmaClassifierStrategy.test.js +7 -4
- package/dist/src/routing/strategies/gemmaClassifierStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/numericalClassifierStrategy.js +3 -2
- package/dist/src/routing/strategies/numericalClassifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/numericalClassifierStrategy.test.js +4 -4
- package/dist/src/routing/strategies/numericalClassifierStrategy.test.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
- package/dist/src/services/modelConfigService.d.ts +5 -1
- package/dist/src/services/modelConfigService.js +18 -6
- package/dist/src/services/modelConfigService.js.map +1 -1
- package/dist/src/services/test-data/resolved-aliases-retry.golden.json +24 -0
- package/dist/src/services/test-data/resolved-aliases.golden.json +24 -0
- package/dist/src/utils/errorParsing.test.js +1 -1
- package/dist/src/utils/errorParsing.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { createDefaultPolicy, createSingleModelChain, getModelPolicyChain, getFlashLitePolicyChain, SILENT_ACTIONS, } from './policyCatalog.js';
|
|
7
|
-
import { DEFAULT_GEMINI_FLASH_LITE_MODEL, DEFAULT_GEMINI_MODEL, PREVIEW_GEMINI_MODEL_AUTO, isAutoModel, isGemini3Model, resolveModel, } from '../config/models.js';
|
|
7
|
+
import { DEFAULT_GEMINI_FLASH_LITE_MODEL, DEFAULT_GEMINI_MODEL, DEFAULT_GEMINI_MODEL_AUTO, PREVIEW_GEMINI_MODEL_AUTO, isAutoModel, isGemini3Model, resolveModel, } from '../config/models.js';
|
|
8
8
|
import { normalizeModelId } from '../utils/modelUtils.js';
|
|
9
9
|
import { ApprovalMode } from '../policy/types.js';
|
|
10
10
|
/**
|
|
@@ -21,10 +21,11 @@ export function resolvePolicyChain(config, preferredModel, wrapsAround = false)
|
|
|
21
21
|
const useGemini31 = config.getGemini31LaunchedSync?.() ?? false;
|
|
22
22
|
const useCustomToolModel = config.getUseCustomToolModelSync?.() ?? false;
|
|
23
23
|
const hasAccessToPreview = config.getHasAccessToPreviewModel?.() ?? false;
|
|
24
|
-
const
|
|
24
|
+
const useLatestFlash = config.hasLatestFlashGAAccess?.() ?? false;
|
|
25
|
+
const useLatestFlashLite = config.hasLatestFlashLiteGAAccess?.() ?? false;
|
|
25
26
|
// Capture the original family intent before any normalization or early downgrade.
|
|
26
27
|
const isOriginallyGemini3 = isGemini3Model(modelFromConfig, config);
|
|
27
|
-
const resolvedModel = normalizeModelId(resolveModel(modelFromConfig, useGemini31, useCustomToolModel, hasAccessToPreview, config,
|
|
28
|
+
const resolvedModel = normalizeModelId(resolveModel(modelFromConfig, useGemini31, useCustomToolModel, hasAccessToPreview, config, useLatestFlash, useLatestFlashLite));
|
|
28
29
|
const isAutoPreferred = normalizedPreferredModel
|
|
29
30
|
? isAutoModel(normalizedPreferredModel, config)
|
|
30
31
|
: false;
|
|
@@ -37,7 +38,8 @@ export function resolvePolicyChain(config, preferredModel, wrapsAround = false)
|
|
|
37
38
|
const context = {
|
|
38
39
|
useGemini3_1: useGemini31,
|
|
39
40
|
useCustomTools: useCustomToolModel,
|
|
40
|
-
|
|
41
|
+
useLatestFlash,
|
|
42
|
+
useLatestFlashLite,
|
|
41
43
|
};
|
|
42
44
|
if (resolvedModel === DEFAULT_GEMINI_FLASH_LITE_MODEL) {
|
|
43
45
|
chain = config.modelConfigService.resolveChain('lite', context);
|
|
@@ -52,6 +54,7 @@ export function resolvePolicyChain(config, preferredModel, wrapsAround = false)
|
|
|
52
54
|
if (!chain) {
|
|
53
55
|
const isAutoSelection = isAutoPreferred || isAutoConfigured;
|
|
54
56
|
const previewEnabled = hasAccessToPreview &&
|
|
57
|
+
configuredModel !== DEFAULT_GEMINI_MODEL_AUTO &&
|
|
55
58
|
(isGemini3Model(resolvedModel, config) ||
|
|
56
59
|
normalizedPreferredModel === PREVIEW_GEMINI_MODEL_AUTO ||
|
|
57
60
|
configuredModel === PREVIEW_GEMINI_MODEL_AUTO);
|
|
@@ -74,16 +77,18 @@ export function resolvePolicyChain(config, preferredModel, wrapsAround = false)
|
|
|
74
77
|
else if (isOriginallyGemini3 || isAutoPreferred || isAutoConfigured) {
|
|
75
78
|
const isAutoSelection = isAutoPreferred || isAutoConfigured;
|
|
76
79
|
if (hasAccessToPreview) {
|
|
77
|
-
const previewEnabled =
|
|
78
|
-
|
|
79
|
-
|
|
80
|
+
const previewEnabled = configuredModel !== DEFAULT_GEMINI_MODEL_AUTO &&
|
|
81
|
+
(isOriginallyGemini3 ||
|
|
82
|
+
normalizedPreferredModel === PREVIEW_GEMINI_MODEL_AUTO ||
|
|
83
|
+
configuredModel === PREVIEW_GEMINI_MODEL_AUTO);
|
|
80
84
|
chain = getModelPolicyChain({
|
|
81
85
|
previewEnabled,
|
|
82
86
|
isAutoSelection,
|
|
83
87
|
userTier: config.getUserTier(),
|
|
84
88
|
useGemini31,
|
|
85
89
|
useCustomToolModel,
|
|
86
|
-
|
|
90
|
+
useLatestFlash,
|
|
91
|
+
useLatestFlashLite,
|
|
87
92
|
});
|
|
88
93
|
}
|
|
89
94
|
else {
|
|
@@ -95,7 +100,8 @@ export function resolvePolicyChain(config, preferredModel, wrapsAround = false)
|
|
|
95
100
|
userTier: config.getUserTier(),
|
|
96
101
|
useGemini31,
|
|
97
102
|
useCustomToolModel,
|
|
98
|
-
|
|
103
|
+
useLatestFlash,
|
|
104
|
+
useLatestFlashLite,
|
|
99
105
|
});
|
|
100
106
|
}
|
|
101
107
|
}
|
|
@@ -178,9 +184,9 @@ export function createAvailabilityContextProvider(config, modelGetter) {
|
|
|
178
184
|
export function selectModelForAvailability(config, requestedModel) {
|
|
179
185
|
const chain = resolvePolicyChain(config, requestedModel);
|
|
180
186
|
const selection = config
|
|
181
|
-
.getModelAvailabilityService()
|
|
182
|
-
|
|
183
|
-
if (selection
|
|
187
|
+
.getModelAvailabilityService?.()
|
|
188
|
+
?.selectFirstAvailable(chain.map((p) => p.model));
|
|
189
|
+
if (selection?.selectedModel)
|
|
184
190
|
return selection;
|
|
185
191
|
const backupModel = chain.find((p) => p.isLastResort)?.model ?? DEFAULT_GEMINI_MODEL;
|
|
186
192
|
return { selectedModel: backupModel, skipped: [] };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policyHelpers.js","sourceRoot":"","sources":["../../../src/availability/policyHelpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,+BAA+B,EAC/B,oBAAoB,EACpB,yBAAyB,EACzB,WAAW,EACX,cAAc,EACd,YAAY,GACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,cAAuB,EACvB,cAAuB,KAAK;IAE5B,MAAM,wBAAwB,GAAG,cAAc;QAC7C,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,eAAe,GAAG,gBAAgB,CACtC,wBAAwB,IAAI,MAAM,CAAC,cAAc,EAAE,EAAE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAC3E,CAAC;IACF,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE5D,IAAI,KAAmC,CAAC;IACxC,MAAM,WAAW,GAAG,MAAM,CAAC,uBAAuB,EAAE,EAAE,IAAI,KAAK,CAAC;IAChE,MAAM,kBAAkB,GAAG,MAAM,CAAC,yBAAyB,EAAE,EAAE,IAAI,KAAK,CAAC;IACzE,MAAM,kBAAkB,GAAG,MAAM,CAAC,0BAA0B,EAAE,EAAE,IAAI,KAAK,CAAC;IAC1E,MAAM,
|
|
1
|
+
{"version":3,"file":"policyHelpers.js","sourceRoot":"","sources":["../../../src/availability/policyHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* Copyright 2025 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
6
|
+
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
7
7
|
import { resolvePolicyChain, buildFallbackPolicyContext, applyModelSelection, applyAvailabilityTransition, } from './policyHelpers.js';
|
|
8
8
|
import { createDefaultPolicy, SILENT_ACTIONS } from './policyCatalog.js';
|
|
9
|
-
import { DEFAULT_GEMINI_FLASH_LITE_MODEL, DEFAULT_GEMINI_MODEL_AUTO, PREVIEW_GEMINI_3_1_CUSTOM_TOOLS_MODEL, PREVIEW_GEMINI_3_1_MODEL, } from '../config/models.js';
|
|
9
|
+
import { DEFAULT_GEMINI_FLASH_LITE_MODEL, BASE_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_MODEL_AUTO, PREVIEW_GEMINI_3_1_CUSTOM_TOOLS_MODEL, PREVIEW_GEMINI_3_1_MODEL, resetModelsForTesting, } from '../config/models.js';
|
|
10
10
|
import { AuthType } from '../core/contentGenerator.js';
|
|
11
11
|
import { ModelConfigService } from '../services/modelConfigService.js';
|
|
12
12
|
import { DEFAULT_MODEL_CONFIGS } from '../config/defaultModelConfigs.js';
|
|
@@ -32,6 +32,12 @@ const createMockConfig = (overrides = {}) => {
|
|
|
32
32
|
return config;
|
|
33
33
|
};
|
|
34
34
|
describe('policyHelpers', () => {
|
|
35
|
+
beforeEach(() => {
|
|
36
|
+
resetModelsForTesting();
|
|
37
|
+
});
|
|
38
|
+
afterEach(() => {
|
|
39
|
+
resetModelsForTesting();
|
|
40
|
+
});
|
|
35
41
|
describe('resolvePolicyChain', () => {
|
|
36
42
|
it('returns a single-model chain for a custom model', () => {
|
|
37
43
|
const config = createMockConfig({
|
|
@@ -56,7 +62,7 @@ describe('policyHelpers', () => {
|
|
|
56
62
|
// Expect default chain [Pro, Flash]
|
|
57
63
|
expect(chain).toHaveLength(2);
|
|
58
64
|
expect(chain[0]?.model).toBe('gemini-2.5-pro');
|
|
59
|
-
expect(chain[1]?.model).toBe(
|
|
65
|
+
expect(chain[1]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
60
66
|
});
|
|
61
67
|
it('uses auto chain when preferred model is auto', () => {
|
|
62
68
|
const config = createMockConfig({
|
|
@@ -65,7 +71,7 @@ describe('policyHelpers', () => {
|
|
|
65
71
|
const chain = resolvePolicyChain(config, DEFAULT_GEMINI_MODEL_AUTO);
|
|
66
72
|
expect(chain).toHaveLength(2);
|
|
67
73
|
expect(chain[0]?.model).toBe('gemini-2.5-pro');
|
|
68
|
-
expect(chain[1]?.model).toBe(
|
|
74
|
+
expect(chain[1]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
69
75
|
});
|
|
70
76
|
it('uses auto chain when configured model is auto even if preferred is concrete', () => {
|
|
71
77
|
const config = createMockConfig({
|
|
@@ -74,16 +80,16 @@ describe('policyHelpers', () => {
|
|
|
74
80
|
const chain = resolvePolicyChain(config, 'gemini-2.5-pro');
|
|
75
81
|
expect(chain).toHaveLength(2);
|
|
76
82
|
expect(chain[0]?.model).toBe('gemini-2.5-pro');
|
|
77
|
-
expect(chain[1]?.model).toBe(
|
|
83
|
+
expect(chain[1]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
78
84
|
});
|
|
79
85
|
it('starts chain from preferredModel when model is "auto"', () => {
|
|
80
86
|
const config = createMockConfig({
|
|
81
87
|
getModel: () => 'auto',
|
|
82
88
|
});
|
|
83
|
-
const chain = resolvePolicyChain(config,
|
|
89
|
+
const chain = resolvePolicyChain(config, BASE_GEMINI_FLASH_MODEL);
|
|
84
90
|
// Due to Gemini 2.x wrapsAround, the chain will contain both flash and pro
|
|
85
91
|
expect(chain.length).toBeGreaterThanOrEqual(1);
|
|
86
|
-
expect(chain[0]?.model).toBe(
|
|
92
|
+
expect(chain[0]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
87
93
|
});
|
|
88
94
|
it('returns flash-lite chain when preferred model is flash-lite', () => {
|
|
89
95
|
const config = createMockConfig({
|
|
@@ -92,7 +98,7 @@ describe('policyHelpers', () => {
|
|
|
92
98
|
const chain = resolvePolicyChain(config, DEFAULT_GEMINI_FLASH_LITE_MODEL);
|
|
93
99
|
expect(chain).toHaveLength(3);
|
|
94
100
|
expect(chain[0]?.model).toBe('gemini-3.1-flash-lite');
|
|
95
|
-
expect(chain[1]?.model).toBe(
|
|
101
|
+
expect(chain[1]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
96
102
|
expect(chain[2]?.model).toBe('gemini-2.5-pro');
|
|
97
103
|
});
|
|
98
104
|
it('returns flash-lite chain when configured model is flash-lite', () => {
|
|
@@ -102,16 +108,16 @@ describe('policyHelpers', () => {
|
|
|
102
108
|
const chain = resolvePolicyChain(config);
|
|
103
109
|
expect(chain).toHaveLength(3);
|
|
104
110
|
expect(chain[0]?.model).toBe('gemini-3.1-flash-lite');
|
|
105
|
-
expect(chain[1]?.model).toBe(
|
|
111
|
+
expect(chain[1]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
106
112
|
expect(chain[2]?.model).toBe('gemini-2.5-pro');
|
|
107
113
|
});
|
|
108
114
|
it('wraps around the chain when wrapsAround is true', () => {
|
|
109
115
|
const config = createMockConfig({
|
|
110
116
|
getModel: () => DEFAULT_GEMINI_MODEL_AUTO,
|
|
111
117
|
});
|
|
112
|
-
const chain = resolvePolicyChain(config,
|
|
118
|
+
const chain = resolvePolicyChain(config, BASE_GEMINI_FLASH_MODEL, true);
|
|
113
119
|
expect(chain).toHaveLength(2);
|
|
114
|
-
expect(chain[0]?.model).toBe(
|
|
120
|
+
expect(chain[0]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
115
121
|
expect(chain[1]?.model).toBe('gemini-2.5-pro');
|
|
116
122
|
});
|
|
117
123
|
it('proactively returns Gemini 2.5 chain if Gemini 3 requested but user lacks access', () => {
|
|
@@ -120,10 +126,10 @@ describe('policyHelpers', () => {
|
|
|
120
126
|
getHasAccessToPreviewModel: () => false,
|
|
121
127
|
});
|
|
122
128
|
const chain = resolvePolicyChain(config);
|
|
123
|
-
// Should downgrade to [Pro 2.5, Flash
|
|
129
|
+
// Should downgrade to [Pro 2.5, Flash 3.5]
|
|
124
130
|
expect(chain).toHaveLength(2);
|
|
125
131
|
expect(chain[0]?.model).toBe('gemini-2.5-pro');
|
|
126
|
-
expect(chain[1]?.model).toBe(
|
|
132
|
+
expect(chain[1]?.model).toBe(BASE_GEMINI_FLASH_MODEL);
|
|
127
133
|
});
|
|
128
134
|
it('returns Gemini 3.1 Pro chain when launched and auto-gemini-3 requested', () => {
|
|
129
135
|
const config = createMockConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policyHelpers.test.js","sourceRoot":"","sources":["../../../src/availability/policyHelpers.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"policyHelpers.test.js","sourceRoot":"","sources":["../../../src/availability/policyHelpers.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,9 @@ export declare const ExperimentFlags: {
|
|
|
18
18
|
readonly GEMINI_3_1_PRO_LAUNCHED: 45760185;
|
|
19
19
|
readonly PRO_MODEL_NO_ACCESS: 45768879;
|
|
20
20
|
readonly DEFAULT_REQUEST_TIMEOUT: 45773134;
|
|
21
|
+
readonly LATEST_FLASH_GA_LAUNCHED: 45842815;
|
|
22
|
+
readonly LATEST_FLASH_LITE_GA_LAUNCHED: 45827489;
|
|
23
|
+
/** @deprecated Use LATEST_FLASH_GA_LAUNCHED */
|
|
21
24
|
readonly GEMINI_3_5_FLASH_GA_LAUNCHED: 45780819;
|
|
22
25
|
};
|
|
23
26
|
export type ExperimentFlagName = (typeof ExperimentFlags)[keyof typeof ExperimentFlags];
|
|
@@ -18,6 +18,9 @@ export const ExperimentFlags = {
|
|
|
18
18
|
GEMINI_3_1_PRO_LAUNCHED: 45760185,
|
|
19
19
|
PRO_MODEL_NO_ACCESS: 45768879,
|
|
20
20
|
DEFAULT_REQUEST_TIMEOUT: 45773134,
|
|
21
|
+
LATEST_FLASH_GA_LAUNCHED: 45842815,
|
|
22
|
+
LATEST_FLASH_LITE_GA_LAUNCHED: 45827489,
|
|
23
|
+
/** @deprecated Use LATEST_FLASH_GA_LAUNCHED */
|
|
21
24
|
GEMINI_3_5_FLASH_GA_LAUNCHED: 45780819,
|
|
22
25
|
};
|
|
23
26
|
//# sourceMappingURL=flagNames.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flagNames.js","sourceRoot":"","sources":["../../../../src/code_assist/experiments/flagNames.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,6BAA6B,EAAE,QAAQ;IACvC,YAAY,EAAE,QAAQ;IACtB,8BAA8B,EAAE,QAAQ;IACxC,2BAA2B,EAAE,QAAQ;IACrC,cAAc,EAAE,QAAQ;IACxB,wBAAwB,EAAE,QAAQ;IAClC,oBAAoB,EAAE,QAAQ;IAC9B,qBAAqB,EAAE,QAAQ;IAC/B,4BAA4B,EAAE,QAAQ;IACtC,0BAA0B,EAAE,QAAQ;IACpC,2BAA2B,EAAE,QAAQ;IACrC,uBAAuB,EAAE,QAAQ;IACjC,mBAAmB,EAAE,QAAQ;IAC7B,uBAAuB,EAAE,QAAQ;IACjC,4BAA4B,EAAE,QAAQ;CAC9B,CAAC"}
|
|
1
|
+
{"version":3,"file":"flagNames.js","sourceRoot":"","sources":["../../../../src/code_assist/experiments/flagNames.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,6BAA6B,EAAE,QAAQ;IACvC,YAAY,EAAE,QAAQ;IACtB,8BAA8B,EAAE,QAAQ;IACxC,2BAA2B,EAAE,QAAQ;IACrC,cAAc,EAAE,QAAQ;IACxB,wBAAwB,EAAE,QAAQ;IAClC,oBAAoB,EAAE,QAAQ;IAC9B,qBAAqB,EAAE,QAAQ;IAC/B,4BAA4B,EAAE,QAAQ;IACtC,0BAA0B,EAAE,QAAQ;IACpC,2BAA2B,EAAE,QAAQ;IACrC,uBAAuB,EAAE,QAAQ;IACjC,mBAAmB,EAAE,QAAQ;IAC7B,uBAAuB,EAAE,QAAQ;IACjC,wBAAwB,EAAE,QAAQ;IAClC,6BAA6B,EAAE,QAAQ;IACvC,+CAA+C;IAC/C,4BAA4B,EAAE,QAAQ;CAC9B,CAAC"}
|
|
@@ -1136,11 +1136,15 @@ export declare class Config implements McpContext, AgentLoopContext {
|
|
|
1136
1136
|
getUseCustomToolModelSync(): boolean;
|
|
1137
1137
|
private isGemini31LaunchedForAuthType;
|
|
1138
1138
|
/**
|
|
1139
|
-
* Returns whether Gemini 3.
|
|
1140
|
-
*
|
|
1141
|
-
* Note: This method should only be called after startup, once experiments have been loaded.
|
|
1139
|
+
* Returns whether the latest Flash GA model (currently Gemini 3.8 Flash) has been launched.
|
|
1142
1140
|
*/
|
|
1141
|
+
hasLatestFlashGAAccess(): boolean;
|
|
1142
|
+
/** @deprecated Use hasLatestFlashGAAccess() */
|
|
1143
1143
|
hasGemini35FlashGAAccess(): boolean;
|
|
1144
|
+
/**
|
|
1145
|
+
* Returns whether the latest Flash Lite GA model (currently Gemini 3.5 Flash Lite) has been launched.
|
|
1146
|
+
*/
|
|
1147
|
+
hasLatestFlashLiteGAAccess(): boolean;
|
|
1144
1148
|
/**
|
|
1145
1149
|
* Returns whether Gemini 3.1 has been launched.
|
|
1146
1150
|
*
|
|
@@ -45,7 +45,7 @@ import { SandboxedFileSystemService } from '../services/sandboxedFileSystemServi
|
|
|
45
45
|
import { initializeTelemetry, DEFAULT_TELEMETRY_TARGET, DEFAULT_OTLP_ENDPOINT, uiTelemetryService, } from '../telemetry/index.js';
|
|
46
46
|
import { coreEvents, CoreEvent } from '../utils/events.js';
|
|
47
47
|
import { tokenLimit } from '../core/tokenLimits.js';
|
|
48
|
-
import { DEFAULT_GEMINI_EMBEDDING_MODEL, DEFAULT_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_MODEL_AUTO, isAutoModel, isPreviewModel, isGemini2Model, PREVIEW_GEMINI_FLASH_MODEL, resolveModel, setFlashModels,
|
|
48
|
+
import { DEFAULT_GEMINI_EMBEDDING_MODEL, DEFAULT_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_MODEL_AUTO, isAutoModel, isPreviewModel, isGemini2Model, PREVIEW_GEMINI_FLASH_MODEL, resolveModel, setFlashModels, BASE_GEMINI_FLASH_MODEL, LATEST_GEMINI_FLASH_MODEL, LEGACY_CCPA_FLASH_MODEL, BASE_GEMINI_FLASH_LITE_MODEL, LATEST_GEMINI_FLASH_LITE_MODEL, setFlashLiteModel, } from './models.js';
|
|
49
49
|
import { shouldAttemptBrowserLaunch } from '../utils/browser.js';
|
|
50
50
|
import { checkPathTrust } from '../utils/trust.js';
|
|
51
51
|
import { WriteTodosTool } from '../tools/write-todos.js';
|
|
@@ -1247,7 +1247,7 @@ export class Config {
|
|
|
1247
1247
|
if (!isAutoModel(model, this)) {
|
|
1248
1248
|
return {};
|
|
1249
1249
|
}
|
|
1250
|
-
const primaryModel = resolveModel(model, this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.
|
|
1250
|
+
const primaryModel = resolveModel(model, this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.hasLatestFlashGAAccess(), this.hasLatestFlashLiteGAAccess());
|
|
1251
1251
|
const isPreview = isPreviewModel(primaryModel, this);
|
|
1252
1252
|
const proModel = primaryModel;
|
|
1253
1253
|
const flashModel = isPreview
|
|
@@ -1274,7 +1274,7 @@ export class Config {
|
|
|
1274
1274
|
if (pooled.remaining !== undefined) {
|
|
1275
1275
|
return pooled.remaining;
|
|
1276
1276
|
}
|
|
1277
|
-
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.
|
|
1277
|
+
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.hasLatestFlashGAAccess(), this.hasLatestFlashLiteGAAccess());
|
|
1278
1278
|
return this.modelQuotas.get(primaryModel)?.remaining;
|
|
1279
1279
|
}
|
|
1280
1280
|
getQuotaLimit() {
|
|
@@ -1282,7 +1282,7 @@ export class Config {
|
|
|
1282
1282
|
if (pooled.limit !== undefined) {
|
|
1283
1283
|
return pooled.limit;
|
|
1284
1284
|
}
|
|
1285
|
-
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.
|
|
1285
|
+
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.hasLatestFlashGAAccess(), this.hasLatestFlashLiteGAAccess());
|
|
1286
1286
|
return this.modelQuotas.get(primaryModel)?.limit;
|
|
1287
1287
|
}
|
|
1288
1288
|
getQuotaResetTime() {
|
|
@@ -1290,7 +1290,7 @@ export class Config {
|
|
|
1290
1290
|
if (pooled.resetTime !== undefined) {
|
|
1291
1291
|
return pooled.resetTime;
|
|
1292
1292
|
}
|
|
1293
|
-
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.
|
|
1293
|
+
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync(), this.getUseCustomToolModelSync(), this.getHasAccessToPreviewModel(), this, this.hasLatestFlashGAAccess(), this.hasLatestFlashLiteGAAccess());
|
|
1294
1294
|
return this.modelQuotas.get(primaryModel)?.resetTime;
|
|
1295
1295
|
}
|
|
1296
1296
|
getEmbeddingModel() {
|
|
@@ -1443,8 +1443,18 @@ export class Config {
|
|
|
1443
1443
|
continue;
|
|
1444
1444
|
}
|
|
1445
1445
|
let modelId = bucket.modelId;
|
|
1446
|
-
if (modelId ===
|
|
1447
|
-
modelId
|
|
1446
|
+
if (modelId === LEGACY_CCPA_FLASH_MODEL ||
|
|
1447
|
+
modelId === BASE_GEMINI_FLASH_MODEL ||
|
|
1448
|
+
modelId === LATEST_GEMINI_FLASH_MODEL) {
|
|
1449
|
+
modelId = this.hasLatestFlashGAAccess()
|
|
1450
|
+
? LATEST_GEMINI_FLASH_MODEL
|
|
1451
|
+
: BASE_GEMINI_FLASH_MODEL;
|
|
1452
|
+
}
|
|
1453
|
+
else if (modelId === BASE_GEMINI_FLASH_LITE_MODEL ||
|
|
1454
|
+
modelId === LATEST_GEMINI_FLASH_LITE_MODEL) {
|
|
1455
|
+
modelId = this.hasLatestFlashLiteGAAccess()
|
|
1456
|
+
? LATEST_GEMINI_FLASH_LITE_MODEL
|
|
1457
|
+
: BASE_GEMINI_FLASH_LITE_MODEL;
|
|
1448
1458
|
}
|
|
1449
1459
|
let remaining;
|
|
1450
1460
|
let limit;
|
|
@@ -2371,36 +2381,49 @@ export class Config {
|
|
|
2371
2381
|
authType === AuthType.GATEWAY);
|
|
2372
2382
|
}
|
|
2373
2383
|
/**
|
|
2374
|
-
* Returns whether Gemini 3.
|
|
2375
|
-
*
|
|
2376
|
-
* Note: This method should only be called after startup, once experiments have been loaded.
|
|
2384
|
+
* Returns whether the latest Flash GA model (currently Gemini 3.8 Flash) has been launched.
|
|
2377
2385
|
*/
|
|
2378
|
-
|
|
2386
|
+
hasLatestFlashGAAccess() {
|
|
2379
2387
|
const authType = this.contentGeneratorConfig?.authType;
|
|
2380
2388
|
const hasAccess = (() => {
|
|
2381
2389
|
if (this.isGemini31LaunchedForAuthType(authType)) {
|
|
2382
2390
|
return true;
|
|
2383
2391
|
}
|
|
2384
|
-
return (this.experiments?.flags[ExperimentFlags.
|
|
2392
|
+
return (this.experiments?.flags[ExperimentFlags.LATEST_FLASH_GA_LAUNCHED]
|
|
2385
2393
|
?.boolValue ?? false);
|
|
2386
2394
|
})();
|
|
2387
|
-
// Used to set default flash models based on access
|
|
2388
|
-
// TODO: Remove once the experiment for 3_5 flash rollut can be cleaned up.
|
|
2389
2395
|
if (hasAccess) {
|
|
2390
|
-
// Gemini API key users should have the ability to manually select the
|
|
2391
|
-
// old preview flash model.
|
|
2392
2396
|
if (authType === AuthType.USE_GEMINI) {
|
|
2393
|
-
setFlashModels('gemini-3-flash-preview',
|
|
2397
|
+
setFlashModels('gemini-3-flash-preview', LATEST_GEMINI_FLASH_MODEL);
|
|
2394
2398
|
}
|
|
2395
2399
|
else {
|
|
2396
|
-
setFlashModels(
|
|
2400
|
+
setFlashModels(LATEST_GEMINI_FLASH_MODEL, LATEST_GEMINI_FLASH_MODEL);
|
|
2397
2401
|
}
|
|
2398
2402
|
}
|
|
2399
2403
|
else {
|
|
2400
|
-
setFlashModels('gemini-3-flash-preview',
|
|
2404
|
+
setFlashModels('gemini-3-flash-preview', BASE_GEMINI_FLASH_MODEL);
|
|
2401
2405
|
}
|
|
2402
2406
|
return hasAccess;
|
|
2403
2407
|
}
|
|
2408
|
+
/** @deprecated Use hasLatestFlashGAAccess() */
|
|
2409
|
+
hasGemini35FlashGAAccess() {
|
|
2410
|
+
return this.hasLatestFlashGAAccess();
|
|
2411
|
+
}
|
|
2412
|
+
/**
|
|
2413
|
+
* Returns whether the latest Flash Lite GA model (currently Gemini 3.5 Flash Lite) has been launched.
|
|
2414
|
+
*/
|
|
2415
|
+
hasLatestFlashLiteGAAccess() {
|
|
2416
|
+
const authType = this.contentGeneratorConfig?.authType;
|
|
2417
|
+
const hasAccess = (() => {
|
|
2418
|
+
if (this.isGemini31LaunchedForAuthType(authType)) {
|
|
2419
|
+
return true;
|
|
2420
|
+
}
|
|
2421
|
+
return (this.experiments?.flags[ExperimentFlags.LATEST_FLASH_LITE_GA_LAUNCHED]
|
|
2422
|
+
?.boolValue ?? false);
|
|
2423
|
+
})();
|
|
2424
|
+
setFlashLiteModel(hasAccess ? LATEST_GEMINI_FLASH_LITE_MODEL : BASE_GEMINI_FLASH_LITE_MODEL);
|
|
2425
|
+
return hasAccess;
|
|
2426
|
+
}
|
|
2404
2427
|
/**
|
|
2405
2428
|
* Returns whether Gemini 3.1 has been launched.
|
|
2406
2429
|
*
|
|
@@ -2819,6 +2842,8 @@ export class Config {
|
|
|
2819
2842
|
compact: false,
|
|
2820
2843
|
});
|
|
2821
2844
|
debugLogger.debug('Experiments loaded', summaryString);
|
|
2845
|
+
this.hasLatestFlashGAAccess();
|
|
2846
|
+
this.hasLatestFlashLiteGAAccess();
|
|
2822
2847
|
}
|
|
2823
2848
|
onAgentsRefreshed = async () => {
|
|
2824
2849
|
// Propagate updates to the active chat session
|