There are multiple instances where a released update proves to be too unstable for some edge cases. Automatic updates should be disabled by default. Upon enabling, the user should explicitly acknowledge that automatic installation will give them the latest cutting-edge software, but may be too unstable for their current setup. Automatic updates should therefore be treated as “experimental”.
I think the FarmBot team currently lacks the QA to ensure backwards compatibility and avoid degradation. Anyone who has a working FarmBot setup with automatic updates enabled in currently subject to sudden breakdown of a previously working system.
Perhaps automatic updates can be allowed for “patch” updates only, but minor and major updates should be manually installed (or guarantees waived / possible breakdowns acknowledged, as explained above).
We do indeed perform QA checks before every release. The truth is that there are bugs in all software, regardless of the amount of time and resources poured in to QA. We do our best to balance development of new features and maintaining existing ones, but this project is still in its early stages and under heavy development. We do sometimes need to make changes that sacrifice performance in certain situations to allow for better performance in the majority of cases, and we can’t always guarantee backwards compatibility. Also, we are working on increasing coverage and automation of checks through continuous integration and test suites, which will allow more comprehensive testing on a more frequent basis. If you are happy with the way your device is working and need it to perform exactly the same, you are welcome to stay on the same version without upgrading.