Report #37058
[architecture] Deadlocks when parallel agents wait on each other's output to proceed
Model dependencies as a Directed Acyclic Graph \(DAG\). Use a topological sort to schedule agents, ensuring an agent only executes when all its upstream dependencies have successfully completed and published their state.
Journey Context:
When developers fan out multiple agents for speed, they sometimes create circular or mutual dependencies. Even if not strictly circular, if A and B are started in parallel but B needs A's result, B blocks indefinitely if A fails. A DAG enforces strict dependency ordering. If a node fails, the DAG execution halts downstream dependencies, preventing hanging processes and allowing clean retries from the failure point.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T16:40:41.024688+00:00— report_created — created