Revert "fix: ephemeral environment variables being saved to filesystem (#6723)" (#7012)

This reverts commit 5b1b1b5541.
This commit is contained in:
Sanjai Kumar
2026-02-02 16:50:06 +05:30
committed by GitHub
parent 6664295b2b
commit 0f0c2b5912
2 changed files with 9 additions and 16 deletions

View File

@@ -1909,8 +1909,8 @@ export const saveEnvironment = (variables, environmentUid, collectionUid) => (di
Modal Save writes what the user sees:
- Non-ephemeral vars are saved as-is (without metadata)
- Ephemeral vars:
- if persistedValue exists, save that (restore original value)
- otherwise filter out (don't save script-created ephemeral vars)
- if persistedValue exists, save that (explicit persisted case)
- otherwise save the current UI value (treat as user-authored)
*/
const persisted = buildPersistedEnvVariables(variables, { mode: 'save' });
environment.variables = persisted;

View File

@@ -12,31 +12,24 @@ const toPersistedEnvVarForMerge = (persistedNames) => (v) => {
return rest;
};
const isPersistableEnvVarForSave = (v) => {
if (!v) return false;
return !v.ephemeral || v.persistedValue !== undefined;
};
const toPersistedEnvVarForSave = (v) => {
const { ephemeral, persistedValue, ...rest } = v || {};
return v?.ephemeral ? (persistedValue !== undefined ? { ...rest, value: persistedValue } : rest) : rest;
};
// mode 'save': filters out ephemeral vars without persistedValue (script-created, never on disk)
// mode 'merge': same as 'save', but also includes ephemeral vars explicitly persisted this run
/*
High-level builder for persisted variables
- mode 'save': write what the user sees
- mode 'merge': write only allowed vars (non-ephemeral, ephemerals with persistedValue, or explicitly persisted this run)
*/
export const buildPersistedEnvVariables = (variables, { mode, persistedNames } = {}) => {
const src = Array.isArray(variables) ? variables : [];
if (mode === 'merge') {
const names = persistedNames instanceof Set ? persistedNames : new Set();
return src
.filter(isPersistableEnvVarForMerge(names))
.map(toPersistedEnvVarForMerge(names));
return src.filter(isPersistableEnvVarForMerge(names)).map(toPersistedEnvVarForMerge(names));
}
// default to save mode
return src
.filter(isPersistableEnvVarForSave)
.map(toPersistedEnvVarForSave);
return src.map(toPersistedEnvVarForSave);
};
export const buildEnvVariable = ({ envVariable: obj, withUuid = false }) => {