fix(auth): strip line breaks from pasted keys

This commit is contained in:
Peter Steinberger
2026-02-09 11:25:54 -06:00
parent fb8c653f53
commit 42a07791c4
15 changed files with 293 additions and 30 deletions

View File

@@ -511,4 +511,25 @@ describe("getApiKeyForModel", () => {
}
}
});
it("strips embedded CR/LF from ANTHROPIC_API_KEY", async () => {
const previous = process.env.ANTHROPIC_API_KEY;
try {
process.env.ANTHROPIC_API_KEY = "sk-ant-test-\r\nkey";
vi.resetModules();
const { resolveEnvApiKey } = await import("./model-auth.js");
const resolved = resolveEnvApiKey("anthropic");
expect(resolved?.apiKey).toBe("sk-ant-test-key");
expect(resolved?.source).toContain("ANTHROPIC_API_KEY");
} finally {
if (previous === undefined) {
delete process.env.ANTHROPIC_API_KEY;
} else {
process.env.ANTHROPIC_API_KEY = previous;
}
}
});
});