

But this can lead to over engineering simple stuff. Which makes the code harder to read and maintain and more error prone. Especially if you don’t need all the other stuff for the class. Worse, if you define a class then you also tend to add more stuff you don’t use, just in case it might be useful.
A simple variable name is sometimes the better solution. But it depends on the situation off course. Sometimes a new class make things more clear, as it abstracts some complexity away. Yeah, we need to find a balance and that is different for every program.
You have the perfect Linux user mindset. I am not saying this as an offense, rather a compliment. :-) I am also someone who investigates and searches the reason and solution of problems.
Recently I had an issue for months, before its stable now (AMD on Linux, but with a specific game Marvel Rivals). The issue was so bad that I got multiple crashes per game session or match even. And either my method or the updates to the game, to the Linux core and drivers fixed it, or a combination of it. What I want to say is, maybe its an issue with the software or as you say, a configuration issue. So trying and finding a workaround might be worth it. Especially if you are happy with Nividia otherwise.