Hi @fredw
OK, the expire trigger is currently broken, sorry. It has already been fixed as part of the manual intervention enhancements to be released soon in 8.3.0.
Expire triggers are pretty niche at my site, but your case for extensive use makes good sense. If you have a desperate need for it, before 8.3.0 comes out, I could tell you how to patch your current version.
Here’s a standalone test workflow to show the problem:
$ cat flow.cylc
[scheduling]
initial cycle point = previous(T00)
[[special tasks]]
clock-expire = foo(PT0S)
[[graph]]
R1 = """
foo => bar
foo:expired? => baz
"""
[runtime]
[[foo, bar, baz]]
The task foo
expires immediately, which should trigger baz
, but at the moment it does not:
[I] (venv) ~/c/exp $ cylc vip --no-detach --no-timestamp
$ cylc validate /home/oliverh/cylc-src/exp
Valid for cylc-8.2.3
$ cylc install /home/oliverh/cylc-src/exp
INSTALLED exp/run7 from /home/oliverh/cylc-src/exp
$ cylc play --no-detach --no-timestamp exp/run7
▪ ■ Cylc Workflow Engine 8.2.3
██ Copyright (C) 2008-2023 NIWA
▝▘ & British Crown (Met Office) & Contributors
INFO - Extracting job.sh to /home/oliverh/cylc-run/exp/run7/.service/etc/job.sh
INFO - Workflow: exp/run7
INFO - Scheduler: url=tcp://NIWA-1022450.niwa.local:43090 pid=25973
INFO - Workflow publisher: url=tcp://NIWA-1022450.niwa.local:43023
INFO - Run: (re)start number=1, log rollover=1
INFO - Cylc version: 8.2.3
INFO - Run mode: live
INFO - Initial point: 20231113T0000Z
INFO - Final point: None
INFO - Cold start from 20231113T0000Z
INFO - New flow: 1 (original flow from 20231113T0000Z) 2023-11-14 10:46:07
INFO - [20231113T0000Z/foo waiting(runahead) job:00 flows:1] => waiting
INFO - [20231113T0000Z/foo waiting job:00 flows:1] => waiting(queued)
WARNING - [20231113T0000Z/foo waiting(queued) job:00 flows:1] Task expired (skipping job).
INFO - [20231113T0000Z/foo waiting(queued) job:00 flows:1] => expired(queued)
INFO - Workflow shutting down - AUTOMATIC
INFO - DONE