mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-28 05:16:23 -06:00
fix: skip disabled skill snapshot env overrides (#79173)
Co-authored-by: hera8939 <279459669+hera8939@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
9c6f7553be
commit
2e1ae531bd
@@ -573,6 +573,44 @@ describe("applySkillEnvOverrides", () => {
|
||||
});
|
||||
});
|
||||
|
||||
it("skips disabled snapshot skills before resolving raw apiKey SecretRefs", () => {
|
||||
const skillName = "env-skill";
|
||||
const snapshot = envSkillSnapshot(skillName, {
|
||||
primaryEnv: "ENV_KEY",
|
||||
requires: { env: ["ENV_KEY"] },
|
||||
});
|
||||
const config: OpenClawConfig = {
|
||||
skills: {
|
||||
entries: {
|
||||
[skillName]: {
|
||||
enabled: false,
|
||||
apiKey: {
|
||||
source: "env",
|
||||
provider: "default",
|
||||
id: "GITHUB_PAT",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
withClearedEnv(["ENV_KEY", "GITHUB_PAT"], () => {
|
||||
const restore = applySkillEnvOverridesFromSnapshot({
|
||||
snapshot,
|
||||
config,
|
||||
});
|
||||
|
||||
try {
|
||||
expect(process.env.ENV_KEY).toBeUndefined();
|
||||
expect(process.env.GITHUB_PAT).toBeUndefined();
|
||||
} finally {
|
||||
restore();
|
||||
expect(process.env.ENV_KEY).toBeUndefined();
|
||||
expect(process.env.GITHUB_PAT).toBeUndefined();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
it("prefers the active runtime snapshot over raw SecretRef skill config", () => {
|
||||
const skillName = "env-skill";
|
||||
const entries = envSkillEntries(skillName, {
|
||||
|
||||
@@ -208,6 +208,10 @@ function applySkillConfigEnvOverrides(params: {
|
||||
}
|
||||
}
|
||||
|
||||
function shouldApplySkillConfigEnvOverrides(skillConfig: SkillConfig): boolean {
|
||||
return skillConfig.enabled !== false;
|
||||
}
|
||||
|
||||
function createEnvReverter(updates: EnvUpdate[]) {
|
||||
return () => {
|
||||
for (const update of updates) {
|
||||
@@ -227,6 +231,9 @@ export function applySkillEnvOverrides(params: { skills: SkillEntry[]; config?:
|
||||
if (!skillConfig) {
|
||||
continue;
|
||||
}
|
||||
if (!shouldApplySkillConfigEnvOverrides(skillConfig)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
applySkillConfigEnvOverrides({
|
||||
updates,
|
||||
@@ -256,6 +263,9 @@ export function applySkillEnvOverridesFromSnapshot(params: {
|
||||
if (!skillConfig) {
|
||||
continue;
|
||||
}
|
||||
if (!shouldApplySkillConfigEnvOverrides(skillConfig)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
applySkillConfigEnvOverrides({
|
||||
updates,
|
||||
|
||||
Reference in New Issue
Block a user