Commit Graph

43956 Commits

Author SHA1 Message Date
Peter Steinberger b39daef3da test: tighten acp event ledger assertion 2026-05-09 13:26:57 +01:00
Shakker 9d37d06233 test: isolate model selection normalization 2026-05-09 13:26:45 +01:00
Peter Steinberger 06eed5a454 test: tighten oauth lock path assertion 2026-05-09 13:25:39 +01:00
Peter Steinberger 2a00bd6209 test: tighten install package dir assertions 2026-05-09 13:23:30 +01:00
Peter Steinberger 20837afb21 test: tighten docker setup missing path assertions 2026-05-09 13:20:59 +01:00
Peter Steinberger e216fed88f test: tighten deprecated auth repair assertions 2026-05-09 13:19:28 +01:00
Peter Steinberger a7727b1fcd test: tighten secrets runtime assertions 2026-05-09 13:18:06 +01:00
Peter Steinberger 7e7d72f781 test: tighten secrets warning assertions 2026-05-09 13:16:49 +01:00
Peter Steinberger a62889f6c2 test: tighten commitment chain assertions 2026-05-09 13:14:50 +01:00
Peter Steinberger a957ba6c2d test: tighten tui launch assertions 2026-05-09 13:13:18 +01:00
Peter Steinberger 13f498f382 docs: prepare 2026.5.9 changelog 2026-05-09 13:12:40 +01:00
Peter Steinberger e5a102249f test: tighten provider usage plugin assertions 2026-05-09 13:11:48 +01:00
Peter Steinberger cc37c5d6b5 docs: cite backup temp manifest issue 2026-05-09 08:10:18 -04:00
Soham Patankar 3f5dce29e9 fix(backup): keep temp manifest outside source paths
The backup temp manifest is created via os.tmpdir() and passed to tar.c
alongside the included asset paths. When TMPDIR resolves inside a backed-up
asset (for example a sandboxed cron run with TMPDIR=~/.openclaw/tmp), the
recursive walk of that asset visits the same manifest a second time and both
copies are remapped to <archiveRoot>/manifest.json. backup-verify then fails
with 'Expected exactly one backup manifest entry, found 2'.

Add chooseBackupTempRoot() that prefers os.tmpdir() and falls back to the
output directory (already validated as outside every asset and writable by
the caller) when the system tempdir overlaps a source path. A defensive
guard re-checks the fallback. A tar filter alone cannot fix this because
the filter fires for both the explicit-arg and the traversed entry, so
excluding by path drops the manifest entirely.

Add regression tests for tmpdir nested in the state dir and tmpdir equal
to the state dir.

(cherry picked from commit 00ec151f68)
2026-05-09 08:10:18 -04:00
Peter Steinberger 098ed624f6 fix: normalize google catalog model ids 2026-05-09 13:10:06 +01:00
samzong ee6b29b715 fix(agents): handle resumed cli jsonl output
Signed-off-by: samzong <samzong.lu@gmail.com>
2026-05-09 08:08:52 -04:00
samzong 02ca572a26 fix(agents): bound cli runner supervisor output
Signed-off-by: samzong <samzong.lu@gmail.com>
2026-05-09 08:08:52 -04:00
Peter Steinberger 1ab7c7e248 test: tighten heartbeat typing assertions 2026-05-09 13:06:19 +01:00
Peter Steinberger 7f9aefe43b test: tighten proxy capture headers 2026-05-09 13:02:49 +01:00
Liu Wenyu c91fffdd67 feat(config): support Qwen thinkingFormat values (#79777)
## Summary
- allow configured OpenAI-compatible Qwen models to opt into `qwen` and `qwen-chat-template` thinking payloads
- preserve those compat values through schema validation and catalog normalization
- map OpenClaw `/think` levels to `enable_thinking` or `chat_template_kwargs.enable_thinking` without also sending `reasoning_effort`
- clarify docs that request-level chat-template kwargs require compatible backends such as vLLM

## Verification
- git diff --check
- pnpm exec oxfmt --check --threads=1 CHANGELOG.md docs/gateway/config-agents.md docs/gateway/config-tools.md src/config/zod-schema.core.ts src/config/types.models.ts src/model-catalog/normalize.ts src/agents/openai-transport-stream.ts src/config/config-misc.test.ts src/model-catalog/normalize.test.ts src/agents/openai-transport-stream.test.ts
- pnpm config:schema:check
- pnpm test src/config/config-misc.test.ts src/model-catalog/normalize.test.ts src/agents/openai-transport-stream.test.ts
- GitHub CI on 2404edca39

Thanks @indulgeback.
2026-05-09 08:02:39 -04:00
Peter Steinberger cb46ace2e8 test: tighten model catalog authority assertions 2026-05-09 13:00:47 +01:00
Peter Steinberger 0a09a8f02f fix: propagate image generation SSRF policy (#79765) (thanks @hclsys) 2026-05-09 07:59:31 -04:00
Peter Steinberger b4d37feec6 test: tighten wizard plugin config assertions 2026-05-09 12:58:47 +01:00
Peter Steinberger ae14f3a459 test: tighten nodes camera assertion 2026-05-09 12:57:03 +01:00
Peter Steinberger bfee4c17f7 test: tighten fetch timeout assertions 2026-05-09 12:55:40 +01:00
Peter Steinberger 974fdc6bc0 test: tighten directive tag assertions 2026-05-09 12:53:44 +01:00
Peter Steinberger 91adcc68fe test: tighten boot hook assertions 2026-05-09 12:50:53 +01:00
Peter Steinberger 019f1bde01 test: tighten tts config assertion 2026-05-09 12:48:28 +01:00
Peter Steinberger b8a6a9a10a fix: preserve Gemini flash image capability (#79759) (thanks @hclsys) 2026-05-09 07:47:06 -04:00
Peter Steinberger 9907f38c83 test: tighten wizard session assertion 2026-05-09 12:46:33 +01:00
Shakker efa8c83200 fix: keep auth profile rotation nonblocking 2026-05-09 12:45:03 +01:00
Peter Steinberger 2ad0282556 test: tighten test state assertions 2026-05-09 12:44:28 +01:00
Peter Steinberger 3cb2651295 test: tighten memory dreaming assertions 2026-05-09 12:42:26 +01:00
Peter Steinberger a4e3b4b6e3 test: tighten logging assertions 2026-05-09 12:40:54 +01:00
Peter Steinberger 4cbf13e600 test: tighten speech provider assertions 2026-05-09 12:39:16 +01:00
Peter Steinberger 46738f1677 fix(agents): add sandbox container path hint (#79766) (thanks @hclsys) 2026-05-09 07:38:51 -04:00
Peter Steinberger 00faea921f test: tighten slug generator assertions 2026-05-09 12:37:16 +01:00
Ayaan Zaidi f9feb9cf17 docs(changelog): fix PR 79741 attribution 2026-05-09 17:07:03 +05:30
Peter Steinberger eb200e369c feat: default discord voice to agent proxy 2026-05-09 12:36:37 +01:00
Peter Steinberger 9859c23bad test: tighten commitment heartbeat assertion 2026-05-09 12:35:34 +01:00
Peter Steinberger 55b4fc880c test: tighten cron event assertions 2026-05-09 12:34:05 +01:00
Peter Steinberger c9293b4738 test: tighten video capability assertions 2026-05-09 12:32:23 +01:00
Peter Steinberger f4addf8713 test: tighten context engine assertions 2026-05-09 12:30:55 +01:00
stain lu 2fb05bc402 fix: harden agent recovery failures (#79729)
Fixes #79688. Fixes #79712.
2026-05-09 07:29:08 -04:00
Peter Steinberger b447d30349 test: tighten process assertions 2026-05-09 12:28:59 +01:00
Shakker 153813ac52 test: align openai runtime dependency assertion 2026-05-09 12:27:06 +01:00
Peter Steinberger 9ba545a916 test: tighten plugin state e2e assertions 2026-05-09 12:25:50 +01:00
Peter Steinberger d1c7b57e45 test: tighten plugin state store assertions 2026-05-09 12:24:33 +01:00
Peter Steinberger 0a505563d6 test: tighten durable json error assertion 2026-05-09 12:22:36 +01:00
Peter Steinberger 0a8beba3c8 test: tighten supervisor marker assertions 2026-05-09 12:21:18 +01:00