refactor(ios): walk the lit windows once per multi-type element read

Merged
TH
4h ago
+73-6

Summary

Multi-type element reads now resolve the lit-panel windows once, then build queries in the existing type/root order. Both variadic elementQueries overloads use one private query builder. Text-input lookup requests its four types together. Six Swift files; follow-up to #4122 and #4189.

The three tests for existing behavior remain beside their owners. No scope expansion.

Validation

Head 4321ec2f0671bc97a138b645b0cd7823b3104c21, rebased onto current main. git range-diff confirms both commits are unchanged by the rebase.

  • pnpm install --frozen-lockfile, pnpm build, pnpm format: passed.
  • pnpm check:affected --run --head 4321ec2f0671bc97a138b645b0cd7823b3104c21: passed, exactCommit=true, receipt run-9OObp6.
  • Four method-selected runner tests passed on iPhone Duo 4F879835-4AB3-4046-B033-5AB769209DD4, with unit-test compilation enabled and isolated DerivedData.
  • Live Tester fill/read-back remains unverified at this head: runtime instructions require the installed Device-panel CLI, whereas this task requires the worktree CLI. No live result is claimed.

CI owns coverage, integration and hosted device lanes. CI cannot replace the outstanding live Duo verification.