A service worker (none exists) caching the shell and the last feed; the page says how old it is. Immutable assets cached.
Queued tells/swipes/dismisses in an outbox flushed on next open or online (Safari has no Background Sync; do not depend on it). Idempotent keys so a replay never doubles.
Resume /events from the last seen id on reconnect.
Tests for the outbox and replay.
Native-only, out of scope until a shell exists: Live Activities, Lock Screen/Smart Stack widgets, Watch complications and Watch UI, reliable iOS background refresh, time-sensitive notifications. Web Push on installed iOS apps may be its own later issue.
Part of #351. Needs the home feed page.
online(Safari has no Background Sync; do not depend on it). Idempotent keys so a replay never doubles./eventsfrom the last seen id on reconnect.Native-only, out of scope until a shell exists: Live Activities, Lock Screen/Smart Stack widgets, Watch complications and Watch UI, reliable iOS background refresh, time-sensitive notifications. Web Push on installed iOS apps may be its own later issue.