Peter Steinberger
8a04851fa0
fix: localize workboard disabled state
2026-05-29 11:04:37 +01:00
Peter Steinberger
86ed25af34
feat: add workboard dashboard plugin
2026-05-29 11:04:37 +01:00
Peter Steinberger
ed62aefeee
refactor(gateway): centralize handshake timeout parsing
2026-05-29 05:56:21 -04:00
Vincent Koc
7708e8c7ef
refactor: share qqbot media path decoding
2026-05-29 11:53:33 +02:00
Peter Steinberger
82a16d2fee
fix: alias net policy in plugin loader
2026-05-29 10:47:27 +01:00
Peter Steinberger
656c238295
fix(telegram): ignore unsafe cached message ids
2026-05-29 05:44:15 -04:00
Peter Steinberger
e890d7ea4f
fix(telegram): reject unsafe topic targets
2026-05-29 05:39:57 -04:00
Peter Steinberger
7d76e54f2b
fix: honor cron backoff from run end
2026-05-29 05:36:50 -04:00
Peter Steinberger
8ac0c35462
fix(prompts): reject unsafe template indexes
2026-05-29 05:36:15 -04:00
Vincent Koc
49807ac1f1
refactor: share plugin http dispatch helpers
2026-05-29 11:32:14 +02:00
Peter Steinberger
0b84d8b521
ci: refresh live gateway release lanes
2026-05-29 10:30:23 +01:00
Peter Steinberger
75c011b606
fix(subagents): ignore unsafe log limits
2026-05-29 05:29:50 -04:00
Vincent Koc
c7127c7c34
test(doctor): satisfy legacy migration lint
2026-05-29 11:28:32 +02:00
拐爷&&老拐瘦
f634062f35
fix(cron): quarantine malformed persisted jobs
...
Quarantine malformed persisted cron rows before sanitizing active jobs.json.
Preserve raw malformed rows plus split runtime metadata in jobs-quarantine.json so later cron writes cannot silently delete recoverable data.
Doctor now reports quarantine sidecars for manual review.
Closes #51871 .
Thanks @yfge.
Verification:
- pnpm test src/cron/service/store.test.ts src/cron/service/store.load-missing-session-target.test.ts src/cron/store.test.ts src/commands/doctor-cron-store-migration.test.ts src/commands/doctor-cron.test.ts ui/src/ui/controllers/cron-filters.test.ts ui/src/ui/controllers/cron.test.ts ui/src/ui/app-render.helpers.node.test.ts ui/src/ui/app-settings.refresh-active-tab.node.test.ts
- node scripts/run-tsgo.mjs -p tsconfig.core.json --files src/cron/store.ts src/cron/service/store.ts src/cron/service/state.ts src/commands/doctor-cron.ts && node scripts/run-tsgo.mjs -p test/tsconfig/tsconfig.core.test.json --files src/cron/store.test.ts src/cron/service/store.test.ts src/cron/service/store.load-missing-session-target.test.ts src/commands/doctor-cron.test.ts src/commands/doctor-cron-store-migration.test.ts
- node scripts/run-oxlint.mjs --tsconfig config/tsconfig/oxlint.core.json src/cron/store.ts src/cron/service/store.ts src/cron/service/state.ts src/commands/doctor-cron.ts src/cron/store.test.ts src/cron/service/store.test.ts src/cron/service/store.load-missing-session-target.test.ts src/commands/doctor-cron.test.ts src/commands/doctor-cron-store-migration.test.ts
- git diff --check
- pnpm docs:list
- autoreview clean: no accepted/actionable findings reported
- GitHub CI: cron, doctor, docs, lint/type/build/security/quality, real behavior proof, and Windows rerun green; checks-node-agentic-agents remains red on current PR and recent main with unrelated pre-existing module/mock failures outside touched files.
Co-authored-by: yfge <geyunfei@gmail.com >
2026-05-29 10:27:45 +01:00
Peter Steinberger
c3e02d9fd4
fix(models): ignore unsafe page tokens
2026-05-29 05:22:55 -04:00
Peter Steinberger
837d6a13a2
test(release): refresh plugin sdk api baseline
2026-05-29 10:20:09 +01:00
Peter Steinberger
57a3dbe736
perf: avoid jiti for built plugin startup paths
2026-05-29 10:17:43 +01:00
Peter Steinberger
97afdc144d
fix(file-transfer): validate node fetch byte limits
2026-05-29 05:15:56 -04:00
Vincent Koc
9bf48660b3
fix(ci): keep Windows Crabbox hydrate fetch alive
2026-05-29 11:12:22 +02:00
Vincent Koc
966c274f20
refactor: share browser snapshot helpers
2026-05-29 11:11:46 +02:00
Peter Steinberger
173a21f557
fix: refresh npm shrinkwrap after net policy split
2026-05-29 10:11:29 +01:00
兰之
6950e85605
fix(agents): allow hyphenated subagent task names
...
Allow `sessions_spawn.taskName` to accept lowercase hyphenated task slugs while keeping the existing underscore support and invalid-name rejection. Update the tool schema, system prompt wording, docs, focused tests, and generated prompt snapshots so the user/model-facing contract matches the validator.
Verification:
- `pnpm prompt:snapshots:check`
- `node scripts/run-vitest.mjs src/agents/tools/sessions-spawn-tool.test.ts src/agents/system-prompt.test.ts`
- Real behavior proof gate: https://github.com/openclaw/openclaw/actions/runs/26628449324/job/78470916945
- PR CI: https://github.com/openclaw/openclaw/actions/runs/26628441940 , with failures matching current `main` at https://github.com/openclaw/openclaw/actions/runs/26628128225
Co-authored-by: chenhaoqiang <chenhaoqiang@xiaomi.com >
Co-authored-by: Lanzhi <lizhan3@xiaomi.com >
2026-05-29 10:10:12 +01:00
兰之
30c1ca5c7b
fix: match slash commands case-insensitively
...
Match text slash command names case-insensitively across the reset/new fallback paths and the shared registry/control detection contract while preserving command argument casing.
Add regression coverage for uppercase and mixed-case reset/new commands plus registered non-reset commands such as `/STATUS`, `/Model`, `/T`, and `/COMPACT`.
Co-authored-by: zhangtong26 <zhangtong26@xiaomi.com >
Co-authored-by: Lanzhi <lizhan3@xiaomi.com >
2026-05-29 10:06:53 +01:00
Peter Steinberger
274a8116af
fix(session): reject unsafe lifecycle durations
2026-05-29 05:06:26 -04:00
Peter Steinberger
5871d118ad
fix: restore package CI after net policy split
2026-05-29 10:04:57 +01:00
Peter Steinberger
c951867a21
test(release): satisfy doctor migration lint
2026-05-29 10:04:42 +01:00
litang9
18f9310844
fix(gateway): clear stale chat stream buffers ( #75089 )
...
Merged via squash.
Prepared head SHA: 05ca0e30ac
Verification:
- gh pr checks 75089 --required --watch --fail-fast: dependency-guard passed.
- node scripts/run-vitest.mjs src/gateway/chat-abort.test.ts src/gateway/server-maintenance.test.ts src/gateway/server-close.test.ts src/gateway/server-methods/models-auth-status.test.ts src/gateway/server-methods/chat.abort-authorization.test.ts: 9 files, 136 tests passed on the rebased clean head.
- pnpm build and pnpm check passed after the rebase.
- Local live-style Gateway WebSocket RPC proof passed with a mock OpenAI Responses SSE provider.
Co-authored-by: litang9 <tangli1987118@hotmail.com >
Co-authored-by: osolmaz <2453968+osolmaz@users.noreply.github.com >
Reviewed-by: @osolmaz
2026-05-29 17:01:42 +08:00
Peter Steinberger
d506e9e666
fix(subagents): keep numeric log targets from shrinking history
2026-05-29 05:00:18 -04:00
Vincent Koc
9e002c12ac
fix(video): bound generated video downloads
2026-05-29 11:00:06 +02:00
Vincent Koc
bee163bf37
refactor: share chrome cdp websocket diagnostics
2026-05-29 10:57:12 +02:00
Peter Steinberger
5fce8cef1e
refactor(qa-lab): share guarded config merge patches
2026-05-29 04:54:42 -04:00
兰之
b620c58e65
fix: remove telegram-only reasoning stream copy
...
Remove stale Telegram-only wording from the reasoning stream acknowledgement and docs so channel-neutral behavior is reflected.
Fixes #68305 .
Co-authored-by: Lanzhi <lizhan3@xiaomi.com >
2026-05-29 09:54:37 +01:00
Peter Steinberger
2e015ab124
test(release): fix beta live release checks
2026-05-29 09:54:00 +01:00
Rajvardhan Patil
5518ac998f
fix(agents): add CLI turn output digests
...
Adds content-safe output fingerprints to CLI backend turn logs so repeated byte-identical responses can be detected from gateway logs without exposing response text.
Covers Claude live-session turns, synthetic cron before_agent_reply short-circuits, and ordinary CLI subprocess turns with shared outBytes/outHash fields.
Verification:
- pnpm test src/agents/cli-runner.spawn.test.ts src/agents/cli-runner.before-agent-reply-cron.test.ts -- --reporter=verbose
- pnpm check:changed (Blacksmith Testbox tbx_01kssdqes22wqhas0v7h339zr7)
- .agents/skills/autoreview/scripts/autoreview --mode local
- .agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main
- GitHub PR checks passed for e130c1acbf
Fixes #81004
Co-authored-by: Rajvardhan Patil <raj@Rajvardhans-MacBook-Air.local >
2026-05-29 09:50:56 +01:00
Vincent Koc
850f7c24d4
refactor: share browser basic route helpers
2026-05-29 10:45:55 +02:00
Zee Zheng
17907bc2cd
fix(clawdock): load compose override file
...
Load `docker-compose.override.yml` when ClawDock builds its explicit Docker Compose file list, preserving standard Compose override behavior while keeping `docker-compose.extra.yml` as the final OpenClaw overlay.
Update Docker docs so manual Compose users include the same override order, and keep the regression test for the generated `_clawdock_compose` arguments.
Fixes #49909 .
Thanks @spacegeologist.
Co-authored-by: zhengzuo0-ai <zheng.zuo0@gmail.com >
2026-05-29 09:45:35 +01:00
Peter Steinberger
25b3c8ef71
refactor: remove old net policy sources
2026-05-29 09:45:14 +01:00
Peter Steinberger
f4c6c0aec4
refactor: extract net policy package
2026-05-29 09:45:14 +01:00
Peter Steinberger
03ac6e3171
fix(qa-lab): ignore prototype keys in patch checks
2026-05-29 04:44:37 -04:00
Phil
00ca654c74
fix(plugins): persist resolved npm install specs
...
Preserve npm install selectors while recording resolved npm provenance for plugin and hook install/update records. Active `record.spec` stays the requested selector unless explicitly pinned, while resolved npm fields remain available for audit and diagnostics.
Adds focused coverage for hook-pack npm fallback provenance after the maintainer review found that path worth pinning down.
Co-authored-by: Phil <99397913+GitHoubi@users.noreply.github.com >
2026-05-29 09:42:46 +01:00
tanshanshan
8201e851ca
feat(zalouser): forward data.quote metadata into agent context
...
Forward Zalo quote-reply metadata from zca-js data.quote into the existing ReplyToId, ReplyToBody, and ReplyToIsQuote context keys so agents can correlate quoted replies with prior bot messages.
Adds parser and monitor regression coverage for quote extraction and context projection.
Fixes #86851 .
Thanks @tanshanshan.
2026-05-29 09:42:39 +01:00
Peter Steinberger
e144d1c8d9
fix(oc-path): reject noncanonical array indexes
2026-05-29 04:37:41 -04:00
Chunyue Wang
fb6f2c61bf
fix(auto-reply): deliver compact replies in room events
...
Restore visible terminal command replies for explicit command turns that are otherwise source-suppressed in room-event/message-tool-only delivery. Also keep compaction notifyUser notices independent from internal callbacks while preserving hook-message de-duplication.
Fixes #87107
Verification:
- git diff --check origin/main...HEAD
- node scripts/run-vitest.mjs src/auto-reply/reply/dispatch-from-config.test.ts src/auto-reply/reply/get-reply-inline-actions.skip-when-config-empty.test.ts src/auto-reply/reply/agent-runner-execution.test.ts
- GitHub required check dependency-guard passed on d3aaad90fc
- Relevant GitHub auto-reply/build/lint/type/security checks passed on d3aaad90fc
Co-authored-by: openperf <16864032@qq.com >
2026-05-29 09:35:19 +01:00
Peter Steinberger
def11c0978
fix(plugins): bound config contract array indexes
2026-05-29 04:29:14 -04:00
Vincent Koc
628104662b
refactor: share browser client request helpers
2026-05-29 10:26:44 +02:00
Peter Steinberger
d4a17477b0
fix(schema): reject noncanonical array refs
2026-05-29 04:25:10 -04:00
Peter Steinberger
b78ebacb18
refactor: centralize plugin model discovery
2026-05-29 09:24:08 +01:00
Jayesh Betala
189a7962b2
fix(cli): reject empty config path segments
...
Reject malformed dot-notation config paths before `openclaw config get/set/unset` reads or mutates config. Empty, leading, trailing, whitespace-only, and dot-before-bracket segments now fail closed instead of normalizing to a different key, while valid bracket paths and escaped dots continue to work.
Thanks @jbetala7 for the fix.
Verification:
- `git diff --check`
- `node scripts/run-vitest.mjs run src/cli/config-cli.test.ts` (111 passed)
- GitHub exact-head checks on `116254ba414bff6a0c3881e34fad30baca95ef0a`: 76 success, 23 skipped, 1 neutral, 0 failures
Fixes #87564
Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com >
2026-05-29 09:23:32 +01:00
UB
d18ee1881c
fix(discord): remove optional runtime error shims
...
Remove unreachable optional chaining from four Discord message-handler-family runtime error calls.
This aligns the code with the required RuntimeEnv.error contract while leaving production behavior unchanged for valid runtimes. Maintainer-updated PR proof clarifies that shared queue reporter hooks still treat malformed runtime reporter failures as best-effort.
2026-05-29 09:22:44 +01:00
Peter Steinberger
5ff0c75da7
fix(config): preserve large numeric schema keys
2026-05-29 04:20:42 -04:00