Same taxonomy for different object types

Those are different object types that belong to different tables and hence can have same primary key ID.

–> Even though these are different types, all are being stored in one table i.e. wp_posts with post_type = the different types. Check the table structure for clarity. So there won’t be any same ID conflict.

if we take a look at the functions used to get or check terms, they all lack object_type parameter.

–> This is not needed. When we have the object itself, WordPress functions can better decide its associated type from the DB.

As a matter of fact, there is no reference to object type in term_relationships table at all, and you are going to get false positives for objects with same IDs.

–> This is also wrong assumption. There is clear relationship between the tables need to manage the categorizations in WordPress. Here is a snap that explains relationships. enter image description here