fix(core): pin AuthType.GATEWAY to use Gemini 3.1 Pro/Flash Lite by default (#24375)

This commit is contained in:
Sri Pasumarthi
2026-03-31 17:25:59 -07:00
committed by GitHub
parent fd5c103f99
commit 1b265f343f
2 changed files with 59 additions and 8 deletions

View File

@@ -591,6 +591,55 @@ describe('Server Config (config.ts)', () => {
expect(await config.getResolvedClassifierThreshold()).toBe(90);
});
});
describe('getGemini31LaunchedSync', () => {
it.each([AuthType.USE_GEMINI, AuthType.USE_VERTEX_AI, AuthType.GATEWAY])(
'should return true for %s',
async (authType) => {
const config = new Config(baseParams);
vi.mocked(createContentGeneratorConfig).mockResolvedValue({
authType,
});
await config.refreshAuth(authType);
expect(config.getGemini31LaunchedSync()).toBe(true);
},
);
it('should fallback to experiments for other auth types', async () => {
vi.mocked(getExperiments).mockResolvedValue({
experimentIds: [],
flags: {
[ExperimentFlags.GEMINI_3_1_PRO_LAUNCHED]: {
flagId: ExperimentFlags.GEMINI_3_1_PRO_LAUNCHED,
boolValue: true,
},
},
});
const config = new Config(baseParams);
vi.mocked(createContentGeneratorConfig).mockResolvedValue({
authType: AuthType.LOGIN_WITH_GOOGLE,
});
await config.refreshAuth(AuthType.LOGIN_WITH_GOOGLE);
expect(config.getGemini31LaunchedSync()).toBe(true);
});
});
describe('getGemini31FlashLiteLaunchedSync', () => {
it.each([AuthType.USE_GEMINI, AuthType.USE_VERTEX_AI, AuthType.GATEWAY])(
'should return true for %s',
async (authType) => {
const config = new Config(baseParams);
vi.mocked(createContentGeneratorConfig).mockResolvedValue({
authType,
});
await config.refreshAuth(authType);
expect(config.getGemini31FlashLiteLaunchedSync()).toBe(true);
},
);
});
});
describe('refreshAuth', () => {

View File

@@ -3083,6 +3083,14 @@ export class Config implements McpContext, AgentLoopContext {
return useGemini3_1 && authType === AuthType.USE_GEMINI;
}
private isGemini31LaunchedForAuthType(authType?: AuthType): boolean {
return (
authType === AuthType.USE_GEMINI ||
authType === AuthType.USE_VERTEX_AI ||
authType === AuthType.GATEWAY
);
}
/**
* Returns whether Gemini 3.1 has been launched.
*
@@ -3092,10 +3100,7 @@ export class Config implements McpContext, AgentLoopContext {
*/
getGemini31LaunchedSync(): boolean {
const authType = this.contentGeneratorConfig?.authType;
if (
authType === AuthType.USE_GEMINI ||
authType === AuthType.USE_VERTEX_AI
) {
if (this.isGemini31LaunchedForAuthType(authType)) {
return true;
}
return (
@@ -3113,10 +3118,7 @@ export class Config implements McpContext, AgentLoopContext {
*/
getGemini31FlashLiteLaunchedSync(): boolean {
const authType = this.contentGeneratorConfig?.authType;
if (
authType === AuthType.USE_GEMINI ||
authType === AuthType.USE_VERTEX_AI
) {
if (this.isGemini31LaunchedForAuthType(authType)) {
return true;
}
return (