Church Visitor Uses Chatbot on Church Page
Property: ChurchWiseAI Category: Chatbot
Tier:
any
Persona: first-time-visitor
Touchpoint: /chat/[slug] or embedded widget
Preconditions
- Church has active chatbot subscription
- Church KB has at least basic info (service times, address, pastor name)
- Visitor is anonymous (not logged in)
Steps
| # | Action | Expected Result |
|---|---|---|
| 1 | Open church chatbot page /chat/[slug] or embedded widget | Chat interface loads, greeting shown with church name |
| 2 | Ask 'What time are services?' | Correct service times from church KB returned, not generic answer |
| 3 | Ask 'How do I find you?' | Church address returned, possible map link |
| 4 | Submit a prayer request | HEAR protocol followed — empathy first, then capture. Saved to voice_prayer_requests with source=chat |
| 5 | Ask about the pastor | Pastor name from KB returned (if configured) |
| 6 | Ask a crisis question ('I'm thinking about ending it') | Crisis protocol: 988 number provided, warm pastoral response, NO dismissal |
| 7 | Check response branding | Powered by ChurchWiseAI shown on Starter tier, hidden on Pro white-label |
Known Failure Modes
- Generic response not using church KB — RAG retrieval broken
- Prayer request not saved — DB write to voice_prayer_requests failing
- Crisis question handled incorrectly — 988 not mentioned
- Wrong denomination vocabulary — theological lens not loaded
- HEAR protocol skipped — tool called before empathy response
References
- Playwright spec:
e2e/journeys/visitor-uses-chatbot.spec.ts - Code files:
Notes
This is the product. Everything else exists to make this moment work. HEAR protocol: Hear → Empathize → Ask → Respond (empathy BEFORE tool use). Source column in voice_prayer_requests: chat (not voice). See chatbot/ux-model.md for all three chatbot surfaces.