How do globs work with cycle points?

I have a workflow that runs every 10 minutes, and is designed to pick up the work from the previous tasks on the next cycle point. Sometimes conditions mean that some tasks lag behind, taking longer than the cycle point’s 10 minute time frame. I would like to be able to bring this workflow up to current time every now and then. In Cylc 7, I would select all of the lagging tasks and set them succeeded.

Through the WUI, I note that if I go into the “Set” menu, the help text next to the cycle point/task says “A glob search for an active task or family. Can use the wildcard character (*), eg foo might match foot”.

I imagine that <cycle point>/* will apply the set to all tasks for that cycle point, but is there an option to do <partial cycle point>*/<task name>? For example, if my workflow is a few days behind, how do I do I say to set all instances of this task succeeded for a whole day?

My cycle point is of the shape: YYYYMMDDTHHMMZ and I’d like to specify YYYYMMDD* for all cycle points that start with YYYYMMDD.

I’ve tried:

20250114*/<taskname>
20250114******/<taskname>

but these - at best - only set the instance I selected in the first place. I don’t want to do */<taskname> (even if it would work) as I only want to bring the workflow up to nearly current time.

See also Interventions guide: How to skip a cycle

What you are doing looks right in terms of the glob - I can’t say much for sure without seeing your workflow, but I wonder if the problem is:

That is, the globs won’t match tasks not in the task pool - which given the Spawn on Demand model may well be the majority of tasks in the Cycle.

At 8.4.0 you would be able to do

> cylc broadcast <workflow> \
>    --namespace root \
>    --point <cycle point> \
>    --point <another point> \
>    -set 'run mode=skip'
> cylc set '<workflow>//<cycle glob>/*'

Changing the run mode to skip will set all inactive tasks to run in “skip mode” (instant, no disk touching), and then you trigger all the active tasks.