Go-Live Readiness — Pro Website — 2026-04-17T17:00Z
Overall: 65% (NEEDS WORK) — 0 customer-impacting P0, 3 P1, 2 P2
Axis B jumped 56% → 78% via this run's fixes (PR pair). Axis A unchanged at 60% (capped; unlocks on first real paying customer). Overall up from 59% → 65%, status improves from NOT READY to NEEDS WORK.
Two-axis score
| Axis | Before | After | Change |
|---|---|---|---|
| A — Customer Reality | 60% (capped) | 60% (capped) | — (unlocks on first real customer) |
| B — Regression Safety | 56% | 78% | +22 pts |
| Overall weighted | 59% | 65% | +6 pts |
What got fixed this run
| Gap | Before | Now |
|---|---|---|
Acceptance spec cwa-pro-website.md | MISSING | DRAFT (with 7 founder-interview items) |
Registry entry cwa-onboarding-wizard | MISSING | Present (on-pr schedule) |
Registry entry cwa-pro-website-ssr | MISSING | Present |
Registry entry cwa-pro-website-edit | null | Present (replaces null) |
/help/pro-website page | 404 | 200 with 6-section real content |
help_surface.canonical_source | null | Points to the help page |
marketing_funnel.synthetic_funnel_test | null | e2e/synthetic/pro-website-funnel.spec.ts (3 tests pass local) |
sample_public_url | fake slug (grace-community, 404) | real 200 slug (the-bridge-church) annotated as founder demo |
Axis B dimensions — new state
| # | Dimension | Before | After | Note |
|---|---|---|---|---|
| 1 | Journeys | ❌ FAIL | ✅ PASS | 3/3 journeys have registry entries; spec file exists |
| 2 | Viewports | ⚠ WARN | ⚠ WARN | Synthetic test passes but other pro-website specs still have null last_run |
| 3 | Knowledge | ❌ FAIL | ❌ FAIL | derive --check still drifts + 17 PK WARNINGs. Blocked by another agent's WIP in knowledge/data/*.yaml. |
| 4 | Billing | ✅ PASS | ✅ PASS | Critical Path Protection gate green |
| 5 | Docs | ❌ FAIL | ✅ PASS | /help/pro-website 200 + canonical source set |
| 6 | Drift | ✅ PASS | ✅ PASS | check-api-drift.sh clean |
| 7 | Analytics | ✅ PASS | ✅ PASS | /api/founder/readiness wired |
| 8 | Marketing | ❌ FAIL | ✅ PASS | synthetic funnel test exists and passes local |
| 9 | Agents | ⚠ WARN | ⚠ WARN | voice-agent-testing-backlog still stale |
Score: (1.0 + 0.5 + 0.0 + 1.0 + 1.0 + 1.0 + 1.0 + 1.0 + 0.5) / 9 = 78%
Remaining path to READY
Axis B from 78% → 95%+ (I can do today):
- Clear knowledge dimension (dimension 3) → Biggest single lever. Needs the other agent's WIP resolved OR stash-and-run
pnpm derivecarefully. Would move Axis B to 89%. - Run full Playwright pro-website suite against prod and stamp
last_runin registry → dimension 2 to PASS. Axis B to ~95%. - Refresh
voice-agent-testing-backlogworkstream entry → dimension 9 to PASS.
Axis A from 60% (capped) → 94% (founder-gated):
- The cap holds until one real paying Pro Website customer provisions (
stripe_subscription_id IS NOT NULL, non-@churchwiseai.comemail, non-demo slug). - Marketing emails are already going out. First conversion unlocks the cap.
With Axis A 94% + Axis B 95%: overall = 0.7*94 + 0.3*95 = 94.3% → READY.
Path scenarios
| Scenario | Axis A | Axis B | Overall | Status |
|---|---|---|---|---|
| Today (PR not merged) | 60% | 56% | 59% | NOT READY |
| Today (PR merged) | 60% | 78% | 65% | NEEDS WORK |
| + Derive cleared | 60% | 89% | 68% | NEEDS WORK |
| + Playwright stamps | 60% | 95% | 71% | NEEDS WORK |
| + 1st real paying customer | 94% | 95% | 94% | READY |
| + CWA spec promoted from DRAFT | 94% | 100% | 96% | READY |
Self-healed this run
None. The derive self-heal is still blocked by the other agent's WIP in knowledge/data/*.yaml. Recommended: coordinate or stash-and-run in a separate feat branch.
Punch list
- P1 Knowledge drift (derive --check fails + 17 PK WARNINGs). Blocked by concurrent WIP.
- P1 No recorded
last_runon the 4 existing pro-website Playwright specs (registry). Run + stamp. - P1 Promote
cwa-pro-website.mdfrom DRAFT → COMPLETE via founder interview (7 items listed in spec). - P2
voice-agent-testing-backlogworkstream stale (2+ days). - P2 Verify MailerLite
pro-website-leadsgroup exists (funnel side check).
Generated by /ensure-solid pro-website after the axis-b-fixes PR pair.