The build of an app build being debuggable isn't reflected in the app data permissions. It's not a case of security people locking stuff down and making development inconvenient. ADB is a low-level tool and isn't designed to offer a high level user interface.
Conversation
whyever would somebody expect the android debugger to allow debugging
1
1
1
It's not "the Android debugger". It's the Android Debug Bridge i.e. the low-level bridge between the host and mobile device.
2
1
Debugging on a mobile device isn't done the same way as traditional development, since it's tethered to another host. ADB is the low-level implementation of that bridge between the devices. It's not a debugger or an app development tool.
2
It's the base for higher-level tools by bridging between the devices. For example it can proxy gdb <-> gdbserver on the device and similarly for jdb, perf, etc. The app layer could be completely different like a desktop Linux stack without app sandboxing and ADB wouldn't change.
2
wrote a programming language and I'm me. We do know what adb is, we're just not impressed about what it isn't. That's all.
1
I don't understand where the hostility is coming from, sorry. You presented this as a narrative about security people hindering development, which isn't the case at all.
2
I don't quite understand the problem with ADB being implemented as low-level plumbing and higher-level tooling sitting on top of it, but whether or not that's subjectively a good design the attack on the security engineers and security model doesn't fit or make much sense.
1
You sort of view adb as an internal interface and, well, there are other views. Adb reflects a security design that has gotten quite locked down, inflexible, and not well documented over the years and pressures. A lot of things look like they should work.
1
I don't think it has ever been able to bypass the basic permissions on app directories, other than using `adb root` in userdebug builds. The `run-as` tool is a production-oriented implementation of `su` for debug builds of app and adb has just never had that functionality itself.

