The current behavior is to exclude tracks that have no value in the work field when shuffling by work.
I did that on redwing's suggestion but i am not fully on board with that eg. the user could filter out blank values themselves if they wanted.
I think the issue with the initial implementation was it treated all the files with no value as a single grouping so i can fix that.
Sounds like you still don't get why I requested such a feature.
First of all, I never request that applied to when grouped by regular tags, but only when grouped by virtual tags. So I didn't expect you would do that for "shuffle by work" setting as well but somehow you did it. I don't mind if it would default to title or whatever field when the work field is null.
But for virtual fields, it's a different story.
By removing completely null value files for virtual tags, you can easily manipulate source files without using folders and filters/auto-playlists option. Very convenient to listen to some specific artists / composers / genres.
Also if you want, you can easily ensure that all files get included to your source, using something like "<Work>-<Filename>" instead of just "<Work>".
If it doesn't remove null-value files from the source for virtual tags, it would add null-value files occasionally as a random single track between each work, which makes no sense at all.
So I hope you wouldn't remove the functionality from "shuffled by virtual tags" setting.