Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/providers/registry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1394,7 +1394,9 @@ export const PROVIDER_REGISTRY: readonly ProviderRegistryEntry[] = [
// the map above. Key-auth declared the same value via keyAuthServiceTier, so the key
// lane is unchanged.
chatServiceTier: true,
fastTierDescription: "Priority processing, 2x token price",
// Shared across key and OAuth catalog rows. OAuth subscription has no
// per-token price, so the 2x claim is scoped to key auth.
fastTierDescription: "Priority processing; tier pricing applies on key auth only",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update the xAI pricing guide to match the auth scope

For users authenticated through ocx login xai, this catalog text now correctly says that tier pricing applies only to key auth, but docs-site/src/content/docs/reference/configuration/providers.md:443-446 still states without that qualification that xAI charges 2× and applies the premium whenever priority is echoed—which the OAuth gateway does. Update that section to scope the billing claim to API-key requests and clarify any intentionally retained API-reference estimates so OAuth subscribers are not told they incur per-token charges.

AGENTS.md reference: src/AGENTS.md:L29-L29

Useful? React with 👍 / 👎.

featured: true,
oauthId: "xai",
jawcodeBundle: "xai",
Expand Down
2 changes: 1 addition & 1 deletion tests/codex-integration/codex-catalog.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2043,7 +2043,7 @@ describe("provider discovered model display names", () => {
// Classified by the 2026-09-13 OAuth-lane probe: grok-4.6 is Fast-eligible on
// either xAI transport, so the hint fills the capability and its description.
supportsServiceTier: true,
fastTierDescription: "Priority processing, 2x token price",
fastTierDescription: "Priority processing; tier pricing applies on key auth only",
});
expect(catalogModelSlug(output)).toBe("xai/grok-4.6");
});
Expand Down
6 changes: 3 additions & 3 deletions tests/service/service-tier-capability.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ describe("xAI Fast capability follows the captured authentication transport", ()
capability: true,
eligibility: "eligible",
forwardCallerTier: true,
fastTierDescription: "Priority processing, 2x token price",
fastTierDescription: "Priority processing; tier pricing applies on key auth only",
});

const oauthPolicy = fastPolicyForModel(xaiProvider("oauth"), "grok-4.6", "xai");
Expand All @@ -155,7 +155,7 @@ describe("xAI Fast capability follows the captured authentication transport", ()
expect(keyCatalog?.service_tiers).toEqual([{
id: "priority",
name: "Fast",
description: "Priority processing, 2x token price",
description: "Priority processing; tier pricing applies on key auth only",
}]);
expect(keyCatalog?.additional_speed_tiers).toEqual(["fast"]);
expect(decideTier(keyPolicy, true, undefined)).toEqual({ kind: "set", value: "priority" });
Expand All @@ -167,7 +167,7 @@ describe("xAI Fast capability follows the captured authentication transport", ()
expect(oauthCatalog?.service_tiers).toEqual([{
id: "priority",
name: "Fast",
description: "Priority processing, 2x token price",
description: "Priority processing; tier pricing applies on key auth only",
}]);
expect(oauthCatalog?.additional_speed_tiers).toEqual(["fast"]);
expect(decideTier(oauthPolicy, true, undefined)).toEqual({ kind: "set", value: "priority" });
Expand Down
Loading