From 12c7df1dc7b601b767691d1a47b58a4f045813a2 Mon Sep 17 00:00:00 2001 From: Ofer Affias Date: Thu, 24 Jul 2025 16:12:40 +0300 Subject: [PATCH 1/2] Update Execution Model docs with trigger matching details --- docs/execution-model.md | 50 ++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/docs/execution-model.md b/docs/execution-model.md index 560b0b6b..4226ce2e 100644 --- a/docs/execution-model.md +++ b/docs/execution-model.md @@ -82,6 +82,31 @@ If an automation block does not have explicit triggers configured, it will be tr !!! Note The `on` parameter can be used within individual automation blocks, while `triggers.include` and `triggers.exclude` can only be defined at the file level. +**Note on Matching:** + +- When using a `String` as the matching type, the values in `triggers.include.*` and `triggers.exclude.*` require exact matches. This means that the names of branches or repositories must exactly match the specified string to either trigger or prevent triggering the automation. +- For more precise control, use a regular expression (regex) format: `r/REGEX_PATTERN/`. + +**Default Behavior:** + +- Implicit triggers are the default behavior if the automation doesn't have explicit triggers configured. +- The automation runs for all branches and repositories if neither include nor exclude is specified. + +**Exclude/Include prioritization** + +- Exclude overrides the include option. Thus, a repo will be excluded when it matches the include and exclude lists. + + In the following example, the automations in the file will be triggered for all repositories that contain the string `feature`, except for the repository `my_feature` + ```yaml+jinja + triggers: + include: + repository: + - r/feature/ + exclude: + repository: + - my_feature + ``` + ## Action-Level Execution Control gitStream provides intelligent action-level execution control that automatically skips certain actions based on the original triggering event. This feature helps reduce noise and ensures that AI-powered and code-related actions only execute when there are actual code changes, improving efficiency across all supported providers (GitLab, Bitbucket, and GitHub). @@ -146,31 +171,6 @@ automations: With implicit triggers (no explicit triggers configured), `describe-changes` will only execute when the automation is triggered by code changes, while `add-reviewers` follows the current default behavior. -**Note on Matching:** - -- When using a `String` as the matching type, the values in `triggers.include.*` and `triggers.exclude.*` require exact matches. This means that the names of branches or repositories must exactly match the specified string to either trigger or prevent triggering the automation. -- For more precise control, use a regular expression (regex) format: `r/REGEX_PATTERN/`. - -**Default Behavior:** - -- Implicit triggers are the default behavior if the automation doesn't have explicit triggers configured. -- The automation runs for all branches and repositories if neither include nor exclude is specified. - -**Exclude/Include prioritization** - -- Exclude overrides the include option. Thus, a repo will be excluded when it matches the include and exclude lists. - - In the following example, the automations in the file will be triggered for all repositories that contain the string `feature`, except for the repository `my_feature` - ```yaml+jinja - triggers: - include: - repository: - - r/feature/ - exclude: - repository: - - my_feature - ``` - ### Examples #### Dependabot and Renovate From e37958fe0f264e647455d0575d00ebc825547081 Mon Sep 17 00:00:00 2001 From: Ofer Affias Date: Thu, 24 Jul 2025 16:14:02 +0300 Subject: [PATCH 2/2] Update execution-model.md --- docs/execution-model.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/execution-model.md b/docs/execution-model.md index 4226ce2e..873d9414 100644 --- a/docs/execution-model.md +++ b/docs/execution-model.md @@ -171,7 +171,7 @@ automations: With implicit triggers (no explicit triggers configured), `describe-changes` will only execute when the automation is triggered by code changes, while `add-reviewers` follows the current default behavior. -### Examples +## Examples #### Dependabot and Renovate