В течении всего учебника я учил вас думать о данных, а потом в CWP и gDSFR взял и сделал из образно stateless (хоть он и был через class - состояния у него не было) компонента - statefull. Это было сделано для удобства объяснений.
Смотрите, если мы откатим наш <News /> на два урока назад (когда компонент просто получал props), то мы сможем в <App /> использовать gDSFR и там "рубить спам". Таким образом, мы бы опять решили задачу без изменения stateless компонента.
Было: компонент <News /> умел отображать данные. Стало: компонент <News /> умеет отображать данные и помечать спам.
Задача: обрабатывать данные в <App />, вернуть <News /> к прежнему "тупому" образу жизни.
Подсказка: вы запросто можете сделать все что нужно в <App />, так как мы только что отработали этот прием.
Подсказка: в <App /> новости лежат в state, а не в props.