Severity: 🔴 Critical (0.83) | Type: 🌐 Network

Report

[The Wonderful 101] Race in BrokerDetails.clientDisconnect between Disconnect and connectionWatcher Source: https://github.com/sassoftware/arke/issues/101 `BrokerDetails.clientDisconnect` (`bool`) is written by `Disconnect` → `disconnectClientByIdentifier` (`amqp091.go:1337`) and concurrently read by the background `connectionWatcher` goroutine spawned in `Connect` (`amqp091.go:511`). The reads sit in the outer watcher loop (`amqp091.go:1797`), the inner reconnect loop (`amqp091.go:1817`), and the `connect()` early-out (`amqp091.go:1863`). None of these accesses are synchronized — the `sync.Mutex` already on `BrokerDetails` guards `bd.state` but n

GameAi Intelligence | Issue #8846 |