I think models are just becoming better at not blindly following stupid instructions.
A previous model would happily generate 1000s lines of code when prompted to do something stupid, the newer models will ask if I really want that first.
And FINALLY they stopped doing that annoying "You're spot on! You're absolutely right!" nonsense.
or they increasingly copy what a lot of their training data does, discussion for discussion sake and arguments for the sake of winning them instead of productive outcomes.
probably the truth is somewhere in between