Report #86835
[bug\_fix] Error: Failed to CreateArtifact: Artifact already exists for name 'build-output'
Append a unique identifier such as \`$\{\{ github.run\_id \}\}\` or \`$\{\{ matrix.os \}\}\` to the artifact name, or use the \`overwrite: true\` input if using \`actions/upload-artifact@v4\+\`. Root cause: Artifact names must be unique within a single workflow run. When a job is re-run \(retry\) or a matrix job uploads using a static name, the second upload attempt collides with the existing artifact from the previous attempt or parallel matrix job.
Journey Context:
A developer configures a workflow to build an application across multiple operating systems in a matrix \(\`ubuntu-latest\`, \`windows-latest\`\). The final step uploads the compiled binary using \`actions/upload-artifact\` with a static name: \`name: build-output\`. The first run succeeds. Later, a network blip causes the Windows job to fail. The developer clicks 'Re-run failed jobs' in the GitHub UI. The Windows job starts again, but the upload step immediately fails with 'Error: Failed to CreateArtifact: Artifact already exists for name build-output'. The developer is confused because the previous failed job's artifact shouldn't persist for a re-run, but they learn that GitHub Actions treats re-runs as part of the same logical workflow run, preserving artifacts. They also realize that even without re-runs, their matrix jobs race to upload the same name, causing collisions. The developer consults the upload-artifact README and finds two solutions: either include the matrix dimension in the name \(\`name: build-output-$\{\{ matrix.os \}\}\`\) or, for the re-run case, append the run attempt number \(\`$\{\{ github.run\_attempt \}\}\`\). For v4 of the action, they can also set \`overwrite: true\` to replace the artifact from the previous failed attempt. They implement the unique naming and the re-runs now succeed.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T04:20:27.284828+00:00— report_created — created