Hi Dan,
I'm not 100% sure if I understand what you'd like to achieve, but I just created a test job and specified the following condition
1769122800 <= int($submittime) and (1769122800 + 86400) > int($submittime)
where 1769122800 is January 23rd, 2026 at 00:00:00, as is shown using date:
$ date '+%s' -d '2026-01-23 00:00:00'
1769122800
Now date is aware of my time zone (MET, GMT+1) and your results can differ.
Also note that 86400 is the number of seconds in a day (most of the time; some days are shorter, some are longer, both factual and felt like).
Anyway, the system acted as expected and enabled the child job.
Changing the condition (e.g. with tomorrow's epoch time) made the system disabling it, again as expected.
Furthermore it is crucial to test a timestamp that has been set.
$starttime is set as soon as the job is fetched by a job server and has been started.
This means that it is at best zero before that happens.
Also the condition is evaluated at submit time which is earlier than the time that your job reaches the RUNNABLE state (and can be fetched by a job server).
Hence the only timestamp you have is the $submittime
If your job is part of some long running batch and its possible start is likely to be hours or even days after submit, the condition isn't the correct method.
In such a case you'd need something like a test job that tests the actual time and if the test is successful, the intended job can be triggered.
You can inspect $starttime in several ways.
The, I find, best method is to issue a "show job 12345;" in the GUI shell and find the start time.
Another option is to display the starttime on the monitoring page.
Or you look at the timestamps and statistics tab.
In all cases the start time is shown in a readable format and you can ask date to convert that to epoch, if you need that.
Sorry I didn't think about the $starttime parameter in my previous answer.
I concentrated too much on the time format used in expressions, not on the queried parameter.
Best regards,
Ronald