Я про это уже столько раз ответил, что тошно. Вот Дарк говорит что в твоём PR всё стало чище и логичней. Может я что-то не понимаю? Объясни пожалуйста в двух словах, что там изменилось.
Если используется нотификация точками, то нужно использовать отдельный метод getValueByPath, в нём строки с точками будут преобразованы в массивы и будет вызван getValue, который про точки ничего не знает, но может принимать в качестве ключа массив, строку или \closure.
'a.b' => ['a', b']
['a', 'b.c'] => ['a', 'b', 'c']
Соответственно если я использую точки, то применяю getValueByPath, если нет, то применяю getValue.