Scheduled Workers — What Runs Automatically

These workers run on cron schedules via BullMQ. No human intervention needed. Monitor everything in Paperclip.


Content Factory (Spoke 3)

SeniorWire Daily Blog

  • Worker: seniorwire-blog-worker.js
  • Queue: seniorwire-blog
  • Schedule: Daily at 6-7am, per desk
  • Output: /sites/seniorwire/articles/{desk}/{date}/
DeskScheduleArticles/Day
GeneralDaily 6am5
HispanicMon/Wed/Fri 6am3
VeteransTue/Thu 6am3
AAPIMon/Thu 7am2
African AmericanTue/Fri 7am2
RuralWed 7am3

Total: ~18 articles/day across all desks

Weekly Content Planner

  • Worker: content-planner-worker.js
  • Queue: content-planner
  • Schedule: Mondays at 5am
  • Clients: SAA, SeniorWire, [Client A], Happy 64th, ICHRA Savings
  • Output: Plans for blog + YouTube + shorts + talking head + B-roll

Email Operations (Spoke 2)

PlusVibe Reply Monitor

  • Worker: plusvibe-reply-worker.js
  • Queue: plusvibe-reply-monitor
  • Schedule: Every 15 minutes
  • Actions:
    • Interested → queued for follow-up
    • Not interested / Bounce / Unsubscribe → blacklisted immediately
    • OOO → logged, re-checked later

Monitoring & Ops (Spoke 6)

Blacklist Checker

  • Worker: blacklist-checker-worker.js
  • Queue: blacklist-checker
  • Schedule: Daily at 8am
  • Checks: 15 domains against 15 blacklists (Spamhaus, SpamCop, Barracuda, etc.)
  • Alerts: Telegram ONLY if a domain is listed

Intelligence (Spoke 8)

ICHRA Data Refresh

  • Worker: ichra-refresh-worker.js
  • Queue: ichra-refresh
  • Schedule: 1st of every month at 3am
  • Scope: 15 active states, all counties with leads
  • Output: Updated savings data + CSV export

How to Manage

# See all scheduled jobs
node workers/scheduler.js --list
 
# Re-register (after changes)
node workers/scheduler.js
 
# Clear all schedules
node workers/scheduler.js --clear
 
# Check a specific worker
systemctl status lead-seniorwire-blog
journalctl -u lead-pv-reply -f