A team wants a workflow that preserves evidence from each agent-assisted stage so maintainers can analyze the behaviour after the run completes. Each job should upload a run-specific artifact instead of overwriting a shared latest artifact. Which option completes the workflow?
name: multi-agent-observability
on:
workflow_dispatch:
inputs:
issue_number:
required: true
type: string
permissions:
contents: read
issues: read
pull-requests: read
actions: read
jobs:
triage:
runs-on: ubuntu-latest
steps:
- name: Capture triage signal
run: |
mkdir -p evidence/triage
gh issue view "${{ inputs.issue_number }}" \
--json title,body,comments > evidence/triage/issue.json
- name: Upload triage evidence
(Missing value 1): actions/upload-artifact@v4
with:
name: triage-evidence-${{ github.run_id }}
path: evidence/triage/
implementation:
needs: triage
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Capture implementation signal
run: |
mkdir -p evidence/implementation
git status --short > evidence/implementation/status.txt
git diff --name-only > evidence/implementation/touched-files.txt
- name: Upload implementation evidence
uses: actions/upload-artifact@v4
with:
name: (Missing value 2)
path: evidence/implementation/
validation:
needs: implementation
runs-on: ubuntu-latest
steps:
- name: Download implementation evidence
uses: actions/download-artifact@v4
with:
name: implementation-evidence-${{ github.run_id }}
- name: Summarize validation result
(Missing value 3): |
echo "Validation result for run $GITHUB_RUN_ID" >> "$GITHUB_STEP_SUMMARY"Choose an answer
Tap an option to check your answer.
Correct answer: Missing value 1 = uses Missing value 2 = implementation-evidence-${{ github.run_id }} Missing value 3 = run.
Why this is the answer
The correct answer completes the workflow to ensure each job uploads a run-specific artifact and preserves evidence. Missing value 1 is uses. The actions/upload-artifact@v4 action is a pre-built GitHub Action, and uses is the keyword to invoke an action. run is incorrect because it executes shell commands, not actions. with is incorrect because it's used to pass inputs to an action, not to specify the action itself. Missing value 2 is implementation-evidence-${{ github.runid }}. This naming convention ensures each artifact is unique to a specific workflow run, preventing overwrites. implementation-evidence-latest would overwrite previous artifacts, failing the requirement for preserving evidence from each stage. implementation-evidence-${{ github.sha }} would be unique per commit, but not necessarily per workflow run if the same commit triggers multiple runs. Missing value 3 is run. This keyword is used to execute shell commands, which is what the echo command is. uses is incorrect because it's for invoking actions, not shell commands. with is incorrect because it's for action inputs. env is incorrect because it defines environment variables.
Pass your exam — without the endless answer hunt
Get every verified question and explanation for this exam in one place, and save hours of prep. 1,000+ certifications · 20+ languages · free to start.
Pass your exam faster → No card needed