b46b81ac12
A dev web launch on a PC without Node.js - a fresh one, or another PC the dev drive was plugged into - failed with nothing but "stopped while starting (exit code: 1)": `cmd /c npm run dev` had no npm to run, so nothing said why. New nodejs.rs finds the folder holding node.exe AND npm.cmd - this process's PATH first, then %ProgramFiles%\nodejs, where the installer puts it (an install adds itself to the SYSTEM PATH, which the running launcher never sees). Launcher::ensure_node runs before a web run's build/start: with no Node.js it logs why and runs `winget install --id OpenJS.NodeJS.LTS --exact --source winget --accept-*-agreements` in its own console (progress, Windows' permission prompt and any failure stay on screen), then judges by what is on disk - not by winget's exit code, which is non-zero for "already installed" too. No Node afterwards stops the launch with the manual step spelled out. `npm run dev` (web_command) and `npm install` (install_web) now get that folder first on their PATH, so the launch goes on straight after the install without restarting the launcher. start_web keeps a guard with a real message. Spot-check: `winget show --id OpenJS.NodeJS.LTS --exact --source winget` names the nodejs.org x64 MSI; nodejs::tests cover PATH-first, the fresh-install folder, npm-without-node, and the argument list.