diff --git a/src/providers/xai-transport.ts b/src/providers/xai-transport.ts index 76582b07298..cc96f67a75b 100644 --- a/src/providers/xai-transport.ts +++ b/src/providers/xai-transport.ts @@ -28,8 +28,8 @@ export function isXaiResponsesDestination(provider: Pick { - test("OAuth snapshot is exact", async () => { + test("OAuth snapshot pins Grok CLI compatibility to 1.0.25", async () => { const { effective, seen } = await capture("oauth"); expect(effective.baseUrl).toBe(XAI_GROK_CLI_BASE_URL); expect(lower(seen[0])).toEqual({ authorization: "Bearer oauth-token", "content-type": "application/json", - "user-agent": `opencodex-grok/${XAI_GROK_CLIENT_VERSION}`, + "user-agent": "opencodex-grok/1.0.25", "x-authenticateresponse": "authenticate-response", "x-grok-client-identifier": "opencodex", - "x-grok-client-version": XAI_GROK_CLIENT_VERSION, + "x-grok-client-version": "1.0.25", "x-grok-conv-id": deriveXaiConvId("codex-session-abc"), "x-grok-req-id": expect.stringMatching(UUID_V4), "x-grok-session-id": deriveXaiConvId("codex-session-abc"), @@ -557,7 +557,7 @@ describe("xAI outbound compatibility headers", () => { expect(lower(seen[0])).toEqual({ authorization: "Bearer xai-api-key", "content-type": "application/json", - "user-agent": `opencodex-grok/${XAI_GROK_CLIENT_VERSION}`, + "user-agent": "opencodex-grok/1.0.25", "x-grok-conv-id": deriveXaiConvId("codex-session-abc"), "x-grok-req-id": expect.stringMatching(UUID_V4), "x-grok-session-id": deriveXaiConvId("codex-session-abc"),