Skip to content

[AI-assisted] fix(android): wrap onboarding permission labels#103649

Merged
Solvely-Colin merged 2 commits into
openclaw:mainfrom
IWhatsskill:codex/android-permission-row-ellipsis
Jul 10, 2026
Merged

[AI-assisted] fix(android): wrap onboarding permission labels#103649
Solvely-Colin merged 2 commits into
openclaw:mainfrom
IWhatsskill:codex/android-permission-row-ellipsis

Conversation

@IWhatsskill

@IWhatsskill IWhatsskill commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

What Problem This Solves

On the Android onboarding permissions screen, permission titles and descriptions were constrained to one line. At larger font scales or narrow widths, longer text was truncated, hiding part of the permission explanation.

Why This Change Was Made

This removes the single-line limits from both text elements in PermissionRow, allowing Compose to grow each row vertically and wrap the full title and description. The native i18n source index is refreshed for the resulting source line shifts.

User Impact

Permission labels remain fully readable instead of being clipped or shortened, including at increased Android font scale.

Evidence

Verified on an Android API 36 emulator at 1080�2400 and 1.5 font scale using a real paired, online Gateway. Before, permission descriptions were restricted to one line; after, they wrap across multiple lines without truncation. The paired proof state was Gateway online, Nodes 1/1, Approvals 0, with device and node pending queues empty.

Before After
Android onboarding permission rows before multiline wrapping Android onboarding permission rows after multiline wrapping

Before video:

before-permission.mp4

After video:

after-permission-wrap.mp4

Validation:

  • pnpm native:i18n:check passed with changed=false and 2,916 entries.
  • pnpm android:i18n:check passed with 21 keys across all locales.
  • ./gradlew --offline --no-daemon :app:ktlintCheck :benchmark:ktlintCheck --console=plain passed.
  • ./gradlew --offline --no-daemon :app:assemblePlayDebug --console=plain passed.

@IWhatsskill IWhatsskill marked this pull request as ready for review July 10, 2026 11:03
@IWhatsskill IWhatsskill changed the title [AI-assisted] fix(android): ellipsize onboarding permission labels [AI-assisted] fix(android): wrap onboarding permission labels Jul 10, 2026
@clawsweeper clawsweeper Bot added proof: sufficient ClawSweeper judged the real behavior proof convincing. proof: 🎥 video Contributor real behavior proof includes video or recording evidence. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. P2 Normal backlog priority with limited blast radius. labels Jul 10, 2026
@clawsweeper

clawsweeper Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed July 10, 2026, 8:30 AM ET / 12:30 UTC.

Summary
Removes the one-line limits from Android onboarding permission-row titles and descriptions and refreshes generated native i18n source positions.

PR surface: Other -2. Total -2 across 2 files.

Reproducibility: yes. The before emulator artifact visibly reproduces clipped permission explanations, matching current main's explicit one-line constraints.

Review metrics: none identified.

Merge readiness
Overall: 🐚 platinum hermit
Proof: 🦞 diamond lobster ✨ media proof bonus
Patch quality: 🐚 platinum hermit
Result: ready for maintainer review.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • none.

Next step before merge

  • No automated repair is needed; this active PR should proceed through ordinary exact-head review and merge validation.

Security
Cleared: The patch changes only Compose text constraints and generated source-position metadata, with no concrete security or supply-chain concern.

Review details

Best possible solution:

Land the minimal multiline change after the normal exact-head merge checks, preserving the existing weighted row and scrollable permissions layout.

Do we have a high-confidence way to reproduce the issue?

Yes. The before emulator artifact visibly reproduces clipped permission explanations, matching current main's explicit one-line constraints.

Is this the best way to solve the issue?

Yes. Removing only the two maxLines caps is the narrowest maintainable fix, and the after artifact confirms natural wrapping without disrupting the controls.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against 0426f238c363.

Label changes

Label changes:

  • add P2: The PR fixes a demonstrated but bounded readability defect in the Android onboarding permissions flow.
  • add proof: sufficient: Contributor real behavior proof is sufficient. Before-and-after emulator screenshots and recordings directly demonstrate the clipped current behavior and corrected multiline rendering in a live paired setup.
  • add proof: 🎥 video: Contributor real behavior proof includes video or recording evidence. Before-and-after emulator screenshots and recordings directly demonstrate the clipped current behavior and corrected multiline rendering in a live paired setup.
  • add rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • add status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (recording): Before-and-after emulator screenshots and recordings directly demonstrate the clipped current behavior and corrected multiline rendering in a live paired setup.

Label justifications:

  • P2: The PR fixes a demonstrated but bounded readability defect in the Android onboarding permissions flow.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (recording): Before-and-after emulator screenshots and recordings directly demonstrate the clipped current behavior and corrected multiline rendering in a live paired setup.
  • proof: sufficient: Contributor real behavior proof is sufficient. Before-and-after emulator screenshots and recordings directly demonstrate the clipped current behavior and corrected multiline rendering in a live paired setup.
  • proof: 🎥 video: Contributor real behavior proof includes video or recording evidence. Before-and-after emulator screenshots and recordings directly demonstrate the clipped current behavior and corrected multiline rendering in a live paired setup.
Evidence reviewed

PR surface:

Other -2. Total -2 across 2 files.

View PR surface stats
Area Files Added Removed Net
Source 0 0 0 0
Tests 0 0 0 0
Docs 0 0 0 0
Config 0 0 0 0
Generated 0 0 0 0
Other 2 13 15 -2
Total 2 13 15 -2

What I checked:

Likely related people:

  • obviyus: Introduced the Android onboarding redesign, made the overhaul UI canonical, and later fixed the permission setup list layout. (role: feature owner; confidence: high; commits: aae75b5e5778, bbcac0019b11, 94bc18ad7535; files: apps/android/app/src/main/java/ai/openclaw/app/ui/OnboardingFlow.kt)
  • joshavant: Recently maintained the same Android onboarding file and adjacent gateway-pairing flow. (role: recent area contributor; confidence: medium; commits: b80893f30dc2, 81f4fe6c113b; files: apps/android/app/src/main/java/ai/openclaw/app/ui/OnboardingFlow.kt)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

@Solvely-Colin Solvely-Colin merged commit eb7613c into openclaw:main Jul 10, 2026
126 of 135 checks passed
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jul 11, 2026
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app: android App: android P2 Normal backlog priority with limited blast radius. proof: sufficient ClawSweeper judged the real behavior proof convincing. proof: 🎥 video Contributor real behavior proof includes video or recording evidence. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. size: XS status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants