After deploying a multi-agent pipeline on GitHub Actions, you notice that Agent B consistently stalls indefinitely after Agent A completes its step. Agent B is waiting for a signal that never arrives. Logs show Agent B entered a waiting state but there are no timeout or error entries. What is the MOST LIKELY root cause of this stalled execution?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Imagine you're waiting for a friend to text you that they've arrived — but their phone died and they never sent the message. You wait forever because nobody built in a 'check after 30 minutes and call them' fallback. In agent pipelines, a stall with no errors almost always means a missing or dropped handoff signal combined with no timeout guard.
Full explanation below image
Full Explanation
A stalled agent with no error logs is a classic symptom of a broken handoff contract: Agent A finished its work but did not emit the artifact, event, or status flag that Agent B is waiting for. Since Agent B's polling loop never receives the trigger, it waits indefinitely — and because no error occurred (the wait is working as designed, just waiting for something that won't come), no error is logged.
Why B is correct: The most common causes of this pattern are: (1) Agent A's completion step failed silently or was short-circuited before writing the handoff artifact; (2) the artifact was written to a different path or key than Agent B expects; (3) Agent A's output schema changed and the handoff contract was not updated. The fix has two parts — correct the handoff so Agent A reliably emits the signal, and add a timeout with failure handling to Agent B's wait so it fails fast rather than stalling forever.
Why A is wrong: Memory pressure would show up as slow execution or OOM errors, not a clean waiting state with no further log output. The symptom description is inconsistent with resource exhaustion.
Why C is wrong: Runner throttling due to concurrency limits produces a queue delay before the job starts, not an indefinite wait after the job has already started and Agent B is actively running.
Why D is wrong: A container image or format parsing issue would produce an error or exception when Agent B attempts to read the output, not a silent indefinite wait state before any output is received.
The exam takeaway: every agent that waits for a peer must have a timeout and explicit failure handling. Missing handoff signals should fail fast, not stall silently.