The Silent Push That Woke 50,000 Apps at 3am
#ios-critical — Apple throttled background execution for 24 hours
VP Engineering: Marketing sent silent push (content-available: 1) to 50,000 users at 3 AM. Each app downloaded 15MB in the background. Apple disabled background execution during the holiday sale.
The trap: Silent push abused as bulk delivery — no size limits, no device state checks, no batching.
Your task
Fix `handleSilentPushResponsibly()` in `PushNotificationHandler.swift`: Low Power Mode guard, manifest for large assets, schedule heavy downloads, lightweight Apple metrics.
Book: push wakes the app · Prod: 15MB × 50,000 devices = battery disaster + Apple throttle.
Skills you'll prove
Interview Tip
When asked about push notifications or background execution, say: "Silent push notifications (content-available: 1) are not for delivering content — they are for NOTIFYING the app that content is available. Apple strictly limits background execution. I fixed an incident where marketing sent a silent push to 50,000 users that triggered a 15MB download per device. Apple detected the battery drain and disabled our background execution for 24 hours. The fix: silent push delivers a tiny manifest (<1KB), and the actual download is scheduled using BGTaskScheduler with constraints for charging and WiFi. Keep CPU under 5 seconds per wake, never download more than 1MB, respect Low Power Mode, and batch users — do not wake everyone at once."