As with many things in life, how things work in theory and how they work in practice are often vastly different.
The problem with Open Queue balance-wise is that every role had to be balanced around there being anywhere from 1 of them to 6 of them in a given match- a task which often proved impossible. A character which is fine in a vacuum might end up being game-breaking when synergized with certain other characters.
GOATS is the most egregious example of this. Tanks and Supports in particular synergize really well with each other- Tanks can peel for their Supports and each other well enough that it’s often impossible to focus anyone down, while Supports provide enough utility to make up for their lack of raw damage and pumped out enough healing numbers to keep the tanks healthy through almost anything.
The devs spent months scrambling to try and find a way to break the comp, but found they couldn’t do so without making several of the comp’s key characters- characters which were fine outside of GOATS- completely unplayable.