Report #102561
[architecture] Agents deadlock because each holds one resource while waiting for another
Impose a global total order on lockable resources and acquire locks in ascending order. Combine with lease timeouts so a crashed or stalled agent cannot hold a lock forever.
Journey Context:
Deadlocks happen when agents acquire shared resources in inconsistent orders. The resource-hierarchy solution comes from Dijkstra's dining-philosophers analysis: if every agent picks up forks in the same order, circular wait is impossible. Timeouts alone are not enough because they can livelock; ordering alone is not enough because a crash can orphan a lock. You need both.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-09T05:05:07.224460+00:00— report_created — created