Pipeline Dashboard
Automated news — 3× daily. Last updated: loading…
—
Live Stories
—
Pending Review
—
Archived
—
Added Last Run
Today's Schedule (CT)
Loading schedule…
Last Pipeline Run
Loading…
Pipeline Flow
Review Queue
Stories flagged for editorial review before publishing.
Loading queue…
Editor Dashboard
Lead clusters, verification risk, and story candidates that need newsroom judgment.
—
Open Leads
—
Clusters
—
High Rumor Risk
—
Urgent
Lead Clusters
Loading clusters…
Verification Checklist
Select a lead cluster to review next steps.
Recent Signals
Loading signals…
Run Logs
Full log of every pipeline execution.
Loading logs…
News Sources
The pipeline pulls from these references every run.
Active Sources
Loading…
Scoring Formula
final_score = 0.55 × importance + 0.30 × predicted_ctr + 0.10 × freshness + 0.05 × confirmations
importance = category_weight × tier_boost + multi_source_bonus + alert_boost
predicted_ctr = local_relevance + action_words + named_entities
freshness = 1.0 (0-2h) → decay to 0.2 (12h+)
importance = category_weight × tier_boost + multi_source_bonus + alert_boost
predicted_ctr = local_relevance + action_words + named_entities
freshness = 1.0 (0-2h) → decay to 0.2 (12h+)
Live Stories
Currently on the homepage. Drag to reorder, pin hero, or archive early.
| Story | Category | Status | Published | Views | Actions |
|---|
Add Story
Manually write and publish a story immediately.
Kicker
Headline preview…
Summary preview…
📝 Story Content
🏷 Metadata
Archive
Stories automatically archived based on category freshness rules.
Settings
Pipeline and site configuration.
🏷 Site Identity
⚙️ Pipeline Settings
🔐 Security
Pipeline Deploy Guide
One-time setup to activate the automated pipeline.
Step 1 — Install Wrangler CLI
npm install -g wrangler
wrangler login
wrangler login
Step 2 — Create KV Namespaces
wrangler kv namespace create RRD_STORIES
wrangler kv namespace create RRD_PIPELINE
# Copy the IDs into wrangler.toml
wrangler kv namespace create RRD_PIPELINE
# Copy the IDs into wrangler.toml
Step 3 — Set Secrets
wrangler secret put OPENCLAW_API_KEY
# Paste your OpenClaw API key/token when prompted
wrangler secret put OPENCLAW_API_URL
# Optional: paste your OpenClaw-compatible endpoint
wrangler secret put PIPELINE_ADMIN_KEY
# Make up a secure key — paste it in Settings → Pipeline API Key above
# Paste your OpenClaw API key/token when prompted
wrangler secret put OPENCLAW_API_URL
# Optional: paste your OpenClaw-compatible endpoint
wrangler secret put PIPELINE_ADMIN_KEY
# Make up a secure key — paste it in Settings → Pipeline API Key above
Step 4 — Deploy Pipeline Worker
cd rrd-pipeline
wrangler deploy
# This deploys the pipeline Worker. Note the URL it gives you.
wrangler deploy
# This deploys the pipeline Worker. Note the URL it gives you.
Step 5 — Connect Route in Cloudflare Dashboard
In Cloudflare Dashboard → redriverdispatch.com → Workers Routes → Add route:
www.redriverdispatch.com/api/* → rrd-pipeline
redriverdispatch.com/api/* → rrd-pipeline
redriverdispatch.com/api/* → rrd-pipeline
Step 6 — Update Site to Read from Pipeline API
The static site's site.js needs to fetch stories from the pipeline. Replace the default story loading with:
const res = await fetch('/api/stories');
const { stories } = await res.json();
// Stories now come from the pipeline instead of static JSON
Done. Cron triggers run automatically at 5:30 AM, 12:15 PM, and 6:45 PM CT every day.
const { stories } = await res.json();
// Stories now come from the pipeline instead of static JSON