The %post script does load_policy of the old policy, because the policy & file_contexts files don't get replaced. Solution is s/(noreplace)// in the .spec file.
Just talked to Dan about this, the solution is to remove the bits from the policy-targeted-sources postinst which does a make reload, which overwrites the policy.18 and file_contexts files. The idea is someone using selinux-policy-targeted-sources has to understand how to do 'make reload'.
Fixed in selinux-policy-targeted-1.17.30.2.11