Problem
Runtime selector/ref interactions preserve a resolved parent target by choosing a point outside independently interactive descendants. The direct iOS selector path and Maestro compatibility path still activate the matched element center because the runner does not have the daemon snapshot tree needed to classify child controls.
This can mis-activate a child when its control occupies the parent center. The user impact is broader than the skill-guided flow: the skill now steers agents toward refs, but selector-first agents—especially no-skill users working from default CLI help or an outdated skill—can still take the direct runner path and hit the old behavior.
Closure
- Give direct iOS selector activation equivalent parent-owned target safety through runner-side evidence or a pre-dispatch delegation/preflight.
- Decide and test whether Maestro should gain parity or retain an explicit compatibility divergence.
- Add runner/contract coverage proving a parent selector cannot activate an independently interactive child at its center.
- Update the ADR 0011 guarantee cells when each path is closed.
Problem
Runtime selector/ref interactions preserve a resolved parent target by choosing a point outside independently interactive descendants. The direct iOS selector path and Maestro compatibility path still activate the matched element center because the runner does not have the daemon snapshot tree needed to classify child controls.
This can mis-activate a child when its control occupies the parent center. The user impact is broader than the skill-guided flow: the skill now steers agents toward refs, but selector-first agents—especially no-skill users working from default CLI help or an outdated skill—can still take the direct runner path and hit the old behavior.
Closure