@jarindr_thitadilaka @satasuk03 another reason to why the cron is not firing is because we check the time of the last invocation to make sure we don't run the autotask more often than it should be. However, the span for checking the last invocation depends on the frequency of the current expression, which can lead to seemingly missed invocations.
For instance, if you set up a schedule to run at 4.50PM every day, Defender will check that you have no runs since the previous day at that time. If you do, the current run is skipped.
I see that this check may be too aggressive, causing us to skip runs that were originally intended, so let me take this back to the drawing board to see how to best handle it. In the meantime, if you set up a daily schedule, your Autotask should run if you don't trigger any other runs in the previous 24hs.