From 60d4cb997e4242d8887564ccd2ad702fad2afdbc Mon Sep 17 00:00:00 2001 From: can1357 Date: Sat, 8 Aug 2026 20:57:10 +0200 Subject: [PATCH] test(catalog): pinned copilot grok-4.5 migration to the responses route - The regenerated bundle (merged with PR #8021) now ships a responses-route github-copilot/grok-4.5, so the id legitimately resurfaces from the bundle when the migration refresh fails; the contract worth defending is that the stale cached completions route never returns and the unbundled long-context variant stays dropped. --- packages/catalog/test/github-copilot-model-limits.test.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/catalog/test/github-copilot-model-limits.test.ts b/packages/catalog/test/github-copilot-model-limits.test.ts index 2e9749a66..fae000eae 100644 --- a/packages/catalog/test/github-copilot-model-limits.test.ts +++ b/packages/catalog/test/github-copilot-model-limits.test.ts @@ -421,7 +421,12 @@ describe("github copilot model limits mapping", () => { const { models } = await manager.refresh("online-if-uncached"); expect(fetchMock).toHaveBeenCalledTimes(1); - expect(models.find(candidate => candidate.id === "grok-4.5")).toBeUndefined(); + // The bundled catalog now ships a responses-route grok-4.5, so the id + // resurfaces from the bundle after the failed refresh. The migration + // contract is that the stale cached COMPLETIONS route never comes + // back — and the cached long-context variant has no bundled entry, + // so it stays dropped. + expect(models.find(candidate => candidate.id === "grok-4.5")?.api).toBe("openai-responses"); expect(models.find(candidate => candidate.id === "grok-4.5-1m")).toBeUndefined(); } finally { await fs.rm(tempDir, { recursive: true, force: true });