When clicking an element that is blocked by a cookie banner or modal overlay,
the error message incorrectly showed "Element not found or not visible" even
though the element was found and visible.
The issue was in toAIFriendlyError(): the check for "Timeout" was evaluated
before "intercepts pointer events", causing the wrong error message to be
returned.
Changes:
- Reorder error detection to check "intercepts pointer events" before "Timeout"
- Improve error message to suggest dismissing modals/cookie banners
- Export toAIFriendlyError for testing
- Add focused tests for overlay blocking behavior
Before:
Element "@e4" not found or not visible. Run 'snapshot' to see current page elements.
After:
Element "@e4" is blocked by another element (likely a modal or overlay).
Try dismissing any modals/cookie banners first.
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>