I have no idea why, but it’s working again after I ran foreman-installer on the Foreman server. /opt/puppetlabs/server/data/puppetserver/yaml/facts/
is still empty, but now pushing facts doesn’t complain about it, and facts are once again getting pushed.