From 93386fd6d2921de17fde00ea1a6aa378da71d21c Mon Sep 17 00:00:00 2001 From: OrcaWin <293788423+OrcaWin@users.noreply.github.com> Date: Sun, 9 Aug 2026 23:24:50 -0700 Subject: [PATCH] refactor(wsl): keep relay manager within lint budget --- .../agent-hooks/wsl-hook-relay-default-distro.ts | 13 +++++++++++++ src/main/agent-hooks/wsl-hook-relay-manager.ts | 13 ++++--------- 2 files changed, 17 insertions(+), 9 deletions(-) create mode 100644 src/main/agent-hooks/wsl-hook-relay-default-distro.ts diff --git a/src/main/agent-hooks/wsl-hook-relay-default-distro.ts b/src/main/agent-hooks/wsl-hook-relay-default-distro.ts new file mode 100644 index 00000000000..5064e204bc5 --- /dev/null +++ b/src/main/agent-hooks/wsl-hook-relay-default-distro.ts @@ -0,0 +1,13 @@ +export async function resolveWslHookRelayDefaultDistro( + cached: string | null, + listDistros: () => Promise +): Promise { + if (cached) { + return cached + } + try { + return (await listDistros())[0] ?? null + } catch { + return null + } +} diff --git a/src/main/agent-hooks/wsl-hook-relay-manager.ts b/src/main/agent-hooks/wsl-hook-relay-manager.ts index 5bbd1789de9..7b27fc48664 100644 --- a/src/main/agent-hooks/wsl-hook-relay-manager.ts +++ b/src/main/agent-hooks/wsl-hook-relay-manager.ts @@ -23,6 +23,7 @@ import { wireWslRelayLink } from './wsl-hook-relay-link' import { WslRelayRecovery } from './wsl-hook-relay-recovery' import { wslHookRelayStateKey } from './wsl-hook-relay-state-key' import type { WslHookRelayLifecycleState } from './wsl-hook-relay-lifecycle-state' +import { resolveWslHookRelayDefaultDistro } from './wsl-hook-relay-default-distro' import { SshChannelMultiplexer, type MultiplexerTransport } from '../ssh/ssh-channel-multiplexer' import { AGENT_HOOK_REQUEST_REPLAY_METHOD } from '../../shared/agent-hook-relay' import { @@ -343,15 +344,9 @@ export class WslHookRelayManager { } private async resolveDefaultDistro(): Promise { - if (this.defaultDistro) { - return this.defaultDistro - } - try { - const distros = await this.deps.listDistros() - this.defaultDistro = distros[0] ?? null - } catch { - this.defaultDistro = null - } + this.defaultDistro = await resolveWslHookRelayDefaultDistro(this.defaultDistro, () => + this.deps.listDistros() + ) return this.defaultDistro } }