Currently we just refuse tasks as some other builder can provide the missing VM. Original intent was to split windows VMs per multiple builders due to space resources. This is not a big problem these days, so all builders can have same set of VMs or there is only one builder with all VMs. In such case request for non-existent VM could fail a task instead of leaving it in the queue and waiting if someone else will not pick it. To not lose original scaling feature this should be configurable per builder (few builders can have less VMs from some reason, while other can have all of them).
The deeper problem is that we don't have a good system for tracking these vm images, but fixing that is much more complicated that adding a workaround here.
Metadata Update from @mikem: - Custom field Size adjusted to None
This issue has been migrated to Fedora Forge: https://forge.fedoraproject.org/koji/koji/issues/4400
Please continue any further discussion there.