Plain string 'online'/'offline' caused SyntaxError in EasyMQTT which
wildcard-subscribes and JSON.parses all messages. Switch to
{"state":"online"} payload with availability_template in HA discovery.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Portainer git deployments have no .env file on disk. Switch to
environment: with ${VAR} substitution — vars injected via Portainer UI.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>