Create push_subscriptions (id, deviceId → user_devices.id, endpoint, p256dh, auth, createdAt, lastUsedAt, disabledAt). Generate VAPID keys, store private key in env (VAPID_PRIVATE_KEY, VAPID_PUBLIC_KEY, VAPID_SUBJECT). Subscriptions are per device. Add the web-push dependency.
Acceptance criteria:
- Subscription rows tied to a device
- VAPID keys configured via env, public key exposed to the client
- Migration generated
Create
push_subscriptions(id, deviceId → user_devices.id, endpoint, p256dh, auth, createdAt, lastUsedAt, disabledAt). Generate VAPID keys, store private key in env (VAPID_PRIVATE_KEY,VAPID_PUBLIC_KEY,VAPID_SUBJECT). Subscriptions are per device. Add theweb-pushdependency.Acceptance criteria: