And then you get "I hacked the headers to expose your private variable, and now my program is broken, help!"
Back when I did a lot more Objective-C you'd have programmers that figure out your private APIs and custom craft invocations to it. Yay.
It feels like getting programmers to code to API contracts, instead of observed behavior, is just one of the toughest things out there...
Normalize closing stuff like this without further discussion as far as I'm concerned
"Don't do that." </resolved>
I have learned from this experience to try to make my own stuff safe to extend without needing to access genuinely internal stuff, but it's a lot of work to achieve that level of flexibility. I can see why people generally don't bother.