Follow-up from the comprehensive review of PR #239 (LSP server). Line numbers reference the PR branch at review time.
Severity: minor (Windows-only; masked by the PATH tier on typical setups)
On Windows the new managed-location tier of LSP binary resolution never matches: ToolchainPaths::new() roots the install at dirs::data_dir().join("inference") (= %APPDATA%\inference) when INFERENCE_HOME is unset (apps/infs/src/toolchain/paths.rs:299-304), but the extension's inferenceHome() (toolchain/home.ts) defaults to ~/.inference on all platforms, and the LSP resolver's managed tier probes <inferenceHome>/bin/inference-lsp.exe (resolve.ts:68).
On a default Windows setup tier 2 is therefore dead code; resolution succeeds only via the PATH tier (which works when the shell PATH was configured by infs). If PATH configuration failed or the editor was launched without the updated environment, the extension reports "inference-lsp not found" even though a healthy managed install exists.
Suggested fix: make the extension derive the managed root the same way infs does (per-platform: %APPDATA%\inference on Windows, ~/.inference elsewhere, INFERENCE_HOME override first), ideally in one shared helper (home.ts) used by both the LSP resolver and the toolchain commands so they cannot diverge again.
Follow-up from the comprehensive review of PR #239 (LSP server). Line numbers reference the PR branch at review time.
Severity: minor (Windows-only; masked by the PATH tier on typical setups)
On Windows the new managed-location tier of LSP binary resolution never matches:
ToolchainPaths::new()roots the install atdirs::data_dir().join("inference")(=%APPDATA%\inference) whenINFERENCE_HOMEis unset (apps/infs/src/toolchain/paths.rs:299-304), but the extension'sinferenceHome()(toolchain/home.ts) defaults to~/.inferenceon all platforms, and the LSP resolver's managed tier probes<inferenceHome>/bin/inference-lsp.exe(resolve.ts:68).On a default Windows setup tier 2 is therefore dead code; resolution succeeds only via the PATH tier (which works when the shell PATH was configured by
infs). If PATH configuration failed or the editor was launched without the updated environment, the extension reports "inference-lsp not found" even though a healthy managed install exists.Suggested fix: make the extension derive the managed root the same way infs does (per-platform:
%APPDATA%\inferenceon Windows,~/.inferenceelsewhere,INFERENCE_HOMEoverride first), ideally in one shared helper (home.ts) used by both the LSP resolver and the toolchain commands so they cannot diverge again.