I respect your overall point but I think the picture is more nuanced than that. "Computer" as a term is simply unpopular, in favor of something referencing the intended application, as determined by things like the form factor:
Graphing Calculators are computers in every sense, it's hard to find one you can't at least program in a high level language like Basic or Python, and many accept assembly programs - even Texas Instruments models did, before their signing keys were brute forced.
Games consoles too almost invariably run third party code, although they tend not to be end user programmable - no different than an iPhone in that regard, really.
"Feature phones" - pre-smartphone phones with cameras and internet etc - usually had the ability to run Java Midlets without manufacturer blessing, even though you couldn't touch the OS. You could SSH into servers from those!
I think a big problem is that the distinction between "general purpose computer" and "end user programmable general purpose computer" is functionally meaningless when you can't write programs, which is most people. Instead they understand it in a functional context - what is this device for? How does it compare to how such devices usually work? The general purpose CPU inside is an implementation detail, and just because you think of an iPhone as a computer doesn't mean everyone does. They think of it as a "phone".
> usually had the ability to run Java Midlets without manufacturer
I had to respond first to this - I happened to grow up with Verizon phones. They had the manufacturers ship variants that replaced Java with BREW - some locked-down bastardized atrocity with DRM, which could only be acquired through purchasing in an on-device App Store (Called "Get It Now"). I knew about how everyone else had Java on their dumbphones though. But overall in that era the meme is accurate that if you even accidentally pushed the "Internet" button on your phone, the ensuing insane per-KB data charges would be noticeable. No one I know used any such apps or features.
Anyway, I didn't mean to suggest "end user programmable" was a requirement to be a computer. I meant that the computer owner expects that the computer manufacturer isn't gatekeeping.
Now, a GameCube or PlayStation buyer may have seen the gatekeeping as a positive -- knowing that Nintendo wouldn't bless a cartridge/disc that was pornographic, bomb-making instructions, or what have you, they felt it was a safer device to put in a kid's bedroom than a Windows XP computer.
I posit: To normal people, "A computer" is a subset of devices which, conceptually speaking, wants to be usable for a maximum of purposes. In other words, if you gave someone a variety of tasks (Edit the file on this flash drive, do your taxes, sort 100 photos into 3 folders based on occasion and print the best 3 of each, find an email you sent 3 months ago and quote excerpts from it) and then presented them with a bunch of devices from all the categories I mentioned, basically everyone knows a Mac or Windows PC will do that well, and anything else will lack important tools like the filesystem, drivers for hardware, reasonable multitasking, capable browsers, etc and make those tasks painful at best. And if specialized software is needed, that software will likely not run on those other devices.
Every other modern device, including my Apple Watch to a Chromebook to a PS5, is more than capable of all those tasks computationally, but the manufacturers specifically crippled many abilities and blocked all non-blessed software, and Nintendo or Samsung doesn't want you running TurboTax on the Switch or your Smart Fridge.
Graphing Calculators are computers in every sense, it's hard to find one you can't at least program in a high level language like Basic or Python, and many accept assembly programs - even Texas Instruments models did, before their signing keys were brute forced.
Games consoles too almost invariably run third party code, although they tend not to be end user programmable - no different than an iPhone in that regard, really.
"Feature phones" - pre-smartphone phones with cameras and internet etc - usually had the ability to run Java Midlets without manufacturer blessing, even though you couldn't touch the OS. You could SSH into servers from those!
I think a big problem is that the distinction between "general purpose computer" and "end user programmable general purpose computer" is functionally meaningless when you can't write programs, which is most people. Instead they understand it in a functional context - what is this device for? How does it compare to how such devices usually work? The general purpose CPU inside is an implementation detail, and just because you think of an iPhone as a computer doesn't mean everyone does. They think of it as a "phone".