Skip to content

Playbook — Operations

Your job: keep the data flowing, the worker shipping, and the numbers reconciled. The platform is one Worker + BigQuery + n8n ETL — here’s how to run it.

ConcernWhere
What runs where (Worker, Pages, bindings, secrets, crons)../../fcr-dashboard-architecture-overview.md §9
The data warehouse + the daily sync sequence../../bigquery-and-sync.md
The ETL jobs (and their Worker twins)../../n8n-workflows.md
Shipping code (gated deploys, rollback)../../commit-and-deploy.md, ../../branching-workflow.md
The full API surface../../worker-endpoints.md
  • Data syncs are n8n cron jobs (HubSpot deals twice-daily ~05:45, engagements delta 07:30, iovox/Teamwork/Ahrefs/SERP/SitePro/Yext) + BQ scheduled queries (active_clients ~06:00). Worker crons run after (07:30/07:45 prewarm, 08:00–20:00 deal-brief refresh, every-minute drains).
  • Deploys go through scripts/deploy-worker.sh only — clean-tree + no-undef lint gates, tags every deploy for rollback, both CF accounts. Pages + HubSpot card deploy separately.
  • Reconciliation / freshnessdashboard-reconciliation, dashboard-data-freshness, suspensions, ads-spend reconciliation.
  • Workers Logs are now ON — debug crons/queues in the CF Observability tab (was blind before).
  • CF Queues auto-pause on a large one-shot backlog (1,000+ slow messages) — drip in small chunks; clear a stuck consumer by deleting + redeploying it (learned the hard way on the deal-brief refresh queue).
  • Deploy gate refuses a dirty worker/ tree — commit or stash unrelated WIP; never --force casually.
  • Two CF accounts — production (FCR) + dev (personal); deploy script handles both.
  • The deal-brief precompute pipeline (KV + BQ audit + Queue + chunked cron).
  • Observability enabled; the chunked self-pacing refresh cron; rollback tags.
Ask the docsRAG over this site
Ask anything about the FCR Dashboard platform — architecture, BigQuery, the worker routes, billing rules, the LRC stack, scoring… Answers are grounded in this documentation, with source links.
How does the deal-brief refresh work? Which routes are Worker vs n8n? How is account health scored?