I just wanted to reach out to see how everyone handles their scheduled tasks in which targeted machines are query based and the task is set to repeat daily. Do you have it repeating daily to "All" since it's query based? Or do you have it repeating to "Devices that did not succeed"?
with "All" I've seen from time to time that it will pull successful devices back into the query on the next deployment. I imagine this is due to the machines not reporting back inventory before the next scheduled deployment.
with "Devices that did not succeed", I've seen task fail to pull any new machines that may return in the query and only focus on the machines touched in the initial deployment
Having it repeat "All" will catch successful clients, as you have already experienced. This is due to how often the client is updating it's inventory. For me, I typically have it set to "Devices that did not succeed" but have not really seen the issue you are describing. I seldom have my task restart daily.
Depending on how often your clients check their policy, you may be better off setting your task as a "policy-supported push". This way the clients will get the job when they run policy. No need to restart the task daily and you will see the clients drop from the task when query resolution takes place.