Немного непонятно, почему вы делаете GROUP BY по таблице, которая добавляется через LEFT JOIN. Ведь LEFT JOIN значит, что данных может и не быть, т.е. пойдёт группировка по NULL.
Что делает latest()->limit(1) внутри условий join'a?
И какая у вас вообще цель? Отсортировать заказы по дате последнего события? К сожалению, группировка с сортировкой так не работают. Сначала оно группирует по logs.entity_id, выбрав произвольную запись из logs, а затем получившиеся строки отсортирует.
Вам нужно что-то вроде этого:
SELECT orders.*
FROM orders
LEFT JOIN (
SELECT entity_id, MAX(created_at) created_at
FROM logs
GROUP BY entity_id
) t ON orders.id = t.entity_id
ORDER BY t.created_at DESC
На синтаксис Laravel переложите сами :)