While patching my Oracle development instance, I run into an error

WARNING: Following components are NOT in a valid state.
         This could cause patching failure. If it does, consider
         running utlrp.sql to bring components to VALID state.
         Then, re-run datapatch.

         PDB$SEED : SDO [INVALID]

This is how to fix that problem:

SQL> conn / as sysdba
SQL> alter session set container=PDB$SEED
SQL> show con_name
SQL> select open_mode from v$database;
SQL> alter session set "_oracle_script"=TRUE;
SQL> alter pluggable database pdp$seed close immediate instances=all;
SQL> select open_mode from v$database;
SQL> alter pluggable database pdb$seed open read write;
SQL> show con_name
SQL> select open_mode from v$database;

SQL> @?/rdbms/admin/utlrp.sql

SQL> select comp_id, comp_name, version, status from dba_registry;
SQL> select count(*) from dba_objects where status='INVALID';
SQL> select object_name,object_type,owner from dba_objects where status='INVALID';
SQL> select owner, object_type, count(*) from dba_objects where status = 'INVALID' group by owner, object_type;

SQL> alter pluggable database pdb$seed close immediate instances=all;
SQL> alter pluggable database pdb$seed open read only;
SQL> show con_name
SQL> select open_mode from v$database;
SQL> alter session set "_oracle_script"=FALSE;