diff --git a/src/main/pty/wsl-orca-env.test.ts b/src/main/pty/wsl-orca-env.test.ts index e4b1c9d06a6..15c6b43cf44 100644 --- a/src/main/pty/wsl-orca-env.test.ts +++ b/src/main/pty/wsl-orca-env.test.ts @@ -1,4 +1,8 @@ import { describe, expect, it } from 'vitest' +import { + SETUP_AGENT_SEQUENCE_STARTUP_COMMAND_ENV, + SETUP_AGENT_SEQUENCE_STARTUP_SCRIPT_ENV +} from '../../shared/setup-agent-sequencing' import { addOrcaWslInteropEnv, addWorktreeSetupWslInteropEnv, @@ -14,6 +18,20 @@ describe('addOrcaWslInteropEnv', () => { expect(env.WSLENV).toBe('ORCA_TERMINAL_HANDLE/u') }) + it('imports setup-gated startup env into WSL without path translation', () => { + const env: Record = { + [SETUP_AGENT_SEQUENCE_STARTUP_COMMAND_ENV]: 'codex', + [SETUP_AGENT_SEQUENCE_STARTUP_SCRIPT_ENV]: 'while :; do sleep 1; done' + } + + addOrcaWslInteropEnv(env) + + expect(env.WSLENV?.split(':')).toEqual([ + `${SETUP_AGENT_SEQUENCE_STARTUP_COMMAND_ENV}/u`, + `${SETUP_AGENT_SEQUENCE_STARTUP_SCRIPT_ENV}/u` + ]) + }) + it('preserves existing WSLENV entries and does not duplicate the handle entry', () => { const env: Record = { WSLENV: 'FOO/u:ORCA_TERMINAL_HANDLE/u:BAR/p' diff --git a/src/main/pty/wsl-orca-env.ts b/src/main/pty/wsl-orca-env.ts index bc4ec7aee8f..40f3b957249 100644 --- a/src/main/pty/wsl-orca-env.ts +++ b/src/main/pty/wsl-orca-env.ts @@ -4,6 +4,10 @@ import { ORCHESTRATION_COMPATIBILITY_HOST_INCARNATION_ENV, ORCHESTRATION_COMPATIBILITY_HOST_KIND_ENV } from '../../shared/orchestration-compatibility-evidence' +import { + SETUP_AGENT_SEQUENCE_STARTUP_COMMAND_ENV, + SETUP_AGENT_SEQUENCE_STARTUP_SCRIPT_ENV +} from '../../shared/setup-agent-sequencing' const WSLENV_ENTRY_SEPARATOR = ':' @@ -77,6 +81,8 @@ export function addOrcaWslInteropEnv(env: Record): void { 'ORCA_TAB_ID/u', 'ORCA_WORKTREE_ID/u', 'ORCA_AGENT_LAUNCH_TOKEN/u', + `${SETUP_AGENT_SEQUENCE_STARTUP_COMMAND_ENV}/u`, + `${SETUP_AGENT_SEQUENCE_STARTUP_SCRIPT_ENV}/u`, 'ORCA_ORCHESTRATION_COMPATIBILITY_HOST_KIND/u', 'ORCA_ORCHESTRATION_COMPATIBILITY_HOST_ID/u', 'ORCA_ORCHESTRATION_COMPATIBILITY_HOST_INCARNATION/u',