Зачем наследовать конфиг? Умолчания можно и нужно задать в самом пакете, наиболее подходящие для большинства случаев.
Не согласен. Писать вот такое в самом пакете не норм:
public function __construct(?DriverInterface $driver = null)
{
if ($driver === null) {
$driver = new RedisDriver('localhost:1010');
}
$this->driver = $driver;
}