A Microsoft desktop and app virtualization service that runs on Azure. Previously known as Windows Virtual Desktop.
Yes, your understanding is largely correct. The Validation environment setting determines whether a host pool participates in the validation update ring and receives updates earlier than production host pools. However, it is not an agent version pinning or rollback mechanism.
When you change: ValidationEnvironment = No
you are preventing the host pool from receiving future validation updates, but Azure Virtual Desktop does not automatically downgrade session hosts that have already received a newer agent version.
A few things are worth checking:
1. Verify the host pool configuration
Get-AzWvdHostPool `
-ResourceGroupName "<RG>" `
-Name "<HostPool>" |
Select-Object HostPoolName, ValidationEnvironment
Confirm that ValidationEnvironment is set to False.
2. Review your provisioning process
Since you mentioned an IaC issue, check whether Terraform, Bicep, ARM templates, DSC, custom scripts, or your VM image are:
- Installing a specific AVD Agent version.
- Containing a pre-installed AVD Agent.
- Downloading a cached or bundled agent installer.
- Applying additional configuration independent of the host pool setting.
3. Validate the agent version against the current release table
Do not assume a version is still a validation-only release based solely on its numbering. Compare the exact version with Microsoft's current AVD Agent release history:
https://learn.microsoft.com/azure/virtual-desktop/whats-new-agent
Some versions that were initially released through validation can later become part of the broader rollout.
Can you force a downgrade ?
There is no host pool setting that forces a downgrade or pins session hosts to a specific production agent version. The Validation environment flag only controls participation in the validation ring. Agent installation and updates are managed separately.
For troubleshooting, a useful test would be:
- Create a new host pool with
ValidationEnvironment=False. - Deploy a brand-new VM from a clean image.
- Register it to the host pool.
- Record:
- AVD Agent version
- AVD Agent Boot Loader version
- VM image/version
- Provisioning method
- Monitor whether the agent updates and what version is ultimately installed.
- VM image/version
- AVD Agent Boot Loader version
- AVD Agent version
If a completely fresh session host connected to a host pool with ValidationEnvironment=False still receives a version currently listed as a validation release, the next place to investigate would be the image or provisioning workflow rather than the host pool setting itself.
Also, for your crash investigation, make sure to capture both the AVD Agent version and the AVD Agent Boot Loader version, as they are separate components and can be relevant when correlating crashes with updates.
ValidationEnvironment=False is the correct production setting, but it does not trigger agent rollback or version pinning. I would focus on verifying the host pool configuration and tracing exactly how the agent is being installed during VM provisioning.
Help make this community better for everyone: if this answer resolved your issue, please accept it or leave an upvote. If not, share more details in a comment so we can continue the discussion and find the right solution.