Commit Graph

3062 Commits

Author SHA1 Message Date
github-actions[bot]
e23f3a859c chore(ui): refresh vi control ui locale 2026-05-04 07:18:15 +00:00
github-actions[bot]
573ecd8660 chore(ui): refresh th control ui locale 2026-05-04 07:18:03 +00:00
github-actions[bot]
17c05bbb21 chore(ui): refresh pl control ui locale 2026-05-04 07:17:55 +00:00
github-actions[bot]
b171f6e081 chore(ui): refresh id control ui locale 2026-05-04 07:17:50 +00:00
github-actions[bot]
92a00ebef5 chore(ui): refresh uk control ui locale 2026-05-04 07:17:00 +00:00
github-actions[bot]
54f243d696 chore(ui): refresh tr control ui locale 2026-05-04 07:16:52 +00:00
github-actions[bot]
49ab43477e chore(ui): refresh it control ui locale 2026-05-04 07:16:45 +00:00
github-actions[bot]
42abef0afb chore(ui): refresh ar control ui locale 2026-05-04 07:16:39 +00:00
github-actions[bot]
85e9af7767 chore(ui): refresh ko control ui locale 2026-05-04 07:15:44 +00:00
github-actions[bot]
dbde49f44e chore(ui): refresh fr control ui locale 2026-05-04 07:15:39 +00:00
github-actions[bot]
7c38f0997f chore(ui): refresh ja-JP control ui locale 2026-05-04 07:15:35 +00:00
github-actions[bot]
1cbe32ef23 chore(ui): refresh es control ui locale 2026-05-04 07:15:26 +00:00
github-actions[bot]
1621d9f27d chore(ui): refresh pt-BR control ui locale 2026-05-04 07:14:27 +00:00
github-actions[bot]
6e9c0bfbe4 chore(ui): refresh zh-TW control ui locale 2026-05-04 07:14:23 +00:00
github-actions[bot]
0dd1b11e83 chore(ui): refresh zh-CN control ui locale 2026-05-04 07:14:21 +00:00
github-actions[bot]
f409b093fd chore(ui): refresh de control ui locale 2026-05-04 07:14:19 +00:00
Val Alexander
a5dcf3d300 fix(control-ui): filter archived sessions (#77132)
Summary:
- Use sessions.list as the Control UI source of truth for available sessions.
- Hide archived sessions by default and keep the Sessions filter UI explicit, compact, and reversible.
- Preserve session-change behavior, checkpoint details, generated i18n output, and chat/session picker consistency.

Validation:
- pnpm ui:i18n:check
- pnpm test ui/src/styles/components.test.ts ui/src/ui/views/sessions.test.ts ui/src/ui/app-render.helpers.node.test.ts
- pnpm test ui/src/ui/controllers/sessions.test.ts ui/src/ui/app-gateway.sessions.node.test.ts ui/src/ui/views/sessions.test.ts ui/src/styles/components.test.ts ui/src/ui/app-render.helpers.node.test.ts
- pnpm tsgo:test:ui
- Blacksmith Testbox: pnpm check:changed -- <PR paths>
2026-05-04 02:12:16 -05:00
Val Alexander
5fe8cde28f feat(ui): show active agent in dashboard header
Show the active agent name in the Control UI dashboard breadcrumb without adding the current session key/name.

Verification:
- pnpm test ui/src/ui/app-render.helpers.node.test.ts
- node scripts/run-oxlint.mjs --tsconfig config/tsconfig/oxlint.core.json ui/src/ui/components/dashboard-header.ts ui/src/ui/app-render.helpers.ts ui/src/ui/app-render.ts ui/src/ui/app-render.helpers.node.test.ts
- git diff --check
- Testbox pnpm check:changed
2026-05-04 02:09:52 -05:00
Peter Steinberger
826786b114 feat: add control UI responsiveness diagnostics 2026-05-04 08:04:18 +01:00
Peter Steinberger
fa689295c6 fix: resolve small triage issues 2026-05-04 07:38:42 +01:00
Zander
8412b189df ui(chat): remove unsupported line-clamp declaration
Remove the unsupported unprefixed line-clamp CSS declaration from the chat queue text rule while keeping the existing -webkit-line-clamp truncation behavior.\n\nValidation:\n- git diff --check origin/main...HEAD\n- pnpm exec oxfmt --check --threads=1 CHANGELOG.md ui/src/styles/components.css\n- pnpm check:changelog-attributions\n- Testbox: OPENCLAW_TESTBOX=1 pnpm check:changed\n\nCI note: exact-SHA CI failed in unrelated plugin loader/plugin SDK jobs outside this PR's touched files.
2026-05-04 01:28:14 -05:00
Peter Steinberger
a9d77b3eb0 fix: scope Control UI assistant media tickets 2026-05-04 06:49:28 +01:00
Peter Steinberger
a4df85e55f fix(ui): render text-block tool results 2026-05-04 04:26:19 +01:00
Peter Steinberger
6f8b9bb573 fix(ui): render dream diary markdown 2026-05-04 04:26:19 +01:00
Peter Steinberger
143db94701 fix(ui): update tweakcn appearance link 2026-05-04 04:26:19 +01:00
Peter Steinberger
0872b505b0 fix(cron): clarify no-delivery previews 2026-05-03 22:49:31 +01:00
Jack Storment
bdd68a75ea fix(doctor): repair configured missing plugins
Fixes #76872.

Doctor now repairs configured-but-missing official plugins during update/doctor recovery, auto-enables the plugin after a successful repair, and preserves config when the download cannot complete. The plugin auto-enable path also honors disabled web search and only enables configured providers/channels when a manifest declares the matching capability.

Verification:
- git diff --check
- fallback-only Korean i18n check
- focused plugin auto-enable/config/doctor Vitest suite
- Crabbox published upgrade-survivor configured-plugin-installs E2E
- CI green on PR head 67ba8ac002

Co-authored-by: Jack Storment <crazycoder131@gmail.com>
2026-05-03 22:44:21 +01:00
github-actions[bot]
4b66a1f7f8 chore(ui): refresh ko control ui locale 2026-05-03 19:06:53 +00:00
Marvinthebored
a64b30705f fix(usage): serve usage from durable transcript aggregate cache
Serve usage.cost and sessions.usage from a durable transcript aggregate cache with guarded refreshes, cache-status UI localization, and regression coverage. Thanks @Marvinthebored.
2026-05-03 20:04:26 +01:00
Peter Steinberger
2805bbd3d7 feat(commands): add side alias for btw 2026-05-03 18:22:20 +01:00
VACInc
a0e526c163 fix(ui): avoid session list reloads for chat turns 2026-05-03 16:08:35 +01:00
Peter Steinberger
6aa4fb7a69 test(ui): cover deferred skills dialog opening 2026-05-03 15:23:18 +01:00
Nickmopen
e8227fd7b3 fix(ui): defer showModal until dialog is connected to DOM 2026-05-03 15:23:18 +01:00
Peter Steinberger
73be4ea901 ci: fix full release validation gates 2026-05-03 13:01:14 +01:00
Alex Knight
8a0e3b6422 test(ui): clean up navigation teardown (#76625) 2026-05-03 21:41:08 +10:00
Alex Knight
54a81e0080 fix: expose session-specific thinking levels (#76548)
* fix: expose session-specific thinking levels (#76482)

* fix: preserve lightweight sessions.list contract, fix consumer-side fallbacks only

* fix: include thinking levels in lightweight session rows for Control UI (#76482)

The Control UI cannot resolve provider-specific thinking levels client-side
(ui/src/ui/thinking.ts always returns base 5 levels). The gateway must
provide them even in lightweight rows. listThinkingLevelOptions is a cheap
in-memory lookup — negligible perf impact vs the transcript/cost/model ops
that the lightweight flag still skips.

Also update existing test assertions that expected thinkingOptions: [] for
lightweight rows (flagged by ClawSweeper review).

* test: add e2e regression tests for thinking level pipeline (#76482)
2026-05-03 21:38:32 +10:00
Vincent Koc
d69d610bf0 fix(ui): guard app custom element registration 2026-05-02 22:40:00 -07:00
Val Alexander
2810f1219a fix(ui): surface compaction checkpoints in chat history
Fixes #76415.

- Explains compacted history boundaries in WebChat.
- Adds an Open checkpoints action for pre-compaction recovery.
- Updates WebChat docs and changelog with Thanks @BunsDev.
- Validated targeted UI tests, formatting/diff checks, Testbox changed gate, and exact-head CI.

Security: UI/docs/tests/styles-only change that reuses existing checkpoint APIs; no new dependencies, filesystem reads, workflow changes, or secret handling.
2026-05-02 23:29:28 -05:00
clawsweeper[bot]
cb31616d88 fix(ui): clean up delete confirm popover listener (#76318)
Summary:
- The PR centralizes Control UI chat delete-confirm popover dismissal, adds listener-cleanup regression coverage and unit-UI test routing fixes, and records the fix in the changelog.
- Reproducibility: yes. Current-main source shows a high-confidence path: open the delete confirm, let `reques ... ncel, Delete, or same-button toggle; those paths remove the popover without removing the document listener.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(ui): clean up delete confirm popover listener
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): address review for automerge-openclaw-openclaw-7559…
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): reconcile automerge-openclaw-openclaw-75590 with ma…
- PR branch already contained follow-up commit before automerge: fix(ui): repair delete confirm listener cleanup checks

Validation:
- ClawSweeper review passed for head 62240d8153.
- Required merge gates passed before the squash merge.

Prepared head SHA: 62240d8153
Review: https://github.com/openclaw/openclaw/pull/76318#issuecomment-4364990281

Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: Ricardo-M-L <69202550+Ricardo-M-L@users.noreply.github.com>
2026-05-03 02:21:10 +00:00
Val Alexander
05c9492bff fix: reduce WebUI session latency churn (#76277) thanks @BunsDev
Reduce WebUI/Gateway latency churn by avoiding redundant session reloads, carrying session keys through transcript update events, and deferring explicit media provider discovery. Includes changelog attribution and closes the referenced runtime latency issues.
2026-05-02 18:39:06 -05:00
Peter Steinberger
68359cacbf feat(webchat): add server-side dictation (#76021)
Summary:
- This PR adds WebChat server-side dictation through a new authenticated `chat.transcribeAudio` Gateway RPC, MediaRecorder composer controls, docs/changelog updates, and focused gateway/UI tests.
- Reproducibility: yes. Current main reproduces the missing feature by inspection: the Gateway method list, write scopes, docs, and WebChat voice-control test have no `chat.transcribeAudio` server-dictation path.

ClawSweeper fixups:
- Included follow-up commit: feat(webchat): add server-side dictation
- Included follow-up commit: fix(clawsweeper): address review for automerge-openclaw-openclaw-7602…

Validation:
- ClawSweeper review passed for head 850571380a.
- Required merge gates passed before the squash merge.

Prepared head SHA: 850571380a
Review: https://github.com/openclaw/openclaw/pull/76021#issuecomment-4363514226

Co-authored-by: Peter Steinberger <steipete@gmail.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-02 23:09:23 +00:00
Peter Steinberger
cb9a97f211 test(ui): update home-relative media expectation 2026-05-02 22:30:03 +01:00
Val Alexander
4532e5d858 fix(control-ui): preserve Stop after reconnect
Fixes #70991.

Adds authenticated Gateway WebSocket protocol pings, exposes active session-run state to Control UI, and keeps session-scoped Stop available after reconnect or reload when the browser lost the local run id.

Validation:
- pnpm test ui/src/ui/app-chat.test.ts ui/src/ui/app-gateway.node.test.ts src/gateway/server.sessions.list-changed.test.ts src/gateway/server/ws-connection.test.ts
- OPENCLAW_LOCAL_CHECK=1 OPENCLAW_LOCAL_CHECK_MODE=throttled pnpm check:changed
- GitHub CI and high-signal security checks passed on head 1f4c8728c8
2026-05-02 10:41:27 -05:00
Val Alexander
aaa19fb9f3 fix(ui): tolerate malformed cron payloads
Fix Control UI blank sections caused by malformed persisted cron rows.

- filter invalid cron payloads at the cron.list UI boundary
- guard stale cron payload reads in render, edit, and detail paths
- add regression coverage for malformed cron rows from #55047 and #54439

Closes #55047.
Closes #54439.
Supersedes #54550.
Supersedes #54552.
2026-05-02 10:37:53 -05:00
Val Alexander
5fce2f6b0f fix(control-ui): allow configured chat message width
Adds validated gateway.controlUi.chatMessageMaxWidth support for grouped Control UI chat messages, carries it through the Gateway bootstrap payload into UI state, applies it as a CSS custom property, and documents the setting while preserving the existing default width.

Fixes #67935.

Validation:
- Targeted config, gateway, and Control UI tests passed locally.
- Config schema/docs checks passed.
- Testbox changed-file gate passed.
- GitHub CI and security checks are green on cea25a4ca9.
2026-05-02 10:18:08 -05:00
Peter Steinberger
2b37b383ed fix(sessions): keep list polling lightweight (#76090)
Co-authored-by: rolandrscheel <20336324+rolandrscheel@users.noreply.github.com>
2026-05-02 15:45:38 +01:00
Cedric
98bd987a0a fix(control-ui): bound default sessions query 2026-05-02 15:20:24 +01:00
Val Alexander
d919281fa8 fix(control-ui): improve text selection contrast
Use dedicated high-contrast selection tokens for Control UI/WebChat text selection and add the user-facing changelog entry.\n\nFixes #60850.\nSupersedes #60854.
2026-05-02 07:56:08 -05:00
Kevin
d22da87126 fix: contain iOS standalone viewport (#76072)
Contain the Control UI document in iOS Add-to-Home-Screen standalone mode by enabling viewport-fit=cover, applying safe-area-aware body locking, and constraining the app root so inner panes own scrolling.

Thanks @kvncrw.
2026-05-02 13:46:41 +01:00
Peter Steinberger
e62608beaa fix(release): keep discord core package files 2026-05-02 12:36:07 +01:00