Skip to content

fix: ignore channel digest sources in digest and highlight generation#3732

Merged
idoshamun merged 1 commit intomainfrom
codex/ignore-digest-sources
Mar 23, 2026
Merged

fix: ignore channel digest sources in digest and highlight generation#3732
idoshamun merged 1 commit intomainfrom
codex/ignore-digest-sources

Conversation

@idoshamun
Copy link
Member

Summary

  • exclude enabled channel digest source IDs from channel digest input posts
  • exclude digest-source posts and permanently retired highlights from channel highlight candidates
  • add worker regressions for digest-source exclusion in both pipelines

Testing

  • pnpm run lint
  • NODE_ENV=test npx jest tests/workers/generateChannelDigest.ts tests/workers/generateChannelHighlight.ts --testEnvironment=node --runInBand

@pulumi
Copy link

pulumi bot commented Mar 23, 2026

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

✨ Neo Explanation

This is a standard application version rollout — all 7 service deployments and 38 cron jobs are being updated to the new container image, and fresh database + ClickHouse migration jobs are being created to apply any schema changes included in the new release.

Root Cause Analysis

A new version of the API application has been built and is being deployed to production. Every workload in the cluster references the app version as part of its container image tag and version labels, so a new build triggers a fleet-wide rollout.

Dependency Chain

The new build version cascades to all Kubernetes resources that use the versioned container image:

  • 7 Deployments (API, background, worker, WebSocket, private, Temporal, personalized digest) are updated to pull the new image
  • 38 CronJobs are updated to use the new image for their next scheduled runs
  • 2 one-time migration Jobs (database and ClickHouse) from the previous version are deleted, and 2 new migration jobs for the new version are created — these run the TypeORM database migrations and ClickHouse schema migrations before/alongside the rollout

Risk Analysis

No stateful resources (databases, storage buckets, persistent volumes) are being replaced or deleted. The migration jobs do execute schema changes against the database and ClickHouse, which carries inherent risk if the migrations are destructive or non-backwards-compatible, but this is expected deployment behavior. Kubernetes Deployments will perform rolling updates by default, minimizing downtime.

Resource Changes

    Name                                                   Type                           Operation
~   vpc-native-ws-deployment                               kubernetes:apps/v1:Deployment  update
~   vpc-native-bg-deployment                               kubernetes:apps/v1:Deployment  update
~   vpc-native-update-trending-cron                        kubernetes:batch/v1:CronJob    update
~   vpc-native-hourly-notification-cron                    kubernetes:batch/v1:CronJob    update
~   vpc-native-squad-posts-analytics-refresh-cron          kubernetes:batch/v1:CronJob    update
+   vpc-native-api-clickhouse-migration-4366d2fd           kubernetes:batch/v1:Job        create
~   vpc-native-check-analytics-report-cron                 kubernetes:batch/v1:CronJob    update
~   vpc-native-daily-digest-cron                           kubernetes:batch/v1:CronJob    update
~   vpc-native-update-source-tag-view-cron                 kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-zombie-images-cron                    kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-expired-better-auth-sessions-cron     kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-channel-highlights-cron               kubernetes:batch/v1:CronJob    update
~   vpc-native-sync-subscription-with-cio-cron             kubernetes:batch/v1:CronJob    update
~   vpc-native-channel-digests-cron                        kubernetes:batch/v1:CronJob    update
~   vpc-native-generic-referral-reminder-cron              kubernetes:batch/v1:CronJob    update
-   vpc-native-api-db-migration-4847c30e                   kubernetes:batch/v1:Job        delete
~   vpc-native-post-analytics-history-day-clickhouse-cron  kubernetes:batch/v1:CronJob    update
~   vpc-native-update-achievement-rarity-cron              kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-stale-user-transactions-cron          kubernetes:batch/v1:CronJob    update
~   vpc-native-user-posts-analytics-refresh-cron           kubernetes:batch/v1:CronJob    update
~   vpc-native-update-views-cron                           kubernetes:batch/v1:CronJob    update
~   vpc-native-user-profile-updated-sync-cron              kubernetes:batch/v1:CronJob    update
~   vpc-native-worker-job-deployment                       kubernetes:apps/v1:Deployment  update
~   vpc-native-user-profile-analytics-clickhouse-cron      kubernetes:batch/v1:CronJob    update
~   vpc-native-channel-highlights-cron                     kubernetes:batch/v1:CronJob    update
~   vpc-native-update-current-streak-cron                  kubernetes:batch/v1:CronJob    update
~   vpc-native-personalized-digest-cron                    kubernetes:batch/v1:CronJob    update
~   vpc-native-post-analytics-clickhouse-cron              kubernetes:batch/v1:CronJob    update
~   vpc-native-update-highlighted-views-cron               kubernetes:batch/v1:CronJob    update
+   vpc-native-api-db-migration-4366d2fd                   kubernetes:batch/v1:Job        create
-   vpc-native-api-clickhouse-migration-4847c30e           kubernetes:batch/v1:Job        delete
~   vpc-native-rotate-weekly-quests-cron                   kubernetes:batch/v1:CronJob    update
~   vpc-native-update-tags-str-cron                        kubernetes:batch/v1:CronJob    update
~   vpc-native-generate-search-invites-cron                kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-zombie-opportunities-cron             kubernetes:batch/v1:CronJob    update
~   vpc-native-deployment                                  kubernetes:apps/v1:Deployment  update
~   vpc-native-update-source-public-threshold-cron         kubernetes:batch/v1:CronJob    update
~   vpc-native-personalized-digest-deployment              kubernetes:apps/v1:Deployment  update
~   vpc-native-clean-zombie-users-cron                     kubernetes:batch/v1:CronJob    update
~   vpc-native-calculate-top-readers-cron                  kubernetes:batch/v1:CronJob    update
~   vpc-native-clean-zombie-user-companies-cron            kubernetes:batch/v1:CronJob    update
... and 10 other changes

@idoshamun idoshamun marked this pull request as ready for review March 23, 2026 08:01
@idoshamun idoshamun changed the title Ignore channel digest sources in digest and highlight generation fix: ignore channel digest sources in digest and highlight generation Mar 23, 2026
@idoshamun idoshamun merged commit 49967dd into main Mar 23, 2026
11 checks passed
@idoshamun idoshamun deleted the codex/ignore-digest-sources branch March 23, 2026 08:06
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