VS Code provides both user and system level setups, with user setup being the preferred installation on Windows according to Microsoft. When Home Updater detects that a user level installation of VS Code is outdated, Home Updater downloads the system installer for the update and installs a machine-wide setup of the new version of Visual Studio Code, resulting in configuration of both machine-wide and user level installations on the machine. The existing but outdated user level installation is left in place, but Home Updater does not detect its presence on subsequent rescans even though there is a separate uninstall entry for it in the registry. Home Updater will simply display that Visual Studio Code is now up to date. Conversely, if the user subsequently manually updates the user installation to a version ahead of the system level installation, Home Updater detects the user level installation as the latest version and leaves the older system installation in place. In either case, Home Updater is unable to detect the presence of the older installation if a newer installation of the other type is installed.
This behavior and implications thereof should be documented and a user prompt issued before starting the installer. If Home Updater could detect dual system-user installations (as UCheck does), the user could be prompted to manually update the older installation from VS Code's built-in "Check for Updates" option. Alternatively, since a system level installer is always downloaded for an update, the user could be prompted to remove the user installation.
PowerToys is another supported app which provides separate machine-wide and user level installers.
References:
https://code.visualstudio.com/docs/setup/windows
https://github.com/microsoft/PowerToys