1af2093663
The desktop app has two launch paths, so app-update becomes two methods. open-app-update starts the app from the OS entry point the desktop installer created (the installed exe / the .app), so it exists only where a desktop installer does. hermes-desktop-app-update starts the app via hermes desktop, which every install method provides on every OS that ships the desktop app - on linux it is the only app surface, since no desktop installer or packaged artifact exists there. Both variants are desktop-surface methods on every OS, so the tag_has_desktop annotation moves from windows-only to every matrix entry, install-e2e-run.yml grows the input, and the plan chart marks pre-desktop cells on all OSes. The windows GUI arm's implemented pair renames to open-app-update; every other new combination is a declared TODO that natively skips.