# Tip: Experimental feature - expire triggers

**URL:** <https://cylc.discourse.group/t/tip-experimental-feature-expire-triggers/1254>\
**Category:** Tips\
**Created:** [October 7, 2025, 3:35am UTC](https://cylc.discourse.group/t/tip-experimental-feature-expire-triggers/1254 "2025-10-07T03:35:56Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![hilary.j.oliver](https://yyz2.discourse-cdn.com/free1/user_avatar/cylc.discourse.group/hilary.j.oliver/32/4_2.png) [@hilary.j.oliver](https://cylc.discourse.group/u/hilary.j.oliver)\
**Post date:** [October 7, 2025, 3:35am UTC](https://cylc.discourse.group/t/tip-experimental-feature-expire-triggers/1254/1 "2025-10-07T03:35:56Z")

</div>

A new [experimental feature](https://cylc.discourse.group/t/trying-experimental-features-in-cylc-8-6/1253) in Cylc 8.6 reimplements [suicide triggers](https://cylc.github.io/cylc-doc/stable/html/user-guide/writing-workflows/suicide-triggers.html#suicidetriggers) as **expire triggers**.

```auto
R1 = “foo => !bar” # if foo succeeds, expire bar

```

The only functional effects of this change should be:

- it fixes a bug that allowed suicide-triggered tasks to resurrect via other dependencies
- you can now use the`expired` output and event handler for tasks removed in this way
  - (and this will happen automatically if suicide-triggered tasks already use those - unlikely)

_We’ve released this as an opt-in experimental feature, just in case it has any unforeseen consequences. Please do opt-in and try it though, while you can still back out if necessary._

In the absence of negative consequences this will become standard in a future release.

---

<div class="post-metadata">

**Author:** ![oliver.sanders](https://yyz2.discourse-cdn.com/free1/user_avatar/cylc.discourse.group/oliver.sanders/32/110_2.png) [@oliver.sanders](https://cylc.discourse.group/u/oliver.sanders)\
**Post date:** [October 7, 2025, 8:23am UTC](https://cylc.discourse.group/t/tip-experimental-feature-expire-triggers/1254/2 "2025-10-07T08:23:36Z")

</div>

To test this feature, add the following to your `flow.cylc` file:

```auto
# opt into the "expire triggers" experimental feature
[scheduler]
    [experimental]
        expire triggers = True

```

This configuration will be short-lived, there is also an option to opt into all experimental features (which will be long lived):

```auto
# opt into all experimental features
[scheduler]
    [experimental]
        all = True

```
