Description of the new feature/enhancement
WinGet manifests can declare a dependency on Windows optional features via Dependencies.WindowsFeatures, and WinGet attempts to enable those features before installing the package. The automated validation pipeline cannot validate any package that declares a virtualization Windows Feature dependency (e.g. Microsoft-Hyper-V, HypervisorPlatform), because the validation sandbox is itself a VM without nested virtualization — enabling Hyper-V fails deterministically.
This is not a manifest defect. A correct manifest fails validation forever, surfacing as Internal-Error-Dynamic-Scan with the Installation Validation step failing.
Symptom / detection signature (from manual validation):
Install finished with exit code: -1978334960
Failed to enable Windows Feature [Microsoft-Hyper-V] with exit code: 50
| Hex | Dec | Symbol | Description |
| -------- | ----------- | ----------------------------------------- | ------------------------------------ |
| 00000032 | 50 | ERROR_NOT_SUPPORTED | The request is not supported. |
| 8A150110 | -1978334960 | APPINSTALLER_CLI_ERROR_INSTALL_DEPENDENCIES | Failed to install package dependencies. |
Example: #382520 (Skywork.SkyworkDesktop.QEMU 1.6.0). All other validation stages pass (InstallerScan, ManifestPolicy, URL, Catalog); only InstallationVerification returns Error. The manifest correctly declares:
Dependencies:
WindowsFeatures:
- HypervisorPlatform
- Microsoft-Hyper-V
Proposed technical implementation details (optional)
Options:
- Route packages that declare virtualization
WindowsFeatures dependencies to nested-virtualization-capable or bare-metal validators so the feature can actually be enabled.
- Provide a manual-validation waiver path for packages whose only failure is an un-enableable declared
WindowsFeatures dependency (moderator-verified), so a correct manifest is not blocked by an infra limitation.
- Detect a declared
WindowsFeatures dependency the VM cannot enable and skip the enable/verify step with a documented waiver, rather than failing the whole run as Internal-Error-Dynamic-Scan.
Automation-facing detection signature: Failed to enable Windows Feature + ERROR_NOT_SUPPORTED (50) + APPINSTALLER_CLI_ERROR_INSTALL_DEPENDENCIES (0x8A150110).
Description of the new feature/enhancement
WinGet manifests can declare a dependency on Windows optional features via
Dependencies.WindowsFeatures, and WinGet attempts to enable those features before installing the package. The automated validation pipeline cannot validate any package that declares a virtualization Windows Feature dependency (e.g.Microsoft-Hyper-V,HypervisorPlatform), because the validation sandbox is itself a VM without nested virtualization — enabling Hyper-V fails deterministically.This is not a manifest defect. A correct manifest fails validation forever, surfacing as
Internal-Error-Dynamic-Scanwith theInstallation Validationstep failing.Symptom / detection signature (from manual validation):
Example: #382520 (
Skywork.SkyworkDesktop.QEMU1.6.0). All other validation stages pass (InstallerScan, ManifestPolicy, URL, Catalog); onlyInstallationVerificationreturnsError. The manifest correctly declares:Proposed technical implementation details (optional)
Options:
WindowsFeaturesdependencies to nested-virtualization-capable or bare-metal validators so the feature can actually be enabled.WindowsFeaturesdependency (moderator-verified), so a correct manifest is not blocked by an infra limitation.WindowsFeaturesdependency the VM cannot enable and skip the enable/verify step with a documented waiver, rather than failing the whole run asInternal-Error-Dynamic-Scan.Automation-facing detection signature:
Failed to enable Windows Feature+ERROR_NOT_SUPPORTED(50) +APPINSTALLER_CLI_ERROR_INSTALL_DEPENDENCIES(0x8A150110).