Commit Graph

66965 Commits

Author SHA1 Message Date
Vincent Koc
ee17910f2a fix(cron): persist fast-mode session state (#105094) 2026-07-12 14:58:56 +08:00
Peter Steinberger
35abbb7d0f chore(apps): sync native i18n inventory 2026-07-11 23:57:56 -07:00
Peter Steinberger
bf13c3bb1b chore(apps): remove dead native code 2026-07-11 23:51:21 -07:00
chengzhichao-xydt
789e7e2e36 fix(security): preserve UTF-16 boundaries in secret mask (#104800)
Co-authored-by: chengzhichao-xydt <chengzhichao-xydt@users.noreply.github.com>
2026-07-12 07:50:46 +01:00
Galin Iliev
68dcfe633d fix(msteams): emit native cjs runtime entrypoints (#102366)
Co-authored-by: Galin Iliev <Galin.Iliev@microsoft.com>
2026-07-11 23:48:05 -07:00
Peter Steinberger
8d39c1baa5 test(ui): expect the Automations tab label on the agents page
#104251 renamed agents.tabs.cronJobs to Automations; aligns the stale
expectation that keeps main's checks-ui red.
2026-07-11 23:40:01 -07:00
Peter Steinberger
6921fb4ce7 refactor(ios): trim approval test fixtures (#105052) 2026-07-12 07:38:45 +01:00
Peter Steinberger
706377fe1a style(ui): format app-navigation.ts 2026-07-11 23:24:47 -07:00
destire-mio
f547e2bd85 fix(feishu): drive info finds files past the first page (#104190)
Co-authored-by: destire-mio <248462155+destire-mio@users.noreply.github.com>
2026-07-12 07:24:06 +01:00
Peter Steinberger
46355cbdcf fix(android): stop canceled work from surfacing failures (#105047)
* fix(android): propagate request cancellation

* chore: keep release notes in PR body
2026-07-12 07:22:27 +01:00
Peter Steinberger
ae3008c70a fix(ios): show unavailable Watch approval state 2026-07-11 23:19:37 -07:00
Vincent Koc
48bda3197b test(qa): validate debug request cursor 2026-07-12 08:18:34 +02:00
Vincent Koc
bdc9c6070d fix(qa): add stable mock request cursors 2026-07-12 08:18:34 +02:00
Peter Steinberger
0d84d691e5 test(ui): expect Automations as the default pinned sidebar route
#104251 pins cron by default; aligns the expectation added by the
Overview retirement (#104819) which asserted an empty default set.
2026-07-12 02:16:01 -04:00
Peter Steinberger
1e0c3e9ee9 build(android): refresh stable dependencies (#105037) 2026-07-12 07:13:17 +01:00
moguangyu5-design
0b140c3546 fix(telegram): rewrite allow-always alias for any whitespace separator (#104942)
* fix(telegram): rewrite allow-always alias for any whitespace separator

* fix(telegram): require absolute approval alias suffix

---------

Co-authored-by: moguangyu5-design <moguangyu5-design@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 07:13:05 +01:00
Peter Steinberger
cfe95266af feat(ui): redesign cron page as sidebar-first Automations master-detail (#104251)
Rebuilds the Control UI cron page as a sidebar-first Automations master-detail workspace: a task list pane (All/Active/Paused tabs, search, filter popover, curated emoji suggestion cards, scheduler footer) beside a detail pane that edits the selected task inline (prompt, row-style Details/Frequency groups, collapsible Advanced, per-task run history) and shows all-task recent activity when nothing is selected. Create & run now kicks a new task immediately after creation. The modal editor and quick-create wizard are retired; the automation-ideas catalog from #104761 is ported into the new suggestions list. Nav item renamed to Automations and pinned by default; route (/cron) and cron.* RPC contracts unchanged.

Closes #104217

Co-authored-by: Claude <noreply@anthropic.com>
2026-07-12 07:12:26 +01:00
Peter Steinberger
2a02ab6bbe refactor(apps): reuse Watch approval transport models (#105024)
* refactor(apps): reuse watch approval transport models

* fix(ios): satisfy exact identifier lint
2026-07-12 07:08:03 +01:00
Peter Steinberger
0086763ba4 feat(fleet): harden create, port allocation, drift visibility, and audit guidance (#104814) 2026-07-12 07:02:42 +01:00
soldforaloss
5459a94763 docs(browser): clarify JSON flag placement (#103155)
* docs(browser): clarify JSON flag placement

* docs(browser): align JSON flag examples

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 06:58:40 +01:00
llagy007
f6d11d0e29 fix(google-meet): guard node-host meet URLs (#104687) 2026-07-12 06:55:38 +01:00
Peter Steinberger
4b50658b76 feat(ui): make the working indicator an OpenClaw claw that pinches (#105020) 2026-07-12 06:54:10 +01:00
Vincent Koc
e680b3dbeb fix(tasks): fail closed on registry restore errors (#105031) 2026-07-12 13:50:28 +08:00
Shubhankar Tripathy
86cd9786c8 fix(google-meet): actually leave the Meet call in the browser on leave (#103386) (#103522)
* fix(google-meet): leave browser calls on session end

Co-authored-by: lonexreb <reach2shubhankar@gmail.com>

* fix(google-meet): keep agent browser control in gateway

* chore(google-meet): move release note to pr

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 06:50:13 +01:00
Vincent Koc
c8427919b9 refactor(acpx): remove redundant probe plumbing (#105023) 2026-07-12 13:49:32 +08:00
Vincent Koc
01b9c428aa chore(i18n): reconcile native locale inventory 2026-07-12 13:45:20 +08:00
Vincent Koc
78d142e84f fix(i18n): scan typed fallback copy 2026-07-12 13:45:20 +08:00
Vincent Koc
b3fb295e94 fix(i18n): preserve localized helper inventory 2026-07-12 13:45:20 +08:00
Vincent Koc
484c3a18b2 fix(i18n): validate native locale artifacts 2026-07-12 13:45:20 +08:00
Vincent Koc
9b5fbee3b0 fix(ui): localize usage views 2026-07-12 13:45:11 +08:00
Vincent Koc
77207c9784 fix(ui): localize channel and session views 2026-07-12 13:45:11 +08:00
Vincent Koc
27da133957 fix(ui): localize chat surfaces 2026-07-12 13:45:11 +08:00
Vincent Koc
0faeb8e9c3 fix(ui): localize cron and workboard controls 2026-07-12 13:45:11 +08:00
Vincent Koc
65f8e27900 fix(ui): localize plugins and skills 2026-07-12 13:45:11 +08:00
Vincent Koc
ca5195418b fix(ui): localize configuration and node controls 2026-07-12 13:45:11 +08:00
Vincent Koc
b9f6cae6bc fix(ui): localize agent controls 2026-07-12 13:45:11 +08:00
Vincent Koc
eb4e3b2472 fix(ui): localize shared preview controls 2026-07-12 13:45:11 +08:00
Vincent Koc
c90ca4e968 fix(ui): add remaining localization source copy 2026-07-12 13:45:11 +08:00
Peter Steinberger
05e95b7b45 fix: hide external files from the session workspace rail (#105015)
* fix(ui): hide external files from workspace rail

Co-authored-by: 赵旺0668001248 <zhao.wang1@xydigit.com>

* chore: leave release notes to release workflow

---------

Co-authored-by: 赵旺0668001248 <zhao.wang1@xydigit.com>
2026-07-12 06:42:49 +01:00
Ayaan Zaidi
47ce757c0f fix(auto-reply): adopt the target run slot when command turns continue into agent turns
Native command turns keep #104144 source-keyed admission, but a turn that
continues into a full agent turn (/steer fallback, /goal, /learn, unhandled
body) now moves its reservation and lifecycle lease to the target session
before running. Concurrent target inbounds see the owner and queue/steer
instead of double-admitting and splitting the session into two conversation
families; steering also targets the registered run owner instead of a stale
source-keyed reservation.

Fixes #104844
2026-07-12 11:12:04 +05:30
pick-cat
3c7edce61e fix(codex): preserve UTF-16 pairs in tool output delta truncation (#104116)
* fix(codex): preserve UTF-16 pairs in tool output delta truncation

* chore: trigger CI re-run

* test(codex): add UTF-16 safety regression test for progress message cap

* chore: trigger CI re-run

Co-Authored-By: Claude <noreply@anthropic.com>

* test(codex): tighten UTF-16 progress regression

* test(codex): match progress label

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 06:40:48 +01:00
thomas.szbay
4dfffeb4ce fix(infra): bound ed25519 base64url decode input length (#104921) 2026-07-12 06:39:35 +01:00
Vincent Koc
8f8b44a3ce fix(qa): isolate plugin tools MCP smoke 2026-07-12 07:37:47 +02:00
Peter Steinberger
d14bb8ec44 fix: resume replay-safe work after gateway restarts (#104997)
* fix: resume replay-safe work after gateway restart

* chore: leave restart note to release process

* fix: sync restart recovery protocol artifacts
2026-07-12 06:37:22 +01:00
Peter Steinberger
096cb91175 feat(tooling): enforce noUncheckedIndexedAccess in core and ui lanes (NUIA phase 3c) (#104981)
* fix(ui): make indexed access explicit across the Control UI

Burns down all 322 ui-lane noUncheckedIndexedAccess errors: untrusted
markdown/diff/patch parsing gets miss-tolerant guards (renderer rules
degrade to empty output instead of throwing mid-render), accumulators
use canonical sparse initialization, DOM lookups stay null-guarded, and
length-checked constructions carry named invariants.

* feat(tooling): enforce noUncheckedIndexedAccess in the core and ui lanes

Flips the flag on for tsconfig.core.json and tsconfig.ui.json (covering
src, all packages including the two deferred ones, and ui) and retires
the strict-ratchet lane wholesale: config, script, projects reference,
check/CI wiring, changed-lane routing, and sync test. The assertion-ban
oxlint override stays as an independent surface.
2026-07-12 06:36:36 +01:00
Peter Steinberger
a40e43e46e feat(mac): redesign the menu bar critter to match the mascot (#104846)
* feat(mac): redesign menu bar critter to match the mascot

* fix(mac): draw happy-eye arcs upward and guard stale celebration expiry

* docs(mac): update menu bar icon states for critter redesign

* fix(mac): own celebration expiry with a start-only generation counter

* fix(mac): give voice-wake antennae real headroom at 18pt
2026-07-12 06:35:02 +01:00
Peter Steinberger
176647aa84 ci: gate frozen QA smoke by capability (#105006) 2026-07-12 06:32:26 +01:00
dependabot[bot]
33da64c5d0 build(deps): bump the android-deps group across 1 directory with 4 updates (#104807)
Bumps the android-deps group with 4 updates in the /apps/android directory: [gradle-wrapper](https://github.com/gradle/gradle), [io.kotest:kotest-assertions-core-jvm](https://github.com/kotest/kotest), [io.kotest:kotest-runner-junit5-jvm](https://github.com/kotest/kotest) and [com.google.devtools.ksp](https://github.com/google/ksp).


Updates `gradle-wrapper` from 9.4.1 to 9.6.1
- [Release notes](https://github.com/gradle/gradle/releases)
- [Commits](https://github.com/gradle/gradle/compare/v9.4.1...v9.6.1)

Updates `io.kotest:kotest-assertions-core-jvm` from 6.2.1 to 6.2.2
- [Release notes](https://github.com/kotest/kotest/releases)
- [Commits](https://github.com/kotest/kotest/compare/6.2.1...6.2.2)

Updates `io.kotest:kotest-runner-junit5-jvm` from 6.2.1 to 6.2.2
- [Release notes](https://github.com/kotest/kotest/releases)
- [Commits](https://github.com/kotest/kotest/compare/6.2.1...6.2.2)

Updates `io.kotest:kotest-runner-junit5-jvm` from 6.2.1 to 6.2.2
- [Release notes](https://github.com/kotest/kotest/releases)
- [Commits](https://github.com/kotest/kotest/compare/6.2.1...6.2.2)

Updates `com.google.devtools.ksp` from 2.3.9 to 2.3.10
- [Release notes](https://github.com/google/ksp/releases)
- [Commits](https://github.com/google/ksp/compare/2.3.9...2.3.10)

---
updated-dependencies:
- dependency-name: gradle-wrapper
  dependency-version: 9.6.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: android-deps
- dependency-name: io.kotest:kotest-assertions-core-jvm
  dependency-version: 6.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: android-deps
- dependency-name: io.kotest:kotest-runner-junit5-jvm
  dependency-version: 6.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: android-deps
- dependency-name: io.kotest:kotest-runner-junit5-jvm
  dependency-version: 6.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: android-deps
- dependency-name: com.google.devtools.ksp
  dependency-version: 2.3.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: android-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-12 06:30:17 +01:00
Peter Steinberger
23d4e48172 fix: harden live updater snapshot recovery (#105007)
* fix(updater): harden snapshot recovery

* fix(updater): avoid snapshot code execution
2026-07-12 06:29:41 +01:00
thomas.szbay
a9e2b06812 fix(nextcloud-talk): align supported message actions (#104906)
Nextcloud Talk's supportsAction advertised support for all non-send
actions (including delete, pin, edit, read), but the handler only
implements 'react'. Unsupported actions passed the dispatcher boundary
check only to fail inside the handler.

This aligns supportsAction with actual implementation, matching the
pattern from PR #104788 (Signal adapter fix).
2026-07-12 06:28:07 +01:00