#33729 affected the behavior of the has_many through record creation.
Since #33729, the intermediate reflection of simple has_many through
association has `inverse_of` to the association, it causes extra through
record creation, the extra through record required valid before the
association record is saved.
2312537867/activerecord/lib/active_record/associations/has_many_through_association.rb (L95-L102)
I think that #33729 need to more work to care about has_many through
association, that PR should be reverted to not break existing apps.