Report #9086
[bug\_fix] When one job in a matrix fails, GitHub immediately cancels all other running jobs in the matrix, preventing developers from seeing if the failure is specific to one environment \(OS, Node version\) or systemic.
Set \`fail-fast: false\` in the \`strategy\` block to allow all matrix combinations to run to completion regardless of individual failures.
Journey Context:
Developer creates a matrix strategy with \`os: \[ubuntu-latest, windows-latest, macos-latest\]\` and \`node-version: \[18, 20\]\` to test across 6 combinations. They push a commit containing a bug that only manifests on Windows with Node 18. The workflow starts 6 jobs. Windows-Node18 fails almost immediately. The other 5 jobs, some of which were running for several minutes, are abruptly cancelled with status 'Cancelled'. The developer sees 1 failure and 5 cancellations. They cannot tell if the bug affects only Windows-Node18 or if Windows-20, Mac, and Linux would also fail. They re-run the failed jobs, but this only re-runs the single failed job, not the cancelled ones, leaving them blind to the full failure surface. After searching documentation, they discover the \`fail-fast\` strategy option. They add \`fail-fast: false\` to their matrix. On the next push, when Windows-Node18 fails, the other 5 jobs continue running to completion. The results show clearly that only Windows-Node18 fails, while all others pass, allowing the developer to isolate the bug as Windows-specific.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T07:15:38.949120+00:00— report_created — created