Report #71819
[bug\_fix] Matrix exclusions not working - excluded combinations still run or 'Invalid exclude' validation error
Use proper YAML list-of-objects syntax for exclusions. Each exclusion must be a single object containing all matrix variables to match: \`exclude: - os: windows-latest node: 16\` \(single list item with both properties\), not separate list items for each variable.
Journey Context:
Developer configures a test matrix across OS \(ubuntu, windows, macos\) and Node versions \(16, 18, 20\). To skip Node 16 on Windows due to compatibility issues, they attempt to exclude using separate list items: \`exclude: - os: windows-latest - node: 16\`. The workflow either fails validation with 'Invalid exclude' or silently runs the excluded combination anyway. The developer tries various indentation patterns, consults Stack Overflow examples showing simple single-variable exclusions, and attempts to use \`include\` instead to override. After examining the workflow schema documentation, they realize that \`exclude\` expects a list of objects where each object defines the full combination to exclude. The syntax requires both variables to be keys within the same list item, not separate exclusion entries.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T03:07:48.124626+00:00— report_created — created