Strictly speaking, the current behavior is correct. The monitor currently only tracks instantaneous state. The problem is that the monitor doesn't know which hosts workers are configured to be running on. It can only auto-discover that information every interval.

My plan is to improve on this in an appropriate manner to keep longer-term information about hosts.