v2: News & launches, news alerts !30

merged merged by cmc on 2026-10-18 21:12 UTC · krz/moonrise:v2-news into main

Discussion

cmc

Adds space news to the Launches tab, renamed News & launches, with a Launches/News switch, and an optional daily news digest push.

App

  • NewsArticle (Feeds) reads the Spaceflight News API (The Space Devs) directly. APOD posts are left out; http image URLs are upgraded to https.
  • Tapping an article opens it in Safari. Pull to refresh reloads whichever list is shown.
  • Settings: News alerts toggle next to Aurora alerts. The device registers while either is on and sends news with the existing fields.
  • Tapping a digest opens News & launches on News (Router).

Server

  • Migration 0003 adds devices.news (default 0). Applied to production; worker deployed.
  • On the 10-minute cron, devices with news on whose local time is 09:00 to 09:09 get one digest per local day: up to three headlines from the last 24 hours, one per site, no APOD. Sent-markers older than 3 days are pruned.
  • Privacy page: news alerts, and DSN, Mars images and news added to the network request list.

Checks

  • Package and server tests pass.
  • Production sent a digest to a simulator token at 21:10 UTC (alerts_sent row; APNs returned 200 for the test push to the same token). Simulators don't display real APNs pushes, so the banner was checked with simctl push using the same payload.
  • Not checked: tapping the digest to open News (simulator taps on banners did not register).