fix(hwfit): repair remote Windows hardware scan over SSH (#4674)

Remote Cookbook hwfit probes failed on Windows hosts because the PowerShell script was sent as nested -Command quoting through OpenSSH. Use -EncodedCommand for remote probes, auto-detect platform when omitted (including Darwin for Mac SSH hosts), and return a clearer error when SSH works but the probe fails.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
MACKAT05
2026-06-22 11:59:09 -07:00
committed by GitHub
parent 91bba117c1
commit b57989f08c
2 changed files with 84 additions and 5 deletions
+37 -5
View File
@@ -538,6 +538,32 @@ def _powershell_exe():
path so we don't depend on a particular PATH ordering."""
return shutil.which("pwsh") or shutil.which("powershell") or "powershell"
def _powershell_encoded_for_ssh(script: str):
"""Run a PowerShell script on a remote Windows host over SSH.
Nested quotes in powershell -Command break when passed through Windows
OpenSSH's cmd wrapper; -EncodedCommand avoids that.
"""
import base64
encoded = base64.b64encode(script.encode("utf-16-le")).decode("ascii")
return _run(f"powershell -NoProfile -EncodedCommand {encoded}")
def _probe_remote_platform():
"""Best-effort OS detection over SSH when the caller didn't pass platform."""
out = _run("echo %OS%")
if out and "Windows_NT" in out:
return "windows"
uname = (_run(["uname", "-s"]) or "").strip().lower()
if uname == "darwin":
# Mac uses the linux detection path (_detect_apple_silicon over SSH).
return "linux"
if uname == "linux":
out = _run("test -d /data/data/com.termux && echo termux || echo linux")
if out and "termux" in out:
return "termux"
return "linux"
def _detect_windows():
"""Detect Windows hardware via PowerShell/WMI.
@@ -600,9 +626,8 @@ def _detect_windows():
"""
)
if _remote_host:
# Remote: ship a single command string over SSH. The remote shell parses
# the quoting; PowerShell on the far side runs the -Command payload.
out = _run(f'powershell -Command "{ps_cmd}"')
# Remote: use -EncodedCommand so OpenSSH/cmd quoting does not break the script.
out = _powershell_encoded_for_ssh(ps_cmd.strip())
else:
# Local: pass a LIST argv straight to subprocess so the OS hands ps_cmd
# to PowerShell verbatim — no fragile string-level quote escaping. Prefer
@@ -773,6 +798,13 @@ def detect_system(host="", ssh_port="", platform="", fresh=False):
"""
global _remote_host, _remote_port, _remote_platform
if host and not platform:
_remote_host = host
_remote_port = ssh_port or None
platform = _probe_remote_platform()
_remote_host = None
_remote_port = None
cache_key = _cache_key(host, ssh_port, platform)
now = time.time()
if not fresh and cache_key in _cache_by_host:
@@ -793,8 +825,8 @@ def detect_system(host="", ssh_port="", platform="", fresh=False):
_remote_platform = None
_cache_by_host[cache_key] = (now, result)
return result
# If Windows detection failed, return error
result = {"error": f"Cannot connect to {host}", "host": host}
# SSH may work while the PowerShell hardware probe still fails.
result = {"error": f"Windows hardware probe failed for {host}", "host": host}
_remote_host = None
_remote_platform = None
_cache_by_host[cache_key] = (now, result)
+47
View File
@@ -72,3 +72,50 @@ def test_gguf_alternate_still_recommended_on_windows():
still appear on Windows even though the AWQ variant is hidden."""
names = {r["name"] for r in rank_models(_windows_system(), limit=900)}
assert "Qwen/Qwen2.5-3B-Instruct" in names
def test_remote_windows_probe_uses_encoded_command(monkeypatch):
"""Remote Windows hwfit must not use nested -Command quoting over SSH."""
from services.hwfit import hardware
calls = []
monkeypatch.setattr(hardware, "_remote_host", "user@winpc")
monkeypatch.setattr(hardware, "_remote_port", None)
def fake_run(cmd):
calls.append(cmd)
if isinstance(cmd, str) and "EncodedCommand" in cmd:
return (
'{"ram_gb":64,"avail_gb":32,"cpu_name":"Test CPU",'
'"cpu_cores":8,"arch":64}'
)
return None
monkeypatch.setattr(hardware, "_run", fake_run)
result = hardware._detect_windows()
assert result is not None
assert result["total_ram_gb"] == 64
assert len(calls) == 1
assert "EncodedCommand" in calls[0]
assert '-Command "' not in calls[0]
def test_probe_remote_platform_detects_windows(monkeypatch):
from services.hwfit import hardware
monkeypatch.setattr(hardware, "_run", lambda cmd: "Windows_NT\n")
assert hardware._probe_remote_platform() == "windows"
def test_probe_remote_platform_detects_darwin(monkeypatch):
from services.hwfit import hardware
def fake_run(cmd):
if cmd == "echo %OS%":
return "%OS%"
if cmd == ["uname", "-s"]:
return "Darwin"
raise AssertionError(f"unexpected probe cmd: {cmd!r}")
monkeypatch.setattr(hardware, "_run", fake_run)
assert hardware._probe_remote_platform() == "linux"