Peter Steinberger
c3a0d3e58a
test(android): enforce shared talk config contract ( #121333 )
2026-08-09 18:55:04 -07:00
Peter Steinberger
0ef798d28d
fix(gateway): keep hello authorization aligned with RPC access ( #120888 )
...
* fix(gateway): separate socket and device token scopes
* chore(i18n): refresh native source baseline
* style(ios): keep gateway channel within lint limit
* refactor(gateway): simplify scope metadata decoding
* ci(ui): isolate real-gateway e2e suites
* docs(ci): align runner table formatting
* chore(plugin-sdk): refresh api baseline
* ci(ui): route real-gateway retries to hosted runners
* chore(plugin-sdk): repair generated api baseline
* test(ui): select Labs toggles by title
* fix(gateway): preserve stored scopes without wire metadata
2026-08-09 14:50:07 -07:00
Peter Steinberger
8fdf7570a1
feat(gateway): live Desktop observer for cloud workers (Labs) ( #120727 )
...
* feat(gateway): live desktop observer for cloud workers
Adds live observation for cloud worker desktops through the gateway and Crabbox plugin, including desktop provisioning, persisted desktop metadata, tunneled WebSocket proxying, and the worker.desktop.observe protocol method.
The gateway, Crabbox plugin, and gateway protocol surfaces remain off by default behind the cloudWorkers.desktop Labs flag.
* feat(ui): Desktop panel for cloud worker observation
* docs(gateway): document cloud worker desktop lab
* fix(ci): regenerate contract baselines after rebase
* fix(protocol): regenerate Android gateway methods
* fix(ci): align rebased SDK and lint baselines
* fix(gateway): enforce view-only RFB boundary and fence desktop teardown
* fix(gateway): tighten RFB filter surface
* fix(state): keep pre-desktop databases readable and harden view-only RFB
* fix(gateway): fence desktop observer upgrades behind work admission
* fix(gateway): bind desktop observer tokens to their owner epoch
* fix(ci): regenerate config and SDK baselines after rebase
* fix(ci): regenerate native protocol and SDK baselines
* fix(ci): regenerate contracts after main rebase
* fix(state): register desktop metadata as lazy additive
* fix(ci): regenerate SDK baseline after final direct-merge rebase
2026-08-09 09:37:01 -07:00
WhatsSkiLL
d506f604d6
feat(android): add conversation reply notifications ( #120389 )
...
* feat(android): add conversation reply notifications
* fix(android): refresh native i18n inventory
* fix(android): harden conversation notification replies
* fix:android-conversation-notification-intent-hardening
* chore:i18n-refresh-native-source-inventory
* fix(android): notify completed background sessions
* fix/android-notification-reply-gateway-readiness
---------
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
2026-08-09 11:37:16 -04:00
Peter Steinberger
9a96375e60
feat(gateway): session-catalog terminal start plans behind cliAgents gate ( #121020 )
...
* feat(gateway): add session-catalog terminal start plans
* refactor(gateway): split catalog terminal start handler
* fix(gateway): enforce catalog terminal start eligibility
* test(gateway): split session catalog snapshot coverage
2026-08-09 08:13:39 -07:00
Peter Steinberger
c70aee247e
refactor(scripts): migrate JavaScript tools to TypeScript ( #121005 )
...
* refactor(scripts): migrate JavaScript tools to TypeScript
* fix(ci): keep changed-scope preflight zero-install
* fix(ci): preserve zero-install script owners
* fix(ci): complete script migration follow-through
* fix(release): keep stable closeout zero-install
* fix(scripts): preserve standalone execution boundaries
* fix(scripts): repair standalone loader boundaries
* fix(scripts): normalize gateway observation ids
* fix(scripts): keep Docker packager standalone
* test(scripts): preserve rebase cleanup helpers
* test(sessions): use tracked temp directory
2026-08-09 07:21:35 -07:00
openclaw-mantis[bot]
900e37b31d
chore(i18n): refresh native locales ( #121000 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-08-09 20:38:32 +08:00
Peter Steinberger
a74738c16e
feat(chat): add four rare working-claw stances and raise surprise odds ( #120826 )
...
* feat(chat): add four rare working-claw stances and raise surprise odds
* test(ui): assert claw surprises against the exported allowlist
* fix(ci): refresh native i18n inventory and drop test-only surprise export
2026-08-08 19:56:31 -07:00
Peter Steinberger
51944498eb
refactor(gateway): generalize bulk session patches ( #120629 )
...
* refactor(gateway): generalize bulk session patches
* fix(gateway): normalize bulk session fences
* refactor(gateway): simplify normalized target fence
* test(ui): align disconnected session wording
2026-08-08 15:00:09 -07:00
Peter Steinberger
e3de98a451
feat(update): scheduled update campaigns with countdown, dev-channel auto-update, and Updates settings page ( #120506 )
...
* feat(update): scheduled update campaigns with countdown, dev-channel auto-update, and Updates settings page
* fix(ui): satisfy update campaign deadcode checks
* feat(update): extend scheduled update campaigns
* test(ui): include Updates page in settings sidebar search expectations
* fix(update): end campaigns when apply fails
* fix(update): pin dev campaign applies to the announced commit
* test(ui): align update e2e fixtures
* fix(update): pin adopted dev updates to the announced commit
* docs(update): document automatic dev update campaigns
* fix(ui): gate automatic dev updates on git installs
* fix(gateway): scope detailed update metadata to read-capable clients
* fix(gateway): break post-attach madge cycle with a leaf client-lookup type
* chore(protocol): regenerate clients after rebase
* test(gateway): update method tail after rebase
* fix(update): preserve campaign target and hold state
* test(update): align adoption mocks and split handoff suite
* test(update): route split handoff suites on Windows
2026-08-08 11:19:53 -07:00
openclaw-mantis[bot]
6cdb8187ab
chore(i18n): refresh native locales ( #120614 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-08-09 02:14:06 +08:00
Peter Steinberger
876a3f0d8f
fix(ui): bulk session archive no longer stalls per thread ( #120493 )
...
* perf(ui): batch session archive requests
* fix(ci): sync bulk archive protocol surfaces
* fix(plugins): validate bulk archive ownership
* fix(ci): restore current main quality gates
* fix(ui): bound bulk archive dispatch
* fix(ui): bound bulk archive dispatch
* fix(ui): preserve bulk archive compatibility
* fix(ui): recover metadata-less archive fallback
2026-08-08 07:53:43 -07:00
openclaw-mantis[bot]
a8f314d587
chore(i18n): refresh native locales ( #120352 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-08-08 07:42:35 +08:00
joshavant
026f4045b7
Revert "fix(protocol): preserve gateway session attribution across node runs"
...
This reverts commit 735f176b01 .
2026-08-07 18:40:17 -05:00
WhatsSkiLL
62937ea6fc
fix(android): keep Wear chat on the latest reply ( #120307 )
...
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
2026-08-07 16:32:30 -04:00
WhatsSkiLL
a23444fc74
fix(android): gate Wear model controls by operator scope ( #120016 )
...
* fix(android): gate Wear model controls by operator scope
* chore(android): refresh native i18n inventory
---------
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
Co-authored-by: Colin Johnson <colin@solvely.net >
2026-08-07 11:00:41 -04:00
Dallin Romney
2a0bbd23f5
feat: expose session classification facts ( #106832 )
...
* feat: expose session presentation metadata
* fix: restrict session titles to safe display metadata
* fix: preserve saved session display names
* fix(protocol): tolerate future session presentation values
* fix(gateway): keep direct peer names out of presentation
* fix(protocol): connect session presentation to native rows
* fix(gateway): canonicalize session presentation metadata
* fix(gateway): satisfy session presentation CI checks
* feat(gateway): flatten session classification facts
* fix: repair session classification generated models
* fix(gateway): canonicalize session classification keys
* fix(gateway): classify spawned delivery sessions
* fix(android): retain session classification facts
* test(android): make scripted gateway calls concurrency-safe
* test(live-updater): isolate fixture git commands
2026-08-07 14:56:56 +08:00
Vincent Koc
735f176b01
fix(protocol): preserve gateway session attribution across node runs
2026-08-07 08:06:01 +08:00
openclaw-mantis[bot]
d5668d83c0
chore(i18n): refresh native locales ( #119669 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-08-06 20:08:30 +08:00
WhatsSkiLL
238c8bfc23
fix(android): show active session status in sidebar ( #118624 )
2026-08-05 11:55:10 -04:00
Peter Steinberger
4511c9b71f
refactor(android): remove obsolete chat rendering paths ( #119615 )
2026-08-05 08:17:04 -07:00
Josh Avant
618fba92bf
feat(audit): add execution identity inspection ( #117034 )
...
* feat(audit): add opt-in execution identity inspection
* fix(audit): gate recovery identity retention
* fix(audit): keep recovery identity type private
* test(audit): type internal recovery fixture
* test(audit): split recovery identity coverage
* docs(audit): define operator read trust boundary
* test(qa): register identity scenario child
* fix(audit): enforce shared identity retention bounds
* fix(audit): seal public ingress identity boundary
* fix(audit): keep ingress guard lint-clean
* fix(gateway): preserve advertised method order
* chore(protocol): sync advertised method order
* fix(protocol): encode audit selector invariants
* test(audit): prove exact execution guard
* fix(audit): keep identity storage lazy
2026-08-04 20:05:15 -05:00
openclaw-mantis[bot]
7f9994d4f9
chore(i18n): refresh native locales ( #118883 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-08-04 05:07:27 +08:00
joshavant
1f78c39bd8
fix: adapt completion delivery to current main
2026-08-03 02:48:34 -05:00
Peter Steinberger
c49b68328e
test(android): consolidate Wear bridge fixtures ( #118559 )
2026-08-03 00:42:43 -07:00
Peter Steinberger
4b3d0b37be
test(android): consolidate connection TLS fixtures ( #118532 )
2026-08-02 23:29:37 -07:00
Peter Steinberger
d2ff210679
test(android): compact chat persistence fixtures ( #118456 )
2026-08-02 21:51:33 -07:00
Peter Steinberger
39c506bbf2
test(android): compact onboarding gateway fixtures ( #118383 )
2026-08-02 20:09:31 -07:00
Peter Steinberger
1d2fc98bf4
test(android): reduce voice fixture duplication ( #118270 )
2026-08-02 19:27:55 -07:00
Peter Steinberger
c43ba8e3fc
fix(cli): speed up hook status reads through the Gateway ( #118288 )
...
* perf(cli): reuse gateway hook status (#118222 )
* chore(protocol): register hooks.status schema module in generated surfaces
2026-08-02 17:21:28 -07:00
WhatsSkiLL
4c136a7dea
fix-android-sidebar-search-results ( #117981 )
...
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
2026-08-02 17:13:16 -07:00
Peter Steinberger
3ebb0ca3b6
chore(lint): resolve the 40 reserved baseline findings to a zero-noise lint:all ( #118256 )
...
* fix(lint): resolve reserved runtime findings
* chore(lint): scope intentional contract findings
* fix(android): preserve WebMessageListener bridge contract
2026-08-02 16:08:57 -07:00
Peter Steinberger
a1c2009b91
chore(android): stabilize branch coordination unit tests ( #118210 )
...
* test(android): stabilize branch coordination tests
* test(android): await outbox drain boundary
* test(android): isolate reconciliation drain fixture
2026-08-02 15:25:19 -07:00
Peter Steinberger
7c70571683
chore(lint): clear 172 lint:all baseline violations in five batches ( #118098 )
...
* chore(lint): clean Android-Linux app assets batch
* chore(lint): clean setup-launcher-plugin batch
* chore(lint): clean changelog-updater batch
* chore(lint): clean QA-runtime-helper batch
* chore(lint): clean script-tests batch
* fix(mxc): await sandbox spawn before bridge selection
* fix(test): make fake plutil metacharacter escaping survive the template hop
2026-08-02 14:08:09 -07:00
Peter Steinberger
860b4ee4a7
test(android): share Wear transport fixtures ( #118177 )
2026-08-02 14:01:28 -07:00
Peter Steinberger
1787cbb9de
test(android): compact chat recovery fixtures ( #118166 )
2026-08-02 13:21:29 -07:00
Peter Steinberger
aae0342f7c
test(android): consolidate gateway security fixtures ( #118165 )
2026-08-02 13:17:01 -07:00
Peter Steinberger
4e4959b283
refactor(android): consolidate chat controller test setup ( #117862 )
2026-08-01 23:06:51 -07:00
Vincent Koc
ff770f9a48
fix(i18n): sync pinned native translations ( #117726 )
2026-08-02 09:36:29 +08:00
WhatsSkiLL
2fc32204b4
fix(android): show pinned state in sidebar sessions ( #117063 )
...
* fix(android): show pinned state in sidebar sessions
* fix(ci): leave native locale refresh to workflow
---------
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
2026-08-01 16:16:49 -07:00
Peter Steinberger
e49c8339b8
refactor(android): simplify durable outbox test scenarios ( #117667 )
2026-08-01 15:45:02 -07:00
Peter Steinberger
9e43844264
build: generate native Canvas resources on demand ( #117424 )
2026-08-01 08:16:56 -07:00
WhatsSkiLL
f0170ca238
Android: collapse sidebar search behind header action ( #116956 )
...
* feat(android): collapse sidebar search
* test(android): cover sidebar search toggle
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
* chore(android): refresh sidebar i18n inventory
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
* test(android): restore sidebar test clock
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
* test(android): remove stateful sidebar UI test
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
---------
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-31 12:10:43 -07:00
Peter Steinberger
349cc33669
test(android): synchronize Wear channel transport close completion ( #116788 )
...
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-07-31 04:36:37 -07:00
Vincent Koc
20e68e01df
fix(gateway): sign device proofs with challenge time ( #116679 )
2026-07-31 16:45:53 +08:00
Vincent Koc
9309a4fce9
test(android): remove duplicate setup-code coverage ( #116658 )
2026-07-31 12:12:35 +08:00
Vincent Koc
88876f780b
fix(android): preserve device work across lifecycle changes ( #116593 )
...
* fix(android): use configured SDK for screenshot AVDs
* fix(android): keep chat jump control clear of messages
* fix(wear): ignore stale control completions
* fix(android): advertise node permission changes
* fix(android): select play flavor for benchmarks
* test(android): decouple cron benchmark from copy
* fix(android): install play variant in perf scripts
* fix(wear): clear gateway control busy state
* fix(android): surface voice e2e connection errors
* test(android): cover common live node commands
* fix(android): retain share parsing across recreation
* fix(android): retain permission requests across recreation
* fix(wear): bind realtime audio to talk attempts
* fix(android): track active permission host
* fix(wear): own gateway control busy state
* fix(wear): admit realtime channels by attempt
* fix(android): refresh permissions on top resume
* fix(wear): serialize reconnect retirement with writes
* chore(i18n): refresh native source inventory
* fix(wear): retain pending audio through start RPC
* fix(wear): negotiate realtime channel compatibility
* test(wear): assert reconnect outcome without owner churn
* fix(android): move settings prompt with active host
* fix(wear): reject stale relay starts
* chore(changelog): leave notes to release generation
2026-07-31 09:49:11 +08:00
openclaw-mantis[bot]
8c61044576
chore(i18n): refresh native locales ( #116567 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-31 08:29:26 +08:00
WhatsSkiLL
47f8c1d6b0
Android: add adaptive app navigation sidebar ( #113908 )
...
* feat(android): add adaptive navigation sidebar
* fix(android): satisfy native i18n checks
* fix(android): use adaptive Material navigation
* fix(android): preserve adaptive navigation state
* chore(i18n): refresh native source baseline
* fix(android): keep compact navigation labels on one line
* chore(android): refresh native i18n source lines
* fix(android): preserve sidebar gateway status
* fix(android): satisfy status label checks
---------
Co-authored-by: Colin <colin@solvely.net >
2026-07-30 17:27:45 -04:00
openclaw-mantis[bot]
81d165c612
chore(i18n): refresh native locales ( #116213 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-30 15:17:38 +08:00