fix: exclude milestone quests from community pulse stats#3808
Conversation
Milestone quests (e.g. "Read 1000 articles") dominate community pulse because virtually every active user completes them. Filter them out so only daily and weekly quest activity is reflected. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
🍹 The Update (preview) for dailydotdev/api/prod (at 058d3e4) was successful. ✨ Neo ExplanationRoutine deployment of a new application version (`058d3e4e...beac59a0`) across all Kubernetes Deployments and CronJobs, with fresh database and ClickHouse migration jobs executing as part of the release. ✅ Low RiskThis is a standard application deployment rolling commit 🔵 Info — The new migration jobs ( The GCP credentials warning on the Resource Changes Name Type Operation
~ vpc-native-clean-zombie-users-cron kubernetes:batch/v1:CronJob update
- vpc-native-api-db-migration-9f8962ca kubernetes:batch/v1:Job delete
~ vpc-native-post-analytics-clickhouse-cron kubernetes:batch/v1:CronJob update
~ vpc-native-validate-active-users-cron kubernetes:batch/v1:CronJob update
~ vpc-native-expire-super-agent-trial-cron kubernetes:batch/v1:CronJob update
- vpc-native-api-clickhouse-migration-9f8962ca kubernetes:batch/v1:Job delete
~ 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-rotate-weekly-quests-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-zombie-images-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-tags-str-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-highlighted-views-cron kubernetes:batch/v1:CronJob update
~ vpc-native-materialize-monthly-best-post-archives-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-views-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-zombie-user-companies-cron kubernetes:batch/v1:CronJob update
~ vpc-native-personalized-digest-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-channel-digests-cron kubernetes:batch/v1:CronJob update
~ vpc-native-temporal-deployment kubernetes:apps/v1:Deployment update
+ vpc-native-api-clickhouse-migration-beac59a0 kubernetes:batch/v1:Job create
~ vpc-native-user-profile-updated-sync-cron kubernetes:batch/v1:CronJob update
~ vpc-native-materialize-yearly-best-post-archives-cron kubernetes:batch/v1:CronJob update
+ vpc-native-api-db-migration-beac59a0 kubernetes:batch/v1:Job create
~ vpc-native-clean-expired-better-auth-sessions-cron kubernetes:batch/v1:CronJob update
~ vpc-native-ws-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-post-analytics-history-day-clickhouse-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-trending-cron kubernetes:batch/v1:CronJob update
~ vpc-native-user-profile-analytics-clickhouse-cron kubernetes:batch/v1:CronJob update
~ vpc-native-daily-digest-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-source-public-threshold-cron kubernetes:batch/v1:CronJob update
~ vpc-native-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-rotate-daily-quests-cron kubernetes:batch/v1:CronJob update
~ vpc-native-private-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-channel-highlights-cron kubernetes:batch/v1:CronJob update
~ vpc-native-calculate-top-readers-cron kubernetes:batch/v1:CronJob update
~ vpc-native-user-profile-analytics-history-clickhouse-cron kubernetes:batch/v1:CronJob update
~ vpc-native-generic-referral-reminder-cron kubernetes:batch/v1:CronJob update
~ vpc-native-squad-posts-analytics-refresh-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-zombie-opportunities-cron kubernetes:batch/v1:CronJob update
~ vpc-native-bg-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-user-posts-analytics-refresh-cron kubernetes:batch/v1:CronJob update
~ vpc-native-personalized-digest-cron kubernetes:batch/v1:CronJob update
... and 11 other changes |
Summary
questCompletionStatsquery to exclude milestone-type quests (e.g. "Read 1000 articles") from all three community pulse metrics: total count, all-time leader, and weekly leaderqr.type IN ('daily', 'weekly')allowlist filter togetTopCompletedQuest(covers both leader queries) and the total count query ingetQuestCompletionStatsTest plan
totalCount,allTimeLeader, andweeklyLeaderquestCompletionStatstest still passes with unchanged assertionsCloses ENG-1281
Created by Huginn 🐦⬛