From 0d1c385f3cca4691c2db7565d197f86e73b263fa Mon Sep 17 00:00:00 2001 From: Saul Moro Date: Wed, 30 Sep 2026 17:34:57 +0200 Subject: [PATCH] fix(tests): clear agent root env vars once in the vitest setup file --- src/__tests__/helpers/clear-agent-session-env.ts | 8 ++++++++ src/__tests__/local-agent-model-config.test.ts | 2 -- src/__tests__/uninstall.test.ts | 1 - 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/__tests__/helpers/clear-agent-session-env.ts b/src/__tests__/helpers/clear-agent-session-env.ts index 61ec80041..d50871f4c 100644 --- a/src/__tests__/helpers/clear-agent-session-env.ts +++ b/src/__tests__/helpers/clear-agent-session-env.ts @@ -9,3 +9,11 @@ import { AGENT_SESSION_ENV } from '../../utils/session-id.js'; for (const name of AGENT_SESSION_ENV) { delete process.env[name]; } + +// The same shell may relocate an agent's root (CLAUDE_CONFIG_DIR, COPILOT_HOME, +// OPENCLAW_STATE_DIR), which teamai honors, so a test that stubs only HOME +// would still read, write or remove the developer's real Claude Code, Copilot +// or OpenClaw files. A test that needs one sets it. +for (const name of ['CLAUDE_CONFIG_DIR', 'COPILOT_HOME', 'OPENCLAW_STATE_DIR']) { + delete process.env[name]; +} diff --git a/src/__tests__/local-agent-model-config.test.ts b/src/__tests__/local-agent-model-config.test.ts index ec28a3ff9..129d24c05 100644 --- a/src/__tests__/local-agent-model-config.test.ts +++ b/src/__tests__/local-agent-model-config.test.ts @@ -35,7 +35,6 @@ let originalGuardedEnv: Record; beforeEach(async () => { home = await fse.mkdtemp(path.join(os.tmpdir(), 'teamai-model-config-')); - vi.stubEnv('CLAUDE_CONFIG_DIR', undefined); originalHome = process.env.HOME; process.env.HOME = home; originalGuardedEnv = {}; @@ -54,7 +53,6 @@ beforeEach(async () => { afterEach(async () => { process.env.HOME = originalHome; - vi.unstubAllEnvs(); for (const key of GUARDED_ENV_KEYS) { const value = originalGuardedEnv[key]; if (value === undefined) delete process.env[key]; diff --git a/src/__tests__/uninstall.test.ts b/src/__tests__/uninstall.test.ts index 589f5a639..dfff1eea8 100644 --- a/src/__tests__/uninstall.test.ts +++ b/src/__tests__/uninstall.test.ts @@ -205,7 +205,6 @@ describe('uninstall', () => { beforeEach(async () => { tmpDir = await fse.mkdtemp(path.join(os.tmpdir(), 'teamai-uninstall-test-')); - vi.stubEnv('CLAUDE_CONFIG_DIR', undefined); mockAutoDetectInit.mockReset(); mockReconcileHooks.mockReset(); mockSaveLocalConfig.mockReset();