Seu agente WhatsApp quebra em silêncio (multi-turn falha sem avisar)
Agente multi-turn falha silenciosamente (um erro corrói conversa inteira). Amazon: teste de qualidade é crítico.
Equipe OpenClaw · Time de Engenharia & Produto
A Equipe OpenClaw é formada por engenheiros, designers e especialistas em IA dedicados a construir a melhor plataforma de agentes conversacionais para negócios brasileiros. Combinamos expertise…
Seu agente WhatsApp quebra em silêncio (multi-turn falha sem avisar)
Você é founder/CEO de SaaS.
Seu SaaS: agente IA em produção (WhatsApp, vendas, suporte).
Seu agente: Conversa com clientes (multi-turn = múltiplas perguntas/respostas).
Seu assumption (WRONG):
- "Agente funciona (testei antes de launch)"
- "Se houvesse bug, clientes reclamariam"
- "Conversa é simples (agente deve acertar)"
- "Uma resposta errada = cliente corrige na próxima turn"
- "Qualidade = evitar crashes (resto não importa)"
Your reality (Amazon researchers just proved otherwise):
- Multi-turn agente fail silently (Sept 2026, Amazon Bedrock research)
- Problem: One early mistake corrupts ALL following turns (cascading failure)
- Hidden: Failure looks natural (customer doesn't realize agente is broken)
- Scale: Most multi-turn agentes fail this way (you don't know)
- Signal: Amazon introduced Agent Evaluation Metric (AEM) to detect this
- Implication: Your agente is probably failing right now (undetected)
- Customer impact: Gets wrong answer, thinks it's your agente's fault (it is)
- Revenue impact: Churn (customer stops using agente, tries competitor)
- Lesson: Single-turn testing misses multi-turn failures (different problem)
What is multi-turn agente failure (why it's silent and catastrophic)
How one mistake corrupts entire conversation
Example: Customer support agente (WhatsApp, 5-turn conversation)
Turn 1 (customer): "Qual é o status do meu pedido 12345?" Agente response: ✓ Correto ("Seu pedido está em processo de envio") Customer satisfaction: ✓ (agente acertou)
Turn 2 (customer): "Quando vai chegar?" Agente response: ✓ Correto ("Estimado para amanhã") Customer satisfaction: ✓ (still good)
Turn 3 (customer): "Posso cancelar?" Agente response: ✗ ERRO ("Sim, pode cancelar por R$ 50 de taxa") └─ Reality: Cancelamento é grátis (política da empresa) └─ Problem: Agente alucinatou (invented wrong info) Customer satisfaction: ✗ (agente errou)
Turn 4 (customer): "Quanto tempo leva para devolver?" Agente response: ✗ ERRO HERDADO ("O reembolso demora 7-10 dias após pagar taxa") └─ Problem: Agente baseou em Turn 3 (taxa que não existe) └─ Reality: Reembolso é 3-5 dias sem taxa └─ Silent failure: Parece lógico (7-10 dias + taxa), mas está errado └─ Customer doesn't realize: Agente é consistente (erro persiste, parece verdade) Customer satisfaction: ✗ (agente está claramente quebrado)
Turn 5 (customer): "OK, vou chamar suporte humano então" Agente response: ✗ ERRO COMPLETO ("Suporte humano vai cobrar R$ 100 pela análise") └─ Problem: Agente inventou taxa inexistente (baseado em Turn 3) └─ Reality: Suporte humano é gratuito └─ Cascata: Each turn inherits previous errors (compound) Customer satisfaction: ✗✗✗ (agente é inútil, cliente churnado)
What happened: ├─ Turn 1-2: Agente funcionava (tudo certo) ├─ Turn 3: ERRO CRÍTICO (primeiro erro real) ├─ Turn 4-5: Erros herdados (cascata, cada turn piora) └─ Final result: Conversa inteira foi destrozada por UM erro
Why single-turn testing missed this: ├─ Test 1: "Qual status do pedido?" → ✓ Correto (passou) ├─ Test 2: "Quando chega?" → ✓ Correto (passou) ├─ Test 3: "Posso cancelar?" → ✓ Correto (passou, mas não testou taxa) ├─ Test 4: "Quanto leva devolver?" → NÃO TESTADO (test dataset parou em Turn 3) ├─ Test 5: "Suporte cobra?" → NÃO TESTADO (test dataset not comprehensive) └─ Result: Tests passed (agente seemed fine), but multi-turn failed in production
Why it's hard to detect: ├─ Customer interacts: Sees consistent (but wrong) answers ├─ Agente seems: Confident (not hesitant, not showing doubt) ├─ Mistake looks: Natural (easily could be company policy) ├─ Customer blames: Agente (or company, not realizing agente hallucinated) └─ You miss it: No alert (agente didn't crash, conversation looks normal in logs)
Why Amazon researchers flagged this (turn-level failure analysis)
Amazon insight: ├─ Problem: Industry tests agentes on SINGLE turns (Q&A) ├─ Reality: Customers use agentes in MULTI-TURN conversations (flowing context) ├─ Gap: Single-turn test passes, but multi-turn fails (hidden in production) ├─ Solution: Agent Evaluation Metric (AEM) tests turn-level correctness ├─ Benefit: Pinpoints exact turn where failure started (not just "failure happened") └─ Impact: Separates root cause (Turn 3) from inherited errors (Turns 4-5)
Example: How AEM works
Old method (single-turn only): ├─ Test: "Quanto custa devolver?" → Answer: "R$ 50" → ✗ FAIL ├─ Analysis: "Agente falha em devoluções" ├─ Fix: Retrain on devoluções (expensive, might not work) └─ Problem: Doesn't pinpoint root cause (is it Turn 3 error, or another turn?)
AEM method (turn-level, multi-turn context): ├─ Test full conversation (5 turns end-to-end) ├─ Analyze: Turn 3 = root error ("taxa de R$ 50"), Turns 4-5 = inherited ├─ Insight: Turn 3 agiente hallucinated (didn't look up actual policy) ├─ Fix: Retrain on policy accuracy for Turn 3 specifically (targeted, cheaper) ├─ Verify: Test Turns 4-5 now correct (inherited errors gone) └─ Benefit: Root cause analysis saves time + prevents false fixes
Your agente is probably failing (multi-turn quality crisis)
Silent failures in production (real cost analysis)
Scenario: Your SaaS agente WhatsApp (1,000 customers, 100 conversations/day)
Baseline assumptions: ├─ Single-turn accuracy: 95% (Turn 1 answer is correct) ├─ Turn 2 accuracy: 90% (given Turn 1 correct, Turn 2 is correct) ├─ Turn 3 accuracy: 85% (given Turns 1-2 correct) ├─ Turn 4 accuracy: 80% (given Turns 1-3 correct) ├─ Turn 5 accuracy: 75% (given Turns 1-4 correct) └─ Multi-turn success rate (all 5 turns correct): 95% × 90% × 85% × 80% × 75% = 43%
Result: Only 43% of conversations succeed (rest fail silently) ├─ Daily conversations: 100 ├─ Successful (all turns correct): 43 ├─ Failed silently (at least one turn wrong): 57 ├─ Monthly: 57 × 30 = 1,710 failed conversations ├─ Churn rate (customers leave after bad experience): ~5% └─ Monthly churn: 1,710 × 5% = 85 customers lost
Annual impact: ├─ Customers lost to agente failures: 85 × 12 = 1,020 customers ├─ If customer LTV = R$ 10K: R$ 10.2M lost revenue ├─ If you catch + fix: Could save most of this ├─ Problem: You don't know failures are happening (silent, no alerts) └─ Result: Revenue bleeding undetected
Why you don't detect: ├─ No errors (agente doesn't crash) ├─ No alerts (system looks healthy) ├─ No complaints (customers blame themselves, "agente must be right") ├─ Gradual churn (hard to connect to agente quality) └─ You assume: Agente is fine (tests passed before launch)
Root causes of silent multi-turn failures
Common failure modes (why agente breaks mid-conversation):
-
Context corruption (agente loses track of conversation history) ├─ Problem: LLM hits token limit (context window too small) ├─ Result: Early turns deleted from context (agente forgets) ├─ Agente behavior: Makes assumptions based on incomplete context ├─ Example: Customer mentions product name Turn 2, but agente forgets by Turn 4 ├─ Implication: Turn 4 answer is generic/wrong (inherited from Turn 3 misunderstanding) └─ Solution: Use sliding window context (keep only relevant turns, not all history)
-
Hallucination accumulation (agente invents facts, builds on them) ├─ Problem: Agente generates plausible-sounding wrong info ("taxa de R$ 50") ├─ Result: Next turns assume this is true (build on hallucination) ├─ Agente behavior: Consistent (but wrong) because it's coherent ├─ Example: Hallucinate tax, then reference tax in Turn 4-5 ├─ Implication: Entire conversation is coherent fiction (customer doesn't notice) └─ Solution: Fact-check critical info (cross-reference with database)
-
State tracking failure (agente loses track of conversation state) ├─ Problem: Agente should track "customer wants refund" status ├─ Result: Turn 3 says "yes refund", Turn 5 says "no refund" (contradicts) ├─ Agente behavior: No consistency check (doesn't notice contradiction) ├─ Example: Turn 3 commits to action, Turn 5 reverses it ├─ Implication: Customer is confused (agente is unreliable) └─ Solution: Explicit state machine (agente tracks decisions, enforces consistency)
-
RAG degradation (retrieval-augmented generation fails silently) ├─ Problem: Agente should retrieve policy from database, but retrieves wrong doc ├─ Result: Turn 3 has wrong policy info (cascade from here) ├─ Agente behavior: Confident (RAG doc looks authoritative) ├─ Example: Retrieve outdated policy, answer based on that ├─ Implication: Turns 4-5 build on wrong policy (conversa inteira errada) └─ Solution: Verify retrieved doc relevance (add confidence score, fallback if low)
-
Intent misalignment (agente misunderstands what customer wants) ├─ Problem: Customer's actual intent is different from agente's interpretation ├─ Result: Turn 1-2 answers don't address real problem (customer doesn't correct) ├─ Agente behavior: Confidently answering wrong question ├─ Example: Customer wants refund, agente thinks wants shipping info ├─ Implication: Turns 3-5 address shipping (not what customer needs) └─ Solution: Clarification check (ask "É isso que você quer?" early)
How to detect multi-turn failures (Amazon AEM framework)
Turn-level evaluation (pinpoint root cause)
Step 1: Log full conversations (with metadata)
For each conversation, capture: ├─ Turn 1: [Customer input] → [Agente output] → [Is correct? Y/N] ├─ Turn 2: [Customer input] → [Agente output] → [Is correct? Y/N] ├─ Turn 3: [Customer input] → [Agente output] → [Is correct? Y/N] ├─ Turn 4: [Customer input] → [Agente output] → [Is correct? Y/N] ├─ Turn 5: [Customer input] → [Agente output] → [Is correct? Y/N] └─ Final: [Success? Y/N]
Step 2: Analyze turn-level correctness (not just final result)
Example analysis: ├─ Conversation 1: T1✓ T2✓ T3✗ T4✗ T5✗ (failed at Turn 3, corrupted 4-5) ├─ Conversation 2: T1✓ T2✓ T3✓ T4✗ T5✓ (failed at Turn 4 only, T5 recovered) ├─ Conversation 3: T1✓ T2✗ T3✗ T4✗ T5✗ (failed at Turn 2, cascaded) └─ Pattern: Most failures start early (Turn 2-3), cascade to later turns
Step 3: Calculate AEM (Agent Evaluation Metric)
AEM components: ├─ Turn-level accuracy: % of turns correct (per turn number) ├─ Cascade severity: How many turns inherit failure (Turn N error → Turns N+1 errors) ├─ Root cause rate: % of failures that are root errors (not inherited) └─ Recovery rate: % of times agente recovers from error (Turn N error, but Turn N+1 correct)
Example calculation (1,000 conversations): ├─ Turn 1 accuracy: 95% (950/1000 correct) ├─ Turn 2 accuracy: 90% (but only 857/1000, because 93 inherited from Turn 1) ├─ Turn 3 accuracy: 85% (717/1000, cascading) ├─ Turn 4 accuracy: 80% (574/1000, severe cascade) ├─ Turn 5 accuracy: 75% (431/1000, cascading) ├─ Multi-turn success: 43% (431/1000, matches earlier math) └─ AEM insight: Cascade effect is SEVERE (should be 75%, but actually 43%)
Step 4: Identify root causes (which turns fail first?)
├─ Root errors: Turns where agente fails first (not inherited from previous) ├─ Example: Of 1,000 conversations, 283 fail at Turn 3 (root error) ├─ Analysis: Turn 3 has 28% root failure rate (vs 5% Turn 1, 7% Turn 2) ├─ Insight: Turn 3 is weakness (special type of question?) ├─ Fix: Retrain agente on Turn 3 type (cheaper than retraining entire model) └─ Verify: After fix, Turn 3 accuracy should improve (and cascade should decrease)
Automated multi-turn testing
How to build multi-turn test suite:
-
Define conversation scenarios (realistic customer journeys) ├─ Scenario 1: Customer refund request (5 turns) ├─ Scenario 2: Customer product question (7 turns) ├─ Scenario 3: Customer complaint escalation (6 turns) ├─ Scenario 4: Customer upsell question (4 turns) └─ Scenario 5: Customer technical support (8 turns)
-
For each scenario, define expected outputs (ground truth) ├─ Turn 1: Expected answer (validate correctness) ├─ Turn 2: Expected answer (validate given Turn 1 context) ├─ Turn 3: Expected answer (validate given Turns 1-2 context) └─ ... └─ Turn N: Expected answer (validate full conversation context)
-
Run agente through scenario (capture actual outputs) ├─ Execute scenario (real agente inference) ├─ Log full conversation (all turns, all outputs) ├─ Compare each turn output to expected output ├─ Flag any mismatches (Turn 3: expected "R$ 0 taxa", got "R$ 50 taxa") └─ Calculate accuracy per turn
-
Analyze results (root cause analysis) ├─ Which turns failed? (Turn 1 mostly pass, Turn 3-4 mostly fail) ├─ Which scenarios failed? (Refund requests fail at Turn 3) ├─ What's root cause? (Hallucination? Context loss? Wrong retrieval?) └─ What's the fix? (Retrain Turn 3 logic? Add fact-checking? Improve RAG?)
-
Iterate + re-test (verify fix works) ├─ Implement fix (retrain, adjust prompt, improve retrieval) ├─ Re-run multi-turn tests (should see improvement) ├─ Verify cascade decreases (Turn 3 fix → Turn 4-5 also improve) ├─ Set threshold (require 95% per-turn accuracy to deploy) └─ Monitor production (keep testing ongoing)
Tools (what you need): ├─ Test runner (execute multi-turn scenarios automatically) ├─ Evaluation framework (compare outputs to expected, calculate metrics) ├─ Logging (capture full conversations with metadata) ├─ Dashboard (visualize turn-level accuracy, trends) └─ Alerts (notify if accuracy drops below threshold)
Action plan (what to do this week)
Week 1: Assessment
- Audit existing agente (log 100 real conversations, analyze turn-by-turn)
- Identify failures (which turns fail most? which are root vs inherited?)
- Calculate multi-turn accuracy (using formula above, compare to single-turn)
- Estimate churn (if 57% conversations fail silently, how many customers churn?)
- Document scenarios (what are your typical customer conversation flows?)
Week 2: Testing framework
- Define 5-10 test scenarios (typical customer journeys)
- Write expected outputs (ground truth for each turn)
- Build test runner (automated, reusable)
- Run initial tests (baseline accuracy, identify weak turns)
- Calculate AEM (turn-level accuracy, cascade severity)
Week 3: Root cause analysis
- Deep dive failures (why does Turn 3 fail? hallucination? context loss?)
- Hypothesis formation (what's causing Turn 3 failures?)
- Targeted fix (retrain Turn 3 logic, add fact-checking, improve RAG)
- Re-test (verify Turn 3 accuracy improves, cascade decreases)
Week 4: Deployment + monitoring
- Deploy improved agente (if tests pass 95%+ per-turn accuracy)
- Monitor production (keep logging multi-turn conversations)
- Setup alerts (if accuracy drops, alert you immediately)
- Iterate (continuous improvement as customer patterns evolve)
Estimated effort: 40-60 hours (month 1), 10-15 hours/month (ongoing)
Estimated cost: R$ 5-20K (testing infrastructure), R$ 0-5K/month (monitoring)
ROI: If prevents 10% churn (85 customers × 10% = 8.5 customers saved) × R$ 10K LTV = R$ 85K saved (18+ months of monitoring cost)
Conclusion: Multi-turn agente quality is crisis you don't see
The reality:
- Amazon research: Multi-turn fails in ways single-turn tests don't detect
- Your agente: Probably failing silently right now (43% vs 95% success rate)
- Customer impact: Cascading errors (one Turn 3 mistake corrupts Turns 4-5)
- Revenue impact: Silent churn (customers leave because agente is unreliable)
- Signal: Agent Evaluation Metric (AEM) is new standard for agente quality
Your choice (2 paths):
Path 1: Ignore multi-turn failures (hope for luck)
- Cost: R$ 0 upfront
- Risk: 57% conversations fail silently (R$ 1-10M annual churn)
- Timeline: Eventually, reputation destroyed
- Recommendation: Not recommended (silent revenue bleeding)
Path 2: Implement multi-turn testing (catch failures early)
- Cost: R$ 5-20K setup + R$ 5K/month monitoring
- Benefit: 95%+ multi-turn accuracy (vs 43% baseline)
- Timeline: 4 weeks to implement (then ongoing)
- Recommendation: Essential (ROI within months if prevents churn)
At OpenClaw, we help SaaS implement multi-turn agente quality:
- CONVERSATION AUDIT: Log 100+ real conversations, analyze turn-level failures
- SCENARIO DESIGN: Define 5-10 test scenarios (typical customer journeys)
- AEM FRAMEWORK: Calculate turn-level accuracy, cascade severity, root cause analysis
- AUTOMATED TESTING: Build test runner (reusable, CI/CD integrated)
- ROOT CAUSE FIX: Identify why Turn 3 fails (hallucination? context loss? RAG?)
- PRODUCTION MONITORING: Setup alerts if accuracy drops (catch failures early)
Result: Your agente is reliable (95%+ multi-turn accuracy). Customers never see cascading failures. Silent churn stops. Revenue protected. Competitive advantage (while competitors have failing agentes, yours works).
Seu agente conversa com clientes (multi-turn)?
Você testou Turn 2, 3, 4, 5 (ou só Turn 1)?
Você sabe quantas conversas falham silenciosamente (sem alertas)?
Se quer expert guidance (conversation audit, scenario design, AEM framework, automated testing, production monitoring, root cause analysis):
Publicado em 10 de setembro de 2026