Когда useMemo реально помогает, а когда это шум?
Помогает, когда вычисление действительно дорогое или когда значение служит зависимостью другого хука либо мемоизированного потомка — там новая ссылка на каждый рендер убивает мемоизацию. Шумом становится вокруг дешёвых операций, потому что само сравнение и хранение значения тоже стоят. Обернуть в useMemo всё подряд — сделать код нечитаемым без измеримой выгоды.