mirror of
https://github.com/openclaw/openclaw.git
synced 2026-03-27 18:01:46 +00:00
* Models: gate custom provider keys by usable secret semantics * Config: project runtime writes onto source snapshot * Models: prevent stale apiKey preservation for marker-managed providers * Runner: strip SecretRef marker headers from resolved models * Secrets: scan active agent models.json path in audit * Config: guard runtime-source projection for unrelated configs * Extensions: fix onboarding type errors in CI * Tests: align setup helper account-enabled expectation * Secrets audit: harden models.json file reads * fix: harden SecretRef custom/provider secret persistence (#42554) (thanks @joshavant)
36 lines
1.4 KiB
TypeScript
36 lines
1.4 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { listKnownProviderEnvApiKeyNames } from "./model-auth-env-vars.js";
|
|
import {
|
|
isKnownEnvApiKeyMarker,
|
|
isNonSecretApiKeyMarker,
|
|
NON_ENV_SECRETREF_MARKER,
|
|
} from "./model-auth-markers.js";
|
|
|
|
describe("model auth markers", () => {
|
|
it("recognizes explicit non-secret markers", () => {
|
|
expect(isNonSecretApiKeyMarker(NON_ENV_SECRETREF_MARKER)).toBe(true);
|
|
expect(isNonSecretApiKeyMarker("qwen-oauth")).toBe(true);
|
|
expect(isNonSecretApiKeyMarker("ollama-local")).toBe(true);
|
|
});
|
|
|
|
it("recognizes known env marker names but not arbitrary all-caps keys", () => {
|
|
expect(isNonSecretApiKeyMarker("OPENAI_API_KEY")).toBe(true);
|
|
expect(isNonSecretApiKeyMarker("ALLCAPS_EXAMPLE")).toBe(false);
|
|
});
|
|
|
|
it("recognizes all built-in provider env marker names", () => {
|
|
for (const envVarName of listKnownProviderEnvApiKeyNames()) {
|
|
expect(isNonSecretApiKeyMarker(envVarName)).toBe(true);
|
|
}
|
|
});
|
|
|
|
it("can exclude env marker-name interpretation for display-only paths", () => {
|
|
expect(isNonSecretApiKeyMarker("OPENAI_API_KEY", { includeEnvVarName: false })).toBe(false);
|
|
});
|
|
|
|
it("excludes aws-sdk env markers from known api key env marker helper", () => {
|
|
expect(isKnownEnvApiKeyMarker("OPENAI_API_KEY")).toBe(true);
|
|
expect(isKnownEnvApiKeyMarker("AWS_PROFILE")).toBe(false);
|
|
});
|
|
});
|