Skip to content

Termux RUN_COMMAND: Robustere Dispatch‑Logik und detailliertes Logging#104

Open
Android-PowerUser wants to merge 8 commits into
set-default-top-k-to-1-everywherefrom
fix-termux-command-execution-issues
Open

Termux RUN_COMMAND: Robustere Dispatch‑Logik und detailliertes Logging#104
Android-PowerUser wants to merge 8 commits into
set-default-top-k-to-1-everywherefrom
fix-termux-command-execution-issues

Conversation

@Android-PowerUser
Copy link
Copy Markdown
Owner

Motivation

  • Die bestehende Termux("command")-Ausführung konnte in manchen Umgebungen fehlschlagen ohne ausreichende Diagnoseinformationen, weshalb das Verhalten robuster gemacht und besser geloggt werden muss.
  • Ziel ist, leere oder nur-whitespace Kommandos früh zu erkennen, die Ziel-Service‑Wiring zu prüfen und Permission-/Security‑Fehler klar zu differenzieren.

Description

  • executeTermuxCommand validiert jetzt das übergebene Kommando durch trim() und bricht bei leerer Eingabe ab, um unnötige Dispatch‑Versuche zu vermeiden.
  • Vor dem Starten des Intents wird die RunCommandService-Klasse via PackageManager.resolveService(...) überprüft und das gefundene Service‑Info im Log ausgegeben, damit fehlkonfigurierte Termux-Installationen früher erkannt werden können.
  • Der Intent com.termux.RUN_COMMAND verwendet nun die bereinigten Argumente, setzt zusätzlich com.termux.RUN_COMMAND_RUNNER = "app-shell" und protokolliert die wichtigsten Extras (Pfad, Workdir, Background-Flag, Runner und Argumentenzahl) vor dem Dispatch.
  • Fehlerpfade wurden präzisiert: SecurityException wird gesondert geloggt mit einem Hinweis auf fehlende Berechtigungen, und bei allen Fehlern wird TermuxFeedbackPreferences.markTermuxNotFound(...) aufgerufen, um das Feedback‑Verhalten beizubehalten.

Testing

  • Ausgeführt: ./gradlew :app:compileDebugKotlin :app:testDebugUnitTest --tests com.google.ai.sample.util.CommandParserTest.
  • Ergebnis: Build und die spezifizierten Unit‑Tests wurden erfolgreich ausgeführt und haben bestanden.

Codex Task

Copy link
Copy Markdown
Contributor

@amazon-q-developer amazon-q-developer Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR successfully implements robust dispatch logic and comprehensive logging for Termux command execution. The changes enhance reliability through early validation, service verification, and clear error differentiation. The code is well-structured and maintains consistency with the existing codebase. No blocking issues identified.


You can now have the agent implement changes and create commits directly on your pull request's source branch. Simply comment with /q followed by your request in natural language to ask the agent to make changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant