# Push delivery, revived

**Status:** Researching · **Opened:** 2026-07-10

No NIP covers push notifications. We scanned the full NIP index — nothing numbered, lettered, or hex-coded addresses how an event reaches a phone that isn't looking. The one serious attempt, Amethyst's "Event Watcher API" (PR #1528), had already run in production for about a year before it was even proposed — and it still closed unmerged in 2025, with the author's own note that Pokey's success made him question whether the idea was worth pursuing. The gap didn't close; the person carrying it put it down.

## Why it matters more than it looks

Apple's Lockdown Mode blocks Service Workers entirely, so PWA web-push isn't degraded there — it's absent. The users who opt into the highest security get the least notification capability, and every consumer Nostr app re-solves this privately or ships without it.

## What we're sketching

Study before proposing: PR #1528's design and Pokey's working model first. The likely shape is a slim registration spec with wrapped delivery — the push server should never learn which pubkey you watch. But the first deliverable is practical, not protocol: an MKStack skill that standardizes the non-protocol fallback (native push via Capacitor/APNs/FCM, web-push where it exists, honest Lockdown Mode behavior) so scaffolded apps stop re-solving it one at a time. A fallback pattern people actually ship beats a spec nobody implements.

## Why us

We're building bilingual consumer surfaces on this stack, and civic information is time-sensitive — a deadline notice that arrives late is a notice that didn't arrive.

## Receipts

- [PR #1528 — Push Notification, Event Watcher API](https://github.com/nostr-protocol/nips/pull/1528) — closed unmerged 2025-07-31; in production on Amethyst ~a year prior
- [NIP index](https://github.com/nostr-protocol/nips/blob/master/README.md) — scanned in full; no push standard exists
- [MKStack `lockdown-mode` skill](https://gitlab.com/soapbox-pub/mkstack/-/raw/main/.agents/skills/lockdown-mode/SKILL.md) — Service Workers sit in the blocked-entirely tier
- [MKStack `capacitor` skill](https://gitlab.com/soapbox-pub/mkstack/-/raw/main/.agents/skills/capacitor/SKILL.md) — the native wrap the fallback rides on
