Commit Graph

41101 Commits

Author SHA1 Message Date
Kevin Lin
89db1e5440 feat(cron): surface run diagnostics in status (#75928)
* feat(cron): surface run diagnostics in status

* docs: add cron diagnostics changelog

* fix(cron): preserve latest run diagnostics

* test(cron): update diagnostics regression deps
2026-05-04 07:05:28 -07:00
Eva
8afc9ef73c [plugin sdk] Harden finalize retry and run context cleanup (#75600)
Merged via squash.

Prepared head SHA: ec58a6212b
Co-authored-by: 100yenadmin <239388517+100yenadmin@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-05-04 07:04:22 -07:00
Val Alexander
042d7b8823 fix(telegram): clean up tool-only previews 2026-05-04 08:55:41 -05:00
Dallin Romney
fc1f1f4fdf fix(tui): preserve code spans, code blocks, and dotted/hyphenated identifiers from long-token sanitizer (#77335)
The display sanitizer's long-token chunker (`\S{33,}` -> 32-char chunks
joined by spaces) was injecting literal spaces inside inline code spans,
fenced code blocks, and bare identifiers it didn't recognize. Tokens like
`requireConfirmationForMutatingActions`, `ubuntu-budgie-desktop-environment`,
and `binary_sensor.sense_energy_monitor_power` rendered with mid-word
spaces, contaminating copy/paste of package names, entity IDs, and shell
line-continuations.

Fix:

- Make sanitizer code-aware: split text into fenced/inline-code segments
  and prose, and only run the chunker on prose segments. Code regions
  pass through verbatim.
- Widen `isCopySensitiveToken` to use the punctuation-stripped candidate
  for all classification, and accept any `FILE_LIKE_RE` token that
  contains `_`, `-`, or `.` (covers package names, dotted IDs, kebab
  flags). Picks up the goals of #69340 and #39565.
- Skip chunking for symbol-only runs (box-drawing rows, dashes, equals)
  so table borders aren't corrupted.
- Preserve the original goal of narrow-terminal protection: long
  unidentifiable prose tokens (e.g. accidental base64 dumps) are still
  chunked so they don't blow out terminal layout.

Security ordering preserved: ANSI strip / control-char strip / binary
redaction still run on the whole string before segmentation, so code
regions cannot smuggle escapes, control characters, or binary garbage
past the sanitizer.

16 new regression tests cover: camelCase config keys in inline code,
hyphenated package names (bare and in code), dotted entity IDs (bare
and in code), backtick and tilde fenced blocks, base64-like blobs in
code, prose-token chunking unchanged, prose-around-code mixed content,
box-drawing horizontal rules, multi-line shell `\\` continuations,
plus three explicit security-ordering tests asserting ANSI/control/
binary stripping still runs inside code segments.

Fixes #48432, #39505.
Supersedes #69340, #39565 (carries forward both ideas in a more
general fix). Carries forward the code-fence-aware approach from the
closed #48445.
2026-05-04 21:50:40 +08:00
Josh Lehman
0b3a86cab0 docs(changelog): restore 2026.5.3 release notes 2026-05-04 06:49:27 -07:00
Dallin Romney
5f373ae4d3 fix(tui): abort run during pre-event waiting gap (#77199)
* fix(tui): abort run during pre-event waiting gap

Track the runId returned from chat.send so pressing Esc while `activeChatRunId` is still null aborts the in-flight run instead of repeatedly printing "no active run". Identified in #1296.

* fix(tui): drop redundant comment on pendingChatRunId set
2026-05-04 21:36:52 +08:00
Vincent Koc
a90be474f4 test: repair current main checks 2026-05-04 05:09:21 -07:00
github-actions[bot]
c59c20e9fd chore(ui): refresh fa control ui locale 2026-05-04 12:05:27 +00:00
github-actions[bot]
1ce136ce16 chore(ui): refresh nl control ui locale 2026-05-04 12:04:59 +00:00
github-actions[bot]
909894c8c4 chore(ui): refresh th control ui locale 2026-05-04 12:04:35 +00:00
github-actions[bot]
df7d18f6d3 chore(ui): refresh vi control ui locale 2026-05-04 12:04:28 +00:00
github-actions[bot]
2db259503b chore(ui): refresh pl control ui locale 2026-05-04 12:04:20 +00:00
github-actions[bot]
4abba333fe chore(ui): refresh id control ui locale 2026-05-04 12:03:58 +00:00
github-actions[bot]
0909ff16d9 chore(ui): refresh uk control ui locale 2026-05-04 12:03:22 +00:00
github-actions[bot]
87e3f3779f chore(ui): refresh it control ui locale 2026-05-04 12:03:17 +00:00
github-actions[bot]
863e8d0c38 chore(ui): refresh tr control ui locale 2026-05-04 12:03:13 +00:00
github-actions[bot]
ea8d5b1877 chore(ui): refresh ar control ui locale 2026-05-04 12:02:50 +00:00
github-actions[bot]
e069675c1d chore(ui): refresh fr control ui locale 2026-05-04 12:02:01 +00:00
github-actions[bot]
47b7df3c5d chore(ui): refresh ko control ui locale 2026-05-04 12:01:57 +00:00
github-actions[bot]
7c696e0e73 chore(ui): refresh ja-JP control ui locale 2026-05-04 12:01:53 +00:00
github-actions[bot]
510a2dc80c chore(ui): refresh es control ui locale 2026-05-04 12:01:49 +00:00
github-actions[bot]
ad534fdb1b chore(ui): refresh pt-BR control ui locale 2026-05-04 12:01:00 +00:00
github-actions[bot]
bd183072e4 chore(ui): refresh zh-TW control ui locale 2026-05-04 12:00:48 +00:00
github-actions[bot]
1d16ce3f24 chore(ui): refresh de control ui locale 2026-05-04 12:00:43 +00:00
github-actions[bot]
a68c6e20e9 chore(ui): refresh zh-CN control ui locale 2026-05-04 12:00:39 +00:00
Val Alexander
8469a51326 Control UI explicit action feedback
Add explicit Control UI feedback for repeated actions: session switches now announce through the chat controls live-status path and flash the active session selector, config actions show inline busy state, and session list empty states distinguish filtered results with a Show all reset. Also refresh generated Control UI locale metadata and fallback markers.
2026-05-04 06:58:31 -05:00
Peter Steinberger
14f756c05b test(release): leave Windows updater timeout headroom 2026-05-04 12:58:28 +01:00
Val Alexander
626e078863 fix: refresh stale codex auth profile routing
Summary:
- Promotes fresh Codex OAuth relogin profiles ahead of stale per-agent auth order entries.
- Repairs invalidated per-agent Codex order and session overrides toward healthy relogin profiles.
- Adds focused regression coverage for auth order, invalidated profile repair, and session override re-resolution.

Verification:
- pnpm test src/agents/auth-profiles/profiles.test.ts src/agents/auth-profiles.ensureauthprofilestore.test.ts src/agents/auth-profiles/session-override.test.ts src/commands/models/auth.test.ts -- --reporter=verbose
- pnpm exec oxfmt --check --threads=1 CHANGELOG.md src/agents/auth-profiles.ensureauthprofilestore.test.ts src/agents/auth-profiles/persisted.ts src/agents/auth-profiles/profiles.test.ts src/agents/auth-profiles/profiles.ts src/agents/auth-profiles/session-override.test.ts src/agents/auth-profiles/session-override.ts src/commands/models/auth.test.ts src/commands/models/auth.ts
- git diff --check origin/main...HEAD
- pnpm check:changed via Blacksmith Testbox tbx_01kqscwvkywnt72qx1t8a07tp8
- GitHub CI on 1a6f93a372, with checks-node-core-runtime-infra-state rerun passing after an unrelated stale-lock timing failure
2026-05-04 06:56:02 -05:00
Vincent Koc
a7c5a04259 test: stabilize full crabbox sweep 2026-05-04 04:07:33 -07:00
Jesse Merhi
d5b0083300 fix: proxy direct APNs HTTP2 sessions (#74905)
Summary:
- This PR routes direct APNs HTTP/2 sends through an APNs allowlisted managed-proxy CONNECT wrapper, adds APNs proxy validation/docs/guardrails, and expands regression and live-test coverage.
- Reproducibility: yes. source-reproducible: current main `sendApnsRequest()` still uses raw `http2.connect(au ... nly covers HTTP/global-agent/Undici hooks. I did not run a live APNs reproduction in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: test: guard raw HTTP2 APNs connections
- PR branch already contained follow-up commit before automerge: test: guard raw HTTP2 with OpenGrep
- PR branch already contained follow-up commit before automerge: lint: ban raw HTTP2 imports
- PR branch already contained follow-up commit before automerge: fix: use managed proxy state for APNs
- PR branch already contained follow-up commit before automerge: test: exercise APNs active proxy state
- PR branch already contained follow-up commit before automerge: fix: reject conflicting managed proxy activation

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

Prepared head SHA: dab7c86a75
Review: https://github.com/openclaw/openclaw/pull/74905#issuecomment-4350181159

Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-04 11:04:17 +00:00
Vincent Koc
5efbb3078a docs(changelog): credit recent plugin fixes 2026-05-04 03:48:05 -07:00
Peter Steinberger
a9f1882047 test: harden plugin and UI isolation checks 2026-05-04 11:46:05 +01:00
Vincent Koc
24ec2aebe8 test(agents): update model auth fixture shape 2026-05-04 03:40:36 -07:00
Vincent Koc
57f9a558e4 fix(types): wire plugin package metadata 2026-05-04 03:36:36 -07:00
Vincent Koc
97d35f4c57 fix(gateway): clarify systemd service scope 2026-05-04 03:33:49 -07:00
Vincent Koc
23eb44b045 feat(models): list auth profiles 2026-05-04 03:31:55 -07:00
Vincent Koc
e0430e2e15 fix(plugins): clean replaced managed installs 2026-05-04 03:28:53 -07:00
Vincent Koc
51d3ec7395 fix(plugins): recover source-only install shadows 2026-05-04 03:26:54 -07:00
Vincent Koc
4c40686f9e fix(plugins): trust official Codex package commands 2026-05-04 03:25:26 -07:00
Vincent Koc
89a15fddaf fix(plugins): ignore invalid managed runtime shadows 2026-05-04 03:17:57 -07:00
Vincent Koc
b8f6e16ba5 fix(update): order stable correction releases after base 2026-05-04 03:05:56 -07:00
Vincent Koc
feb9a5af6a fix(plugins): scope commands to channels 2026-05-04 03:01:56 -07:00
Peter Steinberger
3434cfa381 test: speed up import-heavy suites 2026-05-04 11:00:44 +01:00
Vincent Koc
54300e5270 fix(plugins): quiet official npm install scan warnings 2026-05-04 02:40:55 -07:00
Vincent Koc
33e19fb5ae fix(security): ignore scanner comment context 2026-05-04 02:35:43 -07:00
Vincent Koc
6b7f9eafed fix(doctor): drop stale bundled install records 2026-05-04 02:26:03 -07:00
Peter Steinberger
061af13bf3 fix: avoid plugin install scanner false positives 2026-05-04 10:24:32 +01:00
Pavan Kumar Gondhi
04aa4a3fe6 fix: harden backend message action gateway routing [AI] (#76374)
* fix: harden backend message action gateway routing

* docs: add changelog entry for PR merge
2026-05-04 14:53:52 +05:30
Pavan Kumar Gondhi
1f724bc50b Gate QQBot streaming command auth [AI] (#76375)
* fix: gate QQBot streaming command

* addressing codex review

* addressing review-skill

* addressing review-skill

* addressing codex review

* addressing claude review

* docs: add changelog entry for PR merge
2026-05-04 14:50:58 +05:30
Peter Steinberger
5d9752ba18 build(release): refresh base config schema 2026-05-04 10:19:59 +01:00