Delivery chain verified end-to-end on a real iPhone (subscribe -> VAPID sign -> Apple 201 -> SW showNotification). Test 1 reminder did not fire on schedule: node-cron missed the window tick + the scan has no catch-up, so a missed tick drops the reminder permanently. Gap + fix direction recorded.