Add strict executable launch#335
Conversation
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
|
Can you show an example use case |
|
Sure. A typical use case is testing a local desktop application build that has not been installed and therefore has no Start Menu entry. For example, automation may need to launch The existing |
|
What is your opinion about combinig the tool you created with App tool. Can you pls try it out |
Summary
LaunchExecutablefor launching one explicit executable path with separated argvshell=Falseand return the created PID plus normalized launch inputsMotivation
The existing
Apptool is convenience-oriented and resolves applications through Start Menu andname-based workflows. Deterministic automation also needs a small path-based launch primitive that
does not use shell parsing, fuzzy matching, file associations, or Start Menu lookup.
Safety and compatibility
DEVNULLTesting
ruff check: passedruff format --check: passed6 passed369 passed, 3 failedupstream/main:363 passed, 3 failedtests/test_iserror_compliance.pyimport failures occur on unmodifiedupstream/mainReal Windows smoke validation passed with
cmd.exe /d /c exit 0: the tool returned the created PID,the exact executable path, separated argv, and the requested working directory.
Dependencies and scope
None. This branch is based directly on current
main. It intentionally excludes window discoveryand launch-time window waiting; those can remain separate from this strict process-launch primitive.