• Гладков Алексей Владимирович's avatar
    feat: add waitForElement, assertions, batch commands, WebView inspection,...
    · 5c7ba1aa
    
    feat: add waitForElement, assertions, batch commands, WebView inspection, async ADB, error classification, iOS fixes (v2.11.0)
    
    New tools:
    - wait_for_element: poll UI hierarchy until element found or timeout
    - assert_visible / assert_not_exists: instant UI verification without screenshots
    - batch_commands: execute multiple commands in single MCP round-trip
    - get_webview: inspect WebView content via Chrome DevTools Protocol (Android)
    
    Bug fixes:
    - iOS longPress now uses WDA Actions API (pointerDown+pause+pointerUp) instead of tap
    - iOS swipeDirection uses dynamic screen center from WDA instead of hardcoded 200x400
    - WDA launch mutex prevents parallel xcodebuild launches (race condition)
    - Per-platform cachedElements map prevents cross-device element contamination
    
    Improvements:
    - Async ADB: execRawAsync, screenshotRawAsync, getUiHierarchyAsync (non-blocking)
    - All UI handlers now use async ADB methods
    - Typed error classification (DeviceNotFoundError, AdbNotInstalledError, etc.)
    - classifyAdbError/classifySimctlError for actionable error messages
    
    Co-Authored-By: default avatarClaude Opus 4.6 <noreply@anthropic.com>
    5c7ba1aa