You can still use the shout when latesub, if your cyclic job is defined as cyclic but runs at specific times; in another words, not by interval.
Another way would be to have your cyclic job write a condition for which another cyclic job has a "not" in condition check for, then if the second searching cyclic job runs, it sends the warning message.
can you please elaborate on second solution? not catch your meaning.
you mean to set another cycle job to have late-submit alert, but it still cannot be sure to keep alert very cycle, right?