Skip to content

feat(standups): add starting soon notifications#3869

Merged
idoshamun merged 5 commits into
mainfrom
codex/live-room-starting-soon
May 12, 2026
Merged

feat(standups): add starting soon notifications#3869
idoshamun merged 5 commits into
mainfrom
codex/live-room-starting-soon

Conversation

@idoshamun
Copy link
Copy Markdown
Member

Summary

  • add a new live-room starting-soon notification type and copy
  • schedule immutable standup reminders hourly via a delayed Temporal workflow
  • send the reminder through the normal notification pipeline at due time so push and realtime behavior stay aligned

Validation

  • pnpm exec eslint src/cron/liveRoomStartingSoonNotifications.ts src/workers/liveRoomNotifications.ts src/workers/notifications/liveRoomStartingSoonNotification.ts src/workers/notifications/index.ts tests/cron/liveRoomStartingSoonNotifications.ts tests/workers/notifications/liveRoomStartingSoonNotification.ts .infra/crons.ts --no-ignore
  • pnpm run build
  • Jest is currently blocked in this checkout by the preexisting test cleanup error: relation "spotlight_action" does not exist from tests/setup.ts before the target suites execute.

@pulumi
Copy link
Copy Markdown

pulumi Bot commented May 12, 2026

🍹 The Update (preview) for dailydotdev/api/prod (at 5576781) was successful.

✨ Neo Explanation

Routine feature deployment adding "live room starting soon" push/in-app notifications via a new Temporal-scheduled workflow and PubSub subscription. ✅ Low Risk.

This PR introduces a "live room starting soon" notification feature. When a scheduled live room is created, a Temporal workflow is registered (5 minutes before the scheduled start) that triggers a new live_room_starting_soon in-app notification to all room subscribers. The new PubSub subscription (api.live-room-starting-soon-notification) wires the delayed notification reminder topic to the new worker that processes these notifications.

The Kubernetes deployment and cron updates are routine image tag bumps to the new commit SHA. The migration jobs cycle as expected for a new deployment.

🔵 Info — The new PubSub subscription reuses the existing api.v1.delayed-notification-reminder topic (shared with poll result notifications). The worker correctly filters by entityTableName to avoid processing unrelated entities, so there is no cross-contamination risk, but this is worth noting for observability — a misconfigured Temporal workflow firing against a non-live-room entity will be silently dropped.

Resource Changes

    Name                                                       Type                           Operation
~   vpc-native-clean-zombie-users-cron                         kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-zombie-opportunities-cron                 kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-zombie-images-cron                        kubernetes:batch/v1:CronJob    update
~   vpc-native-channel-highlights-cron                         kubernetes:batch/v1:CronJob    update
~   vpc-native-personalized-digest-deployment                  kubernetes:apps/v1:Deployment  update
~   vpc-native-update-tag-materialized-views-cron              kubernetes:batch/v1:CronJob    update
-   vpc-native-api-clickhouse-migration-01b29b7e               kubernetes:batch/v1:Job        delete
~   vpc-native-rotate-weekly-quests-cron                       kubernetes:batch/v1:CronJob    update
~   vpc-native-update-achievement-rarity-cron                  kubernetes:batch/v1:CronJob    update
~   vpc-native-deployment                                      kubernetes:apps/v1:Deployment  update
~   vpc-native-ws-deployment                                   kubernetes:apps/v1:Deployment  update
-   vpc-native-api-db-migration-01b29b7e                       kubernetes:batch/v1:Job        delete
~   vpc-native-temporal-deployment                             kubernetes:apps/v1:Deployment  update
~   vpc-native-bg-deployment                                   kubernetes:apps/v1:Deployment  update
~   vpc-native-user-profile-updated-sync-cron                  kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-expired-better-auth-sessions-cron         kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-stale-user-transactions-cron              kubernetes:batch/v1:CronJob    update
~   vpc-native-private-deployment                              kubernetes:apps/v1:Deployment  update
~   vpc-native-clean-zombie-user-companies-cron                kubernetes:batch/v1:CronJob    update
~   vpc-native-post-analytics-history-day-clickhouse-cron      kubernetes:batch/v1:CronJob    update
~   vpc-native-validate-active-users-cron                      kubernetes:batch/v1:CronJob    update
~   vpc-native-sync-subscription-with-cio-cron                 kubernetes:batch/v1:CronJob    update
~   vpc-native-personalized-digest-cron                        kubernetes:batch/v1:CronJob    update
~   vpc-native-generate-search-invites-cron                    kubernetes:batch/v1:CronJob    update
~   vpc-native-update-source-public-threshold-cron             kubernetes:batch/v1:CronJob    update
~   vpc-native-squad-posts-analytics-refresh-cron              kubernetes:batch/v1:CronJob    update
~   vpc-native-materialize-yearly-best-post-archives-cron      kubernetes:batch/v1:CronJob    update
~   vpc-native-user-profile-analytics-clickhouse-cron          kubernetes:batch/v1:CronJob    update
~   vpc-native-expire-super-agent-trial-cron                   kubernetes:batch/v1:CronJob    update
~   vpc-native-update-highlighted-views-cron                   kubernetes:batch/v1:CronJob    update
~   vpc-native-post-analytics-clickhouse-cron                  kubernetes:batch/v1:CronJob    update
~   vpc-native-check-analytics-report-cron                     kubernetes:batch/v1:CronJob    update
+   vpc-native-api-clickhouse-migration-0d3d2a67               kubernetes:batch/v1:Job        create
~   vpc-native-update-trending-cron                            kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-gifted-plus-cron                          kubernetes:batch/v1:CronJob    update
~   vpc-native-user-profile-analytics-history-clickhouse-cron  kubernetes:batch/v1:CronJob    update
~   vpc-native-materialize-monthly-best-post-archives-cron     kubernetes:batch/v1:CronJob    update
~   vpc-native-rotate-daily-quests-cron                        kubernetes:batch/v1:CronJob    update
~   vpc-native-update-current-streak-cron                      kubernetes:batch/v1:CronJob    update
~   vpc-native-calculate-top-readers-cron                      kubernetes:batch/v1:CronJob    update
+   vpc-native-api-db-migration-0d3d2a67                       kubernetes:batch/v1:Job        create
... and 12 other changes

@idoshamun idoshamun marked this pull request as ready for review May 12, 2026 18:49
@idoshamun idoshamun merged commit 360c3c8 into main May 12, 2026
10 checks passed
@idoshamun idoshamun deleted the codex/live-room-starting-soon branch May 12, 2026 19:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant