# v0.12.31 — Fix false "no response" stall notifications

## What Changed

**Bug fix: WhatsApp stall detector wasn't clearing on agent response.** When the agent sent a reply via WhatsApp, the stall tracker wasn't notified. This meant the 5-minute "no response" timer kept running even after the agent had already replied, generating false alerts.

- Added `clearStallForChannel()` call in WhatsAppAdapter's `send()` method (matching TelegramAdapter behavior)
- Handles both JID and raw channelId formats for reliable matching

**Bug fix: Multiple pending messages caused duplicate stall alerts.** If a user sent several messages quickly (e.g., "Hey!", "Who is this?"), each created a separate pending entry. When the timeout fired, ALL of them would trigger separate "no response" notifications — spamming the user with 3+ identical alerts.

- Added per-channel deduplication in `StallDetector.check()` — once one alert fires for a channel, all other pending entries for that channel are silently marked as alerted

**3 new tests** covering per-channel deduplication scenarios.

## What to Tell Your User

Your WhatsApp stall notifications are now accurate. Previously, you might have seen "No response after 5 minutes" alerts even after the agent had already replied — especially if you sent multiple messages quickly. That's fixed now.

## Summary of New Capabilities

- Accurate stall detection for WhatsApp conversations
- No more duplicate/false "no response" notifications
- Stall detector deduplicates alerts per channel across all platforms
