Home / Ops / More in this area
Demo + Beta Ops status (2026-06-30)
Updated Jun 30, 2026 · Affirmology_DemoBetaOps_Status_v1.md
Summary. Marathon ops day on the live demo (demo.affirmology.ai). Snapshot + open items.
Demo + Beta Ops status (2026-06-30)
Marathon ops day on the live demo (demo.affirmology.ai). Snapshot + open items.
Audience (CRM appSuTUcOQbpkxLUR, People tblOOWgEjVfX21NT3) - EXCLUDE founders Jeff + Sol in all counts
23 external people signed the NDA. Breakdown:
- 15 completed a song -> sent the Welcome email (subject was "Your Origin Soul Song is ready").
- 5 stopped at the intake form -> sent the Form Stopper re-engagement email (link to the form).
- 3 had failed renders (Taylor Pascoe, Alex de Carvalho, Leandro Jubilut) -> re-rendered + sent the Oops+Welcome email.
- 3 came in WITHOUT Jeff inviting them (organic): Patrick Hilsbos, Tracie Briggs, Leandro. No referral tracking exists.
- Phones: 0 collected. Email is the only channel.
What got fixed/shipped today (studio auto-deploys from github main; site from master)
- Anthropic key: the engine's key (sk-ant-...HxcgAA) ran dry -> every render failed at script generation. Root cause of "renders not happening." Jeff funded the CORRECT account (console.anthropic.com API billing, NOT claude.ai). Working now. Set auto-reload when cash allows.
- Failed-render recovery: chart_integrity.py now whitespace-normalizes the name (double-space names like "Leandro Serpa Jubilut" were failing the PDF name check). Added token-gated POST /rerender-demo (reconstructs birth from a stored job, re-runs, returns a fresh page link). Re-rendered the 3.
- PDF cost: run_audio now passes --no-pdf -> renders skip the never-delivered Opus PDF report. Big per-render saving.
- Beta opt-in (was a silent data-loss bug): the results-page "I'm in" posted to a nonexistent /api/beta-signup that 404'd and was swallowed, so EVERY beta opt-in was lost. Built POST /api/beta-signup (studio) writing Beta committed + Is Tester + Stage to the CRM; pointed result.html at it. LIVE + verified. NOTE: there is intentionally NO investor self-identify button (only beta tester); the investor mention is a soft "grab a time" Calendly CTA.
- Diagnostics: added token-gated GET /api/demo-jobs (durable demo render list: name, email, job_id, state).
- Welcome email subject: decided to change to "Welcome to Affirmology" (reads better, esp. when delivery is delayed). Canonical template doc updated. Worker live-send subject CHANGED in worker/src/index.js line 207 but NOT deployed (see open item).
Email mechanics (locked)
- Demo Welcome (Origin Soul Song delivery) auto-sends from the worker on render-complete (studio _webhook -> worker /api/job-complete; auth confirmed working). Canonical body: Affirmology_WelcomeEmail_Template_v1.html. Other lane owns the worker.
- Re-engagement batch (this session, sent via Resend, from hello@affirmology.ai, BCC jeff@affirmology.ai): Affirmology_FormStopperEmail_v1.html (5), Affirmology_RenderFix_OopsWelcome_v1.html (3). All require the browser User-Agent header (Cloudflare 1010).
OPEN ITEMS
- Cloudflare token - RESOLVED (2026-06-30): Jeff issued a working "Edit Cloudflare Workers" token (cfut_..., saved to affirmology-studio/.env as CLOUDFLARE_API_TOKEN). Worker
affirmology-demo-worker redeployed; the "Welcome to Affirmology" subject (worker/src/index.js line 207) is LIVE. Future worker deploys are now self-serve via cd affirmology-demo-site/worker && CLOUDFLARE_API_TOKEN=... npx wrangler deploy.
- Recover lost beta opt-ins: opt-ins clicked before today's fix were dropped (no record). Re-solicit the demo-takers by email to opt in again (now records). Draft pending.
- Attribution + phone capture: add "How did you hear about us?" + optional phone to the NDA gate -> CRM (same pattern as the beta fix). Jeff asked to advise+solve; build pending his go.
- Funnel tracking gap: "Demo listened" (and the beta field) only get set by explicit writes; the /api/track funnel events were never wired. The demo-taker reconciliation is manual.
Launch
Market: Aug 11 2026. Until then a confidential beta. Priority: get investors + beta testers through a flawless experience. NDA-bypass (fake names/emails) is a minor, accepted risk; email is naturally self-validating (the song only reaches a real inbox).