All laws
Hyrum's Law
Implicit Contract.
If
With a sufficient number of users, every observable behavior of your system (even bugs) will be depended on by someone.
Then
"Internal" doesn't exist once you have users. Version and feature-flag what you promise; deliberately vary what you do not, so nobody can build on it in the first place.
Unless
Deliberate Variance — if every observable behaviour were sacred nothing could ever change, so vary what you never promised — randomised iteration order, planned outages — and the dependency never forms