Я думаю, что вы ударили ноготь по голове, обертки просто для того, чтобы что-то потенциально могло быть заменено, плохая идея.Классическим примером является база данных, и кому на самом деле когда-либо приходилось переходить с SQL на Oracle (я знаю, что люди это делали, но как часто и действительно ли было полезно иметь обертку?).
По моему опыту, оболочка помогает, только если она скрывает 2+ вызовы стороннего компонента или API-интерфейсы в одном вызове, что что-то значит для вызывающего кода (в основном шаблон фасада) или если он упаковывает код и добавляет преобразование значения / типа для вызывающей стороны ( шаблон адаптера ).
Таким образом, оболочка должна предоставлять выгоду здесь и сейчас потребителю, а не потенциальную выгоду в будущем (системному кодеру), которая может никогда не понадобиться.