+1.Not wanting to refactor your entire codebase to address
what is likelyan edge case, is not a cop out, it's a reasonable strategy from both the business and engineering perspectives. I guarantee that nobody on the business side wants to spend a bunch of money for relatively small gain, and nobody on the engineering side has the time to address what is surelya low-priority issue compared to other bugs + roadmap.
Whether this points to their code being a 'mess' is much harder to assess. Adopting limits to ensure continued compatibility with a wide range of platforms makes sense, provide the company is willing to communicate with and support customers that are impacted. It's also a reasonable short-term solution if there were a known severe issue (eg a massive memory leak), to ensure customers can keep using the software while the real fix is implemented. Do we know if either of those is happening here, or if their code is indeed a 'mess'? We don't, and unless someone from Roon comments, anything said here is speculation.
I took the liberty to edit your post