Farm Hub
The hub runs on an always-on Linux machine and is the only thing that ever contacts a farm — MQTT for state and small commands, SSH for anything interactive. The MQTT broker is built into the same binary, so the table of enrolled farms is the access list and nothing can drift from it. It publishes one versioned document of the whole farm, and every reading in it carries a timestamp so no client serves old data as news. Its Angular web panel, signed in with a passkey, is being built to do everything the phone app can. And the farm keeps working without it: the backlog stays in GitLab, and the hub is only how you watch and steer.