You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GitHub Actions supports branches-ignore, paths, and paths-ignore filters for applicable push and pull_request events, with documented glob ordering, filter-combination rules, and changed-file diff behavior.
Open Actions rejects these keys as unsupported event filters, so otherwise valid workflows fail discovery. Push tag filters are tracked separately in #21.
Goal
Select workflow runs with the same branch and changed-path filtering behavior as GitHub Actions.
Acceptance criteria
Parse and validate branches-ignore, paths, and paths-ignore only on the events where GitHub supports them.
Enforce documented mutual-exclusion and combination rules for positive and ignore filters.
Implement GitHub-compatible ordered glob and negative-pattern behavior.
Combine branch or tag filters with path filters using GitHub-compatible AND semantics.
Compute changed files using the documented two-dot, three-dot, and new-branch comparisons for each event type.
Match documented behavior for deletions, renames, empty diffs, diff timeouts, commit-count thresholds, and changed-file limits.
Preserve the documented observable check state when a required workflow is skipped by a filter.
Add webhook and matching tests for push and pull request events, including negative patterns and the documented diff limits.
Context
GitHub Actions supports
branches-ignore,paths, andpaths-ignorefilters for applicablepushandpull_requestevents, with documented glob ordering, filter-combination rules, and changed-file diff behavior.Open Actions rejects these keys as unsupported event filters, so otherwise valid workflows fail discovery. Push tag filters are tracked separately in #21.
Goal
Select workflow runs with the same branch and changed-path filtering behavior as GitHub Actions.
Acceptance criteria
branches-ignore,paths, andpaths-ignoreonly on the events where GitHub supports them.References: