EU AI Act Article 50 — 20 days to seal | Get passport
⚙️ EAT Mode Control · daily golden + morning digest + tick orchestrator

DEFONEOS · EAT Mode Control

Single-page operations console. Live E2E golden test, live morning digest, live EAT-tick orchestrator. All endpoints below, all SIGIL-signed, all cron-automatable.

📊 Live endpoint status (read-only)

/api/stats
/api/sigil-status
/api/oscal
/api/sovereign-citations
/api/framing
/api/invite
/api/persist
/api/daily-golden
/api/morning-digest
/api/eat-tick

Loading...

⚡ 1. Daily Golden Test (E2E surface check)

Curl every page + every endpoint. 19 pages + 10 endpoints = 29 checks. Real HTTP requests, real pass/fail, Telegram-notified on failures.

Open raw /api/daily-golden
[click "Run Golden Test Now" to execute]

📈 2. Morning Digest (live metrics)

Aggregates /tmp logs into Nick's morning summary. Cron: 07:00 BST. Telegram-dispatched if TELEGRAM_BOT_TOKEN + TELEGRAM_CHAT_ID env set.

Open raw /api/morning-digest
[click "Run Morning Digest Now" to execute]

🔥 3. EAT Tick (single autonomous tick)

Run a single tick. Available tasks: build · test · deploy · verify (golden alias). Cron-every-2-hours during EAT mode.

[click "Fire Tick" to execute]

📋 Cron schedule (recommended)

# /etc/crontab or cron.d/defoneos — owner can deploy after Vercel env-set
# Cron hits the Vercel serverless endpoints, which run real golden + digest + tick

# Daily golden — every 4 hours during EAT mode
0 */4 * * *  curl -s -o /dev/null -w "%{http_code}\n" https://csoai-static-deploy2.vercel.app/api/daily-golden

# Morning digest — 07:00 BST daily
0 7 * * *   curl -s -X POST -H "X-Send-Key: $SEND_KEY" https://csoai-static-deploy2.vercel.app/api/morning-digest

# EAT tick — every 2 hours during EAT mode (08-22)
0 8,10,12,14,16,18,20,22 * * *  curl -s -X POST -H "X-Send-Key: $SEND_KEY" -H "Content-Type: application/json" -d '{"task":"verify"}' https://csoai-static-deploy2.vercel.app/api/eat-tick

# Owner-triggered via /defoneos-eat-control — single-fire from browser

# Setup once: Vercel env vars
#   SEND_KEY          = any-random-secret (gates /api/welcome, /api/eat-tick, /api/persist)
#   TELEGRAM_BOT_TOKEN = your Telegram bot token (Nick's signal channel)
#   TELEGRAM_CHAT_ID   = your Telegram chat ID
#   RESEND_API_KEY     = for live welcome emails (else queued in /tmp/email.outbox.jsonl)
#   GIST_TOKEN         = for /api/persist Gist sync (else returns 200 with no-op)

⚡ 4. Setup checklist (owner one-click)

Run this once to enable the full automation chain:

  1. Open Vercel dashboard → csoai-static-deploy2 → Settings → Environment Variables
  2. Add: SEND_KEY = any-random-secret (e.g. openssl rand -hex 32)
  3. Add: TELEGRAM_BOT_TOKEN = your bot token (talk to @BotFather)
  4. Add: TELEGRAM_CHAT_ID = your chat ID
  5. Add: RESEND_API_KEY = your Resend key (optional; else queued)
  6. Add: GIST_TOKEN = GitHub PAT with gist scope (optional)
  7. Run golden test → if 29/29 ok → enable cron