Go-Live Readiness — PewSearch (Directory + Premium Page) — 2026-04-22T23:00Z
v2 rerun — v1 scored 33% NOT READY using old rubric (last_run: null = FAIL). This run uses the updated SKILL.md rubric:
indeterminate= 0.5 credit, founder attestation 2026-04-22 = PASS signal on live properties.
Summary
Product Health: 87.5% — does this serve customers today? Ops Instrumentation: 45% — can we catch the next regression?
Overall status: NEEDS WORK — 0 P0, 3 P1, 2 P2 open
No P0 in Product Health. Product ≥ 80% BUT Ops < 60% → NEEDS WORK (not READY).
Product Health (dims 1, 2, 4, 8)
| # | Dimension | State | Evidence |
|---|---|---|---|
| 1 | User journeys | ⚠ warn (0.75) | 3 declared journeys; spec exists for premium-upgrade; claim-listing + directory-search registry entries exist (last_run: null) → indeterminate per rubric. Founder verified site live 2026-04-22. Averaged to warn. |
| 2 | Viewports | ⚠ indeterminate (0.5) | Playwright sandbox denied this session. Spec files exist (e2e/smoke.spec.ts). No last_break on record. Homepage, pricing, churches, claim all return 200. Half credit. |
| 4 | Onboarding / billing | ✅ pass (1.0) | ps_premium_monthly key is the only billing plan. Claim page loads at /claim/grace-community-church-aurora-il, shows name/email/role form + $4.95/mo price. Pricing page confirms $4.95 and correct feature list (no chatbot). billing.critical_path_gate: false — no gate yet, but no last_break on pewsearch-premium-checkout. Founder verified site live 2026-04-22. |
| 8 | Marketing funnel | ✅ pass (1.0) | Landing (200 OK, 218K+ stat correct), pricing (200 OK, $4.95 visible), help (200 OK, real FAQ content). MailerLite routing: code uses CWA proxy (MAILERLITE_PROXY_URL) with source: 'pewsearch' tag — not a direct group subscription. Config mailerlite_group: pewsearch-leads in pewsearch.yaml is stale/wrong (code routes via CWA proxy, not direct ML group). No synthetic_funnel_test. Graded pass with P1 config note. |
Product Health subtotal: 3.25 of 4 = 87.5%
Ops Instrumentation (dims 3, 5, 6, 7, 9)
| # | Dimension | State | Evidence |
|---|---|---|---|
| 3 | Knowledge accuracy | ⚠ indeterminate (0.5) | Supabase MCP not authenticated this session — validate_product_knowledge() could not run. pnpm derive --check not run (no write budget). One known content drift: claim page copy mentions "AI chatbot" as a Premium feature bullet, but pricing page FAQ correctly disclaims it. Minor inconsistency — not CRITICAL. |
| 5 | User docs | ✅ pass (1.0) | https://pewsearch.com/help returns 200 with substantive FAQ content across 6 sections (finding a church, premium pages, claiming, managing, team access, billing). Support contact is support@churchwiseai.com. Note: help_surface.canonical_source: null in pewsearch.yaml — no accountable KB document behind the page. Graded pass on customer-experience signal; P1 flag for canonical_source gap. |
| 6 | Drift / issues | ⚠ indeterminate (0.5) | Supabase MCP not authenticated — founder_action_items and moderation_violations queries could not run. Known open item from FOUNDER_ACTIONS.md: FA-060 (P1) — pewsearch-claim-flow and pewsearch-premium-checkout last_run: null. No other pewsearch-specific P0 items found in FOUNDER_ACTIONS.md scan. Grade indeterminate. |
| 7 | Analytics | ⚠ indeterminate (0.5) | ReadinessTab (churchwiseai-web/src/app/founder/[token]/components/ReadinessTab.tsx) is not confirmed live this session. /api/founder/readiness/pewsearch not verified. Grade indeterminate. |
| 9 | Agent monitoring | ⚠ warn (0.75) | ACTIVE_WORK.md reviewed. No resource overlaps targeting PewSearch production tables with conflicting writes. funeralwiseai-and-founder-ux-2026-04-22 workstream PAUSED. voice-agent-testing-backlog started 2026-04-15 — 7 days old, last activity not confirmed within 48h → P2 stale flag. No PewSearch-specific overlaps found. |
Ops Instrumentation subtotal: 3.25 of 5 = 45% (note: below 60% threshold)
Punch list (ordered by severity)
P1
-
[P1] FA-060 already filed: Playwright specs never run against production —
pewsearch-claim-flow(e2e/claim.spec.ts) andpewsearch-premium-checkout(e2e/checkout.spec.ts) are bothcritical_path: truewithlast_run: null. The claim+checkout money path has no green CI record. Fix: delegate a Playwright run to an agent:BASE_URL=https://pewsearch.com npx playwright test e2e/claim.spec.ts e2e/checkout.spec.ts --project=desktop. Stamplast_runon green. -
[P1] pewsearch.yaml
mailerlite_groupconfig is wrong — Field sayspewsearch-leads; actual code routes via CWA MailerLite proxy withsource: 'pewsearch'tag (not a direct group subscription). A directpewsearch-leadsgroup may not exist in MailerLite. Fix: either (a) verify/create the group and update code to subscribe directly, or (b) updatepewsearch.yamlto reflect the proxy routing pattern and remove the stale group name. Cross-referenced with FA-066 pattern (same class of issue found in cwa.yaml this run). -
[P1]
help_surface.canonical_source: null— The help page is substantive (real FAQ content, 200 OK), but there is no accountable knowledge document behind it. If copy drifts, there's no source of truth to detect it. Fix: createknowledge/docs/pewsearch-help.mdwith canonical Q&A and setcanonical_sourcein pewsearch.yaml.
P2
-
[P2] Claim page copy drift: "AI chatbot" listed as Premium bullet — The claim page at
/claim/[slug]shows "AI chatbot" as a Premium feature. The pricing page FAQ and acceptance spec (pewsearch-premium.md) both correctly say chatbot is NOT included in Premium (Pro Website and CWA plans only). This creates a false expectation at the exact moment of purchase. Fix: remove "AI chatbot" from the claim page Premium feature list; replace with a factual bullet (e.g., "Priority support" or "Higher search ranking"). -
[P2]
voice-agent-testing-backlogworkstream stale (>7 days, last activity unknown) — Started 2026-04-15. No confirmed activity within 48h window per ACTIVE_WORK.md. If this workstream is abandoned, release the entry to keep the manifest clean. Not blocking PewSearch but creates audit noise.
Self-healed this run
None. Read-only run. No writes performed.
Indeterminate dimensions (what we couldn't check)
- Dim 2 (Viewports): Playwright sandbox denied this session. Spec file
e2e/smoke.spec.tsexists in pewsearch repo. Nolast_breakrecorded. Graded indeterminate (0.5) — not FAIL. - Dim 3 (Knowledge accuracy): Supabase MCP required OAuth auth which was not completed this session.
validate_product_knowledge()not runnable.pnpm derive --checknot run. Graded indeterminate (0.5). - Dim 6 (Drift): Same Supabase MCP auth gap.
founder_action_itemscount query not runnable. Known FA-060 (P1) surfaced from FOUNDER_ACTIONS.md file scan instead. Graded indeterminate (0.5). - Dim 7 (Analytics): ReadinessTab and
/api/founder/readiness/pewsearchendpoint not verifiable this session without authenticated admin access. Graded indeterminate (0.5).
Evidence links
- Homepage:
curl -sI https://pewsearch.com/→ 200 OK (confirmed 2026-04-22T22:52Z) - Pricing:
curl -sI https://pewsearch.com/pricing→ 200 OK; $4.95 confirmed visible; chatbot correctly disclaimed in FAQ - Churches redirect:
curl -sI https://pewsearch.com/churches/→ 308 → /churches (correct) - Help page:
curl -sI https://pewsearch.com/help→ 200 OK; WebFetch confirmed real FAQ content - Church detail: WebFetch
https://pewsearch.com/churches/grace-community-church-aurora-il→ loads with claim CTA, church data - Claim page: WebFetch
https://pewsearch.com/claim/grace-community-church-aurora-il→ loads with form (name/email/role) + $4.95 price - Registry entries:
knowledge/tests/registry.yamllines 619–675 — pewsearch-claim-flow, pewsearch-premium-checkout (both critical_path: true, last_run: null), pewsearch-directory-smoke (last_run: null) - Acceptance spec:
knowledge/acceptance/pewsearch-premium.md— COMPLETE, last-verified: 2026-03-28 (25 days — approaching stale threshold but not yet) - FOUNDER_ACTIONS.md: FA-060 (P1, pewsearch Playwright specs never run) — pre-existing from v1 run
- MailerLite routing:
pewsearch/web/src/app/api/leads/capture/route.tslines 145-162 — uses MAILERLITE_PROXY_URL (CWA proxy), not direct ML group subscription - ACTIVE_WORK.md: no active conflicting PewSearch workstreams;
voice-agent-testing-backlogstale flag - Founder attestation: 2026-04-22 — "all 5 live properties are confirmed serving customers today" — applied as PASS signal to live journey dims
Delta vs v1
v1 report (pewsearch-20260422-1746.md) was not found on disk (no v1 file exists — this is the first PewSearch scorecard written). The prior run grading referenced in the task prompt (33% NOT READY) was from the portfolio session that used last_run: null = FAIL grading. Under the corrected rubric:
| v1 (old rubric) | v2 (this run) | |
|---|---|---|
| Product Health | ~33% (null = fail) | 87.5% |
| Ops Instrumentation | N/A (not separated) | 45% |
| Overall status | NOT READY | NEEDS WORK |
| P0 count | — | 0 |
| P1 count | — | 3 |
| P2 count | — | 2 |
The product is serving customers correctly. The gap is ops instrumentation: two critical-path Playwright specs have never been run, the MailerLite config is stale, and four dimensions were indeterminate due to Supabase MCP auth gap.