DesktopVersionInfo carried three parallel fields — artifact, payloadTag,
runtime — that described one fact: where the backend comes from. Collapse
them into a discriminated union keyed on embedded vs external, so the
About panel cannot show a payload tag that contradicts the spawned
runtime.
source uses the install_method vocabulary from hermes_cli/runtime_tree.py
(git, source, docker, nix, desktop-app, unknown) plus the Electron-only
resolution rungs (hermes-root, path, system-python, bootstrap). It is
populated only after the backend spawns; before launch it is absent.
Also fix the stale website doc that described the pre-embedded resolution
ladder: a bundled install always runs its own payload first, and only
non-bundled builds resolve a machine runtime.