Hey Adam, thank you for a great article with lots of insights!
You describe the FeedView interface as a way to send view events to the ViewModel. I was wondering, how does it come together with an MVVM pattern definition? As far as I understand it, ViewModel should not have any reference to the View, even if it is an interface. For example, that's how MVVM is defined in https://proandroiddev.com/mvp-to-mvvm-transformation-611959d5e0ca.
So strictly speaking, your ViewModel implementation is not a ViewModel in a classical sense, it's rather a naming collision, or did I get it wrong?