Repository navigation
Conversation
… refused Linux keeps a process name to 15 characters, so cua-driver's list_apps named GNOME Terminal "gnome-terminal-" (its server process) while its window named the app "Gnome-terminal". The pick recorded only the first, and check 1b refused every task in the app the person picked. AppIdentity.of() now takes the resolved window and adds its app name, but only when the window is the same process AND the app's name is a cut process name (15 characters) that the window's name completes. Any other name a window gives adds nothing: a pick has no pid, so a wider name would let it cover a different app (the existing Firefox refusal still holds). Found on the isolated computer-use rig. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
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
Linux keeps a process name to 15 characters, so cua-driver's
list_appsnamed GNOME Terminalgnome-terminal-(its server process) while its window named the appGnome-terminal. The pick recorded only the first, and check 1b refused every task in the app the person had picked.What
AppIdentity.of()takes the resolved window and adds its app name, only when the window is the same process AND the app's name is a cut process name (15 characters) that the window's name completes. Any other name a window gives adds nothing: a pick has no pid, so a wider name would let it cover a different app. The existing "another app is refused" test still holds and has a twin for this rule.Verification
4 new tests in
tests/test_computer_app_identity.py(red before). Computer-use suites 635 passed; ruff clean. On the rig: a Terminal menu item prompted, was denied, then approved and ran.Not fixed here: two processes with the same cut name (
gnome-terminal-serverandgnome-terminal-preferences) make the door ask "which one?" with two identical options.🤖 Generated with Claude Code