This is exactly the way mon is supposed to behave. In the first case, the dependency hasn't been run yet, bec. its interval is 5min and the parent's interval is 10s. Untested dependencies are counted as 'OK', hence you get an alert generated by the parent.
In the second case, the dependency has been run, because you forced it to run before the parent, and has eval'ed to 'FAILED'. Hence, the dependency evals to 'Not OK' and the parent's alert is suppressed.
