feat(cua-driver): expose post-action window rebind targets - #2746
Closed
f-trycua wants to merge 1 commit into
Closed
feat(cua-driver): expose post-action window rebind targets#2746f-trycua wants to merge 1 commit into
f-trycua wants to merge 1 commit into
Conversation
f-trycua
force-pushed
the
codex/2238-popup-rediscovery
branch
from
July 31, 2026 23:44
2247850 to
ef1e30a
Compare
f-trycua
marked this pull request as ready for review
August 1, 2026 00:58
This was referenced Aug 25, 2026
injaneity
added a commit
that referenced
this pull request
Aug 25, 2026
Salvaged from #2746. Co-authored-by: Francesco Bonacci <195596869+f-trycua@users.noreply.github.com> Co-authored-by: Zane Chee <zanechee@users.noreply.github.com>
injaneity
added a commit
that referenced
this pull request
Aug 26, 2026
Salvaged from #2746. Co-authored-by: Francesco Bonacci <195596869+f-trycua@users.noreply.github.com> Co-authored-by: Zane Chee <zanechee@users.noreply.github.com>
injaneity
added a commit
that referenced
this pull request
Aug 27, 2026
Salvaged from #2746. Co-authored-by: Francesco Bonacci <195596869+f-trycua@users.noreply.github.com> Co-authored-by: Zane Chee <zanechee@users.noreply.github.com>
Collaborator
|
closing as superseded by #3373 |
injaneity
added a commit
that referenced
this pull request
Aug 28, 2026
Salvaged from #2746. Co-authored-by: Francesco Bonacci <195596869+f-trycua@users.noreply.github.com> Co-authored-by: Zane Chee <zanechee@users.noreply.github.com>
injaneity
added a commit
that referenced
this pull request
Aug 28, 2026
Salvaged from #2746. Co-authored-by: Francesco Bonacci <195596869+f-trycua@users.noreply.github.com> Co-authored-by: Zane Chee <zanechee@users.noreply.github.com>
injaneity
added a commit
that referenced
this pull request
Sep 4, 2026
Salvaged from #2746. Co-authored-by: Francesco Bonacci <195596869+f-trycua@users.noreply.github.com> Co-authored-by: Zane Chee <zanechee@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
window_changeaction-result record with newly discovered native window ids, pids, app names, titles, and foreground-change staterebindafter any macOS pointer, keyboard, value, or scroll action discovers a new interaction surface, including an exact target when only one window appearedWhy
The macOS detector already observed popups and new windows after native actions, but #2713 narrowed successful actions to the shared
ActionResultand retained those target identifiers only in diagnostic prose. Callers therefore remained anchored to a parent window that a modal or popup could block. This change projects the decision-critical topology facts through the same closed contract for every wrapped native action rather than special-casing browser tools.Malformed producer topology fails closed at the canonical adapter. When multiple windows appear, the result retains every candidate and recommends rebind without guessing an exact target.
Validation
cargo test --release -p cua-driver-contract -j 1(26 unit tests + generator test)cargo test --release -p cua-driver-core action_record::tests --lib -j 1(20 passed)cargo test --release -p platform-macos window_change_detector::tests --lib -j 1(10 passed)node scripts/generate-uniffi-bindings.mjs --checknpm run typecheckpython3 -m py_compile src/cua_driver/__init__.py src/cua_driver/_native_contract.pycargo fmt --all -- --checkgit diff --checkScope
Addresses the structured post-action rediscovery and focus-preservation portion of #2238. The separate privacy-sensitive, request-scoped desktop-frame fallback proposed there is not included in this draft; ambiguous structured results remain recoverable through
list_windowswithout widening capture scope.Relates to #2238.