Peter Steinberger
693f61404d
refactor(shared): centralize assistant identity and usage timeseries types
2026-03-02 14:36:41 +00:00
Rain120
6ea6aca5bd
fix(ui): the header has been hidden by content in the config page
2026-03-02 07:52:26 -06:00
Tak Hoffman
254bb7ceee
ui(cron): add advanced controls for run-if-due and routing ( #31244 )
...
* ui(cron): add advanced run controls and routing fields
* ui(cron): gate delivery account id to announce mode
* ui(cron): allow clearing delivery account id in editor
* cron: persist payload lightContext updates
* tests(cron): fix payload lightContext assertion typing
2026-03-02 07:24:33 -06:00
Peter Steinberger
d85d3c88d5
refactor(agents): centralize tool display definitions
2026-03-02 12:13:45 +00:00
Peter Steinberger
c1a46301b6
fix(ci): align strict nullable typing across channels and ui
2026-03-02 09:56:14 +00:00
Peter Steinberger
e427826fcf
refactor(ui): dedupe state, views, and usage helpers
2026-03-02 08:54:20 +00:00
Peter Steinberger
1c0d36eed0
fix(ci): resolve i18n typing and generated-policy drift
2026-03-02 04:29:18 +00:00
Peter Steinberger
e1f3ded033
refactor: split telegram delivery and unify media/frontmatter/i18n pipelines
2026-03-02 04:14:06 +00:00
Peter Steinberger
684ac44b71
fix(ui): land #31133 cron edit form viewport scrolling (@Sid-Qin)
...
Landed from contributor PR #31133 by @Sid-Qin.
Co-authored-by: Sid-Qin <Sid-Qin@users.noreply.github.com >
2026-03-02 02:34:43 +00:00
Peter Steinberger
8eac33d4e0
fix(ui): land #30978 debug event log full-width payloads (@stozo04)
...
Landed from contributor PR #30978 by @stozo04.
Co-authored-by: stozo04 <stozo04@users.noreply.github.com >
2026-03-02 02:32:18 +00:00
Peter Steinberger
5850045df6
fix(cron): land #31145 explicit delivery none in editor (@byungsker)
...
Landed from contributor PR #31145 by @byungsker.
Co-authored-by: byungsker <byungsker@users.noreply.github.com >
2026-03-02 02:29:42 +00:00
Mark L
9670ccfc41
Control UI/Cron: persist delivery mode none on edit (openclaw#31114) thanks @liuxiaopai-ai
...
Verified:
- pnpm build
- pnpm check
- pnpm test:macmini
Co-authored-by: liuxiaopai-ai <73659136+liuxiaopai-ai@users.noreply.github.com >
Co-authored-by: Takhoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-01 19:58:13 -06:00
Ben Gitter
5d7314db22
fix(control-ui): include basePath in default WebSocket URL ( #30228 )
...
Merged via squash.
Prepared head SHA: a56d8d441c
Co-authored-by: gittb <8284364+gittb@users.noreply.github.com >
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Reviewed-by: @velvet-shark
2026-03-01 21:01:43 +01:00
Onur
18033d3962
Cron+Slack: fix cooldown omission and cache cap enforcement
2026-03-01 20:39:24 +01:00
Xu Gu
e3ba59dc71
Control UI: add cron jobs schedule/status filters with reset ( #9510 )
...
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-01 08:49:11 -06:00
Ian Derrington
266d320062
feat(ui): add hide-cron toggle to chat session selector ( #26976 )
...
* feat(ui): add hide-cron toggle to chat session selector
Adds a clock icon toggle button in the chat controls bar that filters
cron sessions out of the session dropdown. Default: hidden (true).
Why: cron sessions (key prefix `cron:`) accumulate fast — a job running
every 15 min produces 48 entries/day. They pollute the session selector
on small screens and devices like the Rabbit R1.
Changes:
- app-render.helpers.ts
- isCronSessionKey() — exported helper (exported for tests)
- countHiddenCronSessions() — counts filterable crons, skips active key
- resolveSessionOptions() — new hideCron param; skips cron: keys
unless that key is the currently active session (never drop it)
- renderCronFilterIcon() — clock SVG with optional badge count
- renderChatControls() — reads state.sessionsHideCron (default true),
passes hideCron to resolveSessionOptions, adds toggle button at the
end of the controls bar showing hidden count as a badge
- app-view-state.ts — adds sessionsHideCron: boolean to AppViewState
- app.ts — @state() sessionsHideCron = true (persists across re-renders)
- app-render.helpers.node.test.ts — tests for isCronSessionKey
* fix(ui): harden cron session filtering and i18n labels
---------
Co-authored-by: FLUX <flux@openclaw.ai >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-01 08:24:14 -06:00
0xbrak
4637b90c07
feat(cron): configurable failure alerts for repeated job errors (openclaw#24789) thanks @0xbrak
...
Verified:
- pnpm install --frozen-lockfile
- pnpm check
- pnpm test -- --run src/cron/service.failure-alert.test.ts src/cli/cron-cli.test.ts src/gateway/protocol/cron-validators.test.ts
Co-authored-by: 0xbrak <181251288+0xbrak@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-01 08:18:15 -06:00
BUGKillerKing
8c98cf05b2
i18n: add zh-CN for cron page and validation errors ( #29315 )
...
* i18n: add zh-CN for cron page and validation errors
* cron: treat unexpected delivery statuses as unknown
* test(cron): align validation tests with i18n keys
---------
Co-authored-by: 周鹤0668001310 <zhou.he3@xydigit.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-01 08:05:51 -06:00
Sid
f107347608
fix(ui-cron): include configured model suggestions for scheduled jobs (openclaw#29709) thanks @Sid-Qin
...
Verified:
- pnpm install --frozen-lockfile
- pnpm build
- pnpm check
- pnpm test:macmini
Co-authored-by: Sid-Qin <201593046+Sid-Qin@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-03-01 07:31:47 -06:00
Vignesh Natarajan
e90429794a
Web UI: strip relevant-memories scaffolding
2026-02-28 13:20:50 -08:00
Daniel Reis
84a88b2ace
feat(i18n): add German (de) locale ( #28495 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: e418326aaf
Co-authored-by: dsantoreis <220753637+dsantoreis@users.noreply.github.com >
Co-authored-by: Evizero <10854026+Evizero@users.noreply.github.com >
Reviewed-by: @Evizero
2026-02-27 11:44:09 +01:00
Philipp Spiess
35e40f1139
ui: remove Google Fonts import blocked by CSP (style-src 'self' 'unsafe-inline'); fonts never loaded; closes #28038
2026-02-27 01:44:41 +01:00
Peter Steinberger
cb917b7f05
chore: silence onboard warning noise
2026-02-26 22:47:35 +01:00
Junyi
7b4fe6d9bc
style(chat): UI: add mobile layout for chat compose actions
...
- Stack chat compose row vertically on mobile (max-width: 640px)
- Change action buttons to vertical layout with full width
- Improve mobile UX for send and session control buttons
2026-02-26 08:03:57 +05:30
Peter Steinberger
4d89548e59
fix(ui): inherit default model fallbacks in agents overview ( #25729 )
...
Land PR #25729 from @Suko.
Use shared fallback-resolution helper and add regression coverage for default, override, and explicit-empty cases.
Co-authored-by: suko <miha.sukic@gmail.com >
2026-02-25 01:28:17 +00:00
Shakker
30cb849b10
test(ui): reject base64 SVG data URLs
2026-02-24 22:28:58 +00:00
Shakker
e9750104b2
ui: block svg data image opens and harden tests
2026-02-24 22:28:58 +00:00
Ayaan Zaidi
00de3ca833
fix: widen external link rel token set type
2026-02-24 22:15:42 +05:30
Peter Steinberger
6c5ab543c0
refactor: tighten external-link policy and window.open guard
2026-02-24 15:05:31 +00:00
Peter Steinberger
fb8edebc32
fix(ui): stabilize chat-image open browser test and changelog
2026-02-24 14:48:10 +00:00
Shakker
e5836283ab
ui: centralize safe external URL opening
2026-02-24 14:48:10 +00:00
Shakker
ebb5680893
ui(chat): allowlist image open URLs
2026-02-24 14:48:10 +00:00
Mariana Sinisterra
649d141527
fix(ui): prevent tabnabbing in chat images ( #18685 )
...
* UI: prevent tabnabbing in chat images
* ui: remove comment from image open helper
---------
Co-authored-by: Shakker <shakkerdroid@gmail.com >
2026-02-24 12:56:08 +00:00
Peter Steinberger
fd24b35449
fix: cover startup locale hydration path ( #24795 ) (thanks @chilu18)
2026-02-24 03:51:58 +00:00
chilu18
053b0df7d4
fix(ui): load saved locale on startup
2026-02-24 03:51:58 +00:00
Gustavo Madeira Santana
28377e1b7a
UI: add version status pill before Health in web header ( #24648 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: f240589d33
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-23 12:27:17 -05:00
Tak Hoffman
9e1a13bf4c
Gateway/UI: data-driven agents tools catalog with provenance (openclaw#24199) thanks @Takhoffman
...
Verified:
- pnpm install --frozen-lockfile
- pnpm build
- gh pr checks 24199 --watch --fail-fast
Co-authored-by: Takhoffman <781889+Takhoffman@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-02-22 23:55:59 -06:00
Tak Hoffman
77c3b142a9
Web UI: add full cron edit parity, all-jobs run history, and compact filters (openclaw#24155) thanks @Takhoffman
...
Verified:
- pnpm install --frozen-lockfile
- pnpm build
- pnpm check
- pnpm test:macmini
Co-authored-by: Takhoffman <781889+Takhoffman@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-02-22 23:05:42 -06:00
Peter Steinberger
427b4360b9
build: update deps and stabilize tests
2026-02-22 23:32:38 +01:00
Tak Hoffman
f8171ffcdc
Config UI: tag filters and complete schema help/labels coverage ( #23796 )
...
* Config UI: add tag filters and complete schema help/labels
* Config UI: finalize tags/help polish and unblock test suite
* Protocol: regenerate Swift gateway models
2026-02-22 15:17:07 -06:00
Peter Steinberger
382785c6ce
refactor(webchat): extract shared chat state helpers
2026-02-22 21:37:19 +01:00
Peter Steinberger
d574056761
fix(control-ui): send stable websocket instance IDs ( #23616 )
...
Co-authored-by: zq58855371-ui <248869919+zq58855371-ui@users.noreply.github.com >
2026-02-22 21:37:19 +01:00
Peter Steinberger
dc6afeb4f8
perf(webchat): skip unnecessary full history reloads on final events ( #20588 )
...
Co-authored-by: amzzzzzzz <154392693+amzzzzzzz@users.noreply.github.com >
2026-02-22 21:37:19 +01:00
Peter Steinberger
f2e9986813
fix(webchat): append out-of-band final payloads in active chat ( #11139 )
...
Co-authored-by: AkshayNavle <110360+AkshayNavle@users.noreply.github.com >
2026-02-22 21:37:19 +01:00
Peter Steinberger
8264d4521b
fix(webchat): render final assistant payloads without history wait ( #14928 )
...
Co-authored-by: BradGroux <3053586+BradGroux@users.noreply.github.com >
2026-02-22 21:37:19 +01:00
Peter Steinberger
02dc0c8752
fix(control-ui): stop websocket client on lifecycle teardown ( #23422 )
...
Co-authored-by: floatinggball-design <262259579+floatinggball-design@users.noreply.github.com >
2026-02-22 21:37:19 +01:00
Peter Steinberger
078e1a7fc9
fix(ui): remove unused Lit import in overview view
2026-02-22 20:32:52 +01:00
Peter Steinberger
bbdfba5694
fix: harden connect auth flow and exec policy diagnostics
2026-02-22 20:22:00 +01:00
Val Alexander
42b3c52350
fix(ui): ensure nonce is always a string in gateway connect
2026-02-22 13:04:28 -06:00
Val Alexander
6298698008
revert(ui): remove UI portions of mixed commits from main
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-02-22 13:01:22 -06:00