Knowledge > Runbooks > Voice Ops > Voice Call Quality Review
Voice Call Quality Review
Systematically review voice call quality for a church, identify agent performance gaps, and implement improvements through prompt tuning or code updates.
Prerequisites
- Supabase MCP or direct DB access
- WSL terminal and Cartesia deploy access (if code changes needed)
- At least 10 recent calls to review for meaningful patterns
Steps
-
Pull recent calls for the church:
SELECTid,created_at,duration_seconds,call_outcome,sentiment_score,urgency_level,gemini_summary,transcriptFROM voice_call_logsWHERE church_id = '[uuid]'AND created_at >= now() - interval '30 days'ORDER BY created_at DESCLIMIT 20; -
Review Gemini post-call classification fields for patterns:
sentiment_score— negative scores indicate caller frustrationurgency_level— frequent high urgency may indicate the agent is missing important contextgemini_summary— quick summary of what the caller needed and whether it was resolved
-
Read transcripts for calls with negative sentiment or poor outcomes: Focus on:
- Questions the agent could not answer (missing knowledge)
- Incorrect tool usage (prayer request tool triggered for non-prayer topics)
- Unhelpful loops or repetitive responses
- Calls where the caller gave up and hung up
- Audio issues noted in the transcript (e.g., silence periods, repeated prompts)
-
Identify the improvement category:
Issue Type Fix Location Church-specific info wrong (hours, pastor name, address) church_voice_agents.system_prompt_overrideGeneral agent behavior verticals/church/prompts.pyTool not triggering correctly verticals/church/tools.pyNoise/silence filtering too aggressive turn_processor.pythresholdsPortfolio-wide prompt improvement verticals/church/prompts.py+ redeploy -
Fix church-specific issues (no redeploy required):
UPDATE church_voice_agentsSET system_prompt_override = '[Improved prompt for this church. Include accurate service times, pastor names, programs, and any caller patterns you observed.]',updated_at = now()WHERE church_id = '[uuid]';Wait up to 5 minutes for session cache to expire before testing.
-
Fix portfolio-wide issues (requires redeploy):
- Edit
verticals/church/prompts.pyorturn_processor.pyin a feature branch. - Test with
python -m py_compileto catch syntax errors. - Deploy via WSL following voice-agent-update.md.
- Edit
-
Test improvements by placing calls to the church number and evaluating:
- The specific issue is resolved.
- No regressions in other call types.
- New call logs show improved
sentiment_scoreandcall_outcome.
-
Document improvements if the change was portfolio-wide, so other churches benefit: Add a note in
C:\dev\DECISION_LOG.mdwith the pattern identified and fix applied.
Verification
- Targeted call scenarios now produce correct responses.
voice_call_logsfor new calls show improvedcall_outcomeandsentiment_score.- No regressions in other church accounts (spot-check 2–3 other churches' call logs).
See Also
- voice-agent-debug.md — for specific call failures rather than quality patterns
- voice-agent-update.md — deploy code changes
- add-voice-agent.md — initial church setup including prompt configuration