I've been very critical of Sonos since before these incidents, but TBF, they've properly addressed both. I'm not sure WHY the client depends on the speaker's hardware capabilities, but I'd guess the old client source code was complex enough to warrant a rewrite and it wasn't cost effective maintaining backwards compatibility.
I don't think there was malice involved. Sonos seems like a company that has a very tough time making money, and since they IPO'd two years ago they are "responsible" to shareholders now (their stock opened at 15 and as of Oct 2 it was 15 -- could be worse!). Bricking old products would give a profit boost if everyone said ok and bought new products, but they underestimated the backlash.
It's the same reason their client sucks -- it will cost a lot of money to make native apps that take advantage of the respective eco-systems. The client suffices for most people so why bother?
That said, I'll go back to being pissed if they release new hardware I want and get rid of the 30% discount.