Клик использует актуальное замыкание, а глобальный Enter — данные первого рендера. Объедините оба действия через submit формы, уберите document-слушатель и считайте задачи по items.length.
Если useForceUpdate действительно обновляет состояние App, без мемоизации перерендерятся App, Parent, Child и все три RenderCount. Повторный рендер не означает замену всех DOM-узлов.
Храните направление и введённую сумму, второе поле вычисляйте из них. При переключении используйте прежний результат как новую исходную сумму и применяйте курс обратного направления.
Обычная функция внутри filter не наследует this сервиса. Замените её стрелкой или передайте this вторым аргументом filter; используйте строгое сравнение статуса.
Загрузите пользователей один раз в эффекте, храните запрос отдельно и вычисляйте фильтр при рендере. Отменяйте запрос при размонтировании и показывайте состояние ошибки.
В третьем объекте повторяются name и id: сохранятся только test и 5. Разделите записи на три объекта, добавьте key в map; отсутствие key — не синтаксическая ошибка.
Приведённый HelloComponent уже является самостоятельным React-компонентом. Сохраните его в отдельном файле, импортируйте в App и используйте JSX-тег с заглавной буквы.
useEffect должен возвращать очистку, а не Promise. Запустите асинхронную работу внутри эффекта, сохраните одну ссылку на scroll-обработчик и игнорируйте поздний ответ.
Храните счётчик в useState, а в обработчике кнопки вызывайте setCount с функцией от предыдущего значения. React перерисует число после обновления состояния.
var(--target-y) допустим внутри keyframes, translate3d записан корректно. При высоте окна до 500px включительно начальное смещение равно 400px, иначе 100vh.
Сделайте checkbox управляемым, обновляйте состояние функционально и используйте отдельный идентификатор для каждой группы. Очистка dblclick уже реализована верно.