update snapshot for google/gemma-4-31b release
Made-with: Cursor
This commit is contained in:
committed by
pullfrog[bot]
parent
b8c4d5b716
commit
536fae692a
@@ -107843,7 +107843,6 @@ var providers = {
|
|||||||
resolve: "opencode/mimo-v2-pro-free",
|
resolve: "opencode/mimo-v2-pro-free",
|
||||||
envVars: [],
|
envVars: [],
|
||||||
isFree: true,
|
isFree: true,
|
||||||
deprecated: true,
|
|
||||||
fallback: "opencode/nemotron-3-super-free"
|
fallback: "opencode/nemotron-3-super-free"
|
||||||
},
|
},
|
||||||
"minimax-m2.5-free": {
|
"minimax-m2.5-free": {
|
||||||
@@ -107954,7 +107953,6 @@ var modelAliases = Object.entries(providers).flatMap(
|
|||||||
openRouterResolve: def.openRouterResolve,
|
openRouterResolve: def.openRouterResolve,
|
||||||
preferred: def.preferred ?? false,
|
preferred: def.preferred ?? false,
|
||||||
isFree: def.isFree ?? false,
|
isFree: def.isFree ?? false,
|
||||||
deprecated: def.deprecated ?? false,
|
|
||||||
fallback: def.fallback
|
fallback: def.fallback
|
||||||
}))
|
}))
|
||||||
);
|
);
|
||||||
@@ -107967,8 +107965,7 @@ function resolveCliModel(slug) {
|
|||||||
visited.add(current);
|
visited.add(current);
|
||||||
const alias = modelAliases.find((a) => a.slug === current);
|
const alias = modelAliases.find((a) => a.slug === current);
|
||||||
if (!alias) return void 0;
|
if (!alias) return void 0;
|
||||||
if (!alias.deprecated) return alias.resolve;
|
if (!alias.fallback) return alias.resolve;
|
||||||
if (!alias.fallback) return void 0;
|
|
||||||
current = alias.fallback;
|
current = alias.fallback;
|
||||||
}
|
}
|
||||||
return void 0;
|
return void 0;
|
||||||
|
|||||||
@@ -22,9 +22,7 @@ export interface ModelAlias {
|
|||||||
preferred: boolean;
|
preferred: boolean;
|
||||||
/** whether this alias is free and requires no API key */
|
/** whether this alias is free and requires no API key */
|
||||||
isFree: boolean;
|
isFree: boolean;
|
||||||
/** model is deprecated on models.dev — resolve via fallback chain instead */
|
/** slug of a replacement model — presence implies this model is deprecated */
|
||||||
deprecated: boolean;
|
|
||||||
/** slug of another model to resolve to when this one is deprecated */
|
|
||||||
fallback: string | undefined;
|
fallback: string | undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -37,9 +35,7 @@ interface ModelDef {
|
|||||||
preferred?: boolean;
|
preferred?: boolean;
|
||||||
envVars?: readonly string[];
|
envVars?: readonly string[];
|
||||||
isFree?: boolean;
|
isFree?: boolean;
|
||||||
/** model is deprecated on models.dev — kept for backward compatibility, resolved via fallback */
|
/** slug of a replacement model — presence implies this model is deprecated */
|
||||||
deprecated?: boolean;
|
|
||||||
/** slug of another model to fall back to (e.g. "opencode/nemotron-3-super-free") */
|
|
||||||
fallback?: string;
|
fallback?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -229,7 +225,6 @@ export const providers = {
|
|||||||
resolve: "opencode/mimo-v2-pro-free",
|
resolve: "opencode/mimo-v2-pro-free",
|
||||||
envVars: [],
|
envVars: [],
|
||||||
isFree: true,
|
isFree: true,
|
||||||
deprecated: true,
|
|
||||||
fallback: "opencode/nemotron-3-super-free",
|
fallback: "opencode/nemotron-3-super-free",
|
||||||
},
|
},
|
||||||
"minimax-m2.5-free": {
|
"minimax-m2.5-free": {
|
||||||
@@ -358,7 +353,6 @@ export const modelAliases: ModelAlias[] = Object.entries(providers).flatMap(
|
|||||||
openRouterResolve: def.openRouterResolve,
|
openRouterResolve: def.openRouterResolve,
|
||||||
preferred: def.preferred ?? false,
|
preferred: def.preferred ?? false,
|
||||||
isFree: def.isFree ?? false,
|
isFree: def.isFree ?? false,
|
||||||
deprecated: def.deprecated ?? false,
|
|
||||||
fallback: def.fallback,
|
fallback: def.fallback,
|
||||||
}))
|
}))
|
||||||
);
|
);
|
||||||
@@ -385,8 +379,7 @@ export function resolveCliModel(slug: string): string | undefined {
|
|||||||
visited.add(current);
|
visited.add(current);
|
||||||
const alias = modelAliases.find((a) => a.slug === current);
|
const alias = modelAliases.find((a) => a.slug === current);
|
||||||
if (!alias) return undefined;
|
if (!alias) return undefined;
|
||||||
if (!alias.deprecated) return alias.resolve;
|
if (!alias.fallback) return alias.resolve;
|
||||||
if (!alias.fallback) return undefined;
|
|
||||||
current = alias.fallback;
|
current = alias.fallback;
|
||||||
}
|
}
|
||||||
return undefined;
|
return undefined;
|
||||||
|
|||||||
@@ -37687,7 +37687,6 @@ var providers = {
|
|||||||
resolve: "opencode/mimo-v2-pro-free",
|
resolve: "opencode/mimo-v2-pro-free",
|
||||||
envVars: [],
|
envVars: [],
|
||||||
isFree: true,
|
isFree: true,
|
||||||
deprecated: true,
|
|
||||||
fallback: "opencode/nemotron-3-super-free"
|
fallback: "opencode/nemotron-3-super-free"
|
||||||
},
|
},
|
||||||
"minimax-m2.5-free": {
|
"minimax-m2.5-free": {
|
||||||
@@ -37776,7 +37775,6 @@ var modelAliases = Object.entries(providers).flatMap(
|
|||||||
openRouterResolve: def.openRouterResolve,
|
openRouterResolve: def.openRouterResolve,
|
||||||
preferred: def.preferred ?? false,
|
preferred: def.preferred ?? false,
|
||||||
isFree: def.isFree ?? false,
|
isFree: def.isFree ?? false,
|
||||||
deprecated: def.deprecated ?? false,
|
|
||||||
fallback: def.fallback
|
fallback: def.fallback
|
||||||
}))
|
}))
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -11,8 +11,8 @@ exports[`latest model per provider snapshot > matches snapshot 1`] = `
|
|||||||
"releaseDate": "2025-12-01",
|
"releaseDate": "2025-12-01",
|
||||||
},
|
},
|
||||||
"google": {
|
"google": {
|
||||||
"modelId": "gemini-3.1-flash-lite-preview",
|
"modelId": "gemma-4-31b",
|
||||||
"releaseDate": "2026-03-03",
|
"releaseDate": "2026-04-02",
|
||||||
},
|
},
|
||||||
"moonshotai": {
|
"moonshotai": {
|
||||||
"modelId": "kimi-k2.5",
|
"modelId": "kimi-k2.5",
|
||||||
|
|||||||
+3
-12
@@ -38,7 +38,7 @@ describe("models.dev validity", async () => {
|
|||||||
).toBeDefined();
|
).toBeDefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!alias.deprecated) {
|
if (!alias.fallback) {
|
||||||
it(`${alias.resolve} is not deprecated`, () => {
|
it(`${alias.resolve} is not deprecated`, () => {
|
||||||
const model = data[parsed.provider]?.models[parsed.modelId];
|
const model = data[parsed.provider]?.models[parsed.modelId];
|
||||||
if (!model) return; // covered by existence test above
|
if (!model) return; // covered by existence test above
|
||||||
@@ -47,17 +47,8 @@ describe("models.dev validity", async () => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// deprecated models must have a fallback that resolves to a non-deprecated model
|
for (const alias of modelAliases.filter((a) => a.fallback)) {
|
||||||
const deprecatedAliases = modelAliases.filter((a) => a.deprecated);
|
it(`${alias.slug} fallback chain resolves to a non-deprecated model`, () => {
|
||||||
for (const alias of deprecatedAliases) {
|
|
||||||
it(`${alias.slug} (deprecated) has a fallback`, () => {
|
|
||||||
expect(
|
|
||||||
alias.fallback,
|
|
||||||
`deprecated model "${alias.slug}" is missing a fallback`
|
|
||||||
).toBeDefined();
|
|
||||||
});
|
|
||||||
|
|
||||||
it(`${alias.slug} (deprecated) fallback chain resolves`, () => {
|
|
||||||
const resolved = resolveCliModel(alias.slug);
|
const resolved = resolveCliModel(alias.slug);
|
||||||
expect(
|
expect(
|
||||||
resolved,
|
resolved,
|
||||||
|
|||||||
Reference in New Issue
Block a user