fix(termux): heartbeat on install + termux-all extras profile + install.sh network prereqs#21489
Merged
Conversation
Contributor
🔎 Lint report:
|
| Rule | Count |
|---|---|
invalid-argument-type |
3 |
First entries
run_agent.py:6645: [invalid-argument-type] invalid-argument-type: Argument to function `build_anthropic_client` is incorrect: Expected `str`, found `str | dict[Unknown | str, Unknown | str | dict[str, str]] | Any | ... omitted 3 union elements`
run_agent.py:12521: [invalid-argument-type] invalid-argument-type: Argument to function `_is_oauth_token` is incorrect: Expected `str`, found `str | dict[Unknown | str, Unknown | str | dict[str, str]] | Any | ... omitted 3 union elements`
run_agent.py:12524: [invalid-argument-type] invalid-argument-type: Argument to function `len` is incorrect: Expected `Sized`, found `(str & ~AlwaysFalsy) | (dict[Unknown | str, Unknown | str | dict[str, str]] & ~AlwaysFalsy) | (Any & ~AlwaysFalsy) | ... omitted 3 union elements`
✅ Fixed issues (3):
| Rule | Count |
|---|---|
invalid-argument-type |
3 |
First entries
run_agent.py:12524: [invalid-argument-type] invalid-argument-type: Argument to function `len` is incorrect: Expected `Sized`, found `(str & ~AlwaysFalsy) | (dict[Unknown, Unknown] & ~AlwaysFalsy) | (Any & ~AlwaysFalsy) | ... omitted 3 union elements`
run_agent.py:6645: [invalid-argument-type] invalid-argument-type: Argument to function `build_anthropic_client` is incorrect: Expected `str`, found `str | dict[Unknown, Unknown] | Any | ... omitted 3 union elements`
run_agent.py:12521: [invalid-argument-type] invalid-argument-type: Argument to function `_is_oauth_token` is incorrect: Expected `str`, found `str | dict[Unknown, Unknown] | Any | ... omitted 3 union elements`
Unchanged: 4015 pre-existing issues carried over.
Diagnostics are surfaced as warnings — this check never fails the build.
23 tasks
This was referenced May 24, 2026
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.
Salvages the four pure-Termux / install-UX commits from #21433 onto current main. Excludes the three commits in that PR that touched desktop-impacting code paths (TUI markdown list rendering, cli.py resize scrollback behavior, browser_tool lightpanda fallback logic, and a doctor.py venv-preference reorder). Those were bundled into #21433 under a title that only described the heartbeat change — they deserve their own scoped PRs.
Commits (all @adybag14-cyber)
fix(update): add heartbeat during dependency install— wraps the three subprocess.run dep-install calls in_install_python_dependencies_with_optional_fallbackwith a 30s elapsed-time heartbeat thread sohermes updatedoesn't look frozen during silent Rust/C build phases. Universal benefit, Termux-motivated.fix: strengthen termux install network prerequisites— addscheck_network_prerequisites()to scripts/install.sh that probes pypi + duckduckgo with curl before trying pkg installs; addsca-certificates curlto the Termux package list; Termux-gated guidance on failure.fix: add termux-all install profile and safe fallbacks— adds a new[termux-all]extra in pyproject.toml that bundles the extras known to resolve on Android (excludes matrix + voice which have broken Android wheels). Additive; doesn't touch existing[termux]or[all].feat: add termux doctor fallback guidance for blocked extras— 14-line addition to doctor.py with Termux-specific fallback hints when an extra is unavailable.Not included from #21433
Left to contributor to resubmit as separate scoped PRs if desired:
fix(termux): preserve CLI scrollback and harden lightpanda open fallback— removes\x1b[3Jfrom ALL platforms' resize recovery (not Termux-gated). Also refactors lightpanda→Chrome fallback URL logic for every user.fix(tui): stabilize list/url wrapping in assistant markdown— changes TUI+dashboard markdown list rendering globally. Needs embedded-TUI dashboard smoke test, not justmessages.test.ts.fix(termux): prefer active .venv and reduce doctor noise— reorders venv detection for every desktop user from(venv, .venv)to(active, .venv, venv). Defensible but cross-platform and deserves its own review.Validation
Closes #21433.