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
{{ message }}
Repository navigation
Smoke-Build a Dispatched Run of the Smoke Caller Snippet Past Its Paths Filter #3149
Raised by CodeRabbit on the develop -> main promotion #3146, against catalog/snippets/workflows/test-pull-request-smoke.yml, which #3113 added. The YAML is older than that file: main's docs/reusable-workflows.md "Release repos with a smoke build" example already carries the same workflow_dispatch: trigger and the same if: needs.changes.outputs.release == 'true' gate on smoke-build, and #3113 copied that example into the catalog, where develop's doc still carries it.
Gap
On a workflow_dispatch run there is no pull request, so dorny/paths-filter compares against a base it picks itself. A dispatch on the default branch compares only that branch's last commit. Where that commit touches no release path, smoke-build skips, and check-workflow-status reads the skip as a pass, so a manual run meant to smoke-build the target builds nothing and reports green.
Possible Direction
Let a dispatch bypass the filter, if: github.event_name == 'workflow_dispatch' || needs.changes.outputs.release == 'true', in the snippet and the docs example together, or drop workflow_dispatch: from the pull request workflow where a dispatch has no use. WORKFLOW.md D1.1 states the filter for a pull request only, so either choice keeps the contract. Which one the fleet wants is the maintainer's call.
Maintainer decision (asked at the close of the engineering round 28 session): a dispatch bypasses the filter. Gate smoke-build on github.event_name == 'workflow_dispatch' || needs.changes.outputs.release == 'true', in catalog/snippets/workflows/test-pull-request-smoke.yml and in the docs/reusable-workflows.md example together, since a manual run is an explicit ask to build. Keep workflow_dispatch:.
Activity
ptr727 commentedon Oct 16, 2026
Maintainer decision (asked at the close of the engineering round 28 session): a dispatch bypasses the filter. Gate
smoke-buildongithub.event_name == 'workflow_dispatch' || needs.changes.outputs.release == 'true', incatalog/snippets/workflows/test-pull-request-smoke.ymland in thedocs/reusable-workflows.mdexample together, since a manual run is an explicit ask to build. Keepworkflow_dispatch:.Let a Manual Dispatch Bypass the Smoke Build's Paths Filter (#3153)