Conversation
Store the No AI preference in user settings and apply it in the v2 feed path without persisting large blocked filter lists. Made-with: Cursor
|
🍹 The Update (preview) for dailydotdev/api/prod (at 6552c6c) was successful. ✨ Neo ExplanationRoutine production deployment promoting commit `85895836`: all services and cron jobs get the new image, and fresh DB + ClickHouse migration Jobs are queued to run. ✅ Low Risk — assuming the migrations in this commit are backward-compatible.This is a standard application release, rolling out commit The two migration Jobs (Postgres via TypeORM and ClickHouse) follow the expected pattern: old commit-tagged Jobs are deleted and new ones for the incoming commit are created. These Jobs run 🔵 Info — The GCP provider warning about missing default credentials is cosmetic and did not block the update; it relates to a region-list lookup, not to any resource being deployed. Resource Changes Name Type Operation
~ vpc-native-channel-digests-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-views-cron kubernetes:batch/v1:CronJob update
~ vpc-native-expire-super-agent-trial-cron kubernetes:batch/v1:CronJob update
~ vpc-native-calculate-top-readers-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-zombie-images-cron kubernetes:batch/v1:CronJob update
- vpc-native-api-clickhouse-migration-c4b070d1 kubernetes:batch/v1:Job delete
~ vpc-native-clean-expired-better-auth-sessions-cron kubernetes:batch/v1:CronJob update
~ vpc-native-personalized-digest-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-channel-highlights-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-trending-cron kubernetes:batch/v1:CronJob update
~ vpc-native-check-analytics-report-cron kubernetes:batch/v1:CronJob update
~ vpc-native-rotate-weekly-quests-cron kubernetes:batch/v1:CronJob update
~ vpc-native-user-profile-analytics-clickhouse-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-zombie-opportunities-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-tags-str-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-achievement-rarity-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-zombie-users-cron kubernetes:batch/v1:CronJob update
~ vpc-native-worker-job-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-generate-search-invites-cron kubernetes:batch/v1:CronJob update
~ vpc-native-private-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-clean-stale-user-transactions-cron kubernetes:batch/v1:CronJob update
~ vpc-native-post-analytics-history-day-clickhouse-cron kubernetes:batch/v1:CronJob update
~ vpc-native-channel-highlights-cron kubernetes:batch/v1:CronJob update
~ vpc-native-user-posts-analytics-refresh-cron kubernetes:batch/v1:CronJob update
- vpc-native-api-db-migration-c4b070d1 kubernetes:batch/v1:Job delete
~ vpc-native-temporal-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-user-profile-updated-sync-cron kubernetes:batch/v1:CronJob update
+ vpc-native-api-db-migration-85895836 kubernetes:batch/v1:Job create
~ vpc-native-rotate-daily-quests-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-highlighted-views-cron kubernetes:batch/v1:CronJob update
~ vpc-native-validate-active-users-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-source-public-threshold-cron kubernetes:batch/v1:CronJob update
~ vpc-native-update-current-streak-cron kubernetes:batch/v1:CronJob update
~ vpc-native-sync-subscription-with-cio-cron kubernetes:batch/v1:CronJob update
~ vpc-native-generic-referral-reminder-cron kubernetes:batch/v1:CronJob update
~ vpc-native-post-analytics-clickhouse-cron kubernetes:batch/v1:CronJob update
~ vpc-native-clean-zombie-user-companies-cron kubernetes:batch/v1:CronJob update
~ vpc-native-ws-deployment kubernetes:apps/v1:Deployment update
~ vpc-native-squad-posts-analytics-refresh-cron kubernetes:batch/v1:CronJob update
~ vpc-native-personalized-digest-deployment kubernetes:apps/v1:Deployment update
... and 11 other changes |
|
@claude please review this pr |
|
Claude finished @nimrodkra's task in 2m 44s —— View job PR Review
Overall this is a clean, well-scoped implementation. The entity, GraphQL schema, and mutation paths all follow existing patterns correctly. A few things worth flagging: Read replica not used in
|
Use the read replica for the saved no-ai feed flag and cover the TIME ranking path so the v2 resolver behaves consistently across both feed generators. Made-with: Cursor
|
Addressed the latest review feedback: the saved No AI setting now reads from the replica, the duplicated resolver branch logic was tightened up, and TIME ranking now has explicit coverage in the feed tests. |
Reformat the No AI generator helper in feeds.ts so the API PR matches CircleCI's prettier lint expectations. Made-with: Cursor
Made-with: Cursor
Summary
noAiFeedEnabledsettings flag to the settings GraphQL contractTest plan
pnpm run db:migrate:resetNODE_ENV=test npx jest __tests__/settings.ts --testEnvironment=node --runInBandNODE_ENV=test npx jest __tests__/feeds.ts --testEnvironment=node --runInBand -t "should include no-ai blocked tags and title words"pnpm run buildMade with Cursor