Restores Android CI to a publicly installable SDK platform and keeps Gradle compileSdk aligned with the workflow install/cache key. Rolls back the API-37-only AndroidX core slice until Android 37 is available to hosted CI, while preserving the unrelated Kotlin dependency bump.
Verification:
- Google SDK repository index check: android-36 exists; android-37/android-37.0 do not.
- git diff --check
- Testbox changed gate: tbx_01kvs3r1bc925pxya94zey23c8
- PR CI: 68 successful, 12 skipped, 0 failing, 0 pending; Android build/play and both Android unit-test lanes passed.
Move iOS accent and status colors through design tokens so raw SwiftUI color literals are blocked outside token definitions.
Set the app-wide tint in SwiftUI and UIKit from code, without relying on Assets.xcassets AccentColor.
Render Telegram progress draft rows with clean plain previews while preserving Telegram HTML formatting through parse_mode.
The progress HTML path now stays transport-owned, including richMessages=false progress messages, while debug/plain/sanitized text remains readable without raw markup.
Thanks @snowzlmbot!
Use the watchOS application API for text input, remove simulator-only Debug architecture restrictions, and document the standard Watch bundle location. Refs #92477.
Co-authored-by: Sash Zats <sash@zats.io>
Summary:
- The branch replaces iOS notification permission display-string state with a typed SettingsNotificationStatus ... n value, and opens the app notification Settings page with UIApplication.openNotificationSettingsURLString.
- PR surface: Other +51. Total +51 across 5 files.
- Reproducibility: yes. Current main has a source-level reproduction path where the Notifications settings act ... n display strings and opens the general app Settings URL instead of the notification-specific Settings URL.
Automerge notes:
- No ClawSweeper repair was needed after automerge opt-in.
Validation:
- ClawSweeper review passed for head 1a2fdeeac5.
- Required merge gates passed before the squash merge.
Prepared head SHA: 1a2fdeeac5
Review: https://github.com/openclaw/openclaw/pull/91923#issuecomment-4669439195
Co-authored-by: Sash Zats <sash@zats.io>
Summary:
- The PR wires the macOS Dashboard and Canvas WKWebViews to WKUIDelegate and presents NSOpenPanel for HTML file inputs.
- PR surface: Other +61. Total +61 across 3 files.
- Reproducibility: yes. at source level: current main renders the affected file inputs while the macOS Dashboa ... fore-fix packaged macOS app in this read-only review, but the after-fix screenshots show the real app path.
Automerge notes:
- No ClawSweeper repair was needed after automerge opt-in.
Validation:
- ClawSweeper review passed for head 4f477c4ed0.
- Required merge gates passed before the squash merge.
Prepared head SHA: 4f477c4ed0
Review: https://github.com/openclaw/openclaw/pull/94612#issuecomment-4743165861
Co-authored-by: bbblending <li.mingkang@xydigit.com>
Summary:
- The PR reorganizes the Android Settings home rows into titled intent sections and adds ShellScreen logic tests for section title mapping and section ordering.
- PR surface: Other +106. Total +106 across 2 files.
- Reproducibility: not applicable. this is a UI organization cleanup rather than a bug report. The relevant ve ... ion path is the before/after Android emulator screenshot proof plus source comparison against current main.
Automerge notes:
- No ClawSweeper repair was needed after automerge opt-in.
Validation:
- ClawSweeper review passed for head da9bf5c5b5.
- Required merge gates passed before the squash merge.
Prepared head SHA: da9bf5c5b5
Review: https://github.com/openclaw/openclaw/pull/94539#issuecomment-4741795253
Co-authored-by: Tosko4 <tosko4@gmail.com>
One-time maintainer-authorized bootstrap merge for the release-gate verifier policy. Exact hosted CI and all supporting workflow gates passed on 66133de419.