Поскольку HTTP-запросы в системе без сохранения состояния должны быть независимыми, результаты одного запроса не должны зависеть от предыдущего запроса. Подумайте, что должно произойти, если два пользователя сделали УДАЛЕНИЕ одновременно на одном и том же ресурсе. Для второго запроса имеет смысл получить 404. То же самое должно быть верно, если один пользователь делает два запроса.
Я предполагаю, что возвращение DELETE двух разных ответов не кажется вам идемпотентным. Я считаю полезным думать о идемпотентных запросах, как о том, что система остается в том же состоянии и не обязательно имеет один и тот же ответ. Поэтому независимо от того, УДАЛИТЕ ли вы существующий ресурс или попытаетесь УДАЛИТЬ ресурс, который не существует, состояние ресурса сервера будет одинаковым.