fix(health): use prefix matching for Linux process name truncation

Linux kernel truncates process names to 15 chars, causing
'cli-proxy-api-plus' to appear as 'cli-proxy-api-p' in lsof output.
Switch from exact whitelist to prefix matching for robust detection.
This commit is contained in:
kaitranntt
2025-12-26 12:57:56 -05:00
parent d1a0ebee61
commit 91e7b9f937
+4 -13
View File
@@ -111,26 +111,17 @@ async function getPortProcessWindows(port: number): Promise<PortProcess | null>
/**
* Check if process is CLIProxy
* Uses prefix matching to handle Linux kernel's 15-char process name truncation
* (e.g., 'cli-proxy-api-plus' becomes 'cli-proxy-api-p' in lsof/ps output)
*/
export function isCLIProxyProcess(process: PortProcess | null): boolean {
if (!process) {
return false;
}
// Match various CLIProxy binary names
const name = process.processName.toLowerCase();
return [
'cli-proxy',
'cli-proxy.exe',
'cliproxy',
'cliproxy.exe',
'cli-proxy-api',
'cli-proxy-api.exe',
'cliproxyapi',
'cliproxyapi.exe',
'cli-proxy-api-plus',
'cli-proxy-api-plus.exe',
].includes(name);
// All CLIProxy variants start with 'cli-proxy' or 'cliproxy'
return name.startsWith('cli-proxy') || name.startsWith('cliproxy');
}
/**