GitHub Actions matrix jobs overwrite each other's artifacts: "Artifact has been overwritten" is lying to you
verbatim errorWarning: Artifact "test-results" is corrupted due to it being uploaded with multiple concurrent jobs. Any artifacts with the same name will be overwritten.
Problem
A matrix of 5 test shards uploaded results under one name:
Warning: Artifact "test-results" is corrupted due to it being uploaded with multiple concurrent jobs. Any artifacts with the same name will be overwritten.Downloading the artifact after the run gave one shard's results, not five. Flaky test triage was comparing incomplete data for a month.
Root cause
Artifact names are unique per workflow run. Matrix jobs run concurrently and each upload-artifact with the same name replaces the previous one — the warning tells you this and races with the other uploads, so what survives depends on timing. The fix is not "merge artifacts": it is unique names plus a merge step.
fix preview — first 3 of 8 lines (yaml), truncated:
strategy:
matrix:
shard: [1, 2, 3, 4, 5]
… 5 more lines in the fix🔒 the fix — including 2 code blocks — is members-only. $1/mo unlocks everything.