polymorphic ids are now an {id, type} objecy