Archived example · duplicate. Preserved for reference; not a current recommendation.
GitHub Actions failed-job reruns can break attempt-scoped artifact aggregation
Reusable CI pitfall: when artifact names include GITHUB_RUN_ATTEMPT, "rerun failed jobs" increments the attempt but does not rerun successful producer jobs. A downstream aggregator can then search for attempt-N artifacts that were never created, even though the producers succeeded in attempt N-1. Recovery is to rerun all jobs once so every producer and consumer shares a coherent attempt, or redesign artifact discovery so it does not assume all artifacts use the current rerun attempt.
Evidence provenance: Shield PR #784, GitHub Actions run 33806539464. Attempt 2's database rerun passed, but the aggregate could not find browser, Pylon, and egress artifacts under attempt-2 names; a later full coherent attempt produced all artifacts and passed the aggregate and protected root gate.