[3/5] Port the signed Swift helper background-click route - #3
Draft
cm2435-hcomp wants to merge 1 commit into
Draft
[3/5] Port the signed Swift helper background-click route#3cm2435-hcomp wants to merge 1 commit into
cm2435-hcomp wants to merge 1 commit into
Conversation
Linux visual regression artifactsMatrix jobs now run independently. Download visual artifacts from this workflow run.
|
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.
Why
The first Rust point-click implementation was based on an earlier Chromium experiment. It refused native Calculator before dispatch and diverged from the currently installed signed Codex Computer Use helper.
We inspected and disassembled the signed macOS helper shipped inside ChatGPT. The binary exposes concrete components for per-window capture, AX targeting, synthetic application focus, focus-steal prevention, a virtual cursor, and per-PID event delivery. Its current generic pointer route is not gated on a guessed AppKit/Chromium classification.
Recovered Swift control flow
The relevant helper path establishes this sequence:
NSEvent.mouseEvent(...).CGEventPostToPid.The helper also contains explicit local exceptions, including Catalyst preparation. It does not use a broad framework classification as the generic route selector.
What changed
Unknownframework windows when exact AX facts prove the route.Live-host result
Calculator passed five consecutive background repetitions:
AC,1,2,+,3,0, and=using captured-surface point targets.42, confirmed through an independent AX witness.targeted_pointerand one AppKit-derivedCGEventPostToPiddown/up pair.TextEdit also accepted exact semantic Unicode insertion with AX readback. Later TextEdit actions exposed the concurrent-user posture issue listed below.
Validation
cargo test -p cua-driver-core: 148 tests passed, 0 failed.cargo test -p platform-macos: 197 tests passed, 0 failed, 1 doc test ignored.git diff --check: passed.Repository-wide formatting remains red on unrelated 0.7.1 files and is not rewritten here.
Outstanding work
CGEventPostToPid.press_keycurrently refuses before dispatch.Stack
Depends on #2. This is the final native checkpoint PR before the Python client and QA/demo handoff PRs in
hcompai/cua-drivers.