Many libraries go out of their way to prevent you from accessing their internals, so giving them an easy way to do that is a benefit for them at the cost of monkey-patchers who have to do a bit more work.
I think it’s a losing battle to want to make it harder for libraries to block internal access. The libraries need do that because it leads to support nightmares. See, for example, Jax’s
jax_internal_only_do_not_use_switch_to_v2_export
jax_internal_only_do_not_use_donotparallel
Besides not exporting the symbols, they gave them ridiculous names as a warning to people who might want to access them.