Если явной потребности в 17-й версии нет, то я бы предложил пока остаться на 16
А что если нужен 17 реакт?
Как я понимаю, вы ограничиваете версию (^ вместо >=) потому что пока что не тестируете 17 реакт. Такая причина?
Что на счёт того, что бы в будущем ещё немного распилить компоненты?
Например, поставлять общие для всех компонентов зависимости под условием >=, и тестировать их на самой последней не тестовой версии, а набор компонентов использующий зависимость, поставлять отдельно, под нужным условием или даже поставлять каждый компонент отдельно, под разными условиями (^ и >=).
Тогда можно было бы простой компонент вроде кнопки взять и для 17 реакта, потому что его легко тестировать и разрешить 17 версию если всё ок.
А если зависимость не подходит, можно собрать свой компонент воспользовавшись общей библиотекой.
Это особенно хорошо работало бы с идеей отделения поведения в хуки.
Возможно вам понравится такое разделение.