Skip to content

feat(ios): delegate clearState / clearKeychain on real devices to a host hook - #3

Merged
jochen-testingbot merged 1 commit into
tb-modsfrom
feat/real-ios-clear-state
Oct 28, 2026
Merged

jochen-testingbot merged 1 commit into
tb-modsfrom
feat/real-ios-clear-state

Conversation

@jochen-testingbot

Copy link
Copy Markdown
Collaborator

Physical iPhones cannot wipe an app's container or keychain in place, so clearState was a logged no-op that still reported COMPLETED. When MAESTRO_IOS_DEVICE_RESET_HOOK points at an executable, DeviceControlIOSDevice runs <hook> clear-state <bundleId> / <hook> clear-keychain and fails the command on a non-zero exit. Without the hook, behaviour is unchanged. The vm driver provides the hook (testingbot/vm feature-mobile).

Tests: ./gradlew :maestro-ios:test --tests 'ios.devicectl.*' (7 passing).

…ost hook

Physical iPhones cannot wipe an app's container or keychain in place, so clearState
was a logged no-op that still reported COMPLETED. When MAESTRO_IOS_DEVICE_RESET_HOOK
points at an executable, DeviceControlIOSDevice runs '<hook> clear-state <bundleId>'
and '<hook> clear-keychain' and fails the command on a non-zero exit. Without the
hook the old behaviour is unchanged.
@jochen-testingbot
jochen-testingbot merged commit 2b75325 into tb-mods Oct 28, 2026
7 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant