If you want every computer to scan every day, and you’re staggering over only 8 hours (between 10 pm and 6 am), then you have to kick off a new scan group every 19 seconds. Is that really the intent?
Taking your example literally, you could make the Fixlet become relevant at only (computer id mod 1500) * 19 seconds after 10pm, and be relevant for only one hour. Note though that if the computer is offline, running another action, or otherwise busy during that period then the scan may not occur.
This actually took quite a bit of digging, and BenKus’ post at Working with time ranges was quite helpful. See if this does what you want -
q: exists (time (local time zone) of (now - ((computer id mod 1500) * second * 19)) - ("22:00:00" as local zoned time_of_day)) whose (it < 1 * hour)
This breaks your computers into 1500 groups based on their computer id mod 1500, and sets them into different start times based on the 1500 intervals of 19 seconds each between 22:00 and 06:00, and remains relevant for 1 hour.
Test it first because this is fairly unusual and I haven’t used anything like this before.
You should set the action to “Reapply while relevant, waiting 12 hours between reapplications” to ensure it only scans once while it’s relevant.