fix: accept Z_AI_API_KEY for zai
This commit is contained in:
@@ -199,4 +199,35 @@ describe("getApiKeyForModel", () => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("accepts legacy Z_AI_API_KEY for zai", async () => {
|
||||||
|
const previousZai = process.env.ZAI_API_KEY;
|
||||||
|
const previousLegacy = process.env.Z_AI_API_KEY;
|
||||||
|
|
||||||
|
try {
|
||||||
|
delete process.env.ZAI_API_KEY;
|
||||||
|
process.env.Z_AI_API_KEY = "zai-test-key";
|
||||||
|
|
||||||
|
vi.resetModules();
|
||||||
|
const { resolveApiKeyForProvider } = await import("./model-auth.js");
|
||||||
|
|
||||||
|
const resolved = await resolveApiKeyForProvider({
|
||||||
|
provider: "zai",
|
||||||
|
store: { version: 1, profiles: {} },
|
||||||
|
});
|
||||||
|
expect(resolved.apiKey).toBe("zai-test-key");
|
||||||
|
expect(resolved.source).toContain("Z_AI_API_KEY");
|
||||||
|
} finally {
|
||||||
|
if (previousZai === undefined) {
|
||||||
|
delete process.env.ZAI_API_KEY;
|
||||||
|
} else {
|
||||||
|
process.env.ZAI_API_KEY = previousZai;
|
||||||
|
}
|
||||||
|
if (previousLegacy === undefined) {
|
||||||
|
delete process.env.Z_AI_API_KEY;
|
||||||
|
} else {
|
||||||
|
process.env.Z_AI_API_KEY = previousLegacy;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -123,6 +123,10 @@ export function resolveEnvApiKey(provider: string): EnvApiKeyResult | null {
|
|||||||
return pick("ANTHROPIC_OAUTH_TOKEN") ?? pick("ANTHROPIC_API_KEY");
|
return pick("ANTHROPIC_OAUTH_TOKEN") ?? pick("ANTHROPIC_API_KEY");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (provider === "zai") {
|
||||||
|
return pick("ZAI_API_KEY") ?? pick("Z_AI_API_KEY");
|
||||||
|
}
|
||||||
|
|
||||||
if (provider === "google-vertex") {
|
if (provider === "google-vertex") {
|
||||||
const envKey = getEnvApiKey(provider);
|
const envKey = getEnvApiKey(provider);
|
||||||
if (!envKey) return null;
|
if (!envKey) return null;
|
||||||
@@ -137,7 +141,6 @@ export function resolveEnvApiKey(provider: string): EnvApiKeyResult | null {
|
|||||||
xai: "XAI_API_KEY",
|
xai: "XAI_API_KEY",
|
||||||
openrouter: "OPENROUTER_API_KEY",
|
openrouter: "OPENROUTER_API_KEY",
|
||||||
minimax: "MINIMAX_API_KEY",
|
minimax: "MINIMAX_API_KEY",
|
||||||
zai: "ZAI_API_KEY",
|
|
||||||
mistral: "MISTRAL_API_KEY",
|
mistral: "MISTRAL_API_KEY",
|
||||||
"opencode-zen": "OPENCODE_ZEN_API_KEY",
|
"opencode-zen": "OPENCODE_ZEN_API_KEY",
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user