To check object status use ad_objects
Developers often use the user_objects or all_objects data dictionary view to confirm that there are no unexpected invalid objects. Due to a database limitation these dictionary views only return correct object status after running a full compilation procedure (utl_recomp.recomp_parallel or ad_zd.compile).
As a workaround, you can check object status using the ad_objects view included with online patching.
SQL> select * from ad_objects where status='INVALID';
Refer
Developing and Deploying Customizations in Oracle E-Business Suite Release 12.2 (Doc ID 1577661.1)