Да потому что у них есть своя логика. Получил данные из сети, обработал, сохранил в бд, записал в кеш, комбинировал несколько ответов сети, и показал в UI. Нет сети? Сохрани данные локально, после появления сети синхронизируйся. Синхронизация это само по сути огромный кейс.