I just wasted a few hours troubleshooting why my plugin stopped working, turns out it was because I removed the (completely unnecessary) backgroundplugin. Why is this required?
Your observation is correct.
The event server has an optimization that will cause to ignore plugins without a background class. In this case, it is a unfortunate side effect that you will have to have a background plugin even if it does not contain functionality.
We will make a correction to the documentation so this requirement is documented.