Home / Ops / Deploy and Infrastructure
Affirmology Founding Beta - Launch Runbook (v1)
Updated Jul 10, 2026 · Affirmology_BetaLaunch_Runbook_v1.md
Summary. Written 2026-07-10 by the CODE/app chat, from Jeff's direction: "I need to know the whole process, we need to curate/cultivate this." This is the single map of the founding-member journey end to end, the pre-send checklist, and the gap list with owners, so Cod
Affirmology Founding Beta - Launch Runbook (v1)
Written 2026-07-10 by the CODE/app chat, from Jeff's direction: "I need to know the whole process, we
need to curate/cultivate this." This is the single map of the founding-member journey end to end,
the pre-send checklist, and the gap list with owners, so Code, Cowork, and Jeff work from one
source. The beta is NOT sent yet; this is what makes the first experience deliberate, not accidental.
One truth to hold: the invite link is the easy part. What makes or breaks the launch is (1) can
they SIGN IN, and (2) is there something REAL waiting when they do. Everything below serves those two.
THE JOURNEY (stage by stage, with the curation lens)
1. The text (first touch) - curation: tone, "you're already one of us"
- Jeff texts ONE public TestFlight link + a warm, personal line. Same link for everyone:
https://testflight.apple.com/join/nDJacr85 (serves approved build #24).
- OWNER: copy = Cowork; send = Jeff. STATUS: link ready; copy pending.
2. Install - mostly automatic
- Tap link -> install TestFlight -> install Affirmology (#24). No per-person invite, no cap.
- STATUS: ready. CURATION: one plain line in the text so non-technical folks expect the TestFlight step.
3. Sign in - THE #1 FAILURE POINT
- Open app -> enter email -> 6-digit code by email -> in. Passwordless, invite-gated.
- HARD PREREQUISITE: the member's email must be on the sign-in allowlist (M.Invite or already a
Person), or no code is issued and they are stuck at login.
- OWNER: Code. STATUS: GAP - must verify all invitees are allowlisted before send.
4. First 10 seconds in - the "how did it know me" moment
- Lands on Listen (their Origin Soul Song + The Mirror) with a countdown to Monday; can enter the
Oracle. An empty Listen tab reads as broken.
- OWNER: Code (load each person's audios). STATUS: GAP - audios loaded only for Jeff + the review
demo account so far; need a publish pass for every invitee.
5. First oracle conversation - the star / the cultivation engine
- Sophia (wild starlight hair) greets them; an oracle pops in with a chart-specific hook; tappable
starters lower the blank-page barrier; each guide answers in their own voice (Sophia, Prometheus,
Athena, Sri Agastya, Pythagoras, Lakshmi, Hypnos, Chiron, Persephone, Trismegistus, Thoth). Timely
transit hooks where the sky is active.
- OWNER: Code. STATUS: ✅ LIVE (backend + #24). This is the retention weapon; protect it.
6. The weekend drip -> Monday - anticipation + re-engagement
- Countdown to Monday; more audios trickle in; community (WhatsApp); wiki; walkthrough video; the
"Monday opens" moment.
- OWNER: Cowork + Jeff. STATUS: GAP - WhatsApp, wiki, walkthrough, and the Monday moment not built.
PRE-SEND CHECKLIST (do NOT text the 20 until these are green)
- [ ] CODE: every invitee email is on the sign-in allowlist (they can get a code). Verify + invite
any missing via
POST /api/admin/invite (team token). THE hard gate.
- [ ] CODE: every invitee has their audios published to their app account (Origin + Mirror), via
POST /api/app/publish (owner_email). Depends on the Mirror file/URL landing.
- [ ] CODE: sign-in smoke test - pick 1-2 real invitees, confirm code issues + login works end to
end (or use the review demo account appreview@affirmology.ai / 471088 as the proof-of-flow).
- [ ] COWORK: the text copy (warm, "you're already in," points at the link + the TestFlight step).
- [ ] COWORK/JEFF: post-install plan (at minimum a "what to do once you're in" note; WhatsApp +
wiki + walkthrough can follow over the weekend).
- [ ] JEFF: final invitee list (the 17 tracked + any adds, minus the
.beta_invite_hold names).
GAPS BY OWNER
- CODE (this lane): allowlist verification + invites; audio publish pass; sign-in smoke test.
(These are the two technical blockers to a clean first experience.)
- COWORK: text copy; wiki; WhatsApp; walkthrough video; the Monday-opens moment.
- JEFF: final list; the send; record the walkthrough.
WHAT IS ALREADY DONE (so nobody redoes it)
- App build #24 APPROVED + serving the public link (wild Sophia, beacon guides, personalities, no
cutoffs, chat history, proactive + timely starters, R2-swappable Sophia animation).
- Oracle backend fully live (all guides route + voice; personalities; starters v1+v2).
- Tracked commit links (
/r/<code>) + agreement page + /in join page (earlier DATA work).
- Review demo account for Apple; #24 approvals on the fast path (minutes).
- Push notifications DELIBERATELY shelved (no permission prompt in #24) - a future decision.
REFERENCE
- Rollout strategy:
Affirmology_BetaRollout_Strategy_v1.md
- Weekend plan:
Affirmology_WeekendPlan_v1.md
- Holds:
.beta_invite_hold (exclude before send)
- Coordination:
_CHAT_SYNC.md