We recently started facing an issue on 8.3.6 where our MQTT Engine (CirrusLink 5.0.3) was stuck in a connect/disconnect loop. Disabling and Enabling the engine only restored connection at the very beginning of the issue for a few minutes. Now it doesn't restore it at all.
We also upgraded to 8.3.8 and CirrusLink 5.0.4 to no avail. Here are the key logs:
Might try a packet capture to see what's going on too. It's saying it's having trouble publishing the host state so it almost seems like a permissions problem on the broker, but a packet capture may reveal more.