Report #4930
[bug\_fix] Cannot access outputs from matrix strategy jobs in downstream jobs
Use actions/upload-artifact in each matrix job to persist outputs, then download and aggregate in the downstream job; alternatively use job summaries for lightweight data
Journey Context:
Developer creates a test workflow with a matrix strategy running 5 shards in parallel, each producing a coverage.json file. Developer attempts to aggregate coverage in a report job using needs.test.outputs.coverage, but the workflow fails validation or the output is empty. Developer checks GitHub Actions documentation and discovers that matrix jobs spawn multiple job instances with the same job ID, making it impossible to deterministically map a single output value from the matrix. Developer considers using job outputs with a specific matrix instance, but learns this is unsupported. Developer refactors the workflow to use actions/upload-artifact within each matrix shard to upload coverage.json with unique names or paths, then uses actions/download-artifact in the report job with pattern: coverage-\* to aggregate all shards, successfully combining the matrix outputs without relying on the unsupported outputs syntax.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T20:18:46.538811+00:00— report_created — created