Rule Ordering
Filters run in the order they appear in the calendar config.
For each event:
- The first filter is evaluated.
- If the filter matches, its remove/transform behavior is applied.
- If the filter has
stop: true, no later filters run for that event. - The next filter is evaluated unless processing stopped or the event was removed.
A filter with no match block always matches.
config.yaml excerpt
filters:
- description: "Keep on-call events and rename them"
match:
summary:
contains: "schedule: oncall"
stop: true
transform:
summary:
replace: "On-Call"
- description: "Remove all other events"
remove: true
String transforms are deterministic:
removereplacetrim_prefixtrim_suffixreplace_textprefixsuffix
remove and replace are terminal. If either is set, later string transform
steps do not run for that property.