Skip to content

axe drag fails on Xcode 26.5: FBSimulatorHIDEvent does not support touch move events #59

@dobby-d-elf

Description

@dobby-d-elf

Summary

axe drag fails on this machine with:

Error: CLIError(errorDescription: "FBSimulatorHIDEvent does not support touch move events.")

This is with AXe 1.7.1, Xcode 26.5, and an iOS 26.5 simulator. axe swipe / XcodeBuildMCP swipe works, but axe drag fails before dispatch because FBSimulatorHIDEvent.touchMoveAtX:y: is not available at runtime.

Reproduction

Booted simulator:

iPhone 17, iOS 26.5, UDID D24248AD-73D5-43A8-8A8E-ED3F072D74C0

Command:

/Users/agent/.npm/_npx/99336612077b7094/node_modules/xcodebuildmcp/bundled/axe \
  drag \
  --start-x 201 \
  --start-y 477 \
  --end-x 201 \
  --end-y 529 \
  --duration 0.2 \
  --steps 10 \
  --udid D24248AD-73D5-43A8-8A8E-ED3F072D74C0

Observed:

Error: CLIError(errorDescription: "FBSimulatorHIDEvent does not support touch move events.")

Expected

axe drag should either perform a drag on supported simulator stacks or gracefully fall back / explain which Xcode or SimulatorKit versions support the required touch-move selector.

Environment

From xcodebuildmcp-doctor and local commands:

AXe: 1.7.1
XcodeBuildMCP: 2.6.2
Xcode: 26.5 (17F42)
macOS: 26.5 / Darwin 25.5.0
Architecture: arm64, Apple M1 Pro
Node: v26.3.0

Installed simulator runtimes:

iOS 26.4.1 (23E254a)
iOS 26.5 (23F77)

Notes

I traced the failure to Sources/AXe/Utilities/HIDInteractor.swift, where touchMoveEvent(x:y:) looks up the private class method:

NSSelectorFromString("touchMoveAtX:y:")

On this host, class_getClassMethod(FBSimulatorHIDEvent.self, selector) returns nil, causing the error above.

A possible workaround might be a fallback path using FBSimulatorHIDEvent.swipe(...) where appropriate, although that would not be equivalent to a true held touch-move drag for sliders or custom controls.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions