Build mode does reset the "last report" field
When a server with a Puppet client is rebuilt, foreman cleans the reports but not the "last report" field.
When you switch a host from a Puppet-enablet hostgroup to a hostgroup that does not install a Puppet client, the host is marked as "Out of sync". Is should be marked as "No reports".
This would be consistent with the foreman behavior of deleting the reports when switching to build mode.
Unfortunately, this is such a big UX change that it can only happen on a major release.