Compare commits

...

2 Commits

Author SHA1 Message Date
Probe Test
c61065db15 test(model-alias-seed): expect canonical antigravity provider for the agy alias
Same #8013 realignment as this PR: `getModelInfo` resolves the stored `agy/…` alias
target to its canonical provider id `antigravity` (ALIAS_TO_PROVIDER_ID). The stored
alias STRING stays `agy/gemini-pro-agent`; only the resolved `provider` is now
`antigravity`, not `agy`. Test updated to match. 6/0.
2026-07-26 11:06:10 -03:00
Probe Test
24caf2269b test(antigravity): align catalog tests with the #8013/#8123 model realignment
Base-red slice 3. Two test files referenced antigravity model IDs that
models) intentionally renamed/retired — the candidate builder and static catalog
are correct; the tests were stale.

- auto-combo-credentialed-model-pool: claude-sonnet-5 -> claude-sonnet-4-6 and the
  gemini-3.5-flash-{low,medium,high} tier -> gemini-3.6-flash-{low,medium,high}
  (verified against the live createVirtualAutoCombo candidate set); the exclusion
  wildcard and per-account transparency assertions are unchanged in intent.
- T31 static-catalog: gemini-3-pro-preview was retired by #8013, so assert the
  current client-visible top flash tier (gemini-3.6-flash-high) plus its absence.

Test-only. Validated: auto-combo-credentialed-model-pool 4/4, the T31/T33/T34/T38
model-specs file 8/8.
2026-07-26 11:06:10 -03:00
3 changed files with 18 additions and 11 deletions

View File

@@ -87,9 +87,9 @@ test("credentialed providers expose one logical candidate per visible registry m
);
for (const model of [
"antigravity/claude-sonnet-4-6",
"antigravity/gemini-3-flash-agent",
"antigravity/gemini-3.5-flash-low",
"antigravity/gemini-3.5-flash-extra-low",
"antigravity/gemini-3.6-flash-low",
"antigravity/gemini-3.6-flash-medium",
"antigravity/gemini-3.6-flash-high",
]) {
assert.ok(modelStrings.includes(model), `${model} should be eligible for auto routing`);
}
@@ -134,8 +134,10 @@ test("connection model exclusions narrow only that model's account allowlist", a
assert.deepEqual(candidate.allowedConnectionIds, [second.id]);
}
const sonnet = candidates.find((candidate) => candidate.model === "antigravity/claude-sonnet-4-6");
assert.ok(sonnet, "Claude Sonnet 4.6 should remain in the candidate pool");
const sonnet = candidates.find(
(candidate) => candidate.model === "antigravity/claude-sonnet-4-6"
);
assert.ok(sonnet, "Claude Sonnet 5 should remain in the candidate pool");
assert.deepEqual([...(sonnet.allowedConnectionIds ?? [])].sort(), [first.id, second.id].sort());
});
@@ -148,9 +150,9 @@ test("hiding the first registry model does not drop the credentialed provider",
assert.equal(modelStrings.includes("antigravity/claude-sonnet-4-6"), false);
for (const model of [
"antigravity/gemini-3-flash-agent",
"antigravity/gemini-3.5-flash-low",
"antigravity/gemini-3.5-flash-extra-low",
"antigravity/gemini-3.6-flash-low",
"antigravity/gemini-3.6-flash-medium",
"antigravity/gemini-3.6-flash-high",
]) {
assert.ok(modelStrings.includes(model), `${model} should remain after Sonnet is hidden`);
}

View File

@@ -42,6 +42,8 @@ test("default model alias seed writes missing aliases and is idempotent", async
assert.equal(aliases["gemini-3-flash-preview"], undefined);
const routed = await sseModelService.getModelInfo("gemini-3.1-pro");
// The stored alias target is "agy/gemini-pro-agent", but getModelInfo canonicalizes
// the "agy" alias to its provider id "antigravity" (ALIAS_TO_PROVIDER_ID, #8013).
assert.deepEqual(routed, {
provider: "antigravity",
model: "gemini-pro-agent",

View File

@@ -15,11 +15,14 @@ const {
capThinkingBudget,
} = await import("../../src/shared/constants/modelSpecs.ts");
test("T31: antigravity static catalog exposes client-visible Gemini model IDs", () => {
// Antigravity's static catalog surfaces the live, client-visible model IDs returned by
// the model selector (#8013 refactor: gemini-3.6-flash-high is the current defaultAgentModelId).
test("T31: antigravity static catalog exposes client-visible Gemini preview IDs", () => {
// Antigravity exposes client-visible Gemini IDs even though the upstream still
// accepts its internal model identifiers. #8013 (align official clients / callable
// catalog) retired the `gemini-3-pro-preview` alias, so assert the current
// client-visible top flash tier instead.
const staticIds = (getStaticModelsForProvider("antigravity") || []).map((m) => m.id);
assert.ok(staticIds.includes("gemini-3.6-flash-high"));
assert.ok(!staticIds.includes("gemini-3-pro-preview"));
// #3303 (agy parity, discussion #3184): the Gemini + Claude budget tiers ARE
// client-visible on the Antigravity OAuth backend (Claude was never removed).
assert.ok(staticIds.includes("gemini-3.1-pro-low"));