Is it possible for me to be notified if an 'after insert or update trigger' stops working?
A trigger cannot simply stop working.

A trigger can be disabled.  A trigger can be dropped.  A trigger will be made invalid if DDL is done to one of the objects it references but it will still be executed if the triggering statement is executed.  If the trigger fails to recompile successfully, the triggering statement will get an error 

ORA-04098: trigger ' MASTER.INSTANCE_STEP_TRG' is invalid and failed re-validation


It also seems possible that the trigger was working correctly as declared but not as you intended.  For example, it is possible that the new.sysid was not greater than 0 (remember that NULL is not greater than 0) causing the WHEN clause to not be met.  It is possibly that your SELECT statement returned a value less than or equal to 0, thus causing your INSERT not to be executed.  If either TEMPLATE.wf_step or TEMPLATE.step_stage has a column STEP_ID, the WHERE clause

where ws.sysid= step_id;


will interpret STEP_ID as the column in the table, not your local variable STEP_ID.  One of the reasons that PL/SQL developers generally add prefixes to local variables (i.e. L_STEP_ID rather than STEP_ID) is to avoid inadvertently using a name that is also used by a column in a table because these sorts of scope resolution problems are notoriously difficult to debug.