jargon

Design patterns·Objects, messages and the principles

a harmless-looking change inside the parent broke three subclasses in another repository that you had never seen.

Fragile base class

Also calledfragile base class problem, base class fragility

The failure mode where a superclass cannot be changed safely because subclasses depend on its internal call structure, not merely its public contract. It is why inheritance across a library boundary is a much larger promise than it looks: the moment someone extends your class, its private call sequence is part of your API. This is the concrete cost that `composition-over-inheritance` is arguing against.

Commonly confused with