//nefariousplan

Parent Class Was The Gate

A security check lives in an abstract base class as a wrapper around a protected primitive the subclasses implement. A later refactor flattens the hierarchy, deletes the wrapper, and promotes the protected primitive to the public method. The check is not relocated; it is deleted with the wrapper. The subclasses that did not need the check stay coincidentally safe. The subclass that did need it ships as the unsafe primitive's public entrypoint.