new-site/infra/cron/pw-hc-campaign
justin 2caab6aa69 hc: warmup must run DAILY for the full 21-day ramp (not weekdays-only)
The HC warmup crons were '* * 1-5' (Mon-Fri), silently skipping weekends -- but a
proper warmup needs CONTINUOUS daily volume for 21 days (mailbox providers reward
consistency; gaps stall reputation). The Jun 14 'HC 0 sent' alert was just a
skipped Sunday, but the weekend skips also broke ramp continuity.

- pw-hc-campaign + pw-hc-nppes: '* * 1-5' -> '* * *' (daily), vendored + applied live.
- Re-aligned the warmup start stamp from calendar-day 9 to send-day 5 so the
  volume ramp matches reputation actually built (it had skipped ~4 weekend days,
  running the ramp ahead of real history).
- Fixed the stale 'Mon-Fri only' comment in daily_slice().
- Vendored nppes cron now carries the enriched-CSV + 4-segment config.
2026-06-14 21:02:08 -05:00

13 lines
1.1 KiB
Text

# NOTE: logs go to /opt/performancewest/logs/ (deploy-owned). The deploy user
# cannot write /var/log, so a /var/log redirect makes cron silently fail before
# the command runs. Ensure /opt/performancewest/logs exists + is deploy-owned.
# Healthcare warmup: import the next slice across ALL active segments
# (revalidation, OIG screening, NPPES, reactivation, bundle) into listmonk-hc
# and keep each campaign running. Mon-Fri only, 7 AM Central (host TZ =
# America/Chicago). Delivery is throttled by pw-hc-rampcap's sliding-window
# cap, sent ONLY via the hc HOT stream (.107-.109). Segment audiences are
# source-grounded: a segment with no matching providers simply imports nobody.
# Deliverability guard: warmup only mails SLIGHTLY-overdue providers (1-90 days
# by default, HC_OVERDUE_MIN/MAX) -- recently-lapsed practices still have live
# inboxes; heavily-overdue ones likely bounce and burn the warming IPs.
0 7 * * * deploy cd /opt/performancewest && HC_VERIFIED_CSV=/opt/performancewest/data/hc_warmup_nongoogle.csv python3 scripts/build_healthcare_campaigns_cron.py --start-campaign >> /opt/performancewest/logs/pw-hc-campaign.log 2>&1