Conversation
Add push + in-app notifications for Breaking/Major significance highlights with three opt-in surfaces (settings, /highlights banner, in-feed card menu) gated behind featureMajorHeadlinesPush. Made-with: Cursor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Made-with: Cursor
|
@claude please review this pr |
|
Claude finished @nimrodkra's task in 2m 39s —— View job PR Review: feat/major-headlines-push-notifications
Overall this is a clean, well-structured feature. The shared hook pattern is good design — single source of truth across three surfaces. A few issues worth addressing before merge, ranging from a logic concern to minor nits. Bug:
|
- Only mutate inApp channel from CTAs (banner, card menu) to avoid overriding user's email preference set in settings. - Consume isLoading + local pending guard to prevent double-click mutations on banner and card menu. - Drop redundant useAuthContext optional chaining and unnecessary useMemo wrap on the hook return. Made-with: Cursor
|
Addressed @claude review feedback:
Skipped:
|
|
Claude finished @nimrodkra's task in 1m 30s —— View job Follow-up Review: Feedback Addressed ✓
All four addressed items are correctly implemented. Here's the verification: Channel inconsistency ✅ — Double-click guard ✅ — Both components are correct:
Redundant optional chain ✅ — Unnecessary Skipped items — accepted
Settings tab tests: The gated section ( One minor nit (non-blocking)In LGTM overall. The channel-scoping change is the most meaningful fix and it's correct. Ready to merge once CI is green. |
Made-with: Cursor
- Reword "Major headlines" description to be channel-agnostic in notification settings (in-app + email tabs). - Show the 3-dots options on the highlight card only on hover, matching other card patterns; keep visible while the menu is open. - Add a "Settings" action button to the enable-alerts toast that deep links to /settings/notifications so users can adjust preferences. - Reuse the notifications-page push prompt visual on /highlights (header + browser image + cabbage CTA + top-right close) with copy tailored to major news, replacing the inline banner. Made-with: Cursor
Replace the 3-dots dropdown with a single bell icon button that toggles major headline alerts on click. Keeps the hover-only visibility so it matches sibling card actions, and uses a tooltip for the accessible label. Made-with: Cursor
Settings tab now renders one row per active channel (switch + threshold dropdown: Breaking only / Major and above / Notable and above / Routine and above). Bell on highlight cards subscribes that channel at Major+. Banner subscribes all active channels at Major+ via subscribeAll. Made-with: Cursor
This reverts commit 987480f.
- Rename "Major headlines" to "Breaking news" in the settings row. - Sharper, more intent-based banner copy on /highlights: title -> "Never miss a major headline" / "You're in the loop" CTA -> "Notify me". Made-with: Cursor
Made-with: Cursor
capJavert
left a comment
There was a problem hiding this comment.
Went quickly through code I don't see anything out of the ordinary, if it works ok on preview go for it 🚀
Summary
featureMajorHeadlinesPushflag and three opt-in surfaces for Major Headlines alerts: notification settings ("Happening Now" section),/highlightsbanner, and a 3-dots menu on in-feed Happening Now cards.useMajorHeadlinesSubscriptionhook that composes push permission + notification settings as the single source of truth across surfaces.ActionType.DismissedMajorHeadlinesAlertsBanner. AddsLogEvents with origin attribution (settings,highlights_page,feed_card).Test plan
/highlights, card menu shows "Get real-time alerts", settings row shows muted stateAPI counterpart: dailydotdev/daily-api#3818
Preview domain
https://feat-major-headlines-push-notifi.preview.app.daily.dev